@img/sharp-libvips-dev 1.2.2 → 1.2.4-rc.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/include/archive.h +2 -2
- package/include/archive_entry.h +1 -1
- package/include/expat.h +39 -25
- package/include/expat_config.h +9 -9
- package/include/expat_external.h +62 -61
- package/include/harfbuzz/hb-ot-layout.h +6 -0
- package/include/harfbuzz/hb-script-list.h +1 -1
- package/include/harfbuzz/hb-subset.h +5 -0
- package/include/harfbuzz/hb-version.h +3 -3
- package/include/jconfig.h +37 -14
- package/include/jerror.h +47 -42
- package/include/jmorecfg.h +21 -18
- package/include/jpeglib.h +216 -132
- package/include/librsvg-2.0/librsvg/rsvg-version.h +2 -2
- package/include/libxml2/libxml/HTMLparser.h +159 -101
- package/include/libxml2/libxml/HTMLtree.h +49 -74
- package/include/libxml2/libxml/SAX.h +8 -5
- package/include/libxml2/libxml/SAX2.h +18 -15
- package/include/libxml2/libxml/c14n.h +30 -29
- package/include/libxml2/libxml/catalog.h +47 -22
- package/include/libxml2/libxml/chvalid.h +52 -64
- package/include/libxml2/libxml/debugXML.h +18 -15
- package/include/libxml2/libxml/dict.h +22 -19
- package/include/libxml2/libxml/encoding.h +144 -111
- package/include/libxml2/libxml/entities.h +95 -75
- package/include/libxml2/libxml/globals.h +7 -4
- package/include/libxml2/libxml/hash.h +61 -64
- package/include/libxml2/libxml/list.h +59 -51
- package/include/libxml2/libxml/nanoftp.h +7 -4
- package/include/libxml2/libxml/nanohttp.h +10 -7
- package/include/libxml2/libxml/parser.h +1091 -563
- package/include/libxml2/libxml/parserInternals.h +167 -214
- package/include/libxml2/libxml/pattern.h +29 -31
- package/include/libxml2/libxml/relaxng.h +59 -58
- package/include/libxml2/libxml/schemasInternals.h +114 -268
- package/include/libxml2/libxml/schematron.h +59 -51
- package/include/libxml2/libxml/threads.h +19 -20
- package/include/libxml2/libxml/tree.h +873 -623
- package/include/libxml2/libxml/uri.h +21 -22
- package/include/libxml2/libxml/valid.h +169 -199
- package/include/libxml2/libxml/xinclude.h +24 -43
- package/include/libxml2/libxml/xlink.h +55 -51
- package/include/libxml2/libxml/xmlIO.h +127 -145
- package/include/libxml2/libxml/xmlautomata.h +66 -65
- package/include/libxml2/libxml/xmlerror.h +197 -94
- package/include/libxml2/libxml/xmlexports.h +20 -18
- package/include/libxml2/libxml/xmlmemory.h +44 -29
- package/include/libxml2/libxml/xmlmodule.h +14 -15
- package/include/libxml2/libxml/xmlreader.h +137 -131
- package/include/libxml2/libxml/xmlregexp.h +28 -31
- package/include/libxml2/libxml/xmlsave.h +81 -36
- package/include/libxml2/libxml/xmlschemas.h +61 -67
- package/include/libxml2/libxml/xmlschemastypes.h +60 -54
- package/include/libxml2/libxml/xmlstring.h +8 -9
- package/include/libxml2/libxml/xmlunicode.h +6 -3
- package/include/libxml2/libxml/xmlversion.h +44 -121
- package/include/libxml2/libxml/xmlwriter.h +97 -97
- package/include/libxml2/libxml/xpath.h +235 -232
- package/include/libxml2/libxml/xpathInternals.h +247 -277
- package/include/libxml2/libxml/xpointer.h +21 -17
- package/include/tiff.h +1 -0
- package/include/tiffconf.h +1 -1
- package/include/tiffio.h +23 -5
- package/include/tiffvers.h +4 -4
- package/include/vips/version.h +4 -4
- package/package.json +1 -1
- package/versions.json +9 -9
package/include/jerror.h
CHANGED
|
@@ -4,8 +4,10 @@
|
|
|
4
4
|
* This file was part of the Independent JPEG Group's software:
|
|
5
5
|
* Copyright (C) 1994-1997, Thomas G. Lane.
|
|
6
6
|
* Modified 1997-2009 by Guido Vollbeding.
|
|
7
|
+
* Lossless JPEG Modifications:
|
|
8
|
+
* Copyright (C) 1999, Ken Murchison.
|
|
7
9
|
* libjpeg-turbo Modifications:
|
|
8
|
-
* Copyright (C) 2014, 2017, 2021-
|
|
10
|
+
* Copyright (C) 2014, 2017, 2021-2023, D. R. Commander.
|
|
9
11
|
* For conditions of distribution and use, see the accompanying README.ijg
|
|
10
12
|
* file.
|
|
11
13
|
*
|
|
@@ -28,7 +30,7 @@
|
|
|
28
30
|
#define JMAKE_ENUM_LIST
|
|
29
31
|
#else
|
|
30
32
|
/* Repeated inclusions of this file are no-ops unless JMESSAGE is defined */
|
|
31
|
-
#define JMESSAGE(code,string)
|
|
33
|
+
#define JMESSAGE(code, string)
|
|
32
34
|
#endif /* JERROR_H */
|
|
33
35
|
#endif /* JMESSAGE */
|
|
34
36
|
|
|
@@ -36,7 +38,7 @@
|
|
|
36
38
|
|
|
37
39
|
typedef enum {
|
|
38
40
|
|
|
39
|
-
#define JMESSAGE(code,string)
|
|
41
|
+
#define JMESSAGE(code, string) code,
|
|
40
42
|
|
|
41
43
|
#endif /* JMAKE_ENUM_LIST */
|
|
42
44
|
|
|
@@ -53,7 +55,8 @@ JMESSAGE(JERR_BAD_COMPONENT_ID, "Invalid component ID %d in SOS")
|
|
|
53
55
|
#if JPEG_LIB_VERSION >= 70
|
|
54
56
|
JMESSAGE(JERR_BAD_CROP_SPEC, "Invalid crop request")
|
|
55
57
|
#endif
|
|
56
|
-
JMESSAGE(JERR_BAD_DCT_COEF,
|
|
58
|
+
JMESSAGE(JERR_BAD_DCT_COEF,
|
|
59
|
+
"DCT coefficient (lossy) or spatial difference (lossless) out of range")
|
|
57
60
|
JMESSAGE(JERR_BAD_DCTSIZE, "IDCT output block size %d not supported")
|
|
58
61
|
#if JPEG_LIB_VERSION >= 70
|
|
59
62
|
JMESSAGE(JERR_BAD_DROP_SAMPLING,
|
|
@@ -69,9 +72,9 @@ JMESSAGE(JERR_BAD_MCU_SIZE, "Sampling factors too large for interleaved scan")
|
|
|
69
72
|
JMESSAGE(JERR_BAD_POOL_ID, "Invalid memory pool code %d")
|
|
70
73
|
JMESSAGE(JERR_BAD_PRECISION, "Unsupported JPEG data precision %d")
|
|
71
74
|
JMESSAGE(JERR_BAD_PROGRESSION,
|
|
72
|
-
"Invalid progressive parameters Ss=%d Se=%d Ah=%d Al=%d")
|
|
75
|
+
"Invalid progressive/lossless parameters Ss=%d Se=%d Ah=%d Al=%d")
|
|
73
76
|
JMESSAGE(JERR_BAD_PROG_SCRIPT,
|
|
74
|
-
"Invalid progressive parameters at scan script entry %d")
|
|
77
|
+
"Invalid progressive/lossless parameters at scan script entry %d")
|
|
75
78
|
JMESSAGE(JERR_BAD_SAMPLING, "Bogus sampling factors")
|
|
76
79
|
JMESSAGE(JERR_BAD_SCAN_SCRIPT, "Invalid scan script at entry %d")
|
|
77
80
|
JMESSAGE(JERR_BAD_STATE, "Improper call to JPEG library in state %d")
|
|
@@ -108,7 +111,7 @@ JMESSAGE(JERR_NOT_COMPILED, "Requested feature was omitted at compile time")
|
|
|
108
111
|
#if JPEG_LIB_VERSION >= 70
|
|
109
112
|
JMESSAGE(JERR_NO_ARITH_TABLE, "Arithmetic table 0x%02x was not defined")
|
|
110
113
|
#endif
|
|
111
|
-
JMESSAGE(JERR_NO_BACKING_STORE, "
|
|
114
|
+
JMESSAGE(JERR_NO_BACKING_STORE, "Memory limit exceeded")
|
|
112
115
|
JMESSAGE(JERR_NO_HUFF_TABLE, "Huffman table 0x%02x was not defined")
|
|
113
116
|
JMESSAGE(JERR_NO_IMAGE, "JPEG datastream contains no image")
|
|
114
117
|
JMESSAGE(JERR_NO_QUANT_TABLE, "Quantization table 0x%02x was not defined")
|
|
@@ -180,7 +183,7 @@ JMESSAGE(JTRC_THUMB_PALETTE,
|
|
|
180
183
|
JMESSAGE(JTRC_THUMB_RGB,
|
|
181
184
|
"JFIF extension marker: RGB thumbnail image, length %u")
|
|
182
185
|
JMESSAGE(JTRC_UNKNOWN_IDS,
|
|
183
|
-
"Unrecognized component IDs %d %d %d, assuming YCbCr")
|
|
186
|
+
"Unrecognized component IDs %d %d %d, assuming YCbCr (lossy) or RGB (lossless)")
|
|
184
187
|
JMESSAGE(JTRC_XMS_CLOSE, "Freed XMS handle %u")
|
|
185
188
|
JMESSAGE(JTRC_XMS_OPEN, "Obtained XMS handle %u")
|
|
186
189
|
JMESSAGE(JWRN_ADOBE_XFORM, "Unknown Adobe color transform code %d")
|
|
@@ -215,6 +218,8 @@ JMESSAGE(JWRN_BOGUS_ICC, "Corrupt JPEG data: bad ICC marker")
|
|
|
215
218
|
JMESSAGE(JERR_BAD_DROP_SAMPLING,
|
|
216
219
|
"Component index %d: mismatching sampling ratio %d:%d, %d:%d, %c")
|
|
217
220
|
#endif
|
|
221
|
+
JMESSAGE(JERR_BAD_RESTART,
|
|
222
|
+
"Invalid restart interval %d; must be an integer multiple of the number of MCUs in an MCU row (%d)")
|
|
218
223
|
|
|
219
224
|
#ifdef JMAKE_ENUM_LIST
|
|
220
225
|
|
|
@@ -235,25 +240,25 @@ JMESSAGE(JERR_BAD_DROP_SAMPLING,
|
|
|
235
240
|
/* The first parameter is either type of cinfo pointer */
|
|
236
241
|
|
|
237
242
|
/* Fatal errors (print message and exit) */
|
|
238
|
-
#define ERREXIT(cinfo,code)
|
|
243
|
+
#define ERREXIT(cinfo, code) \
|
|
239
244
|
((cinfo)->err->msg_code = (code), \
|
|
240
|
-
(*(cinfo)->err->error_exit) ((j_common_ptr)
|
|
241
|
-
#define ERREXIT1(cinfo,code,p1)
|
|
245
|
+
(*(cinfo)->err->error_exit) ((j_common_ptr)(cinfo)))
|
|
246
|
+
#define ERREXIT1(cinfo, code, p1) \
|
|
242
247
|
((cinfo)->err->msg_code = (code), \
|
|
243
248
|
(cinfo)->err->msg_parm.i[0] = (p1), \
|
|
244
|
-
(*(cinfo)->err->error_exit) ((j_common_ptr)
|
|
245
|
-
#define ERREXIT2(cinfo,code,p1,p2)
|
|
249
|
+
(*(cinfo)->err->error_exit) ((j_common_ptr)(cinfo)))
|
|
250
|
+
#define ERREXIT2(cinfo, code, p1, p2) \
|
|
246
251
|
((cinfo)->err->msg_code = (code), \
|
|
247
252
|
(cinfo)->err->msg_parm.i[0] = (p1), \
|
|
248
253
|
(cinfo)->err->msg_parm.i[1] = (p2), \
|
|
249
|
-
(*(cinfo)->err->error_exit) ((j_common_ptr)
|
|
250
|
-
#define ERREXIT3(cinfo,code,p1,p2,p3)
|
|
254
|
+
(*(cinfo)->err->error_exit) ((j_common_ptr)(cinfo)))
|
|
255
|
+
#define ERREXIT3(cinfo, code, p1, p2, p3) \
|
|
251
256
|
((cinfo)->err->msg_code = (code), \
|
|
252
257
|
(cinfo)->err->msg_parm.i[0] = (p1), \
|
|
253
258
|
(cinfo)->err->msg_parm.i[1] = (p2), \
|
|
254
259
|
(cinfo)->err->msg_parm.i[2] = (p3), \
|
|
255
|
-
(*(cinfo)->err->error_exit) ((j_common_ptr)
|
|
256
|
-
#define ERREXIT4(cinfo,code,p1,p2,p3,p4)
|
|
260
|
+
(*(cinfo)->err->error_exit) ((j_common_ptr)(cinfo)))
|
|
261
|
+
#define ERREXIT4(cinfo, code, p1, p2, p3, p4) \
|
|
257
262
|
((cinfo)->err->msg_code = (code), \
|
|
258
263
|
(cinfo)->err->msg_parm.i[0] = (p1), \
|
|
259
264
|
(cinfo)->err->msg_parm.i[1] = (p2), \
|
|
@@ -278,55 +283,55 @@ JMESSAGE(JERR_BAD_DROP_SAMPLING,
|
|
|
278
283
|
#define MAKESTMT(stuff) do { stuff } while (0)
|
|
279
284
|
|
|
280
285
|
/* Nonfatal errors (we can keep going, but the data is probably corrupt) */
|
|
281
|
-
#define WARNMS(cinfo,code)
|
|
286
|
+
#define WARNMS(cinfo, code) \
|
|
282
287
|
((cinfo)->err->msg_code = (code), \
|
|
283
|
-
(*(cinfo)->err->emit_message) ((j_common_ptr)
|
|
284
|
-
#define WARNMS1(cinfo,code,p1)
|
|
288
|
+
(*(cinfo)->err->emit_message) ((j_common_ptr)(cinfo), -1))
|
|
289
|
+
#define WARNMS1(cinfo, code, p1) \
|
|
285
290
|
((cinfo)->err->msg_code = (code), \
|
|
286
291
|
(cinfo)->err->msg_parm.i[0] = (p1), \
|
|
287
|
-
(*(cinfo)->err->emit_message) ((j_common_ptr)
|
|
288
|
-
#define WARNMS2(cinfo,code,p1,p2)
|
|
292
|
+
(*(cinfo)->err->emit_message) ((j_common_ptr)(cinfo), -1))
|
|
293
|
+
#define WARNMS2(cinfo, code, p1, p2) \
|
|
289
294
|
((cinfo)->err->msg_code = (code), \
|
|
290
295
|
(cinfo)->err->msg_parm.i[0] = (p1), \
|
|
291
296
|
(cinfo)->err->msg_parm.i[1] = (p2), \
|
|
292
|
-
(*(cinfo)->err->emit_message) ((j_common_ptr)
|
|
297
|
+
(*(cinfo)->err->emit_message) ((j_common_ptr)(cinfo), -1))
|
|
293
298
|
|
|
294
299
|
/* Informational/debugging messages */
|
|
295
|
-
#define TRACEMS(cinfo,lvl,code)
|
|
300
|
+
#define TRACEMS(cinfo, lvl, code) \
|
|
296
301
|
((cinfo)->err->msg_code = (code), \
|
|
297
|
-
(*(cinfo)->err->emit_message) ((j_common_ptr)
|
|
298
|
-
#define TRACEMS1(cinfo,lvl,code,p1)
|
|
302
|
+
(*(cinfo)->err->emit_message) ((j_common_ptr)(cinfo), (lvl)))
|
|
303
|
+
#define TRACEMS1(cinfo, lvl, code, p1) \
|
|
299
304
|
((cinfo)->err->msg_code = (code), \
|
|
300
305
|
(cinfo)->err->msg_parm.i[0] = (p1), \
|
|
301
|
-
(*(cinfo)->err->emit_message) ((j_common_ptr)
|
|
302
|
-
#define TRACEMS2(cinfo,lvl,code,p1,p2)
|
|
306
|
+
(*(cinfo)->err->emit_message) ((j_common_ptr)(cinfo), (lvl)))
|
|
307
|
+
#define TRACEMS2(cinfo, lvl, code, p1, p2) \
|
|
303
308
|
((cinfo)->err->msg_code = (code), \
|
|
304
309
|
(cinfo)->err->msg_parm.i[0] = (p1), \
|
|
305
310
|
(cinfo)->err->msg_parm.i[1] = (p2), \
|
|
306
|
-
(*(cinfo)->err->emit_message) ((j_common_ptr)
|
|
307
|
-
#define TRACEMS3(cinfo,lvl,code,p1,p2,p3)
|
|
308
|
-
MAKESTMT(int *
|
|
311
|
+
(*(cinfo)->err->emit_message) ((j_common_ptr)(cinfo), (lvl)))
|
|
312
|
+
#define TRACEMS3(cinfo, lvl, code, p1, p2, p3) \
|
|
313
|
+
MAKESTMT(int *_mp = (cinfo)->err->msg_parm.i; \
|
|
309
314
|
_mp[0] = (p1); _mp[1] = (p2); _mp[2] = (p3); \
|
|
310
315
|
(cinfo)->err->msg_code = (code); \
|
|
311
|
-
(*(cinfo)->err->emit_message) ((j_common_ptr)
|
|
312
|
-
#define TRACEMS4(cinfo,lvl,code,p1,p2,p3,p4)
|
|
313
|
-
MAKESTMT(int *
|
|
316
|
+
(*(cinfo)->err->emit_message) ((j_common_ptr)(cinfo), (lvl)); )
|
|
317
|
+
#define TRACEMS4(cinfo, lvl, code, p1, p2, p3, p4) \
|
|
318
|
+
MAKESTMT(int *_mp = (cinfo)->err->msg_parm.i; \
|
|
314
319
|
_mp[0] = (p1); _mp[1] = (p2); _mp[2] = (p3); _mp[3] = (p4); \
|
|
315
320
|
(cinfo)->err->msg_code = (code); \
|
|
316
|
-
(*(cinfo)->err->emit_message) ((j_common_ptr)
|
|
317
|
-
#define TRACEMS5(cinfo,lvl,code,p1,p2,p3,p4,p5)
|
|
318
|
-
MAKESTMT(int *
|
|
321
|
+
(*(cinfo)->err->emit_message) ((j_common_ptr)(cinfo), (lvl)); )
|
|
322
|
+
#define TRACEMS5(cinfo, lvl, code, p1, p2, p3, p4, p5) \
|
|
323
|
+
MAKESTMT(int *_mp = (cinfo)->err->msg_parm.i; \
|
|
319
324
|
_mp[0] = (p1); _mp[1] = (p2); _mp[2] = (p3); _mp[3] = (p4); \
|
|
320
325
|
_mp[4] = (p5); \
|
|
321
326
|
(cinfo)->err->msg_code = (code); \
|
|
322
|
-
(*(cinfo)->err->emit_message) ((j_common_ptr)
|
|
323
|
-
#define TRACEMS8(cinfo,lvl,code,p1,p2,p3,p4,p5,p6,p7,p8)
|
|
324
|
-
MAKESTMT(int *
|
|
327
|
+
(*(cinfo)->err->emit_message) ((j_common_ptr)(cinfo), (lvl)); )
|
|
328
|
+
#define TRACEMS8(cinfo, lvl, code, p1, p2, p3, p4, p5, p6, p7, p8) \
|
|
329
|
+
MAKESTMT(int *_mp = (cinfo)->err->msg_parm.i; \
|
|
325
330
|
_mp[0] = (p1); _mp[1] = (p2); _mp[2] = (p3); _mp[3] = (p4); \
|
|
326
331
|
_mp[4] = (p5); _mp[5] = (p6); _mp[6] = (p7); _mp[7] = (p8); \
|
|
327
332
|
(cinfo)->err->msg_code = (code); \
|
|
328
|
-
(*(cinfo)->err->emit_message) ((j_common_ptr)
|
|
329
|
-
#define TRACEMSS(cinfo,lvl,code,str)
|
|
333
|
+
(*(cinfo)->err->emit_message) ((j_common_ptr)(cinfo), (lvl)); )
|
|
334
|
+
#define TRACEMSS(cinfo, lvl, code, str) \
|
|
330
335
|
((cinfo)->err->msg_code = (code), \
|
|
331
336
|
strncpy((cinfo)->err->msg_parm.s, (str), JMSG_STR_PARM_MAX), \
|
|
332
337
|
(cinfo)->err->msg_parm.s[JMSG_STR_PARM_MAX - 1] = '\0', \
|
package/include/jmorecfg.h
CHANGED
|
@@ -4,8 +4,10 @@
|
|
|
4
4
|
* This file was part of the Independent JPEG Group's software:
|
|
5
5
|
* Copyright (C) 1991-1997, Thomas G. Lane.
|
|
6
6
|
* Modified 1997-2009 by Guido Vollbeding.
|
|
7
|
+
* Lossless JPEG Modifications:
|
|
8
|
+
* Copyright (C) 1999, Ken Murchison.
|
|
7
9
|
* libjpeg-turbo Modifications:
|
|
8
|
-
* Copyright (C) 2009, 2011, 2014-2015, 2018, 2020, D. R. Commander.
|
|
10
|
+
* Copyright (C) 2009, 2011, 2014-2015, 2018, 2020, 2022, D. R. Commander.
|
|
9
11
|
* For conditions of distribution and use, see the accompanying README.ijg
|
|
10
12
|
* file.
|
|
11
13
|
*
|
|
@@ -41,31 +43,29 @@
|
|
|
41
43
|
* arrays is very slow on your hardware, you might want to change these.
|
|
42
44
|
*/
|
|
43
45
|
|
|
44
|
-
|
|
45
|
-
/* JSAMPLE should be the smallest type that will hold the values 0..255.
|
|
46
|
-
*/
|
|
46
|
+
/* JSAMPLE should be the smallest type that will hold the values 0..255. */
|
|
47
47
|
|
|
48
48
|
typedef unsigned char JSAMPLE;
|
|
49
49
|
#define GETJSAMPLE(value) ((int)(value))
|
|
50
50
|
|
|
51
|
-
#define MAXJSAMPLE
|
|
52
|
-
#define CENTERJSAMPLE
|
|
51
|
+
#define MAXJSAMPLE 255
|
|
52
|
+
#define CENTERJSAMPLE 128
|
|
53
53
|
|
|
54
|
-
#endif /* BITS_IN_JSAMPLE == 8 */
|
|
55
54
|
|
|
55
|
+
/* J12SAMPLE should be the smallest type that will hold the values 0..4095. */
|
|
56
56
|
|
|
57
|
-
|
|
58
|
-
/* JSAMPLE should be the smallest type that will hold the values 0..4095.
|
|
59
|
-
* On nearly all machines "short" will do nicely.
|
|
60
|
-
*/
|
|
57
|
+
typedef short J12SAMPLE;
|
|
61
58
|
|
|
62
|
-
|
|
63
|
-
#define
|
|
59
|
+
#define MAXJ12SAMPLE 4095
|
|
60
|
+
#define CENTERJ12SAMPLE 2048
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
/* J16SAMPLE should be the smallest type that will hold the values 0..65535. */
|
|
64
64
|
|
|
65
|
-
|
|
66
|
-
#define CENTERJSAMPLE 2048
|
|
65
|
+
typedef unsigned short J16SAMPLE;
|
|
67
66
|
|
|
68
|
-
#
|
|
67
|
+
#define MAXJ16SAMPLE 65535
|
|
68
|
+
#define CENTERJ16SAMPLE 32768
|
|
69
69
|
|
|
70
70
|
|
|
71
71
|
/* Representation of a DCT frequency coefficient.
|
|
@@ -242,14 +242,16 @@ typedef int boolean;
|
|
|
242
242
|
|
|
243
243
|
#define C_MULTISCAN_FILES_SUPPORTED /* Multiple-scan JPEG files? */
|
|
244
244
|
#define C_PROGRESSIVE_SUPPORTED /* Progressive JPEG? (Requires MULTISCAN)*/
|
|
245
|
+
#define C_LOSSLESS_SUPPORTED /* Lossless JPEG? */
|
|
245
246
|
#define ENTROPY_OPT_SUPPORTED /* Optimization of entropy coding parms? */
|
|
246
247
|
/* Note: if you selected 12-bit data precision, it is dangerous to turn off
|
|
247
248
|
* ENTROPY_OPT_SUPPORTED. The standard Huffman tables are only good for 8-bit
|
|
248
249
|
* precision, so jchuff.c normally uses entropy optimization to compute
|
|
249
250
|
* usable tables for higher precision. If you don't want to do optimization,
|
|
250
251
|
* you'll have to supply different default Huffman tables.
|
|
251
|
-
* The exact same statements apply for progressive JPEG:
|
|
252
|
-
* don't work for progressive mode
|
|
252
|
+
* The exact same statements apply for progressive and lossless JPEG:
|
|
253
|
+
* the default tables don't work for progressive mode or lossless mode.
|
|
254
|
+
* (This may get fixed, however.)
|
|
253
255
|
*/
|
|
254
256
|
#define INPUT_SMOOTHING_SUPPORTED /* Input image smoothing option? */
|
|
255
257
|
|
|
@@ -257,6 +259,7 @@ typedef int boolean;
|
|
|
257
259
|
|
|
258
260
|
#define D_MULTISCAN_FILES_SUPPORTED /* Multiple-scan JPEG files? */
|
|
259
261
|
#define D_PROGRESSIVE_SUPPORTED /* Progressive JPEG? (Requires MULTISCAN)*/
|
|
262
|
+
#define D_LOSSLESS_SUPPORTED /* Lossless JPEG? */
|
|
260
263
|
#define SAVE_MARKERS_SUPPORTED /* jpeg_save_markers() needed? */
|
|
261
264
|
#define BLOCK_SMOOTHING_SUPPORTED /* Block smoothing? (Progressive only) */
|
|
262
265
|
#define IDCT_SCALING_SUPPORTED /* Output rescaling via IDCT? */
|