PluginProbe
PDF & Print by BestWebSoft – WordPress Posts and Pages PDF Generator Plugin / 1.9.0
PDF & Print by BestWebSoft – WordPress Posts and Pages PDF Generator Plugin v1.9.0
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.9.0, at mpdf/config.php

620 lines 25.6 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3
4
5 // PAGING
6 $this->mirrorMargins = 0;
7 $this->forcePortraitMargins = false;
8 $this->displayDefaultOrientation = false;
9 $this->printers_info = false; // Adds date and page info for printer when using @page and "marks:crop;"
10 $this->bleedMargin = 5;
11 $this->crossMarkMargin = 5; // Distance of cross mark from margin in mm
12 $this->cropMarkMargin = 8; // Distance of crop mark from margin in mm
13 $this->cropMarkLength = 18; // Default length in mm of crop line
14 $this->nonPrintMargin = 8; // Non-printable border at edge of paper sheet in mm
15 $this->defaultPagebreakType = 'cloneall'; // 'slice' or 'cloneall' or 'clonebycss' - for forced pagebreaks using <pagebreak />
16 // Automatic pagebreaks (flow in text) are always 'slice'
17
18 // Avoid just the border/background-color of the end of a block being moved on to next page
19 $this->margBuffer = 2; // Allows an (empty) end of block to extend beyond the bottom margin by this amount (mm)
20
21 // PAGE NUMBERING
22 $this->pagenumPrefix='';
23 $this->pagenumSuffix='';
24 $this->nbpgPrefix='';
25 $this->nbpgSuffix='';
26 $this->defaultPageNumStyle = '1'; // 1:Decimal, A:uppercase alphabetic etc. (as for list-style shorthands)
27
28 // FONTS, LANGUAGES & CHARACTER SETS
29 // Set maximum size of TTF font file to allow non-subsets - in kB
30 // Used to avoid a font e.g. Arial Unicode MS (perhaps used for substitutions) ever being 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 // When embedding full TTF font files, remakes the font file using only core tables
50 // May improve function with some PostScript printers (GhostScript/GSView)
51 // Does not work with TTC font collections
52 // Slightly smaller file; increased processing time
53 $this->repackageTTF = false;
54
55 // Allows automatic character set conversion if "charset=xxx" detected in html header (WriteHTML() )
56 $this->allow_charset_conversion = true;
57 $this->biDirectional=false; // automatically determine BIDI text in LTR page
58
59
60 // AUTOMATIC FONT SELECTION
61 // Based on script and/or language
62 $this->autoScriptToLang = false; // mPDF 6.0 (similar to previously using function SetAutoFont() )
63 $this->baseScript = 1; // =Latin; to set another base script see constants in classes/ucdn.php
64 $this->autoVietnamese = true;
65 $this->autoArabic = true;
66
67 $this->autoLangToFont = false; // mPDF 6.0 (similar to old useLang)
68
69 $this->useSubstitutions = false; // Substitute missing characters in UTF-8(multibyte) documents - from other fonts
70 $this->falseBoldWeight = 5; // Weight for bold text when using an artificial (outline) bold; value 0 (off) - 10 (rec. max)
71
72 // CONFIGURATION
73 $this->allow_output_buffering = false;
74
75 $this->enableImports = false; // Adding mPDFI functions
76
77 $this->collapseBlockMargins = true; // Allows top and bottom margins to collapse between block elements
78 $this->progressBar = 0; // Shows progress-bars whilst generating file 0 off, 1 simple, 2 advanced
79 $this->progbar_heading = 'mPDF file progress';
80 $this->progbar_altHTML = ''; // Should include <html> and <body> but NOT end tags
81 // Can incude <head> and link to stylesheet etc.
82 // e.g. '<html><body><p><img src="loading.gif" /> Creating PDF file. Please wait...</p>';
83
84 $this->dpi = 96; // To interpret "px" pixel values in HTML/CSS (see img_dpi below)
85
86 // Automatically correct for tags where HTML specifies optional end tags e.g. P,LI,DD,TD
87 // If you are confident input html is valid XHTML, turning this off may make it more reliable(?)
88 $this->allow_html_optional_endtags = true;
89
90 $this->ignore_invalid_utf8 = false;
91 $this->text_input_as_HTML = false; // Converts all entities in Text inputs to UTF-8 before encoding
92 $this->useGraphs = false;
93
94
95 // When writing a block element with position:fixed and overflow:auto, mPDF scales it down to fit in the space
96 // by repeatedly rewriting it and making adjustments. These values give the adjustments used, depending how far out
97 // the previous guess was. The lower the number, the quicker it will finish, but the less accurate the fit may be.
98 // FPR1 is for coarse adjustments, and FPR4 for fine adjustments when it is getting closer.
99 $this->incrementFPR1 = 10; // i.e. will alter by 1/[10]th of width and try again until within closer limits
100 $this->incrementFPR2 = 20;
101 $this->incrementFPR3 = 30;
102 $this->incrementFPR4 = 50; // i.e. will alter by 1/[50]th of width and try again when it nearly fits
103
104
105 // COLORSPACE
106 // 1 - allow GRAYSCALE only [convert CMYK/RGB->gray]
107 // 2 - allow RGB / SPOT COLOR / Grayscale [convert CMYK->RGB]
108 // 3 - allow CMYK / SPOT COLOR / Grayscale [convert RGB->CMYK]
109 $this->restrictColorSpace = 0;
110
111 // PDFX/1-a Compliant files
112 $this->PDFX = false; // true=Forces compliance with PDFX-1a spec
113 // Cannot be used with $this->restrictColorSpace (i.e. no RGB)
114 $this->PDFXauto = false; // Overrides warnings making changes when possible to force PDFX1-a compliance
115
116
117 // PDFA1-b Compliant files
118 $this->PDFA = false; // true=Forces compliance with PDFA-1b spec
119 // Can use with $this->restrictColorSpace=3 (for a CMYK file)
120 // Any other settings, uses RGB profile
121 $this->PDFAauto = false; // Overrides warnings making changes when possible to force PDFA1-b compliance
122 $this->ICCProfile = ''; // Colour profile OutputIntent
123 // sRGB_IEC61966-2-1 (=default if blank and PDFA), or other added .icc profile
124 // Must be CMYK for PDFX, or appropriate type for PDFA(RGB or CMYK)
125
126
127
128 // DEBUGGING & DEVELOPERS
129 $this->showStats = false;
130 $this->debug = false;
131 $this->debugfonts = false; // Checks and reports on errors when parsing TTF files - adds significantly to processing time
132 $this->showImageErrors = false;
133 $this->table_error_report = false; // Die and report error if table is too wide to contain whole words
134 $this->table_error_report_param = ''; // Parameter which can be passed to show in error report i.e. chapter number being processed//
135
136
137 // ANNOTATIONS
138 $this->title2annots = false; // Automaticaaly convert title="" properties in tags, to annotations
139 $this->annotSize = 0.5; // default mm for Adobe annotations - nominal
140 $this->annotMargin; // default position for Annotations
141 $this->annotOpacity = 0.5; // default opacity for Annotations
142
143 // BOOKMARKS
144 $this->anchor2Bookmark = 0; // makes <a name=""> into a bookmark as well as internal link target; 1 = just name; 2 = name (p.34)
145 // Set an optional array to specify appearance of Bookmarks (by level)
146 // Default values are Black and normal style
147 /*
148 Example:
149 $this->bookmarkStyles = array(
150 0 => array('color'=> array(0,64,128), 'style'=>'B'),
151 1 => array('color'=> array(128,0,0), 'style'=>''),
152 2 => array('color'=> array(0,128,0), 'style'=>'I'),
153 );
154 */
155 $this->bookmarkStyles = array();
156
157 // Specify whether to automatically generate bookmarks from h1 - h6 tags
158 $this->h2bookmarks = array();
159 /* Define arrays with e.g. the tag=>Bookmark-level
160 Remember bookmark levels start at 0
161 (does not work inside tables)
162 H1 - H6 must be uppercase
163 $this->h2bookmarks = array('H1'=>0, 'H2'=>1, 'H3'=>2);
164 */
165
166
167 // TABLE OF CONTENTS
168 // Specify whether to automatically generate ToC entries from h1 - h6 tags
169 $this->h2toc = array();
170 /* Define arrays with e.g. the tag=>ToC-level
171 Remember ToC levels start at 0
172 (does not work inside tables)
173 Only the default ToC will be used if > 1 ToCs are defined for the document
174 H1 - H6 must be uppercase
175 $this->h2toc = array('H1'=>0, 'H2'=>1, 'H3'=>2);
176 */
177
178 // INDEX
179 /* Specifies whether to repeat the main entry for each subEntry (true suppressess this)
180 e.g. Mammal:dog ... Mammal:elephant ->
181 [true]
182 Mammal
183 - dog
184 - elephant
185 [false]
186 Mammal, dog
187 Mammal, elephant
188 */
189 $this->indexUseSubentries = true;
190
191
192 // CSS & STYLES
193 $this->CSSselectMedia='print'; // screen, print, or any other CSS @media type (except "all")
194
195
196 // PAGE HEADERS & FOOTERS
197 $this->forcePortraitHeaders = false;
198 // Values used if simple FOOTER/HEADER given i.e. not array
199 $this->defaultheaderfontsize = 8; // pt
200 $this->defaultheaderfontstyle = 'BI'; // '', or 'B' or 'I' or 'BI'
201 $this->defaultheaderline = 1; // 1 or 0 - line under the header
202 $this->defaultfooterfontsize = 8; // pt
203 $this->defaultfooterfontstyle = 'BI'; // '', or 'B' or 'I' or 'BI'
204 $this->defaultfooterline = 1; // 1 or 0 - line over the footer
205 $this->header_line_spacing = 0.25; // spacing between bottom of header and line (if present) - function of fontsize
206 $this->footer_line_spacing = 0.25; // spacing between bottom of header and line (if present) - function of fontsize
207
208 // If 'pad' margin-top sets fixed distance in mm (padding) between bottom of header and top of text.
209 // 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.
210 $this->setAutoTopMargin = false;
211 $this->setAutoBottomMargin = false;
212 $this->autoMarginPadding = 2; // distance in mm used as padding if 'stretch' mode is used
213
214
215
216 // TABLES
217 $this->simpleTables = false; // Forces all cells to have same border, background etc. Improves performance
218 $this->packTableData = false; // Reduce memory usage processing tables (but with increased processing time)
219
220 $this->ignore_table_percents = false;
221 $this->ignore_table_widths = false;
222 $this->keep_table_proportions = true; // If table width set > page width, force resizing but keep relative sizes
223 // Also forces respect of cell widths set by %
224 $this->shrink_tables_to_fit = 1.4; // automatically reduce fontsize in table if words would have to split ( not in CJK)
225 // 0 or false to disable; value (if set) gives maximum factor to reduce fontsize
226
227 $this->tableMinSizePriority = false; // If page-break-inside:avoid but cannot fit on full page without
228 // exceeding autosize; setting this value to true will force respect for
229 // autosize, and disable the page-break-inside:avoid
230
231 $this->use_kwt = false; // "Keep-with-table" Attempts to keep a <h1> to <h6> tagged heading together
232 // with a table which comes immediately after it.
233 $this->iterationCounter = false; // Set to TRUE to use table Head iteration counter
234 $this->splitTableBorderWidth = 0; // Use table border (using this width in mm) when table breaks across pages
235 // Recommended to use small value e.g. 0.01
236
237
238 // Allowed characters for text alignment on decimal marks. Additional codes must start with D
239 // DM - middot U+00B7
240 // DA - arabic decimal mark U+066B
241 $this->decimal_align = array('DP'=>'.', 'DC'=>',', 'DM'=>"\xc2\xb7", 'DA'=>"\xd9\xab", 'DD'=>'-');
242
243
244 // IMAGES
245 $this->interpolateImages = false; // if image-rendering=='auto', this defines value for image-rendering
246 // if true, image interpolation shall be performed by a conforming reader
247 $this->img_dpi = 96; // Default dpi to output images if size not defined
248 // See also above "dpi"
249
250 // TEzXT SPACING & JUSTIFICATION
251 $this->useKerning = false; // Specify whether kerning should be used when CSS font-kerning="auto" used for HTML;
252 // Also whether kerning should be used in any direct writing e.g. $mpdf->Text();
253 $this->justifyB4br = false; // In justified text, <BR> does not cause the preceding text to be justified in browsers
254 // Change to true to force justification (as in MS Word)
255
256 $this->tabSpaces = 8; // Number of spaces to replace for a TAB in <pre> sections
257 // Notepad uses 6, HTML specification recommends 8
258 $this->jSWord = 0.4; // Proportion (/1) of space (when justifying margins) to allocate to Word vs. Character
259 $this->jSmaxChar = 2; // Maximum spacing to allocate to character spacing. (0 = no maximum)
260
261 $this->jSmaxCharLast = 1; // Maximum character spacing allowed (carried over) when finishing a last line
262 $this->jSmaxWordLast = 2; // Maximum word spacing allowed (carried over) when finishing a last line
263
264 // LINE SPACING & TEXT BASELINE
265 $this->useFixedNormalLineHeight = false; // Use the fixed factor ($this->normalLineheight) when line-height:normal
266 // Compatible with mPDF versions < 6
267
268 $this->useFixedTextBaseline = false; // Use a fixed ratio ($this->baselineC) to set the text baseline
269 // Compatible with mPDF versions < 6
270
271 $this->normalLineheight = 1.33; // Default Value used for line-height when CSS specified as 'normal' (default)
272
273 $this->adjustFontDescLineheight = 1.14; // Correction factor applied to lineheight values derived from 'win', 'mac', 'winTypo'
274
275
276 // Small Caps
277 $this->smCapsScale = 0.75; // Factor of 1 to scale capital letters
278 $this->smCapsStretch = 110; // % to stretch small caps horizontally (i.e. 100 = no stretch)
279
280 // Line-breaking
281 // The alternative to these next 2 is the use of U+200B Zero-width space
282 // These are only effective if using OTL for the fonts
283 $this->useDictionaryLBR = true; // Use the dictionaries to determine line-breaking in Lao, Khmer and Thai
284 $this->useTibetanLBR = true; // Use the inbuilt algorithm to determine line-breaking in Tibetan
285
286 // CJK Line-breaking
287 $this->allowCJKorphans = true; // FALSE=always wrap to next line; TRUE=squeeze or overflow
288 $this->allowCJKoverflow = false; // FALSE=squeeze; TRUE=overflow (only some characters, and disabled in tables)
289 $this->CJKforceend = false; // Forces overflowng punctuation to hang outside right margin mPDF 5.6.40
290
291 // HYPHENATION (using word dictionaries)
292 $this->SHYlang = "en"; // Should be one of: 'en','de','es','fi','fr','it','nl','pl','ru','sv'
293 $this->SHYleftmin = 2;
294 $this->SHYrightmin = 2;
295 $this->SHYcharmin = 2;
296 $this->SHYcharmax = 10;
297
298 // COLUMNS
299 $this->keepColumns = false; // Set to go to the second column only when the first is full of text etc.
300 $this->max_colH_correction = 1.15; // Maximum ratio to adjust column height when justifying - too large a value can give ugly results
301 $this->ColGap=5;
302
303
304 // LISTS
305 // mPDF 6
306 $this->list_auto_mode = 'browser'; // 'mpdf' or 'browser' - Specify whether to use mPDF custom method of automatic
307 // indentation of lists, or standard browser-compatible
308 // custom mPDF method is ignored if list-style-position: inside, or image used for marker (or custom U+)
309 $this->list_indent_default = '40px'; // List Indentation when set to 'auto' if using standard browser-compatible method
310 $this->list_indent_default_mpdf = '0em'; // List Indentation when set to 'auto' if using mPDF custom method
311 $this->list_indent_first_level = 0; // 1/0 yes/no to indent first level of list, if using mPDF custom method
312
313 $this->list_number_suffix = '.'; // Content to follow a numbered list marker e.g. '.' gives 1. or IV.; ')' gives 1) or a)
314
315 // To specify a bullet size and offset proprtional to the list item's font size:
316 //$this->list_marker_offset = '0.45em'; // Offset (CSS length) of list marker bullets (disc/circle/square)
317 //$this->list_symbol_size = '0.31em'; // Size (CSS) of list marker bullets (disc/circle/square)
318 // Browsers use a fixed bullet size and offset
319 $this->list_marker_offset = '5.5pt'; // Offset (CSS length) of list marker bullets (disc/circle/square)
320 $this->list_symbol_size = '3.6pt'; // Size (CSS) of list marker bullets (disc/circle/square)
321
322
323 // ACTIVE FORMS
324 $this->useActiveForms = false;
325
326 // WATERMARKS
327 $this->watermarkImgBehind = false;
328 $this->showWatermarkText = 0;
329 $this->showWatermarkImage = 0;
330 $this->watermarkText = '';
331 $this->watermarkImage = '';
332 $this->watermark_font = '';
333 $this->watermarkTextAlpha = 0.2;
334 $this->watermarkImageAlpha = 0.2;
335 $this->watermarkImgAlphaBlend = 'Normal';
336 // Accepts any PDF spec. value: Normal, Multiply, Screen, Overlay, Darken, Lighten, ColorDodge, ColorBurn,
337 // HardLight, SoftLight, Difference, Exclusion
338 // "Multiply" works well for watermark image on top
339
340 // BORDERS
341 $this->autoPadding = false; // Automatically increases padding in block elements when border-radius set - if required
342
343
344 //////////////////////////////////////////////
345
346 // Default values if no style sheet offered (cf. http://www.w3.org/TR/CSS21/sample.html)
347 $this->defaultCSS = array(
348 'BODY' => array(
349 'FONT-FAMILY' => 'serif',
350 'FONT-SIZE' => '11pt',
351 'TEXT-INDENT' => '0pt',
352 'LINE-HEIGHT' => 'normal',
353 'MARGIN-COLLAPSE' => 'collapse', /* Custom property to collapse top/bottom margins at top/bottom of page - ignored in tables/lists */
354 'HYPHENS' => 'manual', /* mPDF 5.6.08 */
355 'FONT-KERNING' => 'auto', /* mPDF 6 */
356 ),
357 'P' => array(
358 'MARGIN' => '1.12em 0',
359 ),
360 'H1' => array(
361 'FONT-SIZE' => '2em',
362 'FONT-WEIGHT' => 'bold',
363 'MARGIN' => '0.67em 0',
364 'PAGE-BREAK-AFTER' => 'avoid',
365 ),
366 'H2' => array(
367 'FONT-SIZE' => '1.5em',
368 'FONT-WEIGHT' => 'bold',
369 'MARGIN' => '0.75em 0',
370 'PAGE-BREAK-AFTER' => 'avoid',
371 ),
372 'H3' => array(
373 'FONT-SIZE' => '1.17em',
374 'FONT-WEIGHT' => 'bold',
375 'MARGIN' => '0.83em 0',
376 'PAGE-BREAK-AFTER' => 'avoid',
377 ),
378 'H4' => array(
379 'FONT-WEIGHT' => 'bold',
380 'MARGIN' => '1.12em 0',
381 'PAGE-BREAK-AFTER' => 'avoid',
382 ),
383 'H5' => array(
384 'FONT-SIZE' => '0.83em',
385 'FONT-WEIGHT' => 'bold',
386 'MARGIN' => '1.5em 0',
387 'PAGE-BREAK-AFTER' => 'avoid',
388 ),
389 'H6' => array(
390 'FONT-SIZE' => '0.75em',
391 'FONT-WEIGHT' => 'bold',
392 'MARGIN' => '1.67em 0',
393 'PAGE-BREAK-AFTER' => 'avoid',
394 ),
395 'HR' => array(
396 'COLOR' => '#888888',
397 'TEXT-ALIGN' => 'center',
398 'WIDTH' => '100%',
399 'HEIGHT' => '0.2mm',
400 'MARGIN-TOP' => '0.83em',
401 'MARGIN-BOTTOM' => '0.83em',
402 ),
403 'PRE' => array(
404 'MARGIN' => '0.83em 0',
405 'FONT-FAMILY' => 'monospace',
406 ),
407 'S' => array(
408 'TEXT-DECORATION' => 'line-through',
409 ),
410 'STRIKE' => array(
411 'TEXT-DECORATION' => 'line-through',
412 ),
413 'DEL' => array(
414 'TEXT-DECORATION' => 'line-through',
415 ),
416 'SUB' => array(
417 'VERTICAL-ALIGN' => 'sub',
418 'FONT-SIZE' => '55%', /* Recommended 0.83em */
419 ),
420 'SUP' => array(
421 'VERTICAL-ALIGN' => 'super',
422 'FONT-SIZE' => '55%', /* Recommended 0.83em */
423 ),
424 'U' => array(
425 'TEXT-DECORATION' => 'underline',
426 ),
427 'INS' => array(
428 'TEXT-DECORATION' => 'underline',
429 ),
430 'B' => array(
431 'FONT-WEIGHT' => 'bold',
432 ),
433 'STRONG' => array(
434 'FONT-WEIGHT' => 'bold',
435 ),
436 'I' => array(
437 'FONT-STYLE' => 'italic',
438 ),
439 'CITE' => array(
440 'FONT-STYLE' => 'italic',
441 ),
442 'Q' => array(
443 'FONT-STYLE' => 'italic',
444 ),
445 'EM' => array(
446 'FONT-STYLE' => 'italic',
447 ),
448 'VAR' => array(
449 'FONT-STYLE' => 'italic',
450 ),
451 'SAMP' => array(
452 'FONT-FAMILY' => 'monospace',
453 ),
454 'CODE' => array(
455 'FONT-FAMILY' => 'monospace',
456 ),
457 'KBD' => array(
458 'FONT-FAMILY' => 'monospace',
459 ),
460 'TT' => array(
461 'FONT-FAMILY' => 'monospace',
462 ),
463 'SMALL' => array(
464 'FONT-SIZE' => '83%',
465 ),
466 'BIG' => array(
467 'FONT-SIZE' => '117%',
468 ),
469 'ACRONYM' => array(
470 'FONT-SIZE' => '77%',
471 'FONT-WEIGHT' => 'bold',
472 ),
473 'ADDRESS' => array(
474 'FONT-STYLE' => 'italic',
475 ),
476 'BLOCKQUOTE' => array(
477 'MARGIN-LEFT' => '40px',
478 'MARGIN-RIGHT' => '40px',
479 'MARGIN-TOP' => '1.12em',
480 'MARGIN-BOTTOM' => '1.12em',
481 ),
482 'A' => array(
483 'COLOR' => '#0000FF',
484 'TEXT-DECORATION' => 'underline',
485 ),
486 'UL' => array(
487 'PADDING' => '0 auto', /* mPDF 6 */
488 'MARGIN-TOP' => '0.83em', /* mPDF 6 */
489 'MARGIN-BOTTOM' => '0.83em', /* mPDF 6 */
490 ),
491 'OL' => array(
492 'PADDING' => '0 auto', /* mPDF 6 */
493 'MARGIN-TOP' => '0.83em', /* mPDF 6 */
494 'MARGIN-BOTTOM' => '0.83em', /* mPDF 6 */
495 ),
496 'DL' => array(
497 'MARGIN' => '1.67em 0',
498 ),
499 'DT' => array(
500 ),
501 'DD' => array(
502 'PADDING-LEFT' => '40px',
503 ),
504 'TABLE' => array(
505 'MARGIN' => '0',
506 'BORDER-COLLAPSE' => 'separate',
507 'BORDER-SPACING' => '2px',
508 'EMPTY-CELLS' => 'show',
509 'LINE-HEIGHT' => '1.2',
510 'VERTICAL-ALIGN' => 'middle',
511 'HYPHENS' => 'manual', /* mPDF 6 */
512 'FONT-KERNING' => 'auto', /* mPDF 6 */
513 ),
514 'THEAD' => array(
515 ),
516 'TFOOT' => array(
517 ),
518 'TH' => array(
519 'FONT-WEIGHT' => 'bold',
520 'TEXT-ALIGN' => 'center',
521 'PADDING-LEFT' => '0.1em',
522 'PADDING-RIGHT' => '0.1em',
523 'PADDING-TOP' => '0.1em',
524 'PADDING-BOTTOM' => '0.1em',
525 ),
526 'TD' => array(
527 'PADDING-LEFT' => '0.1em',
528 'PADDING-RIGHT' => '0.1em',
529 'PADDING-TOP' => '0.1em',
530 'PADDING-BOTTOM' => '0.1em',
531 ),
532 'CAPTION' => array(
533 'TEXT-ALIGN' => 'center',
534 ),
535 'IMG' => array(
536 'MARGIN' => '0',
537 'VERTICAL-ALIGN' => 'baseline',
538 'IMAGE-RENDERING' => 'auto',
539 ),
540 'INPUT' => array(
541 'FONT-FAMILY' => 'sans-serif',
542 'VERTICAL-ALIGN' => 'middle',
543 'FONT-SIZE' => '0.9em',
544 ),
545 'SELECT' => array(
546 'FONT-FAMILY' => 'sans-serif',
547 'FONT-SIZE' => '0.9em',
548 'VERTICAL-ALIGN' => 'middle',
549 ),
550 'TEXTAREA' => array(
551 'FONT-FAMILY' => 'monospace',
552 'FONT-SIZE' => '0.9em',
553 'VERTICAL-ALIGN' => 'text-bottom',
554 ),
555 'MARK' => array( /* mPDF 5.5.09 */
556 'BACKGROUND-COLOR' => 'yellow',
557 ),
558 );
559
560
561 //////////////////////////////////////////////////
562 // VALUES ONLY LIKELY TO BE CHANGED BY DEVELOPERS
563 //////////////////////////////////////////////////
564 $this->pdf_version = '1.4';
565
566 // Hyphenation
567 $this->SHYlanguages = array('en','de','es','fi','fr','it','nl','pl','ru','sv'); // existing defined patterns
568
569 $this->default_lineheight_correction=1.2; // Value 1 sets lineheight=fontsize height;
570 // Value used if line-height not set by CSS (usually is)
571
572 $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);
573
574 // CHARACTER PATTERN MATCHES TO DETECT LANGUAGES
575 // pattern used to detect RTL characters -> force RTL
576 $this->pregRTLchars = "\x{0590}-\x{06FF}\x{0700}-\x{085F}\x{FB00}-\x{FDFD}\x{FE70}-\x{FEFF}"; // 085F to include Mandaic
577
578 // Chars which distinguish CJK but not between different
579 $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}";
580
581 // For CJK Line-breaking - References:
582 // http://en.wikipedia.org/wiki/Line_breaking_rules_in_East_Asian_languages
583 // http://msdn.microsoft.com/en-us/goglobal/bb688158.aspx - listed using charsets
584 // Word wrapping in other langauges - http://msdn.microsoft.com/en-us/goglobal/bb688158.aspx
585 // Word wrapping in Japanese/Korean - http://en.wikipedia.org/wiki/Kinsoku_shori
586 // Unicode character types: http://unicode.org/reports/tr14/
587 // http://xml.ascc.net/en/utf-8/faq/zhl10n-faq-xsl.html#qb1
588 // ECMA-376 4th edition Part 1
589 // http://www.ecma-international.org/publications/standards/Ecma-376.htm
590
591 //Leading characters - Not allowed at end of line
592 $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{fe35}\x{fe37}\x{fe39}\x{fe3b}\x{fe3d}\x{fe3f}\x{fe41}\x{fe43}\x{fe57}\x{fe59}\x{fe5b}\x{fe5d}\x{ff04}\x{ff08}\x{ff0e}\x{ff3b}\x{ff5b}\x{ff5f}\x{ff62}\x{ffe1}\x{ffe5}\x{ffe6}";
593
594 // Following characters - Not allowed at start
595 $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{2030}\x{2032}\x{2033}\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{309b}-\x{309e}\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{30fd}\x{30fe}\x{31f0}-\x{31ff}\x{fe30}\x{fe31}-\x{fe34}\x{fe36}\x{fe38}\x{fe3a}\x{fe3c}\x{fe3e}\x{fe40}\x{fe42}\x{fe44}\x{fe4f}\x{fe50}-\x{fe58}\x{fe5a}\x{fe5c}-\x{fe5e}\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{ff61}\x{ff63}-\x{ff65}\x{ff9e}\x{ff9f}\x{ffe0}";
596
597 // Characters which are allowed to overflow the right margin (from CSS3 http://www.w3.org/TR/2012/WD-css3-text-20120814/#hanging-punctuation)
598 $this->CJKoverflow = "\.,\x{ff61}\x{ff64}\x{3001}\x{3002}\x{fe50}-\x{fe52}\x{ff0c}\x{ff0e}";
599
600 // mPDF 6
601 // Used for preventing letter-spacing in cursive scripts
602 // NB The following scripts in Unicode 6 are considered to be cursive scripts,
603 // and do not allow expansion opportunities between their letters:
604 // Arabic, Syriac, Mandaic, Mongolian, N'Ko, Phags Pa
605 $this->pregCURSchars = "\x{0590}-\x{083E}\x{0900}-\x{0DFF}\x{FB00}-\x{FDFD}\x{FE70}-\x{FEFF}";
606
607
608 $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';
609 $this->allowedCSStags .= '|ARTICLE|ASIDE|FIGURE|FIGCAPTION|FOOTER|HEADER|HGROUP|NAV|SECTION|MAIN|MARK|DETAILS|SUMMARY|METER|PROGRESS|TIME';
610 $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';
611 $this->allowedCSStags .= '|SELECT|INPUT|TEXTAREA|CAPTION|FIELDSET|LEGEND';
612 $this->allowedCSStags .= '|TEXTCIRCLE|DOTTAB|BDO|BDI';
613
614 $this->outerblocktags = array('DIV','FORM','CENTER','DL','FIELDSET','ARTICLE','ASIDE','FIGURE','FIGCAPTION', 'FOOTER','HEADER','HGROUP','MAIN','NAV','SECTION','DETAILS','SUMMARY','UL','OL','LI');
615 $this->innerblocktags = array('P','BLOCKQUOTE','ADDRESS','PRE','H1','H2','H3','H4','H5','H6','DT','DD','CAPTION');
616
617
618
619
620 ?>