PluginProbe
PDF & Print by BestWebSoft – WordPress Posts and Pages PDF Generator Plugin / 1.5
PDF & Print by BestWebSoft – WordPress Posts and Pages PDF Generator Plugin v1.5
trunk 1.5 1.6 1.7 1.7.1 1.7.2 1.7.3 1.7.4 1.7.5 1.7.6 1.7.7 1.7.8 1.7.9 1.8.0 1.8.1 1.8.2 1.8.3 1.8.4 1.8.5 1.8.6 1.8.7 1.8.8 1.8.9 1.9.0 1.9.1 All 71 releases
pdf-print / mpdf / config.php

config.php in PDF & Print by BestWebSoft – WordPress Posts and Pages PDF Generator Plugin 1.5, at mpdf/config.php

548 lines 22.0 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 // mPDF 5.4
4 // Using disk to cache table data can reduce memory usage dramatically, but at a cost of increased
5 // executon time and disk access (read and write)
6 $this->cacheTables = false;
7
8 // Set an optional array to specify appearance of Bookmarks (by level)
9 // Default values are Black and normal style
10 /*
11 Example:
12 $this->bookmarkStyles = array(
13 0 => array('color'=> array(0,64,128), 'style'=>'B'),
14 1 => array('color'=> array(128,0,0), 'style'=>''),
15 2 => array('color'=> array(0,128,0), 'style'=>'I'),
16 );
17 */
18 $this->bookmarkStyles = array();
19
20 // ACTIVE FORMS
21 $this->useActiveForms = false;
22
23 // When embedding full TTF font files, remakes the font file using only core tables
24 // May improve function with some PostScript printers (GhostScript/GSView)
25 // Does not work with TTC font collections
26 // Slightly smaller file; increased processing time
27 $this->repackageTTF = false;
28
29 // Set maximum size of TTF font file to allow non-subsets - in kB
30 // Used to avoid e.g. Arial Unicode MS (perhaps used for substitutions) to ever be fully embedded
31 // NB Free serif is 1.5MB, most files are <= 600kB (most 200-400KB)
32 $this->maxTTFFilesize = 2000;
33
34 // this value determines whether to subset or not
35 // 0 - 100 = percent characters
36 // i.e. if ==40, mPDF will embed whole font if >40% characters in that font
37 // or embed subset if <40% characters
38 // 0 will force whole file to be embedded (NO subsetting)
39 // 100 will force always to subset
40 // This value is overridden if you set new mPDF('s)
41 // and/or Can set at runtime
42 $this->percentSubset = 30;
43
44 $this->useAdobeCJK = false; // Uses Adobe CJK fonts for CJK languages
45 // default TRUE; only set false if you have defined some available fonts that support CJK
46 // If true this will not stop use of other CJK fonts if specified by font-family:
47 // and vice versa i.e. only dictates behaviour when specified by lang="" incl. AutoFont()
48
49
50 // Small Caps
51 $this->smCapsScale = 0.75; // Factor of 1 to scale capital letters
52 $this->smCapsStretch = 110; // % to stretch small caps horizontally (i.e. 100 = no stretch)
53
54
55 // PAGING
56 $this->mirrorMargins = 0;
57 $this->restoreBlockPagebreaks = false;
58 $this->forcePortraitMargins = false;
59 $this->displayDefaultOrientation = false;
60 $this->printers_info = false; // Adds date and page info for printer when using @page and "marks:crop;"
61 $this->bleedMargin = 5; // mPDF 5.0.047
62 $this->crossMarkMargin = 5; // Distance of cross mark from margin in mm
63 $this->cropMarkMargin = 8; // Distance of crop mark from margin in mm
64 $this->cropMarkLength = 18; // Default length in mm of crop line
65 $this->nonPrintMargin = 8; // Non-printable border at edge of paper sheet in mm
66
67
68 // PAGE NUMBERING
69 // Page numbering - Conditional Text
70 $this->pagenumPrefix;
71 $this->pagenumSuffix;
72 $this->nbpgPrefix;
73 $this->nbpgSuffix;
74
75
76 // FONTS LANGUAGES & CHARACTER SETS
77 // Allows automatic character set conversion if "charset=xxx" detected in html header (WriteHTML() )
78 $this->allow_charset_conversion = true;
79 $this->biDirectional=false; // automatically determine BIDI text in LTR page
80 $this->autoFontGroupSize = 2; // 1: individual words are spanned; 2: words+; 3: as big chunks as possible.
81 $this->useLang = true; // Default changed in mPDF 4.0
82
83 $this->useSubstitutions = false; // Substitute missing characters in UTF-8(multibyte) documents - from other fonts
84 $this->falseBoldWeight = 5; // Weight for bold text when using an artificial (outline) bold; value 0 (off) - 10 (rec. max)
85
86 // CONFIGURATION
87 $this->allow_output_buffering = false;
88
89 $this->enableImports = false; // Adding mPDFI functions
90
91 $this->collapseBlockMargins = true; // Allows top and bottom margins to collapse between block elements
92 $this->progressBar = 0; // Shows progress-bars whilst generating file 0 off, 1 simple, 2 advanced
93 $this->progbar_heading = 'mPDF file progress';
94 $this->progbar_altHTML = ''; // Should include <html> and <body> but NOT end tags
95 // Can incude <head> and link to stylesheet etc.
96 // e.g. '<html><body><p><img src="loading.gif" /> Creating PDF file. Please wait...</p>';
97
98 $this->dpi = 96; // To interpret "px" pixel values in HTML/CSS (see img_dpi below)
99
100 // Automatically correct for tags where HTML specifies optional end tags e.g. P,LI,DD,TD
101 // If you are confident input html is valid XHTML, turning this off may make it more reliable(?)
102 $this->allow_html_optional_endtags = true;
103 $this->ignore_invalid_utf8 = false;
104 $this->text_input_as_HTML = false; // Converts all entities in Text inputs to UTF-8 before encoding
105 $this->useGraphs = false;
106
107
108
109 // COLORSPACE
110 // 1 - allow GRAYSCALE only [convert CMYK/RGB->gray]
111 // 2 - allow RGB / SPOT COLOR / Grayscale [convert CMYK->RGB]
112 // 3 - allow CMYK / SPOT COLOR / Grayscale [convert RGB->CMYK]
113 $this->restrictColorSpace = 0;
114
115 // PDFX/1-a Compliant files
116 $this->PDFX = false; // true=Forces compliance with PDFX-1a spec
117 // Cannot be used with $this->restrictColorSpace (i.e. no RGB)
118 $this->PDFXauto = false; // Overrides warnings making changes when possible to force PDFX1-a compliance
119
120
121 // PDFA1-b Compliant files
122 $this->PDFA = false; // true=Forces compliance with PDFA-1b spec
123 // Can use with $this->restrictColorSpace=3 (for a CMYK file)
124 // Any other settings, uses RGB profile
125 $this->PDFAauto = false; // Overrides warnings making changes when possible to force PDFA1-b compliance
126
127 $this->ICCProfile = ''; // Colour profile OutputIntent
128 // sRGB_IEC61966-2-1 (=default if blank and PDFA), or other added .icc profile
129 // Must be CMYK for PDFX, or appropriate type for PDFA(RGB or CMYK)
130
131
132 // When writing a block element with position:fixed and overflow:auto, mPDF scales it down to fit in the space
133 // by repeatedly rewriting it and making adjustments. These values give the adjustments used, depending how far out
134 // the previous guess was. The lower the number, the quicker it will finish, but the less accurate the fit may be.
135 // FPR1 is for coarse adjustments, and FPR4 for fine adjustments when it is getting closer.
136 $this->incrementFPR1 = 10; // i.e. will alter by 1/[10]th of width and try again until within closer limits
137 $this->incrementFPR2 = 20;
138 $this->incrementFPR3 = 30;
139 $this->incrementFPR4 = 50; // i.e. will alter by 1/[50]th of width and try again when it nearly fits
140
141
142 // DEBUGGING & DEVELOPERS
143 $this->showStats = false;
144 $this->debug = false;
145 $this->debugfonts = false; // Checks and reports on errors when parsing TTF files - adds significantly to processing time
146 $this->showImageErrors = false;
147 $this->table_error_report = false; // Die and report error if table is too wide to contain whole words
148 $this->table_error_report_param = ''; // Parameter which can be passed to show in error report i.e. chapter number being processed//
149
150
151 // ANNOTATIONS
152 $this->title2annots = false;
153 $this->annotSize = 0.5; // default mm for Adobe annotations - nominal
154 $this->annotMargin; // default position for Annotations
155 $this->annotOpacity = 0.5; // default opacity for Annotations
156
157 // BOOKMARKS
158 $this->anchor2Bookmark = 0; // makes <a name=""> into a bookmark as well as internal link target; 1 = just name; 2 = name (p.34)
159
160 // CSS & STYLES
161 $this->CSSselectMedia='print'; // screen, print, or any other CSS @media type (not "all")
162
163
164 // PAGE HEADERS & FOOTERS
165 $this->forcePortraitHeaders = false;
166 // Values used if simple FOOTER/HEADER given i.e. not array
167 $this->defaultheaderfontsize = 8; // pt
168 $this->defaultheaderfontstyle = 'BI'; // '', or 'B' or 'I' or 'BI'
169 $this->defaultheaderline = 1; // 1 or 0 - line under the header
170 $this->defaultfooterfontsize = 8; // pt
171 $this->defaultfooterfontstyle = 'BI'; // '', or 'B' or 'I' or 'BI'
172 $this->defaultfooterline = 1; // 1 or 0 - line over the footer
173 $this->header_line_spacing = 0.25; // spacing between bottom of header and line (if present) - function of fontsize
174 $this->footer_line_spacing = 0.25; // spacing between bottom of header and line (if present) - function of fontsize
175 // If 'pad' margin-top sets fixed distance in mm (padding) between bottom of header and top of text.
176 // If 'stretch' margin-top sets a minimum distance in mm between top of page and top of text, which expands if header is too large to fit.
177 $this->setAutoTopMargin = false;
178 $this->setAutoBottomMargin = false;
179 $this->autoMarginPadding = 2; // distance in mm used as padding if 'stretch' mode is used
180
181
182
183 // TABLES
184 $this->simpleTables = false; // Forces all cells to have same border, background etc. Improves performance
185 $this->packTableData = false; // Reduce memory usage processing tables (but with increased processing time)
186 $this->ignore_table_percents = false;
187 $this->ignore_table_widths = false;
188 $this->keep_table_proportions = false; // If table width set > page width, force resizing but keep relative sizes
189 // Also forces respect of cell widths set by %
190 $this->shrink_tables_to_fit = 1.4; // automatically reduce fontsize in table if words would have to split ( not in CJK)
191 // 0 or false to disable; value (if set) gives maximum factor to reduce fontsize
192
193 $this->tableMinSizePriority = false; // If page-break-inside:avoid but cannot fit on full page without
194 // exceeding autosize; setting this value to true will force respsect for
195 // autosize, and disable the page-break-inside:avoid
196
197 $this->use_kwt = false;
198 $this->iterationCounter = false; // Set to TRUE to use table Head iteration counter
199
200 // IMAGES
201 $this->img_dpi = 96; // Default dpi to output images if size not defined
202 // See also above "dpi"
203
204 // TEXT SPACING & JUSTIFICATION
205 $this->useKerning = false; // true to use kerning
206 $this->justifyB4br = false; // In justified text, <BR> does not cause the preceding text to be justified in browsers
207 // Change to true to force justification (as in MS Word)
208
209 $this->tabSpaces = 8; // Number of spaces to replace for a TAB in <pre> sections
210 // Notepad uses 6, HTML specification recommends 8
211 $this->jSWord = 0.4; // Proportion (/1) of space (when justifying margins) to allocate to Word vs. Character
212 $this->jSmaxChar = 2; // Maximum spacing to allocate to character spacing. (0 = no maximum)
213
214 $this->jSmaxCharLast = 1; // Maximum character spacing allowed (carried over) when finishing a last line
215 $this->jSmaxWordLast = 2; // Maximum word spacing allowed (carried over) when finishing a last line
216 $this->orphansAllowed = 5; // No of SUP or SUB characters to include on line to avoid leaving e.g. end of line//<sup>32</sup>
217 $this->normalLineheight = 1.33; // Value used for line-height when CSS specified as 'normal' (default)
218
219
220 // CJK Line-breaking
221 $this->allowCJKorphans = true; // FALSE=always wrap to next line; TRUE=squeeze or overflow
222 $this->allowCJKoverflow = false; // FALSE=squeeze; TRUE=overflow (only some characters, and disabled in tables)
223
224
225 // HYPHENATION
226 $this->hyphenate = false;
227 $this->hyphenateTables = false;
228 $this->SHYlang = "en"; // Should be one of: 'en','de','es','fi','fr','it','nl','pl','ru','sv'
229 $this->SHYleftmin = 2;
230 $this->SHYrightmin = 2;
231 $this->SHYcharmin = 2;
232 $this->SHYcharmax = 10;
233
234 // COLUMNS
235 $this->keepColumns = false; // Set to go to the second column only when the first is full of text etc.
236 $this->max_colH_correction = 1.15; // Maximum ratio to adjust column height when justifying - too large a value can give ugly results
237 $this->ColGap=5;
238
239
240 // LISTS
241 $this->list_align_style = 'R'; // Determines alignment of numbers in numbered lists
242 $this->list_indent_first_level = 0; // 1/0 yex/no to indent first level of list
243 $this->list_number_suffix = '.'; // Content to follow a numbered list marker e.g. '.' gives 1. or IV.; ')' gives 1) or a)
244
245
246 // WATERMARKS
247 $this->watermarkImgBehind = false;
248 $this->showWatermarkText = 0;
249 $this->showWatermarkImage = 0;
250 $this->watermarkText = '';
251 $this->watermarkImage = '';
252 $this->watermark_font = '';
253 $this->watermarkTextAlpha = 0.2;
254 $this->watermarkImageAlpha = 0.2;
255 $this->watermarkImgAlphaBlend = 'Normal';
256 // Accepts any PDF spec. value: Normal, Multiply, Screen, Overlay, Darken, Lighten, ColorDodge, ColorBurn,
257 // HardLight, SoftLight, Difference, Exclusion
258 // "Multiply" works well for watermark image on top
259
260 // BORDERS
261 $this->autoPadding = false; // Automatically increases padding in block elements when border-radius set - if required
262
263
264 //////////////////////////////////////////////
265
266 // Default values if no style sheet offered (cf. http://www.w3.org/TR/CSS21/sample.html)
267 $this->defaultCSS = array(
268 'BODY' => array(
269 'FONT-FAMILY' => 'serif',
270 'FONT-SIZE' => '11pt',
271 'TEXT-INDENT' => '0pt',
272 'LINE-HEIGHT' => 'normal',
273 'MARGIN-COLLAPSE' => 'collapse', /* Custom property to collapse top/bottom margins at top/bottom of page - ignored in tables/lists */
274 ),
275 'P' => array(
276 'MARGIN' => '1.12em 0',
277 ),
278 'H1' => array(
279 'FONT-SIZE' => '2em',
280 'FONT-WEIGHT' => 'bold',
281 'MARGIN' => '0.67em 0',
282 'PAGE-BREAK-AFTER' => 'avoid',
283 ),
284 'H2' => array(
285 'FONT-SIZE' => '1.5em',
286 'FONT-WEIGHT' => 'bold',
287 'MARGIN' => '0.75em 0',
288 'PAGE-BREAK-AFTER' => 'avoid',
289 ),
290 'H3' => array(
291 'FONT-SIZE' => '1.17em',
292 'FONT-WEIGHT' => 'bold',
293 'MARGIN' => '0.83em 0',
294 'PAGE-BREAK-AFTER' => 'avoid',
295 ),
296 'H4' => array(
297 'FONT-WEIGHT' => 'bold',
298 'MARGIN' => '1.12em 0',
299 'PAGE-BREAK-AFTER' => 'avoid',
300 ),
301 'H5' => array(
302 'FONT-SIZE' => '0.83em',
303 'FONT-WEIGHT' => 'bold',
304 'MARGIN' => '1.5em 0',
305 'PAGE-BREAK-AFTER' => 'avoid',
306 ),
307 'H6' => array(
308 'FONT-SIZE' => '0.75em',
309 'FONT-WEIGHT' => 'bold',
310 'MARGIN' => '1.67em 0',
311 'PAGE-BREAK-AFTER' => 'avoid',
312 ),
313 'HR' => array(
314 'COLOR' => '#888888',
315 'TEXT-ALIGN' => 'center',
316 'WIDTH' => '100%',
317 'HEIGHT' => '0.2mm',
318 'MARGIN-TOP' => '0.83em',
319 'MARGIN-BOTTOM' => '0.83em',
320 ),
321 'PRE' => array(
322 'MARGIN' => '0.83em 0',
323 'FONT-FAMILY' => 'monospace',
324 ),
325 'S' => array(
326 'TEXT-DECORATION' => 'line-through',
327 ),
328 'STRIKE' => array(
329 'TEXT-DECORATION' => 'line-through',
330 ),
331 'DEL' => array(
332 'TEXT-DECORATION' => 'line-through',
333 ),
334 'SUB' => array(
335 'VERTICAL-ALIGN' => 'sub',
336 'FONT-SIZE' => '55%', /* Recommended 0.83em */
337 ),
338 'SUP' => array(
339 'VERTICAL-ALIGN' => 'super',
340 'FONT-SIZE' => '55%', /* Recommended 0.83em */
341 ),
342 'U' => array(
343 'TEXT-DECORATION' => 'underline',
344 ),
345 'INS' => array(
346 'TEXT-DECORATION' => 'underline',
347 ),
348 'B' => array(
349 'FONT-WEIGHT' => 'bold',
350 ),
351 'STRONG' => array(
352 'FONT-WEIGHT' => 'bold',
353 ),
354 'I' => array(
355 'FONT-STYLE' => 'italic',
356 ),
357 'CITE' => array(
358 'FONT-STYLE' => 'italic',
359 ),
360 'Q' => array(
361 'FONT-STYLE' => 'italic',
362 ),
363 'EM' => array(
364 'FONT-STYLE' => 'italic',
365 ),
366 'VAR' => array(
367 'FONT-STYLE' => 'italic',
368 ),
369 'SAMP' => array(
370 'FONT-FAMILY' => 'monospace',
371 ),
372 'CODE' => array(
373 'FONT-FAMILY' => 'monospace',
374 ),
375 'KBD' => array(
376 'FONT-FAMILY' => 'monospace',
377 ),
378 'TT' => array(
379 'FONT-FAMILY' => 'monospace',
380 ),
381 'SMALL' => array(
382 'FONT-SIZE' => '83%',
383 ),
384 'BIG' => array(
385 'FONT-SIZE' => '117%',
386 ),
387 'ACRONYM' => array(
388 'FONT-SIZE' => '77%',
389 'FONT-WEIGHT' => 'bold',
390 ),
391 'ADDRESS' => array(
392 'FONT-STYLE' => 'italic',
393 ),
394 'BLOCKQUOTE' => array(
395 'MARGIN-LEFT' => '40px',
396 'MARGIN-RIGHT' => '40px',
397 'MARGIN-TOP' => '1.12em',
398 'MARGIN-BOTTOM' => '1.12em',
399 ),
400 'A' => array(
401 'COLOR' => '#0000FF',
402 'TEXT-DECORATION' => 'underline',
403 ),
404 'UL' => array(
405 'MARGIN' => '0.83em 0', /* only applied to top-level of nested lists */
406 'TEXT-INDENT' => '1.3em', /* Custom effect - list indent */
407 ),
408 'OL' => array(
409 'MARGIN' => '0.83em 0', /* only applied to top-level of nested lists */
410 'TEXT-INDENT' => '1.3em', /* Custom effect - list indent */
411 ),
412 'DL' => array(
413 'MARGIN' => '1.67em 0',
414 ),
415 'DT' => array(
416 ),
417 'DD' => array(
418 'PADDING-LEFT' => '40px',
419 ),
420 'TABLE' => array(
421 'MARGIN' => '0',
422 'BORDER-COLLAPSE' => 'separate',
423 'BORDER-SPACING' => '2px',
424 'EMPTY-CELLS' => 'show',
425 'LINE-HEIGHT' => '1.2',
426 'VERTICAL-ALIGN' => 'middle',
427 ),
428 'THEAD' => array(
429 ),
430 'TFOOT' => array(
431 ),
432 'TH' => array(
433 'FONT-WEIGHT' => 'bold',
434 'TEXT-ALIGN' => 'center',
435 'PADDING-LEFT' => '0.1em',
436 'PADDING-RIGHT' => '0.1em',
437 'PADDING-TOP' => '0.1em',
438 'PADDING-BOTTOM' => '0.1em',
439 ),
440 'TD' => array(
441 'PADDING-LEFT' => '0.1em',
442 'PADDING-RIGHT' => '0.1em',
443 'PADDING-TOP' => '0.1em',
444 'PADDING-BOTTOM' => '0.1em',
445 ),
446 'CAPTION' => array(
447 'TEXT-ALIGN' => 'center', /* Added mPDF 5.4 */
448 ),
449 'IMG' => array(
450 'MARGIN' => '0',
451 'VERTICAL-ALIGN' => 'baseline',
452 ),
453 'INPUT' => array(
454 'FONT-FAMILY' => 'sans-serif',
455 'VERTICAL-ALIGN' => 'middle',
456 'FONT-SIZE' => '0.9em',
457 ),
458 'SELECT' => array(
459 'FONT-FAMILY' => 'sans-serif',
460 'FONT-SIZE' => '0.9em',
461 'VERTICAL-ALIGN' => 'middle',
462 ),
463 'TEXTAREA' => array(
464 'FONT-FAMILY' => 'monospace',
465 'FONT-SIZE' => '0.9em',
466 'VERTICAL-ALIGN' => 'text-bottom',
467 ),
468 );
469
470
471 //////////////////////////////////////////////////
472 // VALUES ONLY LIKELY TO BE CHANGED BY DEVELOPERS
473 //////////////////////////////////////////////////
474 $this->pdf_version = '1.4';
475
476 // Hyphenation
477 $this->SHYlanguages = array('en','de','es','fi','fr','it','nl','pl','ru','sv'); // existing defined patterns
478
479 $this->default_lineheight_correction=1.2; // Value 1 sets lineheight=fontsize height;
480 // Value used if line-height not set by CSS (usuallly is)
481
482 $this->fontsizes = array('XX-SMALL'=>0.7, 'X-SMALL'=>0.77, 'SMALL'=>0.86, 'MEDIUM'=>1, 'LARGE'=>1.2, 'X-LARGE'=>1.5, 'XX-LARGE'=>2);
483
484 // CHARACTER PATTERN MATCHES TO DETECT LANGUAGES
485 // pattern used to detect RTL characters -> force RTL
486 $this->pregRTLchars = "\x{0590}-\x{06FF}\x{0700}-\x{083E}\x{FB00}-\x{FDFD}\x{FE70}-\x{FEFF}";
487 // mPDF 5 Now includes Syriac, Thaana, N'Ko and Samaritan
488
489 // CJK Chars which require changing and are distinctive of specific charset
490 $this->pregUHCchars = "\x{1100}-\x{11FF}\x{3130}-\x{318F}\x{AC00}-\x{D7AF}";
491 $this->pregSJISchars = "\x{3040}-\x{309F}\x{30A0}-\x{30FF}\x{3190}-\x{319F}\x{31F0}-\x{31FF}";
492
493 // Chars which distinguish CJK but not between different
494 $this->pregCJKchars = "\x{1100}-\x{11FF}\x{2E80}-\x{A4CF}\x{A800}-\x{D7AF}\x{F900}-\x{FAFF}\x{FE30}-\x{FE6F}\x{FF00}-\x{FFEF}\x{20000}-\x{2FA1F}";
495
496 // For CJK Line-breaking
497 //Leading characters - Not allowed at end of line
498 $this->CJKleading = "\$\(\*\[\{\x{00a3}\x{00a5}\x{00ab}\x{00b7}\x{2018}\x{201c}\x{2035}\x{3005}\x{3007}\x{3008}\x{300a}\x{300c}\x{300e}\x{3010}\x{3014}\x{3016}\x{3018}\x{301d}\x{fe34}\x{fe57}\x{fe59}\x{fe5b}\x{ff04}\x{ff08}\x{ff0e}\x{ff3b}\x{ff5b}\x{ff5f}\x{ffe1}\x{ffe5}\x{ffe6}";
499 // Following characters - Not allowed at start
500 $this->CJKfollowing = "!%\),\.:;>\?\]\}\x{00a2}\x{00a8}\x{00b0}\x{00b7}\x{00bb}\x{02c7}\x{02c9}\x{2010}\x{2013}-\x{2016}\x{2019}\x{201d}-\x{201f}\x{2020}-\x{2022}\x{2025}\x{2027}\x{203a}\x{203c}\x{2047}-\x{2049}\x{2103}\x{2236}\x{2574}\x{3001}-\x{3003}\x{3005}\x{3006}\x{3009}\x{300b}\x{300d}\x{300f}\x{3011}\x{3015}\x{3017}\x{3019}\x{301c}\x{301e}\x{301f}\x{303b}\x{3041}\x{3043}\x{3045}\x{3047}\x{3049}\x{3063}\x{3083}\x{3085}\x{3087}\x{308e}\x{3095}\x{3096}\x{30a0}\x{30a1}\x{30a3}\x{30a5}\x{30a7}\x{30a9}\x{30c3}\x{30e3}\x{30e5}\x{30e7}\x{30ee}\x{30f5}\x{30f6}\x{30fb}-\x{30fe}\x{31f0}-\x{31ff}\x{fe30}-\x{fe33}\x{fe50}-\x{fe56}\x{fe58}\x{fe5a}\x{fe5c}\x{ff01}\x{ff02}\x{ff05}\x{ff07}\x{ff09}\x{ff0c}\x{ff0e}\x{ff1a}\x{ff1b}\x{ff1f}\x{ff3d}\x{ff40}\x{ff5c}-\x{ff5e}\x{ff60}\x{ff64}";
501 // Characters which are allowed to overflow the right margin
502 $this->CJKoverflow = "\.,\x{ff61}\x{ff64}\x{3001}\x{3002}\x{ff0c}\x{ff0e}";
503
504
505
506 // ASCII Chars which shouldn't break string
507 // Use for very specific words
508 $this->pregASCIIchars1 = "\x{0021}-\x{002E}\x{0030}-\x{003B}?"; // no [SPACE]
509 // Use for words+
510 $this->pregASCIIchars2 = "\x{0020}-\x{002E}\x{0030}-\x{003B}?"; // [SPACE] punctuation and 0-9
511 // Use for chunks > words
512 $this->pregASCIIchars3 = "\x{0000}-\x{002E}\x{0030}-\x{003B}\x{003F}-\x{007E}"; // all except <>
513 // Vietnamese - specific
514 $this->pregVIETchars = "\x{01A0}\x{01A1}\x{01AF}\x{01B0}\x{1EA0}-\x{1EF1}";
515 // Vietnamese - Chars which shouldn't break string
516 $this->pregVIETPluschars = "\x{0000}-\x{003B}\x{003F}-\x{00FF}\x{0300}-\x{036F}\x{0102}\x{0103}\x{0110}\x{0111}\x{0128}\x{0129}\x{0168}\x{0169}\x{1EF1}-\x{1EF9}"; // omits < >
517
518 // Arabic
519 $this->pregARABICchars = "\x{0600}-\x{06FF}\x{0750}-\x{077F}\x{FB50}-\x{FDFD}\x{FE70}-\x{FEFF}";
520 // Characters of Urdu, Pashto, Sindhi (but NOT arabic or persian/farsi) [not covered by DejavuSans font]
521 $this->pregNonARABICchars = "\x{0671}-\x{067D}\x{067F}-\x{0685}\x{0687}-\x{0697}\x{0699}-\x{06A8}\x{06AA}-\x{06AE}\x{06B0}-\x{06CB}\x{06CD}-\x{06D3}";
522
523 $this->pregHEBchars = "\x{0590}-\x{05FF}\x{FB00}-\x{FB49}"; // Hebrew
524
525 // INDIC
526 $this->pregHIchars = "\x{0900}-\x{0963}\x{0966}-\x{097F}"; // Devanagari (Hindi) minus the common indic punctuation 0964,0965
527 $this->pregBNchars = "\x{0980}-\x{09FF}"; // Bengali
528 $this->pregPAchars = "\x{0A00}-\x{0A7F}"; // Gurmukhi (Punjabi)
529 $this->pregGUchars = "\x{0A80}-\x{0AFF}"; // Gujarati
530 $this->pregORchars = "\x{0B00}-\x{0B7F}"; // Oriya
531 $this->pregTAchars = "\x{0B80}-\x{0BFF}"; // Tamil
532 $this->pregTEchars = "\x{0C00}-\x{0C7F}"; // Telugu
533 $this->pregKNchars = "\x{0C80}-\x{0CFF}"; // Kannada
534 $this->pregMLchars = "\x{0D00}-\x{0D7F}"; // Malayalam
535 $this->pregSHchars = "\x{0D80}-\x{0DFF}"; // Sinhala
536
537 $this->pregINDextra = "\x{200B}-\x{200D}\x{0964}\x{0965}\x{0020}-\x{0022}\x{0024}-\x{002E}\x{003A}-\x{003F}\x{005B}-\x{0060}\x{007B}-\x{007E}\x{00A0}";
538 // 200B-D=Zero-width joiners; 0964,0965=Generic Indic punctuation; NBSP & general punctuation (excludes # and / so can use in autoFont() )
539
540 $this->allowedCSStags = 'DIV|P|H1|H2|H3|H4|H5|H6|FORM|IMG|A|BODY|TABLE|HR|THEAD|TFOOT|TBODY|TH|TR|TD|UL|OL|LI|PRE|BLOCKQUOTE|ADDRESS|DL|DT|DD';
541 $this->allowedCSStags .= '|SPAN|TT|I|B|BIG|SMALL|EM|STRONG|DFN|CODE|SAMP|KBD|VAR|CITE|ABBR|ACRONYM|STRIKE|S|U|DEL|INS|Q|FONT';
542 $this->allowedCSStags .= '|SELECT|INPUT|TEXTAREA|CAPTION'; // mPDF 5.4
543
544 $this->outerblocktags = array('DIV','FORM','CENTER','DL');
545 $this->innerblocktags = array('P','BLOCKQUOTE','ADDRESS','PRE','H1','H2','H3','H4','H5','H6','DT','DD','CAPTION'); // mPDF 5.4
546
547
548 ?>