PyMuPDF 1.26.6__cp310-abi3-win_amd64.whl

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.
Files changed (112) hide show
  1. fitz/__init__.py +13 -0
  2. fitz/table.py +2 -0
  3. fitz/utils.py +2 -0
  4. pymupdf/__init__.py +25899 -0
  5. pymupdf/__main__.py +1140 -0
  6. pymupdf/_apply_pages.py +253 -0
  7. pymupdf/_build.py +8 -0
  8. pymupdf/_extra.pyd +0 -0
  9. pymupdf/_mupdf.pyd +0 -0
  10. pymupdf/_wxcolors.py +562 -0
  11. pymupdf/extra.py +220 -0
  12. pymupdf/mupdf-devel/include/mupdf/classes.h +19999 -0
  13. pymupdf/mupdf-devel/include/mupdf/classes2.h +12244 -0
  14. pymupdf/mupdf-devel/include/mupdf/exceptions.h +118 -0
  15. pymupdf/mupdf-devel/include/mupdf/extra.h +189 -0
  16. pymupdf/mupdf-devel/include/mupdf/fitz/archive.h +444 -0
  17. pymupdf/mupdf-devel/include/mupdf/fitz/band-writer.h +117 -0
  18. pymupdf/mupdf-devel/include/mupdf/fitz/barcode.h +138 -0
  19. pymupdf/mupdf-devel/include/mupdf/fitz/bidi.h +90 -0
  20. pymupdf/mupdf-devel/include/mupdf/fitz/bitmap.h +188 -0
  21. pymupdf/mupdf-devel/include/mupdf/fitz/buffer.h +250 -0
  22. pymupdf/mupdf-devel/include/mupdf/fitz/color.h +433 -0
  23. pymupdf/mupdf-devel/include/mupdf/fitz/compress.h +132 -0
  24. pymupdf/mupdf-devel/include/mupdf/fitz/compressed-buffer.h +194 -0
  25. pymupdf/mupdf-devel/include/mupdf/fitz/config.h +302 -0
  26. pymupdf/mupdf-devel/include/mupdf/fitz/context.h +1064 -0
  27. pymupdf/mupdf-devel/include/mupdf/fitz/crypt.h +270 -0
  28. pymupdf/mupdf-devel/include/mupdf/fitz/deskew.h +46 -0
  29. pymupdf/mupdf-devel/include/mupdf/fitz/device.h +652 -0
  30. pymupdf/mupdf-devel/include/mupdf/fitz/display-list.h +142 -0
  31. pymupdf/mupdf-devel/include/mupdf/fitz/document.h +1103 -0
  32. pymupdf/mupdf-devel/include/mupdf/fitz/export.h +52 -0
  33. pymupdf/mupdf-devel/include/mupdf/fitz/filter.h +269 -0
  34. pymupdf/mupdf-devel/include/mupdf/fitz/font.h +858 -0
  35. pymupdf/mupdf-devel/include/mupdf/fitz/geometry.h +885 -0
  36. pymupdf/mupdf-devel/include/mupdf/fitz/getopt.h +134 -0
  37. pymupdf/mupdf-devel/include/mupdf/fitz/glyph-cache.h +96 -0
  38. pymupdf/mupdf-devel/include/mupdf/fitz/glyph.h +81 -0
  39. pymupdf/mupdf-devel/include/mupdf/fitz/hash.h +126 -0
  40. pymupdf/mupdf-devel/include/mupdf/fitz/heap-imp.h +190 -0
  41. pymupdf/mupdf-devel/include/mupdf/fitz/heap.h +143 -0
  42. pymupdf/mupdf-devel/include/mupdf/fitz/image.h +451 -0
  43. pymupdf/mupdf-devel/include/mupdf/fitz/json.h +98 -0
  44. pymupdf/mupdf-devel/include/mupdf/fitz/link.h +130 -0
  45. pymupdf/mupdf-devel/include/mupdf/fitz/log.h +61 -0
  46. pymupdf/mupdf-devel/include/mupdf/fitz/outline.h +254 -0
  47. pymupdf/mupdf-devel/include/mupdf/fitz/output-svg.h +64 -0
  48. pymupdf/mupdf-devel/include/mupdf/fitz/output.h +448 -0
  49. pymupdf/mupdf-devel/include/mupdf/fitz/path.h +477 -0
  50. pymupdf/mupdf-devel/include/mupdf/fitz/pixmap.h +516 -0
  51. pymupdf/mupdf-devel/include/mupdf/fitz/pool.h +102 -0
  52. pymupdf/mupdf-devel/include/mupdf/fitz/separation.h +138 -0
  53. pymupdf/mupdf-devel/include/mupdf/fitz/shade.h +233 -0
  54. pymupdf/mupdf-devel/include/mupdf/fitz/store.h +465 -0
  55. pymupdf/mupdf-devel/include/mupdf/fitz/story-writer.h +209 -0
  56. pymupdf/mupdf-devel/include/mupdf/fitz/story.h +232 -0
  57. pymupdf/mupdf-devel/include/mupdf/fitz/stream.h +646 -0
  58. pymupdf/mupdf-devel/include/mupdf/fitz/string-util.h +335 -0
  59. pymupdf/mupdf-devel/include/mupdf/fitz/structured-text.h +924 -0
  60. pymupdf/mupdf-devel/include/mupdf/fitz/system.h +495 -0
  61. pymupdf/mupdf-devel/include/mupdf/fitz/text.h +210 -0
  62. pymupdf/mupdf-devel/include/mupdf/fitz/track-usage.h +57 -0
  63. pymupdf/mupdf-devel/include/mupdf/fitz/transition.h +76 -0
  64. pymupdf/mupdf-devel/include/mupdf/fitz/tree.h +62 -0
  65. pymupdf/mupdf-devel/include/mupdf/fitz/types.h +41 -0
  66. pymupdf/mupdf-devel/include/mupdf/fitz/util.h +159 -0
  67. pymupdf/mupdf-devel/include/mupdf/fitz/version.h +31 -0
  68. pymupdf/mupdf-devel/include/mupdf/fitz/write-pixmap.h +507 -0
  69. pymupdf/mupdf-devel/include/mupdf/fitz/writer.h +269 -0
  70. pymupdf/mupdf-devel/include/mupdf/fitz/xml.h +435 -0
  71. pymupdf/mupdf-devel/include/mupdf/fitz.h +101 -0
  72. pymupdf/mupdf-devel/include/mupdf/functions.h +13819 -0
  73. pymupdf/mupdf-devel/include/mupdf/helpers/mu-office-lib.h +666 -0
  74. pymupdf/mupdf-devel/include/mupdf/helpers/mu-threads.h +280 -0
  75. pymupdf/mupdf-devel/include/mupdf/helpers/pkcs7-openssl.h +48 -0
  76. pymupdf/mupdf-devel/include/mupdf/html.h +53 -0
  77. pymupdf/mupdf-devel/include/mupdf/internal.h +29 -0
  78. pymupdf/mupdf-devel/include/mupdf/memento.h +425 -0
  79. pymupdf/mupdf-devel/include/mupdf/pdf/annot.h +1015 -0
  80. pymupdf/mupdf-devel/include/mupdf/pdf/clean.h +68 -0
  81. pymupdf/mupdf-devel/include/mupdf/pdf/cmap.h +145 -0
  82. pymupdf/mupdf-devel/include/mupdf/pdf/crypt.h +108 -0
  83. pymupdf/mupdf-devel/include/mupdf/pdf/document.h +902 -0
  84. pymupdf/mupdf-devel/include/mupdf/pdf/event.h +167 -0
  85. pymupdf/mupdf-devel/include/mupdf/pdf/font.h +168 -0
  86. pymupdf/mupdf-devel/include/mupdf/pdf/form.h +381 -0
  87. pymupdf/mupdf-devel/include/mupdf/pdf/image-rewriter.h +78 -0
  88. pymupdf/mupdf-devel/include/mupdf/pdf/interpret.h +518 -0
  89. pymupdf/mupdf-devel/include/mupdf/pdf/javascript.h +43 -0
  90. pymupdf/mupdf-devel/include/mupdf/pdf/name-table.h +621 -0
  91. pymupdf/mupdf-devel/include/mupdf/pdf/object.h +445 -0
  92. pymupdf/mupdf-devel/include/mupdf/pdf/page.h +327 -0
  93. pymupdf/mupdf-devel/include/mupdf/pdf/parse.h +61 -0
  94. pymupdf/mupdf-devel/include/mupdf/pdf/recolor.h +49 -0
  95. pymupdf/mupdf-devel/include/mupdf/pdf/resource.h +144 -0
  96. pymupdf/mupdf-devel/include/mupdf/pdf/xref.h +300 -0
  97. pymupdf/mupdf-devel/include/mupdf/pdf/zugferd.h +49 -0
  98. pymupdf/mupdf-devel/include/mupdf/pdf.h +59 -0
  99. pymupdf/mupdf-devel/include/mupdf/ucdn.h +464 -0
  100. pymupdf/mupdf-devel/lib/libmuthreads.lib +0 -0
  101. pymupdf/mupdf-devel/lib/mupdfcpp64.lib +0 -0
  102. pymupdf/mupdf.py +63667 -0
  103. pymupdf/mupdfcpp64.dll +0 -0
  104. pymupdf/pymupdf.py +2 -0
  105. pymupdf/table.py +2697 -0
  106. pymupdf/utils.py +1169 -0
  107. pymupdf-1.26.6.dist-info/COPYING +1 -0
  108. pymupdf-1.26.6.dist-info/METADATA +83 -0
  109. pymupdf-1.26.6.dist-info/README.md +60 -0
  110. pymupdf-1.26.6.dist-info/RECORD +112 -0
  111. pymupdf-1.26.6.dist-info/WHEEL +4 -0
  112. pymupdf-1.26.6.dist-info/entry_points.txt +3 -0
@@ -0,0 +1,194 @@
1
+ // Copyright (C) 2004-2025 Artifex Software, Inc.
2
+ //
3
+ // This file is part of MuPDF.
4
+ //
5
+ // MuPDF is free software: you can redistribute it and/or modify it under the
6
+ // terms of the GNU Affero General Public License as published by the Free
7
+ // Software Foundation, either version 3 of the License, or (at your option)
8
+ // any later version.
9
+ //
10
+ // MuPDF is distributed in the hope that it will be useful, but WITHOUT ANY
11
+ // WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
12
+ // FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
13
+ // details.
14
+ //
15
+ // You should have received a copy of the GNU Affero General Public License
16
+ // along with MuPDF. If not, see <https://www.gnu.org/licenses/agpl-3.0.en.html>
17
+ //
18
+ // Alternative licensing terms are available from the licensor.
19
+ // For commercial licensing, see <https://www.artifex.com/> or contact
20
+ // Artifex Software, Inc., 39 Mesa Street, Suite 108A, San Francisco,
21
+ // CA 94129, USA, for further information.
22
+
23
+ #ifndef MUPDF_FITZ_COMPRESSED_BUFFER_H
24
+ #define MUPDF_FITZ_COMPRESSED_BUFFER_H
25
+
26
+ #include "mupdf/fitz/system.h"
27
+ #include "mupdf/fitz/context.h"
28
+ #include "mupdf/fitz/buffer.h"
29
+ #include "mupdf/fitz/stream.h"
30
+ #include "mupdf/fitz/filter.h"
31
+
32
+ /**
33
+ Compression parameters used for buffers of compressed data;
34
+ typically for the source data for images.
35
+ */
36
+ typedef struct
37
+ {
38
+ int type;
39
+ union {
40
+ struct {
41
+ int color_transform; /* Use -1 for unset */
42
+ int invert_cmyk; /* Use 1 for standalone JPEG files */
43
+ } jpeg;
44
+ struct {
45
+ int smask_in_data;
46
+ } jpx;
47
+ struct {
48
+ fz_jbig2_globals *globals;
49
+ int embedded;
50
+ } jbig2;
51
+ struct {
52
+ int columns;
53
+ int rows;
54
+ int k;
55
+ int end_of_line;
56
+ int encoded_byte_align;
57
+ int end_of_block;
58
+ int black_is_1;
59
+ int damaged_rows_before_error;
60
+ } fax;
61
+ struct
62
+ {
63
+ int columns;
64
+ int colors;
65
+ int predictor;
66
+ int bpc;
67
+ }
68
+ flate;
69
+ struct
70
+ {
71
+ int columns;
72
+ int colors;
73
+ int predictor;
74
+ int bpc;
75
+ }
76
+ brotli;
77
+ struct
78
+ {
79
+ int columns;
80
+ int colors;
81
+ int predictor;
82
+ int bpc;
83
+ int early_change;
84
+ } lzw;
85
+ } u;
86
+ } fz_compression_params;
87
+
88
+ /**
89
+ Buffers of compressed data; typically for the source data
90
+ for images.
91
+ */
92
+ typedef struct
93
+ {
94
+ int refs;
95
+ fz_compression_params params;
96
+ fz_buffer *buffer;
97
+ } fz_compressed_buffer;
98
+
99
+ /**
100
+ Take a reference to an fz_compressed_buffer.
101
+ */
102
+ fz_compressed_buffer *fz_keep_compressed_buffer(fz_context *ctx, fz_compressed_buffer *cbuf);
103
+
104
+ /**
105
+ Return the storage size used for a buffer and its data.
106
+ Used in implementing store handling.
107
+
108
+ Never throws exceptions.
109
+ */
110
+ size_t fz_compressed_buffer_size(fz_compressed_buffer *buffer);
111
+
112
+ /**
113
+ Open a stream to read the decompressed version of a buffer.
114
+ */
115
+ fz_stream *fz_open_compressed_buffer(fz_context *ctx, fz_compressed_buffer *);
116
+
117
+ /**
118
+ Open a stream to read the decompressed version of a buffer,
119
+ with optional log2 subsampling.
120
+
121
+ l2factor = NULL for no subsampling, or a pointer to an integer
122
+ containing the maximum log2 subsample factor acceptable (0 =
123
+ none, 1 = halve dimensions, 2 = quarter dimensions etc). If
124
+ non-NULL, then *l2factor will be updated on exit with the actual
125
+ log2 subsample factor achieved.
126
+ */
127
+ fz_stream *fz_open_image_decomp_stream_from_buffer(fz_context *ctx, fz_compressed_buffer *, int *l2factor);
128
+
129
+ /**
130
+ Open a stream to read the decompressed version of another stream
131
+ with optional log2 subsampling.
132
+ */
133
+ fz_stream *fz_open_image_decomp_stream(fz_context *ctx, fz_stream *, fz_compression_params *, int *l2factor);
134
+
135
+ /**
136
+ Recognise image format strings in the first 8 bytes from image
137
+ data.
138
+ */
139
+ int fz_recognize_image_format(fz_context *ctx, unsigned char p[8]);
140
+
141
+ /**
142
+ Map from FZ_IMAGE_* value to string.
143
+
144
+ The returned string is static and therefore must not be freed.
145
+ */
146
+ const char *fz_image_type_name(int type);
147
+
148
+ /**
149
+ Map from (case sensitive) image type string to FZ_IMAGE_*
150
+ type value.
151
+ */
152
+ int fz_lookup_image_type(const char *type);
153
+
154
+ enum
155
+ {
156
+ FZ_IMAGE_UNKNOWN = 0,
157
+
158
+ /* Uncompressed samples */
159
+ FZ_IMAGE_RAW,
160
+
161
+ /* Compressed samples */
162
+ FZ_IMAGE_FAX,
163
+ FZ_IMAGE_FLATE,
164
+ FZ_IMAGE_LZW,
165
+ FZ_IMAGE_RLD,
166
+ FZ_IMAGE_BROTLI,
167
+
168
+ /* Full image formats */
169
+ FZ_IMAGE_BMP,
170
+ FZ_IMAGE_GIF,
171
+ FZ_IMAGE_JBIG2,
172
+ FZ_IMAGE_JPEG,
173
+ FZ_IMAGE_JPX,
174
+ FZ_IMAGE_JXR,
175
+ FZ_IMAGE_PNG,
176
+ FZ_IMAGE_PNM,
177
+ FZ_IMAGE_TIFF,
178
+ FZ_IMAGE_PSD,
179
+ };
180
+
181
+ /**
182
+ Drop a reference to a compressed buffer. Destroys the buffer
183
+ and frees any storage/other references held by it.
184
+
185
+ Never throws exceptions.
186
+ */
187
+ void fz_drop_compressed_buffer(fz_context *ctx, fz_compressed_buffer *buf);
188
+
189
+ /**
190
+ Create a new, UNKNOWN format, compressed_buffer.
191
+ */
192
+ fz_compressed_buffer *fz_new_compressed_buffer(fz_context *ctx);
193
+
194
+ #endif
@@ -0,0 +1,302 @@
1
+ #define TOFU_CJK_EXT 1 /* PyMuPDF override. */
2
+ // Copyright (C) 2004-2025 Artifex Software, Inc.
3
+ //
4
+ // This file is part of MuPDF.
5
+ //
6
+ // MuPDF is free software: you can redistribute it and/or modify it under the
7
+ // terms of the GNU Affero General Public License as published by the Free
8
+ // Software Foundation, either version 3 of the License, or (at your option)
9
+ // any later version.
10
+ //
11
+ // MuPDF is distributed in the hope that it will be useful, but WITHOUT ANY
12
+ // WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
13
+ // FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
14
+ // details.
15
+ //
16
+ // You should have received a copy of the GNU Affero General Public License
17
+ // along with MuPDF. If not, see <https://www.gnu.org/licenses/agpl-3.0.en.html>
18
+ //
19
+ // Alternative licensing terms are available from the licensor.
20
+ // For commercial licensing, see <https://www.artifex.com/> or contact
21
+ // Artifex Software, Inc., 39 Mesa Street, Suite 108A, San Francisco,
22
+ // CA 94129, USA, for further information.
23
+
24
+ #ifndef FZ_CONFIG_H
25
+
26
+ #define FZ_CONFIG_H
27
+
28
+ /**
29
+ Enable the following for spot (and hence overprint/overprint
30
+ simulation) capable rendering. This forces FZ_PLOTTERS_N on.
31
+ */
32
+ /* #define FZ_ENABLE_SPOT_RENDERING 1 */
33
+
34
+ /**
35
+ Choose which plotters we need.
36
+ By default we build all the plotters in. To avoid building
37
+ plotters in that aren't needed, define the unwanted
38
+ FZ_PLOTTERS_... define to 0.
39
+ */
40
+ /* #define FZ_PLOTTERS_G 1 */
41
+ /* #define FZ_PLOTTERS_RGB 1 */
42
+ /* #define FZ_PLOTTERS_CMYK 1 */
43
+ /* #define FZ_PLOTTERS_N 1 */
44
+
45
+ /**
46
+ Choose which document agents to include.
47
+ By default all are enabled. To avoid building unwanted
48
+ ones, define FZ_ENABLE_... to 0.
49
+ */
50
+ /* #define FZ_ENABLE_PDF 1 */
51
+ /* #define FZ_ENABLE_XPS 1 */
52
+ /* #define FZ_ENABLE_SVG 1 */
53
+ /* #define FZ_ENABLE_CBZ 1 */
54
+ /* #define FZ_ENABLE_IMG 1 */
55
+ /* #define FZ_ENABLE_HTML 1 */
56
+ /* #define FZ_ENABLE_FB2 1 */
57
+ /* #define FZ_ENABLE_MOBI 1 */
58
+ /* #define FZ_ENABLE_EPUB 1 */
59
+ /* #define FZ_ENABLE_OFFICE 1 */
60
+ /* #define FZ_ENABLE_TXT 1 */
61
+
62
+ /**
63
+ Some of those document agents rely on the HTML
64
+ engine. This will be enabled if required based upon
65
+ those engines, but can be enabled independently of
66
+ them so that other features (such as the fz_story
67
+ mechanism or PDF Annotation rich content) can work.
68
+ */
69
+ /* #define FZ_ENABLE_HTML_ENGINE 1 */
70
+
71
+ /**
72
+ Choose which document writers to include.
73
+ By default all are enabled. To avoid building unwanted
74
+ ones, define FZ_ENABLE_..._OUTPUT to 0.
75
+ */
76
+ /* #define FZ_ENABLE_OCR_OUTPUT 1 */
77
+ /* #define FZ_ENABLE_DOCX_OUTPUT 1 */
78
+ /* #define FZ_ENABLE_ODT_OUTPUT 1 */
79
+
80
+ /**
81
+ Choose whether to enable ICC color profiles.
82
+ */
83
+ /* #define FZ_ENABLE_ICC 1 */
84
+
85
+ /**
86
+ Choose whether to enable JPEG2000 decoding.
87
+ By default, it is enabled, but due to frequent security
88
+ issues with the third party libraries we support disabling
89
+ it with this flag.
90
+ */
91
+ /* #define FZ_ENABLE_JPX 1 */
92
+
93
+ /**
94
+ Choose whether to enable Brotli compression support.
95
+ By default, it is enabled.
96
+ */
97
+ /* #define FZ_ENABLE_BROTLI 1 */
98
+
99
+ /**
100
+ Choose whether to enable JavaScript.
101
+ By default JavaScript is enabled both for mutool and PDF
102
+ interactivity.
103
+ */
104
+ /* #define FZ_ENABLE_JS 1 */
105
+
106
+ /**
107
+ Choose whether to enable barcode functionality.
108
+ It is enabled by default, unless disabled by the build
109
+ system.
110
+ */
111
+ /* #define FZ_ENABLE_BARCODE 1 */
112
+
113
+ /**
114
+ Choose which fonts to include.
115
+ By default we include the base 14 PDF fonts,
116
+ DroidSansFallback from Android for CJK, and
117
+ Charis SIL from SIL for epub/html.
118
+ Enable the following defines to AVOID including
119
+ unwanted fonts.
120
+ */
121
+ /* To avoid all noto fonts except CJK, enable: */
122
+ /* #define TOFU */
123
+
124
+ /* To skip the CJK font, enable: (this implicitly enables TOFU_CJK_EXT
125
+ * and TOFU_CJK_LANG) */
126
+ /* #define TOFU_CJK */
127
+
128
+ /* To skip CJK Extension A, enable: (this implicitly enables
129
+ * TOFU_CJK_LANG) */
130
+ /* #define TOFU_CJK_EXT */
131
+
132
+ /* To skip CJK language specific fonts, enable: */
133
+ /* #define TOFU_CJK_LANG */
134
+
135
+ /* To skip the Emoji font, enable: */
136
+ /* #define TOFU_EMOJI */
137
+
138
+ /* To skip the ancient/historic scripts, enable: */
139
+ /* #define TOFU_HISTORIC */
140
+
141
+ /* To skip the symbol font, enable: */
142
+ /* #define TOFU_SYMBOL */
143
+
144
+ /* To skip the SIL fonts, enable: */
145
+ /* #define TOFU_SIL */
146
+
147
+ /* To skip the Base14 fonts, enable: */
148
+ /* #define TOFU_BASE14 */
149
+ /* (You probably really don't want to do that except for measurement
150
+ * purposes!) */
151
+
152
+ /* ---------- DO NOT EDIT ANYTHING UNDER THIS LINE ---------- */
153
+
154
+ #ifndef FZ_ENABLE_SPOT_RENDERING
155
+ #define FZ_ENABLE_SPOT_RENDERING 1
156
+ #endif
157
+
158
+ #if FZ_ENABLE_SPOT_RENDERING
159
+ #undef FZ_PLOTTERS_N
160
+ #define FZ_PLOTTERS_N 1
161
+ #endif /* FZ_ENABLE_SPOT_RENDERING */
162
+
163
+ #ifndef FZ_PLOTTERS_G
164
+ #define FZ_PLOTTERS_G 1
165
+ #endif /* FZ_PLOTTERS_G */
166
+
167
+ #ifndef FZ_PLOTTERS_RGB
168
+ #define FZ_PLOTTERS_RGB 1
169
+ #endif /* FZ_PLOTTERS_RGB */
170
+
171
+ #ifndef FZ_PLOTTERS_CMYK
172
+ #define FZ_PLOTTERS_CMYK 1
173
+ #endif /* FZ_PLOTTERS_CMYK */
174
+
175
+ #ifndef FZ_PLOTTERS_N
176
+ #define FZ_PLOTTERS_N 1
177
+ #endif /* FZ_PLOTTERS_N */
178
+
179
+ /* We need at least 1 plotter defined */
180
+ #if FZ_PLOTTERS_G == 0 && FZ_PLOTTERS_RGB == 0 && FZ_PLOTTERS_CMYK == 0
181
+ #undef FZ_PLOTTERS_N
182
+ #define FZ_PLOTTERS_N 1
183
+ #endif
184
+
185
+ #ifndef FZ_ENABLE_PDF
186
+ #define FZ_ENABLE_PDF 1
187
+ #endif /* FZ_ENABLE_PDF */
188
+
189
+ #ifndef FZ_ENABLE_XPS
190
+ #define FZ_ENABLE_XPS 1
191
+ #endif /* FZ_ENABLE_XPS */
192
+
193
+ #ifndef FZ_ENABLE_SVG
194
+ #define FZ_ENABLE_SVG 1
195
+ #endif /* FZ_ENABLE_SVG */
196
+
197
+ #ifndef FZ_ENABLE_CBZ
198
+ #define FZ_ENABLE_CBZ 1
199
+ #endif /* FZ_ENABLE_CBZ */
200
+
201
+ #ifndef FZ_ENABLE_IMG
202
+ #define FZ_ENABLE_IMG 1
203
+ #endif /* FZ_ENABLE_IMG */
204
+
205
+ #ifndef FZ_ENABLE_HTML
206
+ #define FZ_ENABLE_HTML 1
207
+ #endif /* FZ_ENABLE_HTML */
208
+
209
+ #ifndef FZ_ENABLE_EPUB
210
+ #define FZ_ENABLE_EPUB 1
211
+ #endif /* FZ_ENABLE_EPUB */
212
+
213
+ #ifndef FZ_ENABLE_FB2
214
+ #define FZ_ENABLE_FB2 1
215
+ #endif /* FZ_ENABLE_FB2 */
216
+
217
+ #ifndef FZ_ENABLE_MOBI
218
+ #define FZ_ENABLE_MOBI 1
219
+ #endif /* FZ_ENABLE_MOBI */
220
+
221
+ #ifndef FZ_ENABLE_TXT
222
+ #define FZ_ENABLE_TXT 1
223
+ #endif /* FZ_ENABLE_TXT */
224
+
225
+ #ifndef FZ_ENABLE_OFFICE
226
+ #define FZ_ENABLE_OFFICE 1
227
+ #endif /* FZ_ENABLE_OFFICE */
228
+
229
+ #ifndef FZ_ENABLE_OCR_OUTPUT
230
+ #define FZ_ENABLE_OCR_OUTPUT 1
231
+ #endif /* FZ_ENABLE_OCR_OUTPUT */
232
+
233
+ #ifndef FZ_ENABLE_ODT_OUTPUT
234
+ #define FZ_ENABLE_ODT_OUTPUT 1
235
+ #endif /* FZ_ENABLE_ODT_OUTPUT */
236
+
237
+ #ifndef FZ_ENABLE_DOCX_OUTPUT
238
+ #define FZ_ENABLE_DOCX_OUTPUT 1
239
+ #endif /* FZ_ENABLE_DOCX_OUTPUT */
240
+
241
+ #ifndef FZ_ENABLE_JPX
242
+ #define FZ_ENABLE_JPX 1
243
+ #endif /* FZ_ENABLE_JPX */
244
+
245
+ #ifndef FZ_ENABLE_BROTLI
246
+ #define FZ_ENABLE_BROTLI 1
247
+ #endif /* FZ_ENABLE_BROTLI */
248
+
249
+ #ifndef FZ_ENABLE_JS
250
+ #define FZ_ENABLE_JS 1
251
+ #endif /* FZ_ENABLE_JS */
252
+
253
+ #ifndef FZ_ENABLE_ICC
254
+ #define FZ_ENABLE_ICC 1
255
+ #endif /* FZ_ENABLE_ICC */
256
+
257
+ #ifdef FZ_ENABLE_HTML_ENGINE
258
+ #if FZ_ENABLE_HTML_ENGINE == 0
259
+ #if FZ_ENABLE_HTML == 1
260
+ #error FZ_ENABLE_HTML cannot work without FZ_ENABLE_HTML_ENGINE
261
+ #endif
262
+ #if FZ_ENABLE_EPUB == 1
263
+ #error FZ_ENABLE_EPUB cannot work without FZ_ENABLE_HTML_ENGINE
264
+ #endif
265
+ #if FZ_ENABLE_MOBI == 1
266
+ #error FZ_ENABLE_MOBI cannot work without FZ_ENABLE_HTML_ENGINE
267
+ #endif
268
+ #if FZ_ENABLE_FB2 == 1
269
+ #error FZ_ENABLE_FB2 cannot work without FZ_ENABLE_HTML_ENGINE
270
+ #endif
271
+ #if FZ_ENABLE_TXT == 1
272
+ #error FZ_ENABLE_TXT cannot work without FZ_ENABLE_HTML_ENGINE
273
+ #endif
274
+ #if FZ_ENABLE_OFFICE == 1
275
+ #error FZ_ENABLE_OFFICE cannot work without FZ_ENABLE_HTML_ENGINE
276
+ #endif
277
+ #endif
278
+ #else
279
+ #if FZ_ENABLE_HTML || FZ_ENABLE_EPUB || FZ_ENABLE_MOBI || FZ_ENABLE_FB2 || FZ_ENABLE_TXT || FZ_ENABLE_OFFICE
280
+ #define FZ_ENABLE_HTML_ENGINE 1
281
+ #else
282
+ #define FZ_ENABLE_HTML_ENGINE 0
283
+ #endif
284
+ #endif
285
+
286
+ /* If Epub and HTML are both disabled, disable SIL fonts */
287
+ #if FZ_ENABLE_HTML == 0 && FZ_ENABLE_EPUB == 0
288
+ #undef TOFU_SIL
289
+ #define TOFU_SIL
290
+ #endif
291
+
292
+ #if !defined(HAVE_LEPTONICA) || !defined(HAVE_TESSERACT)
293
+ #ifndef OCR_DISABLED
294
+ #define OCR_DISABLED
295
+ #endif
296
+ #endif
297
+
298
+ #if !defined(FZ_ENABLE_BARCODE)
299
+ #define FZ_ENABLE_BARCODE 1
300
+ #endif
301
+
302
+ #endif /* FZ_CONFIG_H */