Select the functions you wish to INCLUDE in your mpdf.php program. When you click generate, a new mpdf.php file will be written to the current directory.
-Memory usage on loading mPDF class '.number_format((memory_get_usage(true)/(1024*1024)),2).' MB
';
-
-exit;
-
-?>
\ No newline at end of file
diff --git a/public/mpdf/config.php b/public/mpdf/config.php
deleted file mode 100644
index bfbaba3..0000000
--- a/public/mpdf/config.php
+++ /dev/null
@@ -1,548 +0,0 @@
-cacheTables = false;
-
-// Set an optional array to specify appearance of Bookmarks (by level)
-// Default values are Black and normal style
-/*
- Example:
-$this->bookmarkStyles = array(
- 0 => array('color'=> array(0,64,128), 'style'=>'B'),
- 1 => array('color'=> array(128,0,0), 'style'=>''),
- 2 => array('color'=> array(0,128,0), 'style'=>'I'),
-);
-*/
-$this->bookmarkStyles = array();
-
-// ACTIVE FORMS
-$this->useActiveForms = false;
-
-// When embedding full TTF font files, remakes the font file using only core tables
-// May improve function with some PostScript printers (GhostScript/GSView)
-// Does not work with TTC font collections
-// Slightly smaller file; increased processing time
-$this->repackageTTF = false;
-
-// Set maximum size of TTF font file to allow non-subsets - in kB
-// Used to avoid e.g. Arial Unicode MS (perhaps used for substitutions) to ever be fully embedded
-// NB Free serif is 1.5MB, most files are <= 600kB (most 200-400KB)
-$this->maxTTFFilesize = 2000;
-
-// this value determines whether to subset or not
-// 0 - 100 = percent characters
-// i.e. if ==40, mPDF will embed whole font if >40% characters in that font
-// or embed subset if <40% characters
-// 0 will force whole file to be embedded (NO subsetting)
-// 100 will force always to subset
-// This value is overridden if you set new mPDF('s)
-// and/or Can set at runtime
-$this->percentSubset = 30;
-
-$this->useAdobeCJK = false; // Uses Adobe CJK fonts for CJK languages
- // default TRUE; only set false if you have defined some available fonts that support CJK
- // If true this will not stop use of other CJK fonts if specified by font-family:
- // and vice versa i.e. only dictates behaviour when specified by lang="" incl. AutoFont()
-
-
-// Small Caps
-$this->smCapsScale = 0.75; // Factor of 1 to scale capital letters
-$this->smCapsStretch = 110; // % to stretch small caps horizontally (i.e. 100 = no stretch)
-
-
-// PAGING
-$this->mirrorMargins = 0;
-$this->restoreBlockPagebreaks = false;
-$this->forcePortraitMargins = false;
-$this->displayDefaultOrientation = false;
-$this->printers_info = false; // Adds date and page info for printer when using @page and "marks:crop;"
-$this->bleedMargin = 5; // mPDF 5.0.047
-$this->crossMarkMargin = 5; // Distance of cross mark from margin in mm
-$this->cropMarkMargin = 8; // Distance of crop mark from margin in mm
-$this->cropMarkLength = 18; // Default length in mm of crop line
-$this->nonPrintMargin = 8; // Non-printable border at edge of paper sheet in mm
-
-
-// PAGE NUMBERING
-// Page numbering - Conditional Text
-$this->pagenumPrefix;
-$this->pagenumSuffix;
-$this->nbpgPrefix;
-$this->nbpgSuffix;
-
-
-// FONTS LANGUAGES & CHARACTER SETS
-// Allows automatic character set conversion if "charset=xxx" detected in html header (WriteHTML() )
-$this->allow_charset_conversion = true;
-$this->biDirectional=false; // automatically determine BIDI text in LTR page
-$this->autoFontGroupSize = 2; // 1: individual words are spanned; 2: words+; 3: as big chunks as possible.
-$this->useLang = true; // Default changed in mPDF 4.0
-
-$this->useSubstitutions = false; // Substitute missing characters in UTF-8(multibyte) documents - from other fonts
-$this->falseBoldWeight = 5; // Weight for bold text when using an artificial (outline) bold; value 0 (off) - 10 (rec. max)
-
-// CONFIGURATION
-$this->allow_output_buffering = false;
-
-$this->enableImports = false; // Adding mPDFI functions
-
-$this->collapseBlockMargins = true; // Allows top and bottom margins to collapse between block elements
-$this->progressBar = 0; // Shows progress-bars whilst generating file 0 off, 1 simple, 2 advanced
-$this->progbar_heading = 'mPDF file progress';
-$this->progbar_altHTML = ''; // Should include and but NOT end tags
- // Can incude and link to stylesheet etc.
- // e.g. ' into a bookmark as well as internal link target; 1 = just name; 2 = name (p.34)
-
-// CSS & STYLES
-$this->CSSselectMedia='print'; // screen, print, or any other CSS @media type (not "all")
-
-
-// PAGE HEADERS & FOOTERS
-$this->forcePortraitHeaders = false;
-// Values used if simple FOOTER/HEADER given i.e. not array
-$this->defaultheaderfontsize = 8; // pt
-$this->defaultheaderfontstyle = 'BI'; // '', or 'B' or 'I' or 'BI'
-$this->defaultheaderline = 1; // 1 or 0 - line under the header
-$this->defaultfooterfontsize = 8; // pt
-$this->defaultfooterfontstyle = 'BI'; // '', or 'B' or 'I' or 'BI'
-$this->defaultfooterline = 1; // 1 or 0 - line over the footer
-$this->header_line_spacing = 0.25; // spacing between bottom of header and line (if present) - function of fontsize
-$this->footer_line_spacing = 0.25; // spacing between bottom of header and line (if present) - function of fontsize
-// If 'pad' margin-top sets fixed distance in mm (padding) between bottom of header and top of text.
-// 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.
-$this->setAutoTopMargin = false;
-$this->setAutoBottomMargin = false;
-$this->autoMarginPadding = 2; // distance in mm used as padding if 'stretch' mode is used
-
-
-
-// TABLES
-$this->simpleTables = false; // Forces all cells to have same border, background etc. Improves performance
-$this->packTableData = false; // Reduce memory usage processing tables (but with increased processing time)
-$this->ignore_table_percents = false;
-$this->ignore_table_widths = false;
-$this->keep_table_proportions = false; // If table width set > page width, force resizing but keep relative sizes
- // Also forces respect of cell widths set by %
-$this->shrink_tables_to_fit = 1.4; // automatically reduce fontsize in table if words would have to split ( not in CJK)
- // 0 or false to disable; value (if set) gives maximum factor to reduce fontsize
-
-$this->tableMinSizePriority = false; // If page-break-inside:avoid but cannot fit on full page without
- // exceeding autosize; setting this value to true will force respsect for
- // autosize, and disable the page-break-inside:avoid
-
-$this->use_kwt = false;
-$this->iterationCounter = false; // Set to TRUE to use table Head iteration counter
-
-// IMAGES
-$this->img_dpi = 96; // Default dpi to output images if size not defined
- // See also above "dpi"
-
-// TEXT SPACING & JUSTIFICATION
-$this->useKerning = false; // true to use kerning
-$this->justifyB4br = false; // In justified text, does not cause the preceding text to be justified in browsers
- // Change to true to force justification (as in MS Word)
-
-$this->tabSpaces = 8; // Number of spaces to replace for a TAB in sections
- // Notepad uses 6, HTML specification recommends 8
-$this->jSWord = 0.4; // Proportion (/1) of space (when justifying margins) to allocate to Word vs. Character
-$this->jSmaxChar = 2; // Maximum spacing to allocate to character spacing. (0 = no maximum)
-
-$this->jSmaxCharLast = 1; // Maximum character spacing allowed (carried over) when finishing a last line
-$this->jSmaxWordLast = 2; // Maximum word spacing allowed (carried over) when finishing a last line
-$this->orphansAllowed = 5; // No of SUP or SUB characters to include on line to avoid leaving e.g. end of line//32
-$this->normalLineheight = 1.33; // Value used for line-height when CSS specified as 'normal' (default)
-
-
-// CJK Line-breaking
-$this->allowCJKorphans = true; // FALSE=always wrap to next line; TRUE=squeeze or overflow
-$this->allowCJKoverflow = false; // FALSE=squeeze; TRUE=overflow (only some characters, and disabled in tables)
-
-
-// HYPHENATION
-$this->hyphenate = false;
-$this->hyphenateTables = false;
-$this->SHYlang = "en"; // Should be one of: 'en','de','es','fi','fr','it','nl','pl','ru','sv'
-$this->SHYleftmin = 2;
-$this->SHYrightmin = 2;
-$this->SHYcharmin = 2;
-$this->SHYcharmax = 10;
-
-// COLUMNS
-$this->keepColumns = false; // Set to go to the second column only when the first is full of text etc.
-$this->max_colH_correction = 1.15; // Maximum ratio to adjust column height when justifying - too large a value can give ugly results
-$this->ColGap=5;
-
-
-// LISTS
-$this->list_align_style = 'R'; // Determines alignment of numbers in numbered lists
-$this->list_indent_first_level = 0; // 1/0 yex/no to indent first level of list
-$this->list_number_suffix = '.'; // Content to follow a numbered list marker e.g. '.' gives 1. or IV.; ')' gives 1) or a)
-
-
-// WATERMARKS
-$this->watermarkImgBehind = false;
-$this->showWatermarkText = 0;
-$this->showWatermarkImage = 0;
-$this->watermarkText = '';
-$this->watermarkImage = '';
-$this->watermark_font = '';
-$this->watermarkTextAlpha = 0.2;
-$this->watermarkImageAlpha = 0.2;
-$this->watermarkImgAlphaBlend = 'Normal';
- // Accepts any PDF spec. value: Normal, Multiply, Screen, Overlay, Darken, Lighten, ColorDodge, ColorBurn,
- // HardLight, SoftLight, Difference, Exclusion
- // "Multiply" works well for watermark image on top
-
-// BORDERS
-$this->autoPadding = false; // Automatically increases padding in block elements when border-radius set - if required
-
-
-//////////////////////////////////////////////
-
-// Default values if no style sheet offered (cf. http://www.w3.org/TR/CSS21/sample.html)
-$this->defaultCSS = array(
- 'BODY' => array(
- 'FONT-FAMILY' => 'serif',
- 'FONT-SIZE' => '11pt',
- 'TEXT-INDENT' => '0pt',
- 'LINE-HEIGHT' => 'normal',
- 'MARGIN-COLLAPSE' => 'collapse', /* Custom property to collapse top/bottom margins at top/bottom of page - ignored in tables/lists */
- ),
- 'P' => array(
- 'MARGIN' => '1.12em 0',
- ),
- 'H1' => array(
- 'FONT-SIZE' => '2em',
- 'FONT-WEIGHT' => 'bold',
- 'MARGIN' => '0.67em 0',
- 'PAGE-BREAK-AFTER' => 'avoid',
- ),
- 'H2' => array(
- 'FONT-SIZE' => '1.5em',
- 'FONT-WEIGHT' => 'bold',
- 'MARGIN' => '0.75em 0',
- 'PAGE-BREAK-AFTER' => 'avoid',
- ),
- 'H3' => array(
- 'FONT-SIZE' => '1.17em',
- 'FONT-WEIGHT' => 'bold',
- 'MARGIN' => '0.83em 0',
- 'PAGE-BREAK-AFTER' => 'avoid',
- ),
- 'H4' => array(
- 'FONT-WEIGHT' => 'bold',
- 'MARGIN' => '1.12em 0',
- 'PAGE-BREAK-AFTER' => 'avoid',
- ),
- 'H5' => array(
- 'FONT-SIZE' => '0.83em',
- 'FONT-WEIGHT' => 'bold',
- 'MARGIN' => '1.5em 0',
- 'PAGE-BREAK-AFTER' => 'avoid',
- ),
- 'H6' => array(
- 'FONT-SIZE' => '0.75em',
- 'FONT-WEIGHT' => 'bold',
- 'MARGIN' => '1.67em 0',
- 'PAGE-BREAK-AFTER' => 'avoid',
- ),
- 'HR' => array(
- 'COLOR' => '#888888',
- 'TEXT-ALIGN' => 'center',
- 'WIDTH' => '100%',
- 'HEIGHT' => '0.2mm',
- 'MARGIN-TOP' => '0.83em',
- 'MARGIN-BOTTOM' => '0.83em',
- ),
- 'PRE' => array(
- 'MARGIN' => '0.83em 0',
- 'FONT-FAMILY' => 'monospace',
- ),
- 'S' => array(
- 'TEXT-DECORATION' => 'line-through',
- ),
- 'STRIKE' => array(
- 'TEXT-DECORATION' => 'line-through',
- ),
- 'DEL' => array(
- 'TEXT-DECORATION' => 'line-through',
- ),
- 'SUB' => array(
- 'VERTICAL-ALIGN' => 'sub',
- 'FONT-SIZE' => '55%', /* Recommended 0.83em */
- ),
- 'SUP' => array(
- 'VERTICAL-ALIGN' => 'super',
- 'FONT-SIZE' => '55%', /* Recommended 0.83em */
- ),
- 'U' => array(
- 'TEXT-DECORATION' => 'underline',
- ),
- 'INS' => array(
- 'TEXT-DECORATION' => 'underline',
- ),
- 'B' => array(
- 'FONT-WEIGHT' => 'bold',
- ),
- 'STRONG' => array(
- 'FONT-WEIGHT' => 'bold',
- ),
- 'I' => array(
- 'FONT-STYLE' => 'italic',
- ),
- 'CITE' => array(
- 'FONT-STYLE' => 'italic',
- ),
- 'Q' => array(
- 'FONT-STYLE' => 'italic',
- ),
- 'EM' => array(
- 'FONT-STYLE' => 'italic',
- ),
- 'VAR' => array(
- 'FONT-STYLE' => 'italic',
- ),
- 'SAMP' => array(
- 'FONT-FAMILY' => 'monospace',
- ),
- 'CODE' => array(
- 'FONT-FAMILY' => 'monospace',
- ),
- 'KBD' => array(
- 'FONT-FAMILY' => 'monospace',
- ),
- 'TT' => array(
- 'FONT-FAMILY' => 'monospace',
- ),
- 'SMALL' => array(
- 'FONT-SIZE' => '83%',
- ),
- 'BIG' => array(
- 'FONT-SIZE' => '117%',
- ),
- 'ACRONYM' => array(
- 'FONT-SIZE' => '77%',
- 'FONT-WEIGHT' => 'bold',
- ),
- 'ADDRESS' => array(
- 'FONT-STYLE' => 'italic',
- ),
- 'BLOCKQUOTE' => array(
- 'MARGIN-LEFT' => '40px',
- 'MARGIN-RIGHT' => '40px',
- 'MARGIN-TOP' => '1.12em',
- 'MARGIN-BOTTOM' => '1.12em',
- ),
- 'A' => array(
- 'COLOR' => '#0000FF',
- 'TEXT-DECORATION' => 'underline',
- ),
- 'UL' => array(
- 'MARGIN' => '0.83em 0', /* only applied to top-level of nested lists */
- 'TEXT-INDENT' => '1.3em', /* Custom effect - list indent */
- ),
- 'OL' => array(
- 'MARGIN' => '0.83em 0', /* only applied to top-level of nested lists */
- 'TEXT-INDENT' => '1.3em', /* Custom effect - list indent */
- ),
- 'DL' => array(
- 'MARGIN' => '1.67em 0',
- ),
- 'DT' => array(
- ),
- 'DD' => array(
- 'PADDING-LEFT' => '40px',
- ),
- 'TABLE' => array(
- 'MARGIN' => '0',
- 'BORDER-COLLAPSE' => 'separate',
- 'BORDER-SPACING' => '2px',
- 'EMPTY-CELLS' => 'show',
- 'LINE-HEIGHT' => '1.2',
- 'VERTICAL-ALIGN' => 'middle',
- ),
- 'THEAD' => array(
- ),
- 'TFOOT' => array(
- ),
- 'TH' => array(
- 'FONT-WEIGHT' => 'bold',
- 'TEXT-ALIGN' => 'center',
- 'PADDING-LEFT' => '0.1em',
- 'PADDING-RIGHT' => '0.1em',
- 'PADDING-TOP' => '0.1em',
- 'PADDING-BOTTOM' => '0.1em',
- ),
- 'TD' => array(
- 'PADDING-LEFT' => '0.1em',
- 'PADDING-RIGHT' => '0.1em',
- 'PADDING-TOP' => '0.1em',
- 'PADDING-BOTTOM' => '0.1em',
- ),
- 'CAPTION' => array(
- 'TEXT-ALIGN' => 'center', /* Added mPDF 5.4 */
- ),
- 'IMG' => array(
- 'MARGIN' => '0',
- 'VERTICAL-ALIGN' => 'baseline',
- ),
- 'INPUT' => array(
- 'FONT-FAMILY' => 'sans-serif',
- 'VERTICAL-ALIGN' => 'middle',
- 'FONT-SIZE' => '0.9em',
- ),
- 'SELECT' => array(
- 'FONT-FAMILY' => 'sans-serif',
- 'FONT-SIZE' => '0.9em',
- 'VERTICAL-ALIGN' => 'middle',
- ),
- 'TEXTAREA' => array(
- 'FONT-FAMILY' => 'monospace',
- 'FONT-SIZE' => '0.9em',
- 'VERTICAL-ALIGN' => 'text-bottom',
- ),
-);
-
-
-//////////////////////////////////////////////////
-// VALUES ONLY LIKELY TO BE CHANGED BY DEVELOPERS
-//////////////////////////////////////////////////
-$this->pdf_version = '1.4';
-
-// Hyphenation
-$this->SHYlanguages = array('en','de','es','fi','fr','it','nl','pl','ru','sv'); // existing defined patterns
-
-$this->default_lineheight_correction=1.2; // Value 1 sets lineheight=fontsize height;
- // Value used if line-height not set by CSS (usuallly is)
-
-$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);
-
-// CHARACTER PATTERN MATCHES TO DETECT LANGUAGES
- // pattern used to detect RTL characters -> force RTL
- $this->pregRTLchars = "\x{0590}-\x{06FF}\x{0700}-\x{083E}\x{FB00}-\x{FDFD}\x{FE70}-\x{FEFF}";
- // mPDF 5 Now includes Syriac, Thaana, N'Ko and Samaritan
-
- // CJK Chars which require changing and are distinctive of specific charset
- $this->pregUHCchars = "\x{1100}-\x{11FF}\x{3130}-\x{318F}\x{AC00}-\x{D7AF}";
- $this->pregSJISchars = "\x{3040}-\x{309F}\x{30A0}-\x{30FF}\x{3190}-\x{319F}\x{31F0}-\x{31FF}";
-
- // Chars which distinguish CJK but not between different
- $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}";
-
- // For CJK Line-breaking
- //Leading characters - Not allowed at end of line
- $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}";
- // Following characters - Not allowed at start
- $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}";
- // Characters which are allowed to overflow the right margin
- $this->CJKoverflow = "\.,\x{ff61}\x{ff64}\x{3001}\x{3002}\x{ff0c}\x{ff0e}";
-
-
-
- // ASCII Chars which shouldn't break string
- // Use for very specific words
- $this->pregASCIIchars1 = "\x{0021}-\x{002E}\x{0030}-\x{003B}?"; // no [SPACE]
- // Use for words+
- $this->pregASCIIchars2 = "\x{0020}-\x{002E}\x{0030}-\x{003B}?"; // [SPACE] punctuation and 0-9
- // Use for chunks > words
- $this->pregASCIIchars3 = "\x{0000}-\x{002E}\x{0030}-\x{003B}\x{003F}-\x{007E}"; // all except <>
- // Vietnamese - specific
- $this->pregVIETchars = "\x{01A0}\x{01A1}\x{01AF}\x{01B0}\x{1EA0}-\x{1EF1}";
- // Vietnamese - Chars which shouldn't break string
- $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 < >
-
- // Arabic
- $this->pregARABICchars = "\x{0600}-\x{06FF}\x{0750}-\x{077F}\x{FB50}-\x{FDFD}\x{FE70}-\x{FEFF}";
- // Characters of Urdu, Pashto, Sindhi (but NOT arabic or persian/farsi) [not covered by DejavuSans font]
- $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}";
-
- $this->pregHEBchars = "\x{0590}-\x{05FF}\x{FB00}-\x{FB49}"; // Hebrew
-
- // INDIC
- $this->pregHIchars = "\x{0900}-\x{0963}\x{0966}-\x{097F}"; // Devanagari (Hindi) minus the common indic punctuation 0964,0965
- $this->pregBNchars = "\x{0980}-\x{09FF}"; // Bengali
- $this->pregPAchars = "\x{0A00}-\x{0A7F}"; // Gurmukhi (Punjabi)
- $this->pregGUchars = "\x{0A80}-\x{0AFF}"; // Gujarati
- $this->pregORchars = "\x{0B00}-\x{0B7F}"; // Oriya
- $this->pregTAchars = "\x{0B80}-\x{0BFF}"; // Tamil
- $this->pregTEchars = "\x{0C00}-\x{0C7F}"; // Telugu
- $this->pregKNchars = "\x{0C80}-\x{0CFF}"; // Kannada
- $this->pregMLchars = "\x{0D00}-\x{0D7F}"; // Malayalam
- $this->pregSHchars = "\x{0D80}-\x{0DFF}"; // Sinhala
-
- $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}";
- // 200B-D=Zero-width joiners; 0964,0965=Generic Indic punctuation; NBSP & general punctuation (excludes # and / so can use in autoFont() )
-
-$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';
-$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';
-$this->allowedCSStags .= '|SELECT|INPUT|TEXTAREA|CAPTION'; // mPDF 5.4
-
-$this->outerblocktags = array('DIV','FORM','CENTER','DL');
-$this->innerblocktags = array('P','BLOCKQUOTE','ADDRESS','PRE','H1','H2','H3','H4','H5','H6','DT','DD','CAPTION'); // mPDF 5.4
-
-
-?>
\ No newline at end of file
diff --git a/public/mpdf/config_cp.php b/public/mpdf/config_cp.php
deleted file mode 100644
index e2e21f4..0000000
--- a/public/mpdf/config_cp.php
+++ /dev/null
@@ -1,153 +0,0 @@
-
\ No newline at end of file
diff --git a/public/mpdf/config_fonts.php b/public/mpdf/config_fonts.php
deleted file mode 100644
index ec4a620..0000000
--- a/public/mpdf/config_fonts.php
+++ /dev/null
@@ -1,302 +0,0 @@
-fontdata) to use for missing characters
-// when using useSubstitutions. Use a font with wide coverage - dejavusanscondensed is a good start
-// only works using subsets (otherwise would add very large file)
-// doesn't do Indic or arabic
-// More than 1 font can be specified but each will add to the processing time of the script
-
-$this->backupSubsFont = array('dejavusanscondensed');
-
-
-// Optionally set a font (name as defined below in $this->fontdata) to use for CJK characters
-// in Plane 2 Unicode (> U+20000) when using useSubstitutions.
-// Use a font like hannomb or sun-extb if available
-// only works using subsets (otherwise would add very large file)
-// Leave undefined or blank if not not required
-
-// $this->backupSIPFont = 'sun-extb';
-
-
-/*
-This array defines translations from font-family in CSS or HTML
-to the internal font-family name used in mPDF.
-Can include as many as want, regardless of which fonts are installed.
-By default mPDF will take a CSS/HTML font-family and remove spaces
-and change to lowercase e.g. "Arial Unicode MS" will be recognised as
-"arialunicodems"
-You only need to define additional translations.
-You can also use it to define specific substitutions e.g.
-'frutiger55roman' => 'arial'
-Generic substitutions (i.e. to a sans-serif or serif font) are set
-by including the font-family in $this->sans_fonts below
-To aid backwards compatability some are included:
-*/
-$this->fonttrans = array(
- 'helvetica' => 'arial',
- 'times' => 'timesnewroman',
- 'courier' => 'couriernew',
- 'trebuchet' => 'trebuchetms',
- 'comic' => 'comicsansms',
- 'franklin' => 'franklingothicbook',
- 'albertus' => 'albertusmedium',
- 'arialuni' => 'arialunicodems',
- 'zn_hannom_a' => 'hannoma',
- 'ocr-b' => 'ocrb',
- 'ocr-b10bt' => 'ocrb',
-
-
-);
-
-/*
-This array lists the file names of the TrueType .ttf or .otf font files
-for each variant of the (internal mPDF) font-family name.
-['R'] = Regular (Normal), others are Bold, Italic, and Bold-Italic
-Each entry must contain an ['R'] entry, but others are optional.
-Only the font (files) entered here will be available to use in mPDF.
-Put preferred default first in order.
-This will be used if a named font cannot be found in any of
-$this->sans_fonts, $this->serif_fonts or $this->mono_fonts
-
-['indic'] = true; for special mPDF fonts containing Indic characters
-['sip-ext'] = 'hannomb'; name a related font file containing SIP characters
-
-If a .ttc TrueType collection file is referenced, the number of the font
-within the collection is required. Fonts in the collection are numbered
-starting at 1, as they appear in the .ttc file e.g.
- "cambria" => array(
- 'R' => "cambria.ttc",
- 'B' => "cambriab.ttf",
- 'I' => "cambriai.ttf",
- 'BI' => "cambriaz.ttf",
- 'TTCfontID' => array(
- 'R' => 1,
- ),
- ),
- "cambriamath" => array(
- 'R' => "cambria.ttc",
- 'TTCfontID' => array(
- 'R' => 2,
- ),
- ),
-*/
-
-$this->fontdata = array(
- "dejavusanscondensed" => array(
- 'R' => "DejaVuSansCondensed.ttf",
- 'B' => "DejaVuSansCondensed-Bold.ttf",
- 'I' => "DejaVuSansCondensed-Oblique.ttf",
- 'BI' => "DejaVuSansCondensed-BoldOblique.ttf",
- ),
- "dejavusans" => array(
- 'R' => "DejaVuSans.ttf",
- 'B' => "DejaVuSans-Bold.ttf",
- 'I' => "DejaVuSans-Oblique.ttf",
- 'BI' => "DejaVuSans-BoldOblique.ttf",
- ),
- "dejavuserif" => array(
- 'R' => "DejaVuSerif.ttf",
- 'B' => "DejaVuSerif-Bold.ttf",
- 'I' => "DejaVuSerif-Italic.ttf",
- 'BI' => "DejaVuSerif-BoldItalic.ttf",
- ),
- "dejavuserifcondensed" => array(
- 'R' => "DejaVuSerifCondensed.ttf",
- 'B' => "DejaVuSerifCondensed-Bold.ttf",
- 'I' => "DejaVuSerifCondensed-Italic.ttf",
- 'BI' => "DejaVuSerifCondensed-BoldItalic.ttf",
- ),
- "dejavusansmono" => array(
- 'R' => "DejaVuSansMono.ttf",
- 'B' => "DejaVuSansMono-Bold.ttf",
- 'I' => "DejaVuSansMono-Oblique.ttf",
- 'BI' => "DejaVuSansMono-BoldOblique.ttf",
- ),
-
-
-/* OCR-B font for Barcodes */
- "ocrb" => array(
- 'R' => "ocrb10.ttf",
- ),
-
-/* Thai fonts */
- "garuda" => array(
- 'R' => "Garuda.ttf",
- 'B' => "Garuda-Bold.ttf",
- 'I' => "Garuda-Oblique.ttf",
- 'BI' => "Garuda-BoldOblique.ttf",
- ),
- "norasi" => array(
- 'R' => "Norasi.ttf",
- 'B' => "Norasi-Bold.ttf",
- 'I' => "Norasi-Oblique.ttf",
- 'BI' => "Norasi-BoldOblique.ttf",
- ),
-
-
-/* Indic fonts */
- "ind_bn_1_001" => array(
- 'R' => "ind_bn_1_001.ttf",
- 'indic' => true,
- ),
- "ind_hi_1_001" => array(
- 'R' => "ind_hi_1_001.ttf",
- 'indic' => true,
- ),
- "ind_ml_1_001" => array(
- 'R' => "ind_ml_1_001.ttf",
- 'indic' => true,
- ),
- "ind_kn_1_001" => array(
- 'R' => "ind_kn_1_001.ttf",
- 'indic' => true,
- ),
- "ind_gu_1_001" => array(
- 'R' => "ind_gu_1_001.ttf",
- 'indic' => true,
- ),
- "ind_or_1_001" => array(
- 'R' => "ind_or_1_001.ttf",
- 'indic' => true,
- ),
- "ind_ta_1_001" => array(
- 'R' => "ind_ta_1_001.ttf",
- 'indic' => true,
- ),
- "ind_te_1_001" => array(
- 'R' => "ind_te_1_001.ttf",
- 'indic' => true,
- ),
- "ind_pa_1_001" => array(
- 'R' => "ind_pa_1_001.ttf",
- 'indic' => true,
- ),
-
-
-/* XW Zar Arabic fonts */
- "xbriyaz" => array(
- 'R' => "XB Riyaz.ttf",
- 'B' => "XB RiyazBd.ttf",
- 'I' => "XB RiyazIt.ttf",
- 'BI' => "XB RiyazBdIt.ttf",
- ),
- "xbzar" => array(
- 'R' => "XB Zar.ttf",
- 'B' => "XB Zar Bd.ttf",
- 'I' => "XB Zar It.ttf",
- 'BI' => "XB Zar BdIt.ttf",
- ),
-
-
-
-
-/* Examples of some CJK fonts */
-/*
- "unbatang_0613" => array(
- 'R' => "UnBatang_0613.ttf",
- ),
- "sun-exta" => array(
- 'R' => "Sun-ExtA.ttf",
- 'sip-ext' => 'sun-extb',
- ),
- "sun-extb" => array(
- 'R' => "Sun-ExtB.ttf",
- ),
- "hannoma" => array(
- 'R' => "HAN NOM A.ttf",
- 'sip-ext' => 'hannomb',
- ),
- "hannomb" => array(
- 'R' => "HAN NOM B.ttf",
- ),
-
-
- 'mingliu' => array (
- 'R' => 'mingliu.ttc',
- 'TTCfontID' => array (
- 'R' => 1,
- ),
- 'sip-ext' => 'mingliu-extb',
- ),
- 'pmingliu' => array (
- 'R' => 'mingliu.ttc',
- 'TTCfontID' => array (
- 'R' => 2,
- ),
- 'sip-ext' => 'pmingliu-extb',
- ),
- 'mingliu_hkscs' => array (
- 'R' => 'mingliu.ttc',
- 'TTCfontID' => array (
- 'R' => 3,
- ),
- 'sip-ext' => 'mingliu_hkscs-extb',
- ),
- 'mingliu-extb' => array (
- 'R' => 'mingliub.ttc',
- 'TTCfontID' => array (
- 'R' => 1,
- ),
- ),
- 'pmingliu-extb' => array (
- 'R' => 'mingliub.ttc',
- 'TTCfontID' => array (
- 'R' => 2,
- ),
- ),
- 'mingliu_hkscs-extb' => array (
- 'R' => 'mingliub.ttc',
- 'TTCfontID' => array (
- 'R' => 3,
- ),
- ),
-*/
-
-);
-
-
-// Add fonts to this array if they contain characters in the SIP or SMP Unicode planes
-// but you do not require them. This allows a more efficient form of subsetting to be used.
-$this->BMPonly = array(
- "dejavusanscondensed",
- "dejavusans",
- "dejavuserifcondensed",
- "dejavuserif",
- "dejavusansmono",
- );
-
-// These next 3 arrays do two things:
-// 1. If a font referred to in HTML/CSS is not available to mPDF, these arrays will determine whether
-// a serif/sans-serif or monospace font is substituted
-// 2. The first font in each array will be the font which is substituted in circumstances as above
-// (Otherwise the order is irrelevant)
-// Use the mPDF font-family names i.e. lowercase and no spaces (after any translations in $fonttrans)
-// Always include "sans-serif", "serif" and "monospace" etc.
-$this->sans_fonts = array('dejavusanscondensed','dejavusans','freesans','liberationsans','sans','sans-serif','cursive','fantasy',
- 'arial','helvetica','verdana','geneva','lucida','arialnarrow','arialblack','arialunicodems',
- 'franklin','franklingothicbook','tahoma','garuda','calibri','trebuchet','lucidagrande','microsoftsansserif',
- 'trebuchetms','lucidasansunicode','franklingothicmedium','albertusmedium','xbriyaz','albasuper','quillscript'
-
-);
-
-$this->serif_fonts = array('dejavuserifcondensed','dejavuserif','freeserif','liberationserif','serif',
- 'timesnewroman','times','centuryschoolbookl','palatinolinotype','centurygothic',
- 'bookmanoldstyle','bookantiqua','cyberbit','cambria',
- 'norasi','charis','palatino','constantia','georgia','albertus','xbzar','algerian','garamond',
-);
-
-$this->mono_fonts = array('dejavusansmono','freemono','liberationmono','courier', 'mono','monospace','ocrb','ocr-b','lucidaconsole',
- 'couriernew','monotypecorsiva'
-);
-
-?>
\ No newline at end of file
diff --git a/public/mpdf/font/ccourier.php b/public/mpdf/font/ccourier.php
deleted file mode 100644
index 86d7a97..0000000
--- a/public/mpdf/font/ccourier.php
+++ /dev/null
@@ -1,9 +0,0 @@
-629,'Descent'=>-157,'CapHeight'=>562,'FontBBox'=>'[-23 -250 715 805]');
-$up=-100;
-$ut=50;
-
-?>
diff --git a/public/mpdf/font/ccourierb.php b/public/mpdf/font/ccourierb.php
deleted file mode 100644
index 71444d8..0000000
--- a/public/mpdf/font/ccourierb.php
+++ /dev/null
@@ -1,9 +0,0 @@
-629,'Descent'=>-157,'CapHeight'=>562,'FontBBox'=>'[-113 -250 749 801]');
-$up=-100;
-$ut=50;
-
-
-?>
diff --git a/public/mpdf/font/ccourierbi.php b/public/mpdf/font/ccourierbi.php
deleted file mode 100644
index e7d215a..0000000
--- a/public/mpdf/font/ccourierbi.php
+++ /dev/null
@@ -1,9 +0,0 @@
-629,'Descent'=>-157,'CapHeight'=>562,'FontBBox'=>'[-57 -250 869 801]');
-$up=-100;
-$ut=50;
-
-
-?>
diff --git a/public/mpdf/font/ccourieri.php b/public/mpdf/font/ccourieri.php
deleted file mode 100644
index b16a133..0000000
--- a/public/mpdf/font/ccourieri.php
+++ /dev/null
@@ -1,9 +0,0 @@
-629,'Descent'=>-157,'CapHeight'=>562,'FontBBox'=>'[-27 -250 849 805]');
-$up=-100;
-$ut=50;
-
-
-?>
diff --git a/public/mpdf/font/chelvetica.php b/public/mpdf/font/chelvetica.php
deleted file mode 100644
index 176146f..0000000
--- a/public/mpdf/font/chelvetica.php
+++ /dev/null
@@ -1,20 +0,0 @@
-278,chr(1)=>278,chr(2)=>278,chr(3)=>278,chr(4)=>278,chr(5)=>278,chr(6)=>278,chr(7)=>278,chr(8)=>278,chr(9)=>278,chr(10)=>278,chr(11)=>278,chr(12)=>278,chr(13)=>278,chr(14)=>278,chr(15)=>278,chr(16)=>278,chr(17)=>278,chr(18)=>278,chr(19)=>278,chr(20)=>278,chr(21)=>278,
- chr(22)=>278,chr(23)=>278,chr(24)=>278,chr(25)=>278,chr(26)=>278,chr(27)=>278,chr(28)=>278,chr(29)=>278,chr(30)=>278,chr(31)=>278,' '=>278,'!'=>278,'"'=>355,'#'=>556,'$'=>556,'%'=>889,'&'=>667,'\''=>191,'('=>333,')'=>333,'*'=>389,'+'=>584,
- ','=>278,'-'=>333,'.'=>278,'/'=>278,'0'=>556,'1'=>556,'2'=>556,'3'=>556,'4'=>556,'5'=>556,'6'=>556,'7'=>556,'8'=>556,'9'=>556,':'=>278,';'=>278,'<'=>584,'='=>584,'>'=>584,'?'=>556,'@'=>1015,'A'=>667,
- 'B'=>667,'C'=>722,'D'=>722,'E'=>667,'F'=>611,'G'=>778,'H'=>722,'I'=>278,'J'=>500,'K'=>667,'L'=>556,'M'=>833,'N'=>722,'O'=>778,'P'=>667,'Q'=>778,'R'=>722,'S'=>667,'T'=>611,'U'=>722,'V'=>667,'W'=>944,
- 'X'=>667,'Y'=>667,'Z'=>611,'['=>278,'\\'=>278,']'=>278,'^'=>469,'_'=>556,'`'=>333,'a'=>556,'b'=>556,'c'=>500,'d'=>556,'e'=>556,'f'=>278,'g'=>556,'h'=>556,'i'=>222,'j'=>222,'k'=>500,'l'=>222,'m'=>833,
- 'n'=>556,'o'=>556,'p'=>556,'q'=>556,'r'=>333,'s'=>500,'t'=>278,'u'=>556,'v'=>500,'w'=>722,'x'=>500,'y'=>500,'z'=>500,'{'=>334,'|'=>260,'}'=>334,'~'=>584,chr(127)=>350,chr(128)=>556,chr(129)=>350,chr(130)=>222,chr(131)=>556,
- chr(132)=>333,chr(133)=>1000,chr(134)=>556,chr(135)=>556,chr(136)=>333,chr(137)=>1000,chr(138)=>667,chr(139)=>333,chr(140)=>1000,chr(141)=>350,chr(142)=>611,chr(143)=>350,chr(144)=>350,chr(145)=>222,chr(146)=>222,chr(147)=>333,chr(148)=>333,chr(149)=>350,chr(150)=>556,chr(151)=>1000,chr(152)=>333,chr(153)=>1000,
- chr(154)=>500,chr(155)=>333,chr(156)=>944,chr(157)=>350,chr(158)=>500,chr(159)=>667,chr(160)=>278,chr(161)=>333,chr(162)=>556,chr(163)=>556,chr(164)=>556,chr(165)=>556,chr(166)=>260,chr(167)=>556,chr(168)=>333,chr(169)=>737,chr(170)=>370,chr(171)=>556,chr(172)=>584,chr(173)=>333,chr(174)=>737,chr(175)=>333,
- chr(176)=>400,chr(177)=>584,chr(178)=>333,chr(179)=>333,chr(180)=>333,chr(181)=>556,chr(182)=>537,chr(183)=>278,chr(184)=>333,chr(185)=>333,chr(186)=>365,chr(187)=>556,chr(188)=>834,chr(189)=>834,chr(190)=>834,chr(191)=>611,chr(192)=>667,chr(193)=>667,chr(194)=>667,chr(195)=>667,chr(196)=>667,chr(197)=>667,
- chr(198)=>1000,chr(199)=>722,chr(200)=>667,chr(201)=>667,chr(202)=>667,chr(203)=>667,chr(204)=>278,chr(205)=>278,chr(206)=>278,chr(207)=>278,chr(208)=>722,chr(209)=>722,chr(210)=>778,chr(211)=>778,chr(212)=>778,chr(213)=>778,chr(214)=>778,chr(215)=>584,chr(216)=>778,chr(217)=>722,chr(218)=>722,chr(219)=>722,
- chr(220)=>722,chr(221)=>667,chr(222)=>667,chr(223)=>611,chr(224)=>556,chr(225)=>556,chr(226)=>556,chr(227)=>556,chr(228)=>556,chr(229)=>556,chr(230)=>889,chr(231)=>500,chr(232)=>556,chr(233)=>556,chr(234)=>556,chr(235)=>556,chr(236)=>278,chr(237)=>278,chr(238)=>278,chr(239)=>278,chr(240)=>556,chr(241)=>556,
- chr(242)=>556,chr(243)=>556,chr(244)=>556,chr(245)=>556,chr(246)=>556,chr(247)=>584,chr(248)=>611,chr(249)=>556,chr(250)=>556,chr(251)=>556,chr(252)=>556,chr(253)=>500,chr(254)=>556,chr(255)=>500);
-
-$desc=array('Ascent'=>718,'Descent'=>-207,'CapHeight'=>718,'FontBBox'=>'[-166 -225 1000 931]');
-$up=-100;
-$ut=50;
-$kerninfo=array ( chr(49)=> array ( chr(49)=> -74, ), chr(65)=> array ( chr(84)=> -74, chr(86)=> -74, chr(87)=> -37, chr(89)=> -74, chr(118)=> -18, chr(119)=> -18, chr(121)=> -18, chr(146)=> -74, ), chr(70)=> array ( chr(44)=> -110, chr(46)=> -110, chr(65)=> -55, ), chr(76)=> array ( chr(84)=> -74, chr(86)=> -74, chr(87)=> -74, chr(89)=> -74, chr(121)=> -37, chr(146)=> -55, ), chr(80)=> array ( chr(44)=> -128, chr(46)=> -128, chr(65)=> -74, ), chr(82)=> array ( chr(84)=> -18, chr(86)=> -18, chr(87)=> -18, chr(89)=> -18, ), chr(84)=> array ( chr(44)=> -110, chr(46)=> -110, chr(58)=> -110, chr(65)=> -74, chr(79)=> -18, chr(97)=> -110, chr(99)=> -110, chr(101)=> -110, chr(105)=> -37, chr(111)=> -110, chr(114)=> -37, chr(115)=> -110, chr(117)=> -37, chr(119)=> -55, chr(121)=> -55, ), chr(86)=> array ( chr(44)=> -91, chr(46)=> -91, chr(58)=> -37, chr(65)=> -74, chr(97)=> -74, chr(101)=> -55, chr(105)=> -18, chr(111)=> -55, chr(114)=> -37, chr(117)=> -37, chr(121)=> -37, ), chr(87)=> array ( chr(44)=> -55, chr(46)=> -55, chr(58)=> -18, chr(65)=> -37, chr(97)=> -37, chr(101)=> -18, chr(105)=> 0, chr(111)=> -18, chr(114)=> -18, chr(117)=> -18, chr(121)=> -8, ), chr(89)=> array ( chr(44)=> -128, chr(46)=> -128, chr(58)=> -55, chr(65)=> -74, chr(97)=> -74, chr(101)=> -91, chr(105)=> -37, chr(111)=> -91, chr(112)=> -74, chr(113)=> -91, chr(117)=> -55, chr(118)=> -55, ), chr(102)=> array ( chr(102)=> -18, chr(146)=> 18, ), chr(114)=> array ( chr(44)=> -55, chr(46)=> -55, chr(146)=> 37, ), chr(118)=> array ( chr(44)=> -74, chr(46)=> -74, ), chr(119)=> array ( chr(44)=> -55, chr(46)=> -55, ), chr(121)=> array ( chr(44)=> -74, chr(46)=> -74, ), chr(145)=> array ( chr(145)=> -18, ), chr(146)=> array ( chr(115)=> -18, chr(146)=> -18, ), );
-?>
\ No newline at end of file
diff --git a/public/mpdf/font/chelveticab.php b/public/mpdf/font/chelveticab.php
deleted file mode 100644
index 362034c..0000000
--- a/public/mpdf/font/chelveticab.php
+++ /dev/null
@@ -1,21 +0,0 @@
-278,chr(1)=>278,chr(2)=>278,chr(3)=>278,chr(4)=>278,chr(5)=>278,chr(6)=>278,chr(7)=>278,chr(8)=>278,chr(9)=>278,chr(10)=>278,chr(11)=>278,chr(12)=>278,chr(13)=>278,chr(14)=>278,chr(15)=>278,chr(16)=>278,chr(17)=>278,chr(18)=>278,chr(19)=>278,chr(20)=>278,chr(21)=>278,
- chr(22)=>278,chr(23)=>278,chr(24)=>278,chr(25)=>278,chr(26)=>278,chr(27)=>278,chr(28)=>278,chr(29)=>278,chr(30)=>278,chr(31)=>278,' '=>278,'!'=>333,'"'=>474,'#'=>556,'$'=>556,'%'=>889,'&'=>722,'\''=>238,'('=>333,')'=>333,'*'=>389,'+'=>584,
- ','=>278,'-'=>333,'.'=>278,'/'=>278,'0'=>556,'1'=>556,'2'=>556,'3'=>556,'4'=>556,'5'=>556,'6'=>556,'7'=>556,'8'=>556,'9'=>556,':'=>333,';'=>333,'<'=>584,'='=>584,'>'=>584,'?'=>611,'@'=>975,'A'=>722,
- 'B'=>722,'C'=>722,'D'=>722,'E'=>667,'F'=>611,'G'=>778,'H'=>722,'I'=>278,'J'=>556,'K'=>722,'L'=>611,'M'=>833,'N'=>722,'O'=>778,'P'=>667,'Q'=>778,'R'=>722,'S'=>667,'T'=>611,'U'=>722,'V'=>667,'W'=>944,
- 'X'=>667,'Y'=>667,'Z'=>611,'['=>333,'\\'=>278,']'=>333,'^'=>584,'_'=>556,'`'=>333,'a'=>556,'b'=>611,'c'=>556,'d'=>611,'e'=>556,'f'=>333,'g'=>611,'h'=>611,'i'=>278,'j'=>278,'k'=>556,'l'=>278,'m'=>889,
- 'n'=>611,'o'=>611,'p'=>611,'q'=>611,'r'=>389,'s'=>556,'t'=>333,'u'=>611,'v'=>556,'w'=>778,'x'=>556,'y'=>556,'z'=>500,'{'=>389,'|'=>280,'}'=>389,'~'=>584,chr(127)=>350,chr(128)=>556,chr(129)=>350,chr(130)=>278,chr(131)=>556,
- chr(132)=>500,chr(133)=>1000,chr(134)=>556,chr(135)=>556,chr(136)=>333,chr(137)=>1000,chr(138)=>667,chr(139)=>333,chr(140)=>1000,chr(141)=>350,chr(142)=>611,chr(143)=>350,chr(144)=>350,chr(145)=>278,chr(146)=>278,chr(147)=>500,chr(148)=>500,chr(149)=>350,chr(150)=>556,chr(151)=>1000,chr(152)=>333,chr(153)=>1000,
- chr(154)=>556,chr(155)=>333,chr(156)=>944,chr(157)=>350,chr(158)=>500,chr(159)=>667,chr(160)=>278,chr(161)=>333,chr(162)=>556,chr(163)=>556,chr(164)=>556,chr(165)=>556,chr(166)=>280,chr(167)=>556,chr(168)=>333,chr(169)=>737,chr(170)=>370,chr(171)=>556,chr(172)=>584,chr(173)=>333,chr(174)=>737,chr(175)=>333,
- chr(176)=>400,chr(177)=>584,chr(178)=>333,chr(179)=>333,chr(180)=>333,chr(181)=>611,chr(182)=>556,chr(183)=>278,chr(184)=>333,chr(185)=>333,chr(186)=>365,chr(187)=>556,chr(188)=>834,chr(189)=>834,chr(190)=>834,chr(191)=>611,chr(192)=>722,chr(193)=>722,chr(194)=>722,chr(195)=>722,chr(196)=>722,chr(197)=>722,
- chr(198)=>1000,chr(199)=>722,chr(200)=>667,chr(201)=>667,chr(202)=>667,chr(203)=>667,chr(204)=>278,chr(205)=>278,chr(206)=>278,chr(207)=>278,chr(208)=>722,chr(209)=>722,chr(210)=>778,chr(211)=>778,chr(212)=>778,chr(213)=>778,chr(214)=>778,chr(215)=>584,chr(216)=>778,chr(217)=>722,chr(218)=>722,chr(219)=>722,
- chr(220)=>722,chr(221)=>667,chr(222)=>667,chr(223)=>611,chr(224)=>556,chr(225)=>556,chr(226)=>556,chr(227)=>556,chr(228)=>556,chr(229)=>556,chr(230)=>889,chr(231)=>556,chr(232)=>556,chr(233)=>556,chr(234)=>556,chr(235)=>556,chr(236)=>278,chr(237)=>278,chr(238)=>278,chr(239)=>278,chr(240)=>611,chr(241)=>611,
- chr(242)=>611,chr(243)=>611,chr(244)=>611,chr(245)=>611,chr(246)=>611,chr(247)=>584,chr(248)=>611,chr(249)=>611,chr(250)=>611,chr(251)=>611,chr(252)=>611,chr(253)=>556,chr(254)=>611,chr(255)=>556);
-
-$desc=array('Ascent'=>718,'Descent'=>-207,'CapHeight'=>718,'FontBBox'=>'[-170 -228 1003 962]');
-$up=-100;
-$ut=50;
-$kerninfo=array ( chr(49)=> array ( chr(49)=> -55, ), chr(65)=> array ( chr(84)=> -74, chr(86)=> -74, chr(87)=> -55, chr(89)=> -91, chr(118)=> -37, chr(119)=> -18, chr(121)=> -37, chr(146)=> -55, ), chr(70)=> array ( chr(44)=> -110, chr(46)=> -110, chr(65)=> -55, ), chr(76)=> array ( chr(84)=> -74, chr(86)=> -74, chr(87)=> -55, chr(89)=> -91, chr(121)=> -37, chr(146)=> -55, ), chr(80)=> array ( chr(44)=> -128, chr(46)=> -128, chr(65)=> -74, ), chr(82)=> array ( chr(86)=> -18, chr(87)=> -18, chr(89)=> -37, ), chr(84)=> array ( chr(44)=> -110, chr(46)=> -110, chr(58)=> -110, chr(65)=> -74, chr(79)=> -18, chr(97)=> -74, chr(99)=> -74, chr(101)=> -74, chr(105)=> -18, chr(111)=> -74, chr(114)=> -55, chr(115)=> -74, chr(117)=> -74, chr(119)=> -74, chr(121)=> -74, ), chr(86)=> array ( chr(44)=> -91, chr(46)=> -91, chr(58)=> -55, chr(65)=> -74, chr(97)=> -55, chr(101)=> -55, chr(105)=> -18, chr(111)=> -74, chr(114)=> -55, chr(117)=> -37, chr(121)=> -37, ), chr(87)=> array ( chr(44)=> -55, chr(46)=> -55, chr(58)=> -18, chr(65)=> -55, chr(97)=> -37, chr(101)=> -18, chr(105)=> -8, chr(111)=> -18, chr(114)=> -18, chr(117)=> -18, chr(121)=> -18, ), chr(89)=> array ( chr(44)=> -110, chr(46)=> -110, chr(58)=> -74, chr(65)=> -91, chr(97)=> -55, chr(101)=> -55, chr(105)=> -37, chr(111)=> -74, chr(112)=> -55, chr(113)=> -74, chr(117)=> -55, chr(118)=> -55, ), chr(102)=> array ( chr(146)=> 18, ), chr(114)=> array ( chr(44)=> -55, chr(46)=> -55, chr(146)=> 37, ), chr(118)=> array ( chr(44)=> -74, chr(46)=> -74, ), chr(119)=> array ( chr(44)=> -37, chr(46)=> -37, ), chr(121)=> array ( chr(44)=> -74, chr(46)=> -74, ), chr(145)=> array ( chr(145)=> -37, ), chr(146)=> array ( chr(115)=> -37, chr(146)=> -37, ), );
-
-?>
\ No newline at end of file
diff --git a/public/mpdf/font/chelveticabi.php b/public/mpdf/font/chelveticabi.php
deleted file mode 100644
index b71ad34..0000000
--- a/public/mpdf/font/chelveticabi.php
+++ /dev/null
@@ -1,21 +0,0 @@
-278,chr(1)=>278,chr(2)=>278,chr(3)=>278,chr(4)=>278,chr(5)=>278,chr(6)=>278,chr(7)=>278,chr(8)=>278,chr(9)=>278,chr(10)=>278,chr(11)=>278,chr(12)=>278,chr(13)=>278,chr(14)=>278,chr(15)=>278,chr(16)=>278,chr(17)=>278,chr(18)=>278,chr(19)=>278,chr(20)=>278,chr(21)=>278,
- chr(22)=>278,chr(23)=>278,chr(24)=>278,chr(25)=>278,chr(26)=>278,chr(27)=>278,chr(28)=>278,chr(29)=>278,chr(30)=>278,chr(31)=>278,' '=>278,'!'=>333,'"'=>474,'#'=>556,'$'=>556,'%'=>889,'&'=>722,'\''=>238,'('=>333,')'=>333,'*'=>389,'+'=>584,
- ','=>278,'-'=>333,'.'=>278,'/'=>278,'0'=>556,'1'=>556,'2'=>556,'3'=>556,'4'=>556,'5'=>556,'6'=>556,'7'=>556,'8'=>556,'9'=>556,':'=>333,';'=>333,'<'=>584,'='=>584,'>'=>584,'?'=>611,'@'=>975,'A'=>722,
- 'B'=>722,'C'=>722,'D'=>722,'E'=>667,'F'=>611,'G'=>778,'H'=>722,'I'=>278,'J'=>556,'K'=>722,'L'=>611,'M'=>833,'N'=>722,'O'=>778,'P'=>667,'Q'=>778,'R'=>722,'S'=>667,'T'=>611,'U'=>722,'V'=>667,'W'=>944,
- 'X'=>667,'Y'=>667,'Z'=>611,'['=>333,'\\'=>278,']'=>333,'^'=>584,'_'=>556,'`'=>333,'a'=>556,'b'=>611,'c'=>556,'d'=>611,'e'=>556,'f'=>333,'g'=>611,'h'=>611,'i'=>278,'j'=>278,'k'=>556,'l'=>278,'m'=>889,
- 'n'=>611,'o'=>611,'p'=>611,'q'=>611,'r'=>389,'s'=>556,'t'=>333,'u'=>611,'v'=>556,'w'=>778,'x'=>556,'y'=>556,'z'=>500,'{'=>389,'|'=>280,'}'=>389,'~'=>584,chr(127)=>350,chr(128)=>556,chr(129)=>350,chr(130)=>278,chr(131)=>556,
- chr(132)=>500,chr(133)=>1000,chr(134)=>556,chr(135)=>556,chr(136)=>333,chr(137)=>1000,chr(138)=>667,chr(139)=>333,chr(140)=>1000,chr(141)=>350,chr(142)=>611,chr(143)=>350,chr(144)=>350,chr(145)=>278,chr(146)=>278,chr(147)=>500,chr(148)=>500,chr(149)=>350,chr(150)=>556,chr(151)=>1000,chr(152)=>333,chr(153)=>1000,
- chr(154)=>556,chr(155)=>333,chr(156)=>944,chr(157)=>350,chr(158)=>500,chr(159)=>667,chr(160)=>278,chr(161)=>333,chr(162)=>556,chr(163)=>556,chr(164)=>556,chr(165)=>556,chr(166)=>280,chr(167)=>556,chr(168)=>333,chr(169)=>737,chr(170)=>370,chr(171)=>556,chr(172)=>584,chr(173)=>333,chr(174)=>737,chr(175)=>333,
- chr(176)=>400,chr(177)=>584,chr(178)=>333,chr(179)=>333,chr(180)=>333,chr(181)=>611,chr(182)=>556,chr(183)=>278,chr(184)=>333,chr(185)=>333,chr(186)=>365,chr(187)=>556,chr(188)=>834,chr(189)=>834,chr(190)=>834,chr(191)=>611,chr(192)=>722,chr(193)=>722,chr(194)=>722,chr(195)=>722,chr(196)=>722,chr(197)=>722,
- chr(198)=>1000,chr(199)=>722,chr(200)=>667,chr(201)=>667,chr(202)=>667,chr(203)=>667,chr(204)=>278,chr(205)=>278,chr(206)=>278,chr(207)=>278,chr(208)=>722,chr(209)=>722,chr(210)=>778,chr(211)=>778,chr(212)=>778,chr(213)=>778,chr(214)=>778,chr(215)=>584,chr(216)=>778,chr(217)=>722,chr(218)=>722,chr(219)=>722,
- chr(220)=>722,chr(221)=>667,chr(222)=>667,chr(223)=>611,chr(224)=>556,chr(225)=>556,chr(226)=>556,chr(227)=>556,chr(228)=>556,chr(229)=>556,chr(230)=>889,chr(231)=>556,chr(232)=>556,chr(233)=>556,chr(234)=>556,chr(235)=>556,chr(236)=>278,chr(237)=>278,chr(238)=>278,chr(239)=>278,chr(240)=>611,chr(241)=>611,
- chr(242)=>611,chr(243)=>611,chr(244)=>611,chr(245)=>611,chr(246)=>611,chr(247)=>584,chr(248)=>611,chr(249)=>611,chr(250)=>611,chr(251)=>611,chr(252)=>611,chr(253)=>556,chr(254)=>611,chr(255)=>556);
-
-$desc=array('Ascent'=>718,'Descent'=>-207,'CapHeight'=>718,'FontBBox'=>'[-174 -228 1114 962]');
-$up=-100;
-$ut=50;
-$kerninfo=array ( chr(49)=> array ( chr(49)=> -74, ), chr(65)=> array ( chr(84)=> -74, chr(86)=> -74, chr(87)=> -55, chr(89)=> -74, chr(146)=> -55, ), chr(70)=> array ( chr(44)=> -110, chr(46)=> -110, chr(65)=> -55, ), chr(76)=> array ( chr(84)=> -74, chr(86)=> -55, chr(87)=> -55, chr(89)=> -74, chr(146)=> -74, ), chr(80)=> array ( chr(44)=> -128, chr(46)=> -128, chr(65)=> -74, ), chr(82)=> array ( chr(84)=> -18, chr(87)=> -18, chr(89)=> -18, ), chr(84)=> array ( chr(44)=> -74, chr(46)=> -74, chr(58)=> -74, chr(65)=> -74, chr(79)=> -18, chr(97)=> -37, chr(99)=> -37, chr(101)=> -37, chr(105)=> -18, chr(111)=> -37, chr(114)=> -18, chr(115)=> -37, chr(117)=> -18, chr(119)=> -37, chr(121)=> -37, ), chr(86)=> array ( chr(44)=> -91, chr(46)=> -91, chr(58)=> -37, chr(65)=> -74, chr(97)=> -37, chr(101)=> -37, chr(105)=> -37, chr(111)=> -37, chr(114)=> -18, chr(117)=> -18, chr(121)=> -18, ), chr(87)=> array ( chr(44)=> -74, chr(46)=> -74, chr(58)=> -37, chr(65)=> -55, chr(97)=> -18, chr(101)=> -18, chr(105)=> -8, chr(111)=> -18, chr(114)=> -18, chr(117)=> -18, chr(121)=> -18, ), chr(89)=> array ( chr(44)=> -91, chr(46)=> -91, chr(58)=> -55, chr(65)=> -74, chr(97)=> -37, chr(101)=> -37, chr(105)=> -37, chr(111)=> -37, chr(112)=> -37, chr(113)=> -37, chr(117)=> -37, chr(118)=> -37, ), chr(102)=> array ( chr(102)=> -18, chr(146)=> 18, ), chr(114)=> array ( chr(44)=> -55, chr(46)=> -55, chr(146)=> 37, ), chr(118)=> array ( chr(44)=> -55, chr(46)=> -55, ), chr(119)=> array ( chr(44)=> -37, chr(46)=> -37, ), chr(121)=> array ( chr(44)=> -37, chr(46)=> -37, ), chr(145)=> array ( chr(145)=> -37, ), chr(146)=> array ( chr(115)=> -18, chr(116)=> 18, chr(146)=> -37, ), );
-
-?>
\ No newline at end of file
diff --git a/public/mpdf/font/chelveticai.php b/public/mpdf/font/chelveticai.php
deleted file mode 100644
index 4f10f4e..0000000
--- a/public/mpdf/font/chelveticai.php
+++ /dev/null
@@ -1,21 +0,0 @@
-278,chr(1)=>278,chr(2)=>278,chr(3)=>278,chr(4)=>278,chr(5)=>278,chr(6)=>278,chr(7)=>278,chr(8)=>278,chr(9)=>278,chr(10)=>278,chr(11)=>278,chr(12)=>278,chr(13)=>278,chr(14)=>278,chr(15)=>278,chr(16)=>278,chr(17)=>278,chr(18)=>278,chr(19)=>278,chr(20)=>278,chr(21)=>278,
- chr(22)=>278,chr(23)=>278,chr(24)=>278,chr(25)=>278,chr(26)=>278,chr(27)=>278,chr(28)=>278,chr(29)=>278,chr(30)=>278,chr(31)=>278,' '=>278,'!'=>278,'"'=>355,'#'=>556,'$'=>556,'%'=>889,'&'=>667,'\''=>191,'('=>333,')'=>333,'*'=>389,'+'=>584,
- ','=>278,'-'=>333,'.'=>278,'/'=>278,'0'=>556,'1'=>556,'2'=>556,'3'=>556,'4'=>556,'5'=>556,'6'=>556,'7'=>556,'8'=>556,'9'=>556,':'=>278,';'=>278,'<'=>584,'='=>584,'>'=>584,'?'=>556,'@'=>1015,'A'=>667,
- 'B'=>667,'C'=>722,'D'=>722,'E'=>667,'F'=>611,'G'=>778,'H'=>722,'I'=>278,'J'=>500,'K'=>667,'L'=>556,'M'=>833,'N'=>722,'O'=>778,'P'=>667,'Q'=>778,'R'=>722,'S'=>667,'T'=>611,'U'=>722,'V'=>667,'W'=>944,
- 'X'=>667,'Y'=>667,'Z'=>611,'['=>278,'\\'=>278,']'=>278,'^'=>469,'_'=>556,'`'=>333,'a'=>556,'b'=>556,'c'=>500,'d'=>556,'e'=>556,'f'=>278,'g'=>556,'h'=>556,'i'=>222,'j'=>222,'k'=>500,'l'=>222,'m'=>833,
- 'n'=>556,'o'=>556,'p'=>556,'q'=>556,'r'=>333,'s'=>500,'t'=>278,'u'=>556,'v'=>500,'w'=>722,'x'=>500,'y'=>500,'z'=>500,'{'=>334,'|'=>260,'}'=>334,'~'=>584,chr(127)=>350,chr(128)=>556,chr(129)=>350,chr(130)=>222,chr(131)=>556,
- chr(132)=>333,chr(133)=>1000,chr(134)=>556,chr(135)=>556,chr(136)=>333,chr(137)=>1000,chr(138)=>667,chr(139)=>333,chr(140)=>1000,chr(141)=>350,chr(142)=>611,chr(143)=>350,chr(144)=>350,chr(145)=>222,chr(146)=>222,chr(147)=>333,chr(148)=>333,chr(149)=>350,chr(150)=>556,chr(151)=>1000,chr(152)=>333,chr(153)=>1000,
- chr(154)=>500,chr(155)=>333,chr(156)=>944,chr(157)=>350,chr(158)=>500,chr(159)=>667,chr(160)=>278,chr(161)=>333,chr(162)=>556,chr(163)=>556,chr(164)=>556,chr(165)=>556,chr(166)=>260,chr(167)=>556,chr(168)=>333,chr(169)=>737,chr(170)=>370,chr(171)=>556,chr(172)=>584,chr(173)=>333,chr(174)=>737,chr(175)=>333,
- chr(176)=>400,chr(177)=>584,chr(178)=>333,chr(179)=>333,chr(180)=>333,chr(181)=>556,chr(182)=>537,chr(183)=>278,chr(184)=>333,chr(185)=>333,chr(186)=>365,chr(187)=>556,chr(188)=>834,chr(189)=>834,chr(190)=>834,chr(191)=>611,chr(192)=>667,chr(193)=>667,chr(194)=>667,chr(195)=>667,chr(196)=>667,chr(197)=>667,
- chr(198)=>1000,chr(199)=>722,chr(200)=>667,chr(201)=>667,chr(202)=>667,chr(203)=>667,chr(204)=>278,chr(205)=>278,chr(206)=>278,chr(207)=>278,chr(208)=>722,chr(209)=>722,chr(210)=>778,chr(211)=>778,chr(212)=>778,chr(213)=>778,chr(214)=>778,chr(215)=>584,chr(216)=>778,chr(217)=>722,chr(218)=>722,chr(219)=>722,
- chr(220)=>722,chr(221)=>667,chr(222)=>667,chr(223)=>611,chr(224)=>556,chr(225)=>556,chr(226)=>556,chr(227)=>556,chr(228)=>556,chr(229)=>556,chr(230)=>889,chr(231)=>500,chr(232)=>556,chr(233)=>556,chr(234)=>556,chr(235)=>556,chr(236)=>278,chr(237)=>278,chr(238)=>278,chr(239)=>278,chr(240)=>556,chr(241)=>556,
- chr(242)=>556,chr(243)=>556,chr(244)=>556,chr(245)=>556,chr(246)=>556,chr(247)=>584,chr(248)=>611,chr(249)=>556,chr(250)=>556,chr(251)=>556,chr(252)=>556,chr(253)=>500,chr(254)=>556,chr(255)=>500);
-
-$desc=array('Ascent'=>718,'Descent'=>-207,'CapHeight'=>718,'FontBBox'=>'[-170 -225 1116 931]');
-$up=-100;
-$ut=50;
-$kerninfo=array ( chr(49)=> array ( chr(49)=> -74, ), chr(65)=> array ( chr(84)=> -74, chr(86)=> -55, chr(87)=> -18, chr(89)=> -74, chr(118)=> -18, chr(119)=> -18, chr(121)=> -8, chr(146)=> -37, ), chr(70)=> array ( chr(44)=> -128, chr(46)=> -128, chr(65)=> -74, ), chr(76)=> array ( chr(84)=> -74, chr(86)=> -55, chr(87)=> -37, chr(89)=> -91, chr(121)=> -18, chr(146)=> -55, ), chr(80)=> array ( chr(44)=> -128, chr(46)=> -128, chr(65)=> -74, ), chr(82)=> array ( chr(84)=> -18, chr(86)=> -18, chr(87)=> -18, chr(89)=> -37, ), chr(84)=> array ( chr(44)=> -91, chr(46)=> -91, chr(58)=> -74, chr(65)=> -74, chr(79)=> -18, chr(97)=> -91, chr(99)=> -91, chr(101)=> -91, chr(105)=> -8, chr(111)=> -91, chr(114)=> -74, chr(115)=> -91, chr(117)=> -74, chr(119)=> -74, chr(121)=> -74, ), chr(86)=> array ( chr(44)=> -74, chr(46)=> -74, chr(58)=> -18, chr(65)=> -55, chr(97)=> -37, chr(101)=> -37, chr(105)=> -18, chr(111)=> -37, chr(114)=> -18, chr(117)=> -18, chr(121)=> -18, ), chr(87)=> array ( chr(44)=> -37, chr(46)=> -37, chr(65)=> -18, chr(97)=> -18, chr(101)=> -18, chr(105)=> -8, ), chr(89)=> array ( chr(44)=> -91, chr(46)=> -91, chr(58)=> -37, chr(65)=> -55, chr(97)=> -74, chr(101)=> -55, chr(105)=> -18, chr(111)=> -55, chr(112)=> -55, chr(113)=> -55, chr(117)=> -37, chr(118)=> -37, ), chr(102)=> array ( chr(146)=> 37, ), chr(114)=> array ( chr(44)=> -55, chr(46)=> -37, chr(146)=> 37, ), chr(118)=> array ( chr(44)=> -74, chr(46)=> -74, ), chr(119)=> array ( chr(44)=> -55, chr(46)=> -55, ), chr(121)=> array ( chr(44)=> -74, chr(46)=> -74, ), chr(145)=> array ( chr(145)=> -37, ), chr(146)=> array ( chr(115)=> -18, chr(146)=> -37, ), );
-
-?>
\ No newline at end of file
diff --git a/public/mpdf/font/csymbol.php b/public/mpdf/font/csymbol.php
deleted file mode 100644
index a7b1ddf..0000000
--- a/public/mpdf/font/csymbol.php
+++ /dev/null
@@ -1,21 +0,0 @@
-250,chr(1)=>250,chr(2)=>250,chr(3)=>250,chr(4)=>250,chr(5)=>250,chr(6)=>250,chr(7)=>250,chr(8)=>250,chr(9)=>250,chr(10)=>250,chr(11)=>250,chr(12)=>250,chr(13)=>250,chr(14)=>250,chr(15)=>250,chr(16)=>250,chr(17)=>250,chr(18)=>250,chr(19)=>250,chr(20)=>250,chr(21)=>250,
- chr(22)=>250,chr(23)=>250,chr(24)=>250,chr(25)=>250,chr(26)=>250,chr(27)=>250,chr(28)=>250,chr(29)=>250,chr(30)=>250,chr(31)=>250,' '=>250,'!'=>333,'"'=>713,'#'=>500,'$'=>549,'%'=>833,'&'=>778,'\''=>439,'('=>333,')'=>333,'*'=>500,'+'=>549,
- ','=>250,'-'=>549,'.'=>250,'/'=>278,'0'=>500,'1'=>500,'2'=>500,'3'=>500,'4'=>500,'5'=>500,'6'=>500,'7'=>500,'8'=>500,'9'=>500,':'=>278,';'=>278,'<'=>549,'='=>549,'>'=>549,'?'=>444,'@'=>549,'A'=>722,
- 'B'=>667,'C'=>722,'D'=>612,'E'=>611,'F'=>763,'G'=>603,'H'=>722,'I'=>333,'J'=>631,'K'=>722,'L'=>686,'M'=>889,'N'=>722,'O'=>722,'P'=>768,'Q'=>741,'R'=>556,'S'=>592,'T'=>611,'U'=>690,'V'=>439,'W'=>768,
- 'X'=>645,'Y'=>795,'Z'=>611,'['=>333,'\\'=>863,']'=>333,'^'=>658,'_'=>500,'`'=>500,'a'=>631,'b'=>549,'c'=>549,'d'=>494,'e'=>439,'f'=>521,'g'=>411,'h'=>603,'i'=>329,'j'=>603,'k'=>549,'l'=>549,'m'=>576,
- 'n'=>521,'o'=>549,'p'=>549,'q'=>521,'r'=>549,'s'=>603,'t'=>439,'u'=>576,'v'=>713,'w'=>686,'x'=>493,'y'=>686,'z'=>494,'{'=>480,'|'=>200,'}'=>480,'~'=>549,chr(127)=>0,chr(128)=>0,chr(129)=>0,chr(130)=>0,chr(131)=>0,
- chr(132)=>0,chr(133)=>0,chr(134)=>0,chr(135)=>0,chr(136)=>0,chr(137)=>0,chr(138)=>0,chr(139)=>0,chr(140)=>0,chr(141)=>0,chr(142)=>0,chr(143)=>0,chr(144)=>0,chr(145)=>0,chr(146)=>0,chr(147)=>0,chr(148)=>0,chr(149)=>0,chr(150)=>0,chr(151)=>0,chr(152)=>0,chr(153)=>0,
- chr(154)=>0,chr(155)=>0,chr(156)=>0,chr(157)=>0,chr(158)=>0,chr(159)=>0,chr(160)=>750,chr(161)=>620,chr(162)=>247,chr(163)=>549,chr(164)=>167,chr(165)=>713,chr(166)=>500,chr(167)=>753,chr(168)=>753,chr(169)=>753,chr(170)=>753,chr(171)=>1042,chr(172)=>987,chr(173)=>603,chr(174)=>987,chr(175)=>603,
- chr(176)=>400,chr(177)=>549,chr(178)=>411,chr(179)=>549,chr(180)=>549,chr(181)=>713,chr(182)=>494,chr(183)=>460,chr(184)=>549,chr(185)=>549,chr(186)=>549,chr(187)=>549,chr(188)=>1000,chr(189)=>603,chr(190)=>1000,chr(191)=>658,chr(192)=>823,chr(193)=>686,chr(194)=>795,chr(195)=>987,chr(196)=>768,chr(197)=>768,
- chr(198)=>823,chr(199)=>768,chr(200)=>768,chr(201)=>713,chr(202)=>713,chr(203)=>713,chr(204)=>713,chr(205)=>713,chr(206)=>713,chr(207)=>713,chr(208)=>768,chr(209)=>713,chr(210)=>790,chr(211)=>790,chr(212)=>890,chr(213)=>823,chr(214)=>549,chr(215)=>250,chr(216)=>713,chr(217)=>603,chr(218)=>603,chr(219)=>1042,
- chr(220)=>987,chr(221)=>603,chr(222)=>987,chr(223)=>603,chr(224)=>494,chr(225)=>329,chr(226)=>790,chr(227)=>790,chr(228)=>786,chr(229)=>713,chr(230)=>384,chr(231)=>384,chr(232)=>384,chr(233)=>384,chr(234)=>384,chr(235)=>384,chr(236)=>494,chr(237)=>494,chr(238)=>494,chr(239)=>494,chr(240)=>0,chr(241)=>329,
- chr(242)=>274,chr(243)=>686,chr(244)=>686,chr(245)=>686,chr(246)=>384,chr(247)=>384,chr(248)=>384,chr(249)=>384,chr(250)=>384,chr(251)=>384,chr(252)=>494,chr(253)=>494,chr(254)=>494,chr(255)=>0);
-
-$desc=array('FontBBox'=>'[-180 -293 1090 1010]');
-$up=-100;
-$ut=50;
-
-
-?>
\ No newline at end of file
diff --git a/public/mpdf/font/ctimes.php b/public/mpdf/font/ctimes.php
deleted file mode 100644
index c0a2486..0000000
--- a/public/mpdf/font/ctimes.php
+++ /dev/null
@@ -1,21 +0,0 @@
-250,chr(1)=>250,chr(2)=>250,chr(3)=>250,chr(4)=>250,chr(5)=>250,chr(6)=>250,chr(7)=>250,chr(8)=>250,chr(9)=>250,chr(10)=>250,chr(11)=>250,chr(12)=>250,chr(13)=>250,chr(14)=>250,chr(15)=>250,chr(16)=>250,chr(17)=>250,chr(18)=>250,chr(19)=>250,chr(20)=>250,chr(21)=>250,
- chr(22)=>250,chr(23)=>250,chr(24)=>250,chr(25)=>250,chr(26)=>250,chr(27)=>250,chr(28)=>250,chr(29)=>250,chr(30)=>250,chr(31)=>250,' '=>250,'!'=>333,'"'=>408,'#'=>500,'$'=>500,'%'=>833,'&'=>778,'\''=>180,'('=>333,')'=>333,'*'=>500,'+'=>564,
- ','=>250,'-'=>333,'.'=>250,'/'=>278,'0'=>500,'1'=>500,'2'=>500,'3'=>500,'4'=>500,'5'=>500,'6'=>500,'7'=>500,'8'=>500,'9'=>500,':'=>278,';'=>278,'<'=>564,'='=>564,'>'=>564,'?'=>444,'@'=>921,'A'=>722,
- 'B'=>667,'C'=>667,'D'=>722,'E'=>611,'F'=>556,'G'=>722,'H'=>722,'I'=>333,'J'=>389,'K'=>722,'L'=>611,'M'=>889,'N'=>722,'O'=>722,'P'=>556,'Q'=>722,'R'=>667,'S'=>556,'T'=>611,'U'=>722,'V'=>722,'W'=>944,
- 'X'=>722,'Y'=>722,'Z'=>611,'['=>333,'\\'=>278,']'=>333,'^'=>469,'_'=>500,'`'=>333,'a'=>444,'b'=>500,'c'=>444,'d'=>500,'e'=>444,'f'=>333,'g'=>500,'h'=>500,'i'=>278,'j'=>278,'k'=>500,'l'=>278,'m'=>778,
- 'n'=>500,'o'=>500,'p'=>500,'q'=>500,'r'=>333,'s'=>389,'t'=>278,'u'=>500,'v'=>500,'w'=>722,'x'=>500,'y'=>500,'z'=>444,'{'=>480,'|'=>200,'}'=>480,'~'=>541,chr(127)=>350,chr(128)=>500,chr(129)=>350,chr(130)=>333,chr(131)=>500,
- chr(132)=>444,chr(133)=>1000,chr(134)=>500,chr(135)=>500,chr(136)=>333,chr(137)=>1000,chr(138)=>556,chr(139)=>333,chr(140)=>889,chr(141)=>350,chr(142)=>611,chr(143)=>350,chr(144)=>350,chr(145)=>333,chr(146)=>333,chr(147)=>444,chr(148)=>444,chr(149)=>350,chr(150)=>500,chr(151)=>1000,chr(152)=>333,chr(153)=>980,
- chr(154)=>389,chr(155)=>333,chr(156)=>722,chr(157)=>350,chr(158)=>444,chr(159)=>722,chr(160)=>250,chr(161)=>333,chr(162)=>500,chr(163)=>500,chr(164)=>500,chr(165)=>500,chr(166)=>200,chr(167)=>500,chr(168)=>333,chr(169)=>760,chr(170)=>276,chr(171)=>500,chr(172)=>564,chr(173)=>333,chr(174)=>760,chr(175)=>333,
- chr(176)=>400,chr(177)=>564,chr(178)=>300,chr(179)=>300,chr(180)=>333,chr(181)=>500,chr(182)=>453,chr(183)=>250,chr(184)=>333,chr(185)=>300,chr(186)=>310,chr(187)=>500,chr(188)=>750,chr(189)=>750,chr(190)=>750,chr(191)=>444,chr(192)=>722,chr(193)=>722,chr(194)=>722,chr(195)=>722,chr(196)=>722,chr(197)=>722,
- chr(198)=>889,chr(199)=>667,chr(200)=>611,chr(201)=>611,chr(202)=>611,chr(203)=>611,chr(204)=>333,chr(205)=>333,chr(206)=>333,chr(207)=>333,chr(208)=>722,chr(209)=>722,chr(210)=>722,chr(211)=>722,chr(212)=>722,chr(213)=>722,chr(214)=>722,chr(215)=>564,chr(216)=>722,chr(217)=>722,chr(218)=>722,chr(219)=>722,
- chr(220)=>722,chr(221)=>722,chr(222)=>556,chr(223)=>500,chr(224)=>444,chr(225)=>444,chr(226)=>444,chr(227)=>444,chr(228)=>444,chr(229)=>444,chr(230)=>667,chr(231)=>444,chr(232)=>444,chr(233)=>444,chr(234)=>444,chr(235)=>444,chr(236)=>278,chr(237)=>278,chr(238)=>278,chr(239)=>278,chr(240)=>500,chr(241)=>500,
- chr(242)=>500,chr(243)=>500,chr(244)=>500,chr(245)=>500,chr(246)=>500,chr(247)=>564,chr(248)=>500,chr(249)=>500,chr(250)=>500,chr(251)=>500,chr(252)=>500,chr(253)=>500,chr(254)=>500,chr(255)=>500);
-
-$desc=array('Ascent'=>683,'Descent'=>-217,'CapHeight'=>662,'FontBBox'=>'[-168 -218 1000 898]');
-$up=-100;
-$ut=50;
-$kerninfo=array ( chr(49)=> array ( chr(49)=> -37, ), chr(65)=> array ( chr(84)=> -110, chr(86)=> -128, chr(87)=> -80, chr(89)=> -91, chr(118)=> -74, chr(119)=> -91, chr(121)=> -91, chr(146)=> -110, ), chr(70)=> array ( chr(44)=> -80, chr(46)=> -80, chr(65)=> -74, ), chr(76)=> array ( chr(84)=> -91, chr(86)=> -91, chr(87)=> -74, chr(89)=> -100, chr(121)=> -55, chr(146)=> -91, ), chr(80)=> array ( chr(44)=> -110, chr(46)=> -110, chr(65)=> -91, ), chr(82)=> array ( chr(84)=> -60, chr(86)=> -80, chr(87)=> -55, chr(89)=> -55, chr(121)=> -40, ), chr(84)=> array ( chr(44)=> -74, chr(46)=> -74, chr(58)=> -49, chr(65)=> -80, chr(79)=> -18, chr(97)=> -69, chr(99)=> -69, chr(101)=> -69, chr(105)=> -35, chr(111)=> -69, chr(114)=> -35, chr(115)=> -69, chr(117)=> -35, chr(119)=> -69, chr(121)=> -69, ), chr(86)=> array ( chr(44)=> -128, chr(46)=> -128, chr(58)=> -74, chr(65)=> -128, chr(97)=> -110, chr(101)=> -110, chr(105)=> -60, chr(111)=> -128, chr(114)=> -60, chr(117)=> -60, chr(121)=> -110, ), chr(87)=> array ( chr(44)=> -91, chr(46)=> -91, chr(58)=> -37, chr(65)=> -110, chr(97)=> -80, chr(101)=> -80, chr(105)=> -40, chr(111)=> -80, chr(114)=> -40, chr(117)=> -40, chr(121)=> -60, ), chr(89)=> array ( chr(44)=> -128, chr(46)=> -128, chr(58)=> -91, chr(65)=> -110, chr(97)=> -100, chr(101)=> -100, chr(105)=> -55, chr(111)=> -100, chr(112)=> -91, chr(113)=> -110, chr(117)=> -110, chr(118)=> -100, ), chr(102)=> array ( chr(102)=> -18, chr(146)=> 55, ), chr(114)=> array ( chr(44)=> -40, chr(46)=> -55, chr(103)=> -18, chr(146)=> 37, ), chr(118)=> array ( chr(44)=> -64, chr(46)=> -64, ), chr(119)=> array ( chr(44)=> -64, chr(46)=> -64, ), chr(121)=> array ( chr(44)=> -64, chr(46)=> -64, ), chr(145)=> array ( chr(145)=> -74, ), chr(146)=> array ( chr(115)=> -55, chr(116)=> -18, chr(146)=> -74, ), );
-
-?>
\ No newline at end of file
diff --git a/public/mpdf/font/ctimesb.php b/public/mpdf/font/ctimesb.php
deleted file mode 100644
index bd93d22..0000000
--- a/public/mpdf/font/ctimesb.php
+++ /dev/null
@@ -1,21 +0,0 @@
-250,chr(1)=>250,chr(2)=>250,chr(3)=>250,chr(4)=>250,chr(5)=>250,chr(6)=>250,chr(7)=>250,chr(8)=>250,chr(9)=>250,chr(10)=>250,chr(11)=>250,chr(12)=>250,chr(13)=>250,chr(14)=>250,chr(15)=>250,chr(16)=>250,chr(17)=>250,chr(18)=>250,chr(19)=>250,chr(20)=>250,chr(21)=>250,
- chr(22)=>250,chr(23)=>250,chr(24)=>250,chr(25)=>250,chr(26)=>250,chr(27)=>250,chr(28)=>250,chr(29)=>250,chr(30)=>250,chr(31)=>250,' '=>250,'!'=>333,'"'=>555,'#'=>500,'$'=>500,'%'=>1000,'&'=>833,'\''=>278,'('=>333,')'=>333,'*'=>500,'+'=>570,
- ','=>250,'-'=>333,'.'=>250,'/'=>278,'0'=>500,'1'=>500,'2'=>500,'3'=>500,'4'=>500,'5'=>500,'6'=>500,'7'=>500,'8'=>500,'9'=>500,':'=>333,';'=>333,'<'=>570,'='=>570,'>'=>570,'?'=>500,'@'=>930,'A'=>722,
- 'B'=>667,'C'=>722,'D'=>722,'E'=>667,'F'=>611,'G'=>778,'H'=>778,'I'=>389,'J'=>500,'K'=>778,'L'=>667,'M'=>944,'N'=>722,'O'=>778,'P'=>611,'Q'=>778,'R'=>722,'S'=>556,'T'=>667,'U'=>722,'V'=>722,'W'=>1000,
- 'X'=>722,'Y'=>722,'Z'=>667,'['=>333,'\\'=>278,']'=>333,'^'=>581,'_'=>500,'`'=>333,'a'=>500,'b'=>556,'c'=>444,'d'=>556,'e'=>444,'f'=>333,'g'=>500,'h'=>556,'i'=>278,'j'=>333,'k'=>556,'l'=>278,'m'=>833,
- 'n'=>556,'o'=>500,'p'=>556,'q'=>556,'r'=>444,'s'=>389,'t'=>333,'u'=>556,'v'=>500,'w'=>722,'x'=>500,'y'=>500,'z'=>444,'{'=>394,'|'=>220,'}'=>394,'~'=>520,chr(127)=>350,chr(128)=>500,chr(129)=>350,chr(130)=>333,chr(131)=>500,
- chr(132)=>500,chr(133)=>1000,chr(134)=>500,chr(135)=>500,chr(136)=>333,chr(137)=>1000,chr(138)=>556,chr(139)=>333,chr(140)=>1000,chr(141)=>350,chr(142)=>667,chr(143)=>350,chr(144)=>350,chr(145)=>333,chr(146)=>333,chr(147)=>500,chr(148)=>500,chr(149)=>350,chr(150)=>500,chr(151)=>1000,chr(152)=>333,chr(153)=>1000,
- chr(154)=>389,chr(155)=>333,chr(156)=>722,chr(157)=>350,chr(158)=>444,chr(159)=>722,chr(160)=>250,chr(161)=>333,chr(162)=>500,chr(163)=>500,chr(164)=>500,chr(165)=>500,chr(166)=>220,chr(167)=>500,chr(168)=>333,chr(169)=>747,chr(170)=>300,chr(171)=>500,chr(172)=>570,chr(173)=>333,chr(174)=>747,chr(175)=>333,
- chr(176)=>400,chr(177)=>570,chr(178)=>300,chr(179)=>300,chr(180)=>333,chr(181)=>556,chr(182)=>540,chr(183)=>250,chr(184)=>333,chr(185)=>300,chr(186)=>330,chr(187)=>500,chr(188)=>750,chr(189)=>750,chr(190)=>750,chr(191)=>500,chr(192)=>722,chr(193)=>722,chr(194)=>722,chr(195)=>722,chr(196)=>722,chr(197)=>722,
- chr(198)=>1000,chr(199)=>722,chr(200)=>667,chr(201)=>667,chr(202)=>667,chr(203)=>667,chr(204)=>389,chr(205)=>389,chr(206)=>389,chr(207)=>389,chr(208)=>722,chr(209)=>722,chr(210)=>778,chr(211)=>778,chr(212)=>778,chr(213)=>778,chr(214)=>778,chr(215)=>570,chr(216)=>778,chr(217)=>722,chr(218)=>722,chr(219)=>722,
- chr(220)=>722,chr(221)=>722,chr(222)=>611,chr(223)=>556,chr(224)=>500,chr(225)=>500,chr(226)=>500,chr(227)=>500,chr(228)=>500,chr(229)=>500,chr(230)=>722,chr(231)=>444,chr(232)=>444,chr(233)=>444,chr(234)=>444,chr(235)=>444,chr(236)=>278,chr(237)=>278,chr(238)=>278,chr(239)=>278,chr(240)=>500,chr(241)=>556,
- chr(242)=>500,chr(243)=>500,chr(244)=>500,chr(245)=>500,chr(246)=>500,chr(247)=>570,chr(248)=>500,chr(249)=>556,chr(250)=>556,chr(251)=>556,chr(252)=>556,chr(253)=>500,chr(254)=>556,chr(255)=>500);
-
-$desc=array('Ascent'=>683,'Descent'=>-217,'CapHeight'=>676,'FontBBox'=>'[-168 -218 1000 935]');
-$up=-100;
-$ut=50;
-$kerninfo=array ( chr(49)=> array ( chr(49)=> -55, ), chr(65)=> array ( chr(84)=> -74, chr(86)=> -128, chr(87)=> -110, chr(89)=> -91, chr(118)=> -74, chr(119)=> -74, chr(121)=> -74, chr(146)=> -74, ), chr(70)=> array ( chr(44)=> -91, chr(46)=> -91, chr(65)=> -74, ), chr(76)=> array ( chr(84)=> -91, chr(86)=> -91, chr(87)=> -91, chr(89)=> -91, chr(121)=> -55, chr(146)=> -91, ), chr(80)=> array ( chr(44)=> -91, chr(46)=> -91, chr(65)=> -74, ), chr(82)=> array ( chr(84)=> -35, chr(86)=> -35, chr(87)=> -35, chr(89)=> -35, chr(121)=> -35, ), chr(84)=> array ( chr(44)=> -74, chr(46)=> -74, chr(58)=> -74, chr(65)=> -74, chr(79)=> -18, chr(97)=> -91, chr(99)=> -91, chr(101)=> -91, chr(105)=> -18, chr(111)=> -91, chr(114)=> -74, chr(115)=> -91, chr(117)=> -91, chr(119)=> -74, chr(121)=> -74, ), chr(86)=> array ( chr(44)=> -128, chr(46)=> -128, chr(58)=> -91, chr(65)=> -128, chr(79)=> -20, chr(97)=> -91, chr(101)=> -91, chr(105)=> -37, chr(111)=> -91, chr(114)=> -74, chr(117)=> -91, chr(121)=> -91, ), chr(87)=> array ( chr(44)=> -91, chr(46)=> -91, chr(58)=> -55, chr(65)=> -110, chr(97)=> -55, chr(101)=> -55, chr(105)=> -18, chr(111)=> -55, chr(114)=> -18, chr(117)=> -18, chr(121)=> -37, ), chr(89)=> array ( chr(44)=> -91, chr(46)=> -91, chr(58)=> -91, chr(65)=> -91, chr(97)=> -110, chr(101)=> -110, chr(105)=> -37, chr(111)=> -110, chr(112)=> -91, chr(113)=> -110, chr(117)=> -91, chr(118)=> -110, ), chr(102)=> array ( chr(102)=> 0, chr(146)=> 55, ), chr(114)=> array ( chr(44)=> -91, chr(46)=> -91, chr(99)=> -18, chr(101)=> -18, chr(104)=> 0, chr(111)=> -18, chr(113)=> -18, chr(116)=> 0, chr(119)=> 0, chr(120)=> 0, chr(121)=> 0, chr(122)=> 0, chr(146)=> 18, ), chr(118)=> array ( chr(44)=> -55, chr(46)=> -55, ), chr(119)=> array ( chr(44)=> -55, chr(46)=> -55, ), chr(121)=> array ( chr(44)=> -55, chr(46)=> -55, ), chr(145)=> array ( chr(145)=> -74, ), chr(146)=> array ( chr(115)=> -37, chr(146)=> -74, ), );
-
-?>
\ No newline at end of file
diff --git a/public/mpdf/font/ctimesbi.php b/public/mpdf/font/ctimesbi.php
deleted file mode 100644
index b7da5f1..0000000
--- a/public/mpdf/font/ctimesbi.php
+++ /dev/null
@@ -1,21 +0,0 @@
-250,chr(1)=>250,chr(2)=>250,chr(3)=>250,chr(4)=>250,chr(5)=>250,chr(6)=>250,chr(7)=>250,chr(8)=>250,chr(9)=>250,chr(10)=>250,chr(11)=>250,chr(12)=>250,chr(13)=>250,chr(14)=>250,chr(15)=>250,chr(16)=>250,chr(17)=>250,chr(18)=>250,chr(19)=>250,chr(20)=>250,chr(21)=>250,
- chr(22)=>250,chr(23)=>250,chr(24)=>250,chr(25)=>250,chr(26)=>250,chr(27)=>250,chr(28)=>250,chr(29)=>250,chr(30)=>250,chr(31)=>250,' '=>250,'!'=>389,'"'=>555,'#'=>500,'$'=>500,'%'=>833,'&'=>778,'\''=>278,'('=>333,')'=>333,'*'=>500,'+'=>570,
- ','=>250,'-'=>333,'.'=>250,'/'=>278,'0'=>500,'1'=>500,'2'=>500,'3'=>500,'4'=>500,'5'=>500,'6'=>500,'7'=>500,'8'=>500,'9'=>500,':'=>333,';'=>333,'<'=>570,'='=>570,'>'=>570,'?'=>500,'@'=>832,'A'=>667,
- 'B'=>667,'C'=>667,'D'=>722,'E'=>667,'F'=>667,'G'=>722,'H'=>778,'I'=>389,'J'=>500,'K'=>667,'L'=>611,'M'=>889,'N'=>722,'O'=>722,'P'=>611,'Q'=>722,'R'=>667,'S'=>556,'T'=>611,'U'=>722,'V'=>667,'W'=>889,
- 'X'=>667,'Y'=>611,'Z'=>611,'['=>333,'\\'=>278,']'=>333,'^'=>570,'_'=>500,'`'=>333,'a'=>500,'b'=>500,'c'=>444,'d'=>500,'e'=>444,'f'=>333,'g'=>500,'h'=>556,'i'=>278,'j'=>278,'k'=>500,'l'=>278,'m'=>778,
- 'n'=>556,'o'=>500,'p'=>500,'q'=>500,'r'=>389,'s'=>389,'t'=>278,'u'=>556,'v'=>444,'w'=>667,'x'=>500,'y'=>444,'z'=>389,'{'=>348,'|'=>220,'}'=>348,'~'=>570,chr(127)=>350,chr(128)=>500,chr(129)=>350,chr(130)=>333,chr(131)=>500,
- chr(132)=>500,chr(133)=>1000,chr(134)=>500,chr(135)=>500,chr(136)=>333,chr(137)=>1000,chr(138)=>556,chr(139)=>333,chr(140)=>944,chr(141)=>350,chr(142)=>611,chr(143)=>350,chr(144)=>350,chr(145)=>333,chr(146)=>333,chr(147)=>500,chr(148)=>500,chr(149)=>350,chr(150)=>500,chr(151)=>1000,chr(152)=>333,chr(153)=>1000,
- chr(154)=>389,chr(155)=>333,chr(156)=>722,chr(157)=>350,chr(158)=>389,chr(159)=>611,chr(160)=>250,chr(161)=>389,chr(162)=>500,chr(163)=>500,chr(164)=>500,chr(165)=>500,chr(166)=>220,chr(167)=>500,chr(168)=>333,chr(169)=>747,chr(170)=>266,chr(171)=>500,chr(172)=>606,chr(173)=>333,chr(174)=>747,chr(175)=>333,
- chr(176)=>400,chr(177)=>570,chr(178)=>300,chr(179)=>300,chr(180)=>333,chr(181)=>576,chr(182)=>500,chr(183)=>250,chr(184)=>333,chr(185)=>300,chr(186)=>300,chr(187)=>500,chr(188)=>750,chr(189)=>750,chr(190)=>750,chr(191)=>500,chr(192)=>667,chr(193)=>667,chr(194)=>667,chr(195)=>667,chr(196)=>667,chr(197)=>667,
- chr(198)=>944,chr(199)=>667,chr(200)=>667,chr(201)=>667,chr(202)=>667,chr(203)=>667,chr(204)=>389,chr(205)=>389,chr(206)=>389,chr(207)=>389,chr(208)=>722,chr(209)=>722,chr(210)=>722,chr(211)=>722,chr(212)=>722,chr(213)=>722,chr(214)=>722,chr(215)=>570,chr(216)=>722,chr(217)=>722,chr(218)=>722,chr(219)=>722,
- chr(220)=>722,chr(221)=>611,chr(222)=>611,chr(223)=>500,chr(224)=>500,chr(225)=>500,chr(226)=>500,chr(227)=>500,chr(228)=>500,chr(229)=>500,chr(230)=>722,chr(231)=>444,chr(232)=>444,chr(233)=>444,chr(234)=>444,chr(235)=>444,chr(236)=>278,chr(237)=>278,chr(238)=>278,chr(239)=>278,chr(240)=>500,chr(241)=>556,
- chr(242)=>500,chr(243)=>500,chr(244)=>500,chr(245)=>500,chr(246)=>500,chr(247)=>570,chr(248)=>500,chr(249)=>556,chr(250)=>556,chr(251)=>556,chr(252)=>556,chr(253)=>444,chr(254)=>500,chr(255)=>444);
-
-$desc=array('Ascent'=>683,'Descent'=>-217,'CapHeight'=>669,'FontBBox'=>'[-200 -218 996 921]');
-$up=-100;
-$ut=50;
-$kerninfo=array ( chr(49)=> array ( chr(49)=> -55, ), chr(65)=> array ( chr(84)=> -55, chr(86)=> -74, chr(87)=> -91, chr(89)=> -55, chr(118)=> -74, chr(119)=> -74, chr(121)=> -74, chr(146)=> -74, ), chr(70)=> array ( chr(44)=> -128, chr(46)=> -128, chr(65)=> -91, ), chr(76)=> array ( chr(84)=> -18, chr(86)=> -37, chr(87)=> -37, chr(89)=> -37, chr(121)=> -37, chr(146)=> -55, ), chr(80)=> array ( chr(44)=> -128, chr(46)=> -128, chr(65)=> -74, ), chr(82)=> array ( chr(86)=> -18, chr(87)=> -18, chr(89)=> -18, chr(121)=> -18, ), chr(84)=> array ( chr(44)=> -91, chr(46)=> -91, chr(58)=> -74, chr(65)=> -55, chr(79)=> -18, chr(97)=> -91, chr(99)=> -91, chr(101)=> -91, chr(105)=> -37, chr(111)=> -91, chr(114)=> -37, chr(115)=> -91, chr(117)=> -37, chr(119)=> -37, chr(121)=> -37, ), chr(86)=> array ( chr(44)=> -128, chr(46)=> -128, chr(58)=> -74, chr(65)=> -74, chr(97)=> -110, chr(101)=> -110, chr(105)=> -55, chr(111)=> -110, chr(114)=> -55, chr(117)=> -55, chr(121)=> -74, ), chr(87)=> array ( chr(44)=> -74, chr(46)=> -74, chr(58)=> -55, chr(65)=> -74, chr(97)=> -74, chr(101)=> -74, chr(105)=> -37, chr(111)=> -74, chr(114)=> -74, chr(117)=> -55, chr(121)=> -55, ), chr(89)=> array ( chr(44)=> -91, chr(46)=> -74, chr(58)=> -91, chr(65)=> -74, chr(97)=> -91, chr(101)=> -110, chr(105)=> -55, chr(111)=> -110, chr(112)=> -74, chr(113)=> -110, chr(117)=> -91, chr(118)=> -91, ), chr(102)=> array ( chr(102)=> -18, chr(146)=> 55, ), chr(114)=> array ( chr(44)=> -55, chr(46)=> -55, chr(146)=> 37, ), chr(118)=> array ( chr(44)=> -37, chr(46)=> -37, ), chr(119)=> array ( chr(44)=> -37, chr(46)=> -37, ), chr(121)=> array ( chr(44)=> -37, chr(46)=> -37, ), chr(145)=> array ( chr(145)=> -74, ), chr(146)=> array ( chr(115)=> -74, chr(116)=> -37, chr(146)=> -74, ), );
-
-?>
\ No newline at end of file
diff --git a/public/mpdf/font/ctimesi.php b/public/mpdf/font/ctimesi.php
deleted file mode 100644
index 0f64098..0000000
--- a/public/mpdf/font/ctimesi.php
+++ /dev/null
@@ -1,21 +0,0 @@
-250,chr(1)=>250,chr(2)=>250,chr(3)=>250,chr(4)=>250,chr(5)=>250,chr(6)=>250,chr(7)=>250,chr(8)=>250,chr(9)=>250,chr(10)=>250,chr(11)=>250,chr(12)=>250,chr(13)=>250,chr(14)=>250,chr(15)=>250,chr(16)=>250,chr(17)=>250,chr(18)=>250,chr(19)=>250,chr(20)=>250,chr(21)=>250,
- chr(22)=>250,chr(23)=>250,chr(24)=>250,chr(25)=>250,chr(26)=>250,chr(27)=>250,chr(28)=>250,chr(29)=>250,chr(30)=>250,chr(31)=>250,' '=>250,'!'=>333,'"'=>420,'#'=>500,'$'=>500,'%'=>833,'&'=>778,'\''=>214,'('=>333,')'=>333,'*'=>500,'+'=>675,
- ','=>250,'-'=>333,'.'=>250,'/'=>278,'0'=>500,'1'=>500,'2'=>500,'3'=>500,'4'=>500,'5'=>500,'6'=>500,'7'=>500,'8'=>500,'9'=>500,':'=>333,';'=>333,'<'=>675,'='=>675,'>'=>675,'?'=>500,'@'=>920,'A'=>611,
- 'B'=>611,'C'=>667,'D'=>722,'E'=>611,'F'=>611,'G'=>722,'H'=>722,'I'=>333,'J'=>444,'K'=>667,'L'=>556,'M'=>833,'N'=>667,'O'=>722,'P'=>611,'Q'=>722,'R'=>611,'S'=>500,'T'=>556,'U'=>722,'V'=>611,'W'=>833,
- 'X'=>611,'Y'=>556,'Z'=>556,'['=>389,'\\'=>278,']'=>389,'^'=>422,'_'=>500,'`'=>333,'a'=>500,'b'=>500,'c'=>444,'d'=>500,'e'=>444,'f'=>278,'g'=>500,'h'=>500,'i'=>278,'j'=>278,'k'=>444,'l'=>278,'m'=>722,
- 'n'=>500,'o'=>500,'p'=>500,'q'=>500,'r'=>389,'s'=>389,'t'=>278,'u'=>500,'v'=>444,'w'=>667,'x'=>444,'y'=>444,'z'=>389,'{'=>400,'|'=>275,'}'=>400,'~'=>541,chr(127)=>350,chr(128)=>500,chr(129)=>350,chr(130)=>333,chr(131)=>500,
- chr(132)=>556,chr(133)=>889,chr(134)=>500,chr(135)=>500,chr(136)=>333,chr(137)=>1000,chr(138)=>500,chr(139)=>333,chr(140)=>944,chr(141)=>350,chr(142)=>556,chr(143)=>350,chr(144)=>350,chr(145)=>333,chr(146)=>333,chr(147)=>556,chr(148)=>556,chr(149)=>350,chr(150)=>500,chr(151)=>889,chr(152)=>333,chr(153)=>980,
- chr(154)=>389,chr(155)=>333,chr(156)=>667,chr(157)=>350,chr(158)=>389,chr(159)=>556,chr(160)=>250,chr(161)=>389,chr(162)=>500,chr(163)=>500,chr(164)=>500,chr(165)=>500,chr(166)=>275,chr(167)=>500,chr(168)=>333,chr(169)=>760,chr(170)=>276,chr(171)=>500,chr(172)=>675,chr(173)=>333,chr(174)=>760,chr(175)=>333,
- chr(176)=>400,chr(177)=>675,chr(178)=>300,chr(179)=>300,chr(180)=>333,chr(181)=>500,chr(182)=>523,chr(183)=>250,chr(184)=>333,chr(185)=>300,chr(186)=>310,chr(187)=>500,chr(188)=>750,chr(189)=>750,chr(190)=>750,chr(191)=>500,chr(192)=>611,chr(193)=>611,chr(194)=>611,chr(195)=>611,chr(196)=>611,chr(197)=>611,
- chr(198)=>889,chr(199)=>667,chr(200)=>611,chr(201)=>611,chr(202)=>611,chr(203)=>611,chr(204)=>333,chr(205)=>333,chr(206)=>333,chr(207)=>333,chr(208)=>722,chr(209)=>667,chr(210)=>722,chr(211)=>722,chr(212)=>722,chr(213)=>722,chr(214)=>722,chr(215)=>675,chr(216)=>722,chr(217)=>722,chr(218)=>722,chr(219)=>722,
- chr(220)=>722,chr(221)=>556,chr(222)=>611,chr(223)=>500,chr(224)=>500,chr(225)=>500,chr(226)=>500,chr(227)=>500,chr(228)=>500,chr(229)=>500,chr(230)=>667,chr(231)=>444,chr(232)=>444,chr(233)=>444,chr(234)=>444,chr(235)=>444,chr(236)=>278,chr(237)=>278,chr(238)=>278,chr(239)=>278,chr(240)=>500,chr(241)=>500,
- chr(242)=>500,chr(243)=>500,chr(244)=>500,chr(245)=>500,chr(246)=>500,chr(247)=>675,chr(248)=>500,chr(249)=>500,chr(250)=>500,chr(251)=>500,chr(252)=>500,chr(253)=>444,chr(254)=>500,chr(255)=>444);
-
-$desc=array('Ascent'=>683,'Descent'=>-217,'CapHeight'=>653,'FontBBox'=>'[-169 -217 1010 883]');
-$up=-100;
-$ut=50;
-$kerninfo=array ( chr(49)=> array ( chr(49)=> -74, ), chr(65)=> array ( chr(84)=> -37, chr(86)=> -49, chr(87)=> -37, chr(89)=> -55, chr(118)=> -55, chr(119)=> -55, chr(121)=> -55, chr(146)=> -37, ), chr(70)=> array ( chr(44)=> -128, chr(46)=> -128, chr(65)=> -128, ), chr(76)=> array ( chr(84)=> -20, chr(86)=> -37, chr(87)=> -37, chr(89)=> -20, chr(121)=> -29, chr(146)=> -37, ), chr(80)=> array ( chr(44)=> -128, chr(46)=> -128, chr(65)=> -128, ), chr(82)=> array ( chr(84)=> 0, chr(86)=> -18, chr(87)=> -18, chr(89)=> -18, chr(121)=> -18, ), chr(84)=> array ( chr(44)=> -74, chr(46)=> -74, chr(58)=> -55, chr(65)=> -74, chr(79)=> -18, chr(97)=> -91, chr(99)=> -91, chr(101)=> -91, chr(105)=> -55, chr(111)=> -91, chr(114)=> -55, chr(115)=> -91, chr(117)=> -55, chr(119)=> -74, chr(121)=> -74, ), chr(86)=> array ( chr(44)=> -128, chr(46)=> -128, chr(58)=> -64, chr(65)=> -74, chr(79)=> -29, chr(97)=> -110, chr(101)=> -110, chr(105)=> -74, chr(111)=> -110, chr(114)=> -74, chr(117)=> -74, chr(121)=> -91, ), chr(87)=> array ( chr(44)=> -91, chr(46)=> -91, chr(58)=> -64, chr(65)=> -69, chr(97)=> -91, chr(101)=> -91, chr(105)=> -55, chr(111)=> -91, chr(114)=> -55, chr(117)=> -55, chr(121)=> -91, ), chr(89)=> array ( chr(44)=> -91, chr(46)=> -91, chr(58)=> -64, chr(65)=> -69, chr(97)=> -91, chr(101)=> -91, chr(105)=> -74, chr(111)=> -91, chr(112)=> -91, chr(113)=> -110, chr(117)=> -91, chr(118)=> -91, ), chr(102)=> array ( chr(146)=> 91, ), chr(114)=> array ( chr(44)=> -110, chr(46)=> -110, chr(99)=> -37, chr(100)=> -37, chr(101)=> -37, chr(103)=> -37, chr(104)=> -18, chr(111)=> -37, chr(113)=> -37, chr(114)=> 0, chr(116)=> 0, chr(117)=> 0, chr(118)=> 0, chr(119)=> 0, chr(120)=> 0, chr(121)=> 0, chr(146)=> 37, ), chr(118)=> array ( chr(44)=> -74, chr(46)=> -74, ), chr(119)=> array ( chr(44)=> -74, chr(46)=> -74, ), chr(121)=> array ( chr(44)=> -55, chr(46)=> -55, ), chr(145)=> array ( chr(145)=> -110, ), chr(146)=> array ( chr(115)=> -128, chr(116)=> -110, chr(146)=> -110, ), );
-
-?>
\ No newline at end of file
diff --git a/public/mpdf/font/czapfdingbats.php b/public/mpdf/font/czapfdingbats.php
deleted file mode 100644
index 6ead8fc..0000000
--- a/public/mpdf/font/czapfdingbats.php
+++ /dev/null
@@ -1,21 +0,0 @@
-0,chr(1)=>0,chr(2)=>0,chr(3)=>0,chr(4)=>0,chr(5)=>0,chr(6)=>0,chr(7)=>0,chr(8)=>0,chr(9)=>0,chr(10)=>0,chr(11)=>0,chr(12)=>0,chr(13)=>0,chr(14)=>0,chr(15)=>0,chr(16)=>0,chr(17)=>0,chr(18)=>0,chr(19)=>0,chr(20)=>0,chr(21)=>0,
- chr(22)=>0,chr(23)=>0,chr(24)=>0,chr(25)=>0,chr(26)=>0,chr(27)=>0,chr(28)=>0,chr(29)=>0,chr(30)=>0,chr(31)=>0,' '=>278,'!'=>974,'"'=>961,'#'=>974,'$'=>980,'%'=>719,'&'=>789,'\''=>790,'('=>791,')'=>690,'*'=>960,'+'=>939,
- ','=>549,'-'=>855,'.'=>911,'/'=>933,'0'=>911,'1'=>945,'2'=>974,'3'=>755,'4'=>846,'5'=>762,'6'=>761,'7'=>571,'8'=>677,'9'=>763,':'=>760,';'=>759,'<'=>754,'='=>494,'>'=>552,'?'=>537,'@'=>577,'A'=>692,
- 'B'=>786,'C'=>788,'D'=>788,'E'=>790,'F'=>793,'G'=>794,'H'=>816,'I'=>823,'J'=>789,'K'=>841,'L'=>823,'M'=>833,'N'=>816,'O'=>831,'P'=>923,'Q'=>744,'R'=>723,'S'=>749,'T'=>790,'U'=>792,'V'=>695,'W'=>776,
- 'X'=>768,'Y'=>792,'Z'=>759,'['=>707,'\\'=>708,']'=>682,'^'=>701,'_'=>826,'`'=>815,'a'=>789,'b'=>789,'c'=>707,'d'=>687,'e'=>696,'f'=>689,'g'=>786,'h'=>787,'i'=>713,'j'=>791,'k'=>785,'l'=>791,'m'=>873,
- 'n'=>761,'o'=>762,'p'=>762,'q'=>759,'r'=>759,'s'=>892,'t'=>892,'u'=>788,'v'=>784,'w'=>438,'x'=>138,'y'=>277,'z'=>415,'{'=>392,'|'=>392,'}'=>668,'~'=>668,chr(127)=>0,chr(128)=>390,chr(129)=>390,chr(130)=>317,chr(131)=>317,
- chr(132)=>276,chr(133)=>276,chr(134)=>509,chr(135)=>509,chr(136)=>410,chr(137)=>410,chr(138)=>234,chr(139)=>234,chr(140)=>334,chr(141)=>334,chr(142)=>0,chr(143)=>0,chr(144)=>0,chr(145)=>0,chr(146)=>0,chr(147)=>0,chr(148)=>0,chr(149)=>0,chr(150)=>0,chr(151)=>0,chr(152)=>0,chr(153)=>0,
- chr(154)=>0,chr(155)=>0,chr(156)=>0,chr(157)=>0,chr(158)=>0,chr(159)=>0,chr(160)=>0,chr(161)=>732,chr(162)=>544,chr(163)=>544,chr(164)=>910,chr(165)=>667,chr(166)=>760,chr(167)=>760,chr(168)=>776,chr(169)=>595,chr(170)=>694,chr(171)=>626,chr(172)=>788,chr(173)=>788,chr(174)=>788,chr(175)=>788,
- chr(176)=>788,chr(177)=>788,chr(178)=>788,chr(179)=>788,chr(180)=>788,chr(181)=>788,chr(182)=>788,chr(183)=>788,chr(184)=>788,chr(185)=>788,chr(186)=>788,chr(187)=>788,chr(188)=>788,chr(189)=>788,chr(190)=>788,chr(191)=>788,chr(192)=>788,chr(193)=>788,chr(194)=>788,chr(195)=>788,chr(196)=>788,chr(197)=>788,
- chr(198)=>788,chr(199)=>788,chr(200)=>788,chr(201)=>788,chr(202)=>788,chr(203)=>788,chr(204)=>788,chr(205)=>788,chr(206)=>788,chr(207)=>788,chr(208)=>788,chr(209)=>788,chr(210)=>788,chr(211)=>788,chr(212)=>894,chr(213)=>838,chr(214)=>1016,chr(215)=>458,chr(216)=>748,chr(217)=>924,chr(218)=>748,chr(219)=>918,
- chr(220)=>927,chr(221)=>928,chr(222)=>928,chr(223)=>834,chr(224)=>873,chr(225)=>828,chr(226)=>924,chr(227)=>924,chr(228)=>917,chr(229)=>930,chr(230)=>931,chr(231)=>463,chr(232)=>883,chr(233)=>836,chr(234)=>836,chr(235)=>867,chr(236)=>867,chr(237)=>696,chr(238)=>696,chr(239)=>874,chr(240)=>0,chr(241)=>874,
- chr(242)=>760,chr(243)=>946,chr(244)=>771,chr(245)=>865,chr(246)=>771,chr(247)=>888,chr(248)=>967,chr(249)=>888,chr(250)=>831,chr(251)=>873,chr(252)=>927,chr(253)=>970,chr(254)=>918,chr(255)=>0);
-
-$desc=array('FontBBox'=>'[-1 -143 981 820]');
-$up=-100;
-$ut=50;
-
-
-?>
\ No newline at end of file
diff --git a/public/mpdf/graph.php b/public/mpdf/graph.php
deleted file mode 100644
index a210ad3..0000000
--- a/public/mpdf/graph.php
+++ /dev/null
@@ -1,721 +0,0 @@
-1 hrs old
- $interval = 3600;
- if ($handle = opendir(_MPDF_PATH.'graph_cache')) {
- while (false !== ($file = readdir($handle))) {
- if (((filemtime(_MPDF_PATH.'graph_cache/'.$file)+$interval) < time()) && ($file != "..") && ($file != ".")) {
- @unlink(_MPDF_PATH.'graph_cache/'.$file); // mPDF 4.0
- }
- }
- closedir($handle);
- }
-//==============================================================================================================
-// LOAD GRAPHS
-
- include_once(_JPGRAPH_PATH.'jpgraph.php');
- include_once(_JPGRAPH_PATH.'jpgraph_line.php' );
- include_once(_JPGRAPH_PATH.'jpgraph_log.php' );
- include_once(_JPGRAPH_PATH.'jpgraph_scatter.php' );
- include_once(_JPGRAPH_PATH.'jpgraph_regstat.php' );
- include_once(_JPGRAPH_PATH.'jpgraph_pie.php');
- include_once(_JPGRAPH_PATH.'jpgraph_pie3d.php');
- include_once(_JPGRAPH_PATH.'jpgraph_bar.php');
- include_once(_JPGRAPH_PATH.'jpgraph_radar.php');
-
-
-//======================================================================================================
-//*****************************************************************************************************
-//*****************************************************************************************************
-//*****************************************************************************************************
-//*****************************************************************************************************
-//*****************************************************************************************************
-//*****************************************************************************************************
-//======================================================================================================
-//======================================================================================================
-
-//======================================================================================================
-//======================================================================================================
-
-//======================================================================================================
-function print_graph($g,$pgwidth) {
- $splines = false;
- $bandw = false;
- $percent = false;
- $show_percent = false;
- $stacked = false;
- $h = false;
- $show_values = false;
- $hide_grid = false;
- $hide_y_axis = false;
-
- if (isset($g['attr']['TYPE']) && $g['attr']['TYPE']) { $type = strtolower($g['attr']['TYPE']); }
- if (!in_array($type,array('bar','horiz_bar','line','radar','pie','pie3d','xy','scatter'))) { $type = 'bar'; } // Default=bar
-
- if (isset($g['attr']['STACKED']) && $g['attr']['STACKED']) { $stacked = true; } // stacked for bar or horiz_bar
- if (isset($g['attr']['SPLINES']) && $g['attr']['SPLINES'] && $type=='xy') { $splines = true; } // splines for XY line graphs
- if (isset($g['attr']['BANDW']) && $g['attr']['BANDW']) { $bandw = true; } // black and white
- if (isset($g['attr']['LEGEND-OVERLAP']) && $g['attr']['LEGEND-OVERLAP']) { $overlap = true; } // avoid overlap of Legends over graph (line, bar, horiz_bar only)
- if (isset($g['attr']['PERCENT']) && $g['attr']['PERCENT'] && $type != 'xy' && $type != 'scatter') { $percent = true; } // Show data series as percent of total in series
- if (isset($g['attr']['SHOW-VALUES']) && $g['attr']['SHOW-VALUES']) { $show_values = true; } // Show the individual data values
- if (isset($g['attr']['HIDE-GRID']) && $g['attr']['HIDE-GRID']) { $hide_grid = true; } // Hide the y-axis gridlines
- if (isset($g['attr']['HIDE-Y-AXIS']) && $g['attr']['HIDE-Y-AXIS']) { $hide_y_axis = true; } // Hide the y-axis
-
-
- // Antialias: If true - better quality curves, but graph line will only be 1px even in PDF 300dpi
- // default=true for most except line and radar
- if (isset($g['attr']['ANTIALIAS']) && ($g['attr']['ANTIALIAS']=='' || $g['attr']['ANTIALIAS']==0)) { $antialias = false; }
- else if (isset($g['attr']['ANTIALIAS']) && $g['attr']['ANTIALIAS'] > 0) { $antialias = true; }
- else if ($type=='line' || $type=='radar') { $antialias = false; }
- else { $antialias = true; }
-
- if ($g['attr']['DPI']) { $dpi = intval($g['attr']['DPI']); }
- if (!$dpi || $dpi < 50 || $dpi > 2400) { $dpi = 150; } // Default dpi 150
- $k = (0.2645/25.4 * $dpi);
-
- // mPDF 4.5.009
- global $JpgUseSVGFormat;
- if (isset($JpgUseSVGFormat) && $JpgUseSVGFormat) {
- $img_type = 'svg';
- $k = 1; // Overrides as Vector scale does not need DPI
- }
- else {
- $img_type = 'png';
- }
-
- if (isset($g['attr']['TITLE']) && $g['attr']['TITLE']) { $title = $g['attr']['TITLE']; }
-
- if (isset($g['attr']['LABEL-X']) && $g['attr']['LABEL-X']) { $xlabel = $g['attr']['LABEL-X']; } // NOT IMPLEMENTED??????
- if (isset($g['attr']['LABEL-Y']) && $g['attr']['LABEL-Y']) { $ylabel = $g['attr']['LABEL-Y']; }
-
- if (isset($g['attr']['AXIS-X']) && $g['attr']['AXIS-X']) { $xaxis = strtolower($g['attr']['AXIS-X']); }
- if (!in_array($xaxis,array('text','lin','linear','log'))) { $xaxis = 'text'; } // Default=text
- if ($xaxis == 'linear') { $xaxis = 'lin'; }
-
- if (isset($g['attr']['AXIS-Y']) && $g['attr']['AXIS-Y']) { $yaxis = strtolower($g['attr']['AXIS-Y']); }
- if (!in_array($yaxis,array('lin','linear','log','percent'))) { $yaxis = 'lin'; } // Default=lin
- if ($yaxis == 'percent') { $show_percent = true; $yaxis = 'lin'; } // Show percent sign on scales
- if ($yaxis == 'linear') { $yaxis = 'lin'; }
-
- if ($splines) { $xaxis = 'lin'; }
- $axes = $xaxis.$yaxis; // e.g.textlin, textlog, loglog, loglin, linlog (XY)
-
- // mPDF 4.0
- if (isset($g['attr']['cWIDTH']) && $g['attr']['cWIDTH']) { $w=($g['attr']['cWIDTH'] / 0.2645); } // pixels
- if (isset($g['attr']['cHEIGHT']) && $g['attr']['cHEIGHT']) { $h=($g['attr']['cHEIGHT'] / 0.2645); }
-
-
- if (isset($g['attr']['SERIES']) && strtolower($g['attr']['SERIES']) == 'rows') { $dataseries = 'rows'; }
- else { $dataseries = 'cols'; }
-
- // Defaults - define data
- $rowbegin = 2;
- $colbegin = 2;
- if($type=='scatter' || $type=='xy') {
- if ($dataseries == 'rows') { $rowbegin = 1; }
- else { $colbegin = 1; }
- }
- $rowend = 0;
- $colend = 0;
-
- if (isset($g['attr']['DATA-ROW-BEGIN']) && ($g['attr']['DATA-ROW-BEGIN'] === '0' || $g['attr']['DATA-ROW-BEGIN'] > 0)) { $rowbegin = $g['attr']['DATA-ROW-BEGIN']; }
-
- if (isset($g['attr']['DATA-COL-BEGIN']) && ($g['attr']['DATA-COL-BEGIN'] === '0' || $g['attr']['DATA-COL-BEGIN'] > 0)) { $colbegin = $g['attr']['DATA-COL-BEGIN']; }
-
- if (isset($g['attr']['DATA-ROW-END']) && ($g['attr']['DATA-ROW-END'] === '0' || $g['attr']['DATA-ROW-END'] <> 0)) { $rowend = $g['attr']['DATA-ROW-END']; }
- if (isset($g['attr']['DATA-COL-END']) && ($g['attr']['DATA-COL-END'] === '0' || $g['attr']['DATA-COL-END'] <> 0)) { $colend = $g['attr']['DATA-COL-END']; }
-
- $nr = count($g['data']);
- $nc = 0;
- foreach($g['data'] AS $r) {
- $cc=0;
- foreach($r AS $c) { $cc++; }
- $nc = max($nc,$cc);
- }
- if ($colend == 0) { $colend = $nc; }
- else if ($colend < 0) { $colend = $nc+$colend; }
-
- if ($rowend == 0) { $rowend = $nr; }
- else if ($rowend < 0) { $rowend = $nr+$rowend; }
-
- if ($colend < $colbegin) { $colend = $colbegin; }
- if ($rowend < $rowbegin) { $rowend = $rowbegin; }
-
-// if ($type == 'xy' || $type=='scatter') { $colstart=0; }
-
- // Get Data + Totals
- $data = array();
- $totals = array();
- for ($r=($rowbegin-1);$r<$rowend;$r++) {
- for ($c=($colbegin-1);$c<$colend;$c++) {
- if (isset($g['data'][$r][$c])) { $g['data'][$r][$c] = floatval($g['data'][$r][$c] ); }
- else { $g['data'][$r][$c] = 0; }
- if ($dataseries=='rows') {
- $data[($r+1-$rowbegin)][($c+1-$colbegin)] = $g['data'][$r][$c] ;
- $totals[($r+1-$rowbegin)] += $g['data'][$r][$c] ;
- }
- else {
- $data[($c+1-$colbegin)][($r+1-$rowbegin)] = $g['data'][$r][$c] ;
- if (isset($totals[($c+1-$colbegin)])) { $totals[($c+1-$colbegin)] += $g['data'][$r][$c] ; }
- else { $totals[($c+1-$colbegin)] = $g['data'][$r][$c] ; }
- }
- }
- }
- // PERCENT
- if ($percent && $type != 'pie' && $type != 'pie3d') {
- for ($r=0;$r1) {
- for ($r=($rowbegin-1);$r<$rowend;$r++) {
- $legends[($r+1-$rowbegin)] = $g['data'][$r][0] ;
- $longestlegend = max($longestlegend, strlen( $g['data'][$r][0] ));
- }
- }
- if ($rowbegin>1) {
- for ($c=($colbegin-1);$c<$colend;$c++) {
- $labels[($c+1-$colbegin)] = $g['data'][0][$c] ;
- $longestlabel = max($longestlabel , strlen( $g['data'][0][$c] ));
- }
- }
- }
- else if ($dataseries=='rows') {
- if ($colbegin>1) {
- for ($r=($rowbegin-1);$r<$rowend;$r++) {
- $labels[($r+1-$rowbegin)] = $g['data'][$r][0] ;
- $longestlabel = max($longestlabel , strlen( $g['data'][$r][0] ));
- }
- }
- if ($rowbegin>1) {
- for ($c=($colbegin-1);$c<$colend;$c++) {
- $legends[($c+1-$colbegin)] = $g['data'][0][$c] ;
- $longestlegend = max($longestlegend, strlen( $g['data'][0][$c] ));
- }
- }
- }
- // Default sizes
- $defsize = array();
- $defsize['pie'] = array('w' => 600, 'h' => 300);
- $defsize['pie3d'] = array('w' => 600, 'h' => 300);
- $defsize['radar'] = array('w' => 600, 'h' => 300);
- $defsize['line'] = array('w' => 600, 'h' => 400);
- $defsize['xy'] = array('w' => 600, 'h' => 400);
- $defsize['scatter'] = array('w' => 600, 'h' => 400);
- $defsize['bar'] = array('w' => 600, 'h' => 400);
- $defsize['horiz_bar'] = array('w' => 600, 'h' => 500);
-
-
- // Use default ratios
- if ($w && !$h) { $h = $w*$defsize[$type]['h']/$defsize[$type]['w']; }
- if ($h && !$w) { $w = $h*$defsize[$type]['w']/$defsize[$type]['h']; }
- if (!$h && !$w) { $w = $defsize[$type]['w']; $h = $defsize[$type]['h']; }
-
-
- if (count($data)>0 && $type) {
- $figure_file = "graph_cache/".rand(11111,999999999).".".$img_type;
- if ($bandw) { $colours = array('snow1','black','snow4','snow3','snow2','cadetblue4','cadetblue3','cadetblue1','bisque4','bisque2','beige'); }
- else { $colours = array('cyan','darkorchid4','cadetblue3','khaki1','darkolivegreen2','cadetblue4','coral','cyan4','rosybrown3','wheat1'); }
- $fills = array('navy','orange','red','yellow','purple','navy','orange','red','yellow','purple');
- $patterns = array(PATTERN_DIAG1,PATTERN_CROSS1,PATTERN_STRIPE1,PATTERN_DIAG3,PATTERN_CROSS2,PATTERN_DIAG2,PATTERN_DIAG4,PATTERN_CROSS3, PATTERN_CROSS4,PATTERN_STRIPE1);
- $markers = array(MARK_DIAMOND, MARK_SQUARE, MARK_CIRCLE, MARK_UTRIANGLE, MARK_DTRIANGLE, MARK_FILLEDCIRCLE, MARK_CROSS, MARK_STAR, MARK_X);
-
- // LEGENDS
- if ($type == 'pie' || $type == 'pie3d') {
- $graph = new PieGraph (($w*$k),($h*$k));
- }
- else if ($type == 'radar') {
- $graph = new RadarGraph(($w*$k),($h*$k));
- }
- else {
- $graph = new Graph(($w*$k),($h*$k));
- }
-
-// mPDF 4.5.009
-// $graph->img->SetImgFormat($img_type) ;
-// if (strtoupper($img_type)=='JPEG') { $graph->img->SetQuality(90); }
- if ($antialias) { $graph->img->SetAntiAliasing(); }
- $graph->SetShadow(true, 2*$k);
- $graph->SetMarginColor("white");
- // TITLE
- $graph->title->Set($title);
- $graph->title->SetMargin(10*$k);
- $graph->title->SetFont(FF_USERFONT,FS_BOLD,11*$k);
- $graph->title->SetColor("black");
- $graph->legend->SetLineSpacing(3*$k);
- $graph->legend->SetMarkAbsSize(6*$k);
- $graph->legend->SetFont(FF_USERFONT,FS_NORMAL,8*$k);
-
- // Set GRAPH IMAGE MARGINS
- if ($type == 'pie' || $type == 'pie3d') {
- $psize = 0.3;
- $pposxabs = ($w/2);
- $pposy = 0.55;
- if ($longestlegend) { // if legend showing
- $pposxabs -= ((($longestlegend * 5) + 20) / 2);
- }
- $pposx = ($pposxabs / $w);
- $graph->legend->Pos(0.02,0.5,'right','center');
- }
- else if ($type == 'radar') {
- $psize = 0.5;
- $pposxabs = ($w/2);
- $pposy = 0.55;
- if ($longestlabel) { // if legend showing
- $pposxabs -= ((($longestlabel * 5) + 20) / 2);
- }
- $pposx = ($pposxabs / $w);
- $graph->legend->Pos(0.02,0.5,'right','center');
- }
- else if ($type == 'xy' || $type == 'scatter') {
- $pml = 50;
- $pmr = 20;
- $pmt = 60;
- $pmb = 50;
- $xaxislblmargin = $pmb - 30;
- $yaxislblmargin = $pml - 15;
- $graph->legend->Pos(0.02,0.1,'right','top');
- }
- else if ($type == 'line' || $type == 'bar') {
- $pml = 50;
- $pmr = 20;
- $pmt = 60;
- $pmb = 50;
- $xlangle = 0;
- $ll = ($longestlegend * 5); // 45 degrees 8pt fontsize
- if ($ll > 5 || ($ll>3 && count($data)>10)) {
- $pmb = max($pmb, $ll + 30);
- $xlangle = 50;
- }
- $xaxislblmargin = $pmb - 30;
- $yaxislblmargin = $pml - 15;
- if ($longestlabel && !$overlap) { // if legend showing
- $pmr = ((($longestlabel * 5) + 40));
- }
- $graph->legend->Pos(0.02,0.1,'right','top');
- }
- else if ($type == 'horiz_bar') {
- $pml = 50;
- $pmr = 20;
- $pmt = 50;
- $pmb = 45;
- $ll = ($longestlegend * 6.5); // 8pt fontsize
- $pml = max($pml, $ll + 20);
- $xaxislblmargin = $pml - 20;
- $yaxislblmargin = $pmb - 15;
- if ($longestlabel && !$overlap) { // if legend showing
- $pmr = ((($longestlabel * 5) + 40));
- }
- $graph->legend->Pos(0.02,0.1,'right','top');
- }
-
-
- // DRAW THE GRAPHS
- if ($type == 'pie') {
- $p1 = new PiePlot($data[0]);
- $p1->SetSliceColors($colours);
-
- if ($show_values) {
- $p1->value->SetFont(FF_USERFONT,FS_NORMAL,8*$k);
- if ($percent) { $p1->SetLabelType(PIE_VALUE_PERADJ); } //PIE_VAL_PER = default
- else { $p1->SetLabelType(PIE_VALUE_ABS); }
- if ($percent || $show_percent) { $p1->value->SetFormat("%d%%"); }
- else { $p1->value->SetFormat("%s"); }
- // Enable and set policy for guide-lines. Make labels line up vertically
- $p1->SetGuideLines(true);
- $p1->SetGuideLinesAdjust(1.5);
- }
- else { $p1->value->Show(false); }
- $p1->SetLegends($legends);
- $p1->SetSize($psize);
- $p1->SetCenter($pposx, $pposy);
- if ($labels[0]) {
- $graph->subtitle->Set($labels[0]);
- $graph->subtitle->SetMargin(10*$k);
- $graph->subtitle->SetFont(FF_USERFONT,FS_BOLD,11*$k);
- $graph->subtitle->SetColor("black");
- }
- $graph->Add($p1);
- }
- else if ($type == 'pie3d') {
- $p1 = new PiePlot3d($data[0]);
- $p1->SetSliceColors($colours);
- if ($show_values) {
- $p1->value->SetFont(FF_USERFONT,FS_NORMAL,8*$k);
- if ($percent) { $p1->SetLabelType(PIE_VALUE_PERADJ); } //PIE_VAL_PER = default
- else { $p1->SetLabelType(PIE_VALUE_ABS); }
- if ($percent || $show_percent) { $p1->value->SetFormat("%d%%"); }
- else { $p1->value->SetFormat("%s"); }
- }
- else { $p1->value->Show(false); }
- $p1->SetLegends($legends);
- $p1->SetEdge();
- $p1->SetSize($psize);
- $p1->SetCenter($pposx, $pposy);
-
- if ($labels[0]) {
- $graph->subtitle->Set($labels[0]);
- $graph->subtitle->SetMargin(10*$k);
- $graph->subtitle->SetFont(FF_USERFONT,FS_BOLD,11*$k);
- $graph->subtitle->SetColor("black");
- }
-
- $graph->Add( $p1);
- }
- // RADAR
- else if ($type == 'radar') {
- $graph->SetSize($psize);
- $graph->SetPos($pposx, $pposy);
-
- $graph->SetTitles( $legends); // labels each axis
-
- $graph->axis->title->SetFont(FF_USERFONT,FS_NORMAL,8*$k);
- $graph->axis->title->SetMargin(5*$k);
- $graph->axis->SetWeight(1*$k);
- $graph->axis->HideLabels();
- $graph->axis->SetFont(FF_USERFONT,FS_NORMAL,6*$k);
- $graph->HideTickMarks();
-
- $group = array();
- foreach($data AS $series => $dat) {
- $rdata = array();
- foreach($data[$series] AS $row) { $rdata[] = $row; }
- if (count($rdata)<3) { die("ERROR::Graph::Cannot create a Radar Plot with less than 3 data points."); }
- // Create the radar plot
- $bplot = new RadarPlot($rdata);
- $bplot->mark->SetType($markers[$series]);
- $bplot->mark->SetFillColor($colours[$series]);
- $bplot->mark->SetWidth(3*$k);
- $bplot->SetColor($colours[$series]);
- if ($series == 0) { $bplot->SetFillColor('lightred'); }
- else { $bplot->SetFill(false); }
- $bplot->SetLineWeight(1*$k);
- $bplot->SetLegend($labels[$series]);
- if ($bandw) { $bplot->SetShadow("gray5"); }
- $graph->Add($bplot);
- }
- }
- // LINE
- else if ($type == 'line') {
- // Setup the graph.
- $graph->img->SetMargin($pml*$k,$pmr*$k,$pmt*$k,$pmb*$k); // LRTB
- $graph->SetScale($axes);
- $graph->yaxis->SetFont(FF_USERFONT,FS_NORMAL,8*$k);
-
- if ($ylabel) {
- $graph->yaxis->title->SetFont(FF_USERFONT,FS_NORMAL,8*$k);
- $graph->yaxis->SetTitle($ylabel,'middle');
- $graph->yaxis->SetTitleMargin($yaxislblmargin*$k);
- }
-
- $graph->yaxis->SetLabelMargin(4*$k);
- if ($percent || $show_percent) { $graph->yaxis->SetLabelFormat('%d%%'); } // Percent
-
- // Show 0 label on Y-axis (default is not to show)
- $graph->yscale->ticks->SupressZeroLabel(true);
- if ($hide_y_axis) { $graph->yaxis->Hide(); }
- if ($hide_grid) { $graph->ygrid->Show(false); }
-
- // Setup X-axis labels
- $graph->xaxis->SetFont(FF_USERFONT,FS_NORMAL,8*$k);
- $graph->xaxis->SetTickLabels($legends);
- $graph->xaxis->SetLabelAngle($xlangle);
- $graph->xaxis->SetLabelMargin(4*$k);
- // X-axis title
- if ($xlabel) {
- $graph->xaxis->title->SetFont(FF_USERFONT,FS_NORMAL,8*$k);
- $graph->xaxis->SetTitle($xlabel,'middle');
- $graph->xaxis->SetTitleMargin($xaxislblmargin*$k);
- }
- foreach($data AS $series => $rdata) {
- $bplot = new LinePlot($rdata);
- $bplot->mark->SetType($markers[$series]);
- $bplot->mark->SetFillColor($colours[$series]);
- $bplot->mark->SetWidth(4*$k);
- if ($show_values) {
- $bplot->value-> Show(); // Not if scatter
- $bplot->value->SetMargin(6*$k);
- $bplot->value->SetColor("darkred");
- $bplot->value->SetFont( FF_USERFONT, FS_NORMAL, 8*$k);
- if ($percent || $show_percent) { $bplot->value->SetFormat( '%d%%'); }
- else { $bplot->value->SetFormat("%s"); }
- }
- // Set color for each line
- $bplot->SetColor($colours[$series]);
- $bplot->SetWeight(2*$k);
- $bplot->SetLegend($labels[$series]);
- if ($bandw) { $bplot->SetShadow("gray5"); }
- // Indent the X-scale so the first and last point doesn't fall on the edges
- $bplot->SetCenter();
- $graph->Add($bplot);
- }
-
- }
- // XY or SCATTER
- else if ($type == 'xy' || $type == 'scatter') {
- // Setup the graph.
- $graph->img->SetMargin($pml*$k,$pmr*$k,$pmt*$k,$pmb*$k); // LRTB
- $graph->SetScale($axes);
- // Setup font for axis
- $graph->yaxis->SetFont(FF_USERFONT,FS_NORMAL,8*$k);
- // Y-axis title
- if ($labels[1]) {
- $graph->yaxis->title->SetFont(FF_USERFONT,FS_NORMAL,8*$k);
- $graph->yaxis->SetTitleMargin($yaxislblmargin*$k);
- $graph->yaxis->SetTitle($labels[1],'middle');
- }
-
-
- $graph->yaxis->SetLabelMargin(4*$k);
- if ($percent || $show_percent) { $graph->yaxis->SetLabelFormat('%d%%'); } // Percent
-
- // Show 0 label on Y-axis (default is not to show)
- $graph->yscale->ticks->SupressZeroLabel(true);
- // Just let the maximum be autoscaled
- $graph->yaxis->scale->SetAutoMin(0);
- if ($hide_y_axis) { $graph->yaxis->Hide(); }
- if ($hide_grid) { $graph->ygrid->Show(false); }
-
- // Setup X-axis labels
- $graph->xaxis->SetFont(FF_USERFONT,FS_NORMAL,8*$k);
-// mPDF 2.5 Corrects labelling of x-axis
-// $graph->xaxis->SetTickLabels($legends);
- $graph->xaxis->SetLabelAngle(50);
- $graph->xaxis->SetLabelMargin(4*$k);
- // X-axis title
- if ($labels[0]) {
- $graph->xaxis->title->SetFont(FF_USERFONT,FS_NORMAL,8*$k);
- $graph->xaxis->SetTitleMargin($xaxislblmargin*$k);
- $graph->xaxis->SetTitle($labels[0],'middle');
- }
-
- // Create the bar plot
- // SPLINES
- if ($splines && $type=='xy') {
- $spline = new Spline($data[0],$data[1]);
- list($newx,$newy) = $spline->Get(100);
- }
- else {
- $newx = $data[0];
- $newy = $data[1];
- }
-
- if ($type=='xy') {
- // LINE PLOT
- $bplot = new LinePlot($newy, $newx);
- // Set color for each line
- $bplot->SetColor($fills[0]);
- $bplot->SetWeight(4*$k);
- if ($bandw) { $bplot->SetShadow("gray5"); }
- $graph->Add($bplot);
- }
-
- // SCATTER PLOT
- $cplot = new ScatterPlot($data[1], $data[0]);
-
- $cplot->mark->SetType($markers[0]);
- $cplot->mark->SetFillColor($fills[0]);
- $cplot->mark->SetWidth(8*$k);
- if ($show_values) {
-// mPDF 2.5
- if ($type=='xy') { $cplot->value->Show(); } // Not if scatter
- $cplot->value->SetMargin(8*$k);
- $cplot->value->SetColor("darkred");
- $cplot->value->SetFont( FF_USERFONT, FS_NORMAL, 6*$k);
-
- if ($percent || $show_percent) { $cplot->value->SetFormat( '%d%%'); }
- else { $cplot->value->SetFormat("%s"); }
- }
-
- // Set color for each line
- $cplot->SetColor($fills[0]);
- $cplot->SetWeight(4*$k);
- if ($bandw) { $cplot->SetShadow("gray5"); }
- $graph->Add($cplot);
-
- }
- // BAR
- else if ($type == 'bar') {
- // Setup the graph.
- $graph->img->SetMargin($pml*$k,$pmr*$k,$pmt*$k,$pmb*$k); // LRTB
- $graph->SetScale($axes);
- // Setup y-axis
- $graph->yaxis->SetFont(FF_USERFONT,FS_NORMAL,8*$k);
- if ($hide_y_axis) { $graph->yaxis->Hide(); }
- if ($hide_grid) { $graph->ygrid->Show(false); }
- $graph->yaxis->SetLabelMargin(4*$k);
- if ($ylabel) {
- $graph->yaxis->title->SetFont(FF_USERFONT,FS_NORMAL,8*$k);
- $graph->yaxis->SetTitle($ylabel,'middle');
- $graph->yaxis->SetTitleMargin($yaxislblmargin*$k);
- }
- // Show 0 label on Y-axis (default is not to show)
- $graph->yscale->ticks->SupressZeroLabel(false);
- // Setup X-axis labels
- $graph->xaxis->SetFont(FF_USERFONT,FS_NORMAL,8*$k);
- $graph->xaxis->SetTickLabels($legends);
- $graph->xaxis->SetLabelAngle($xlangle);
- $graph->xaxis->SetLabelMargin(4*$k);
- // X-axis title
- if ($xlabel) {
- $graph->xaxis->title->SetFont(FF_USERFONT,FS_NORMAL,8*$k);
- $graph->xaxis->SetTitle($xlabel,'middle');
- $graph->xaxis->SetTitleMargin($xaxislblmargin*$k);
- }
-
- $group = array();
- foreach($data AS $series => $dat) {
- $rdata = array();
- foreach($data[$series] AS $row) { $rdata[] = $row; }
-
- // Create the bar plot
- $bplot = new BarPlot($rdata);
- $bplot->SetWidth(0.6); // for SINGLE??
- // Setup color for gradient fill style
- if ($bandw) { $bplot->SetPattern( $patterns[$series]); }
- else { $bplot->SetFillGradient($fills[$series],"#EEEEEE",GRAD_LEFT_REFLECTION); }
-
- // Set color for the frame of each bar
- $bplot->SetColor("darkgray");
- $bplot->SetLegend($labels[$series]);
- if ($bandw) { $bplot->SetShadow("gray5"); }
- if ($show_values) {
- $bplot->value->Show();
- $bplot->value->SetMargin(6*$k);
- $bplot->value->SetColor("darkred");
- $bplot->value->SetFont( FF_USERFONT, FS_NORMAL, 8*$k);
- if ($percent || $show_percent) { $bplot->value->SetFormat( '%d%%'); }
- else { $bplot->value->SetFormat("%s"); }
- }
-
- $group[] = $bplot;
- }
- if (count($data)==1) {
- $graph->Add($group[0]);
- }
- else {
- // Create the grouped bar plot
- if ($stacked) {
- $gbplot = new AccBarPlot ($group);
- }
- else {
- $gbplot = new GroupBarPlot ($group);
- }
- $graph->Add($gbplot);
- }
- }
- else if ($type == 'horiz_bar') {
- $graph->SetScale($axes);
- $graph->Set90AndMargin($pml*$k,$pmr*$k,$pmt*$k,$pmb*$k); // LRTB
-
- // Setup y-axis
- $graph->yaxis->SetFont(FF_USERFONT,FS_NORMAL,8*$k);
- $graph->yaxis->SetLabelMargin(4*$k);
-
- $graph->yaxis->SetPos('max'); // Intersect at top of x-axis i.e. y axis is at bottom
- // First make the labels look right
- $graph->yaxis->SetLabelAlign('center','top');
- if ($percent || $show_percent) { $graph->yaxis->SetLabelFormat('%d%%'); }
- $graph->yaxis->SetLabelSide(SIDE_RIGHT);
- $graph->yaxis->scale->SetGrace(10); // sets 10% headroom
- if ($hide_y_axis) { $graph->yaxis->Hide(); }
- if ($hide_grid) { $graph->ygrid->Show(false); }
-
- // The fix the tick marks
- $graph->yaxis->SetTickSide(SIDE_LEFT);
- if ($ylabel) {
- $graph->yaxis->title->SetFont(FF_USERFONT,FS_NORMAL,8*$k);
- $graph->yaxis->SetTitle($ylabel,'middle');
- $graph->yaxis->SetTitleMargin($yaxislblmargin*$k);
- // Finally setup the title
- $graph->yaxis->SetTitleSide(SIDE_RIGHT);
- // To align the title to the right use :
- $graph->yaxis->title->Align('right');
- $graph->yaxis->title->SetAngle(0);
-
- }
-
- // Show 0 label on Y-axis (default is not to show)
- $graph->yscale->ticks->SupressZeroLabel(false);
- // Setup X-axis labels
- $graph->xaxis->SetFont(FF_USERFONT,FS_NORMAL,8*$k);
- $graph->xaxis->title->SetAngle(90);
- $graph->xaxis->SetTickLabels($legends);
- $graph->xaxis->SetLabelMargin(4*$k);
- // X-axis title
- if ($xlabel) {
- $graph->xaxis->title->SetFont(FF_USERFONT,FS_NORMAL,8*$k);
- $graph->xaxis->SetTitleMargin($xaxislblmargin*$k);
- $graph->xaxis->SetTitle($xlabel,'middle');
- }
- $group = array();
- foreach($data AS $series => $dat) {
- $rdata = array();
- foreach($data[$series] AS $row) { $rdata[] = $row; }
- // Create the bar pot
- $bplot = new BarPlot($rdata);
- $bplot->SetWidth(0.6); // for SINGLE??
- // Setup color for gradient fill style
- if ($bandw) { $bplot->SetPattern( $patterns[$series]); }
- else { $bplot->SetFillGradient($fills[$series],"#EEEEEE",GRAD_LEFT_REFLECTION); }
-
- // Set color for the frame of each bar
- $bplot->SetColor("darkgray");
- $bplot->SetLegend($labels[$series]);
- if ($bandw) { $bplot->SetShadow("gray5"); }
- if ($show_values) {
- $bplot->value-> Show();
- $bplot->value->SetMargin(6*$k);
- $bplot->value->SetColor("darkred");
- $bplot->value->SetFont( FF_USERFONT, FS_NORMAL, 8*$k);
- if ($percent || $show_percent) { $bplot->value->SetFormat( '%d%%'); }
- else { $bplot->value->SetFormat("%s"); }
- }
-
- $group[] = $bplot;
- }
- if (count($data)==1) {
- $graph->Add($group[0]);
- }
- else {
- // Create the grouped bar plot
- if ($stacked) {
- $gbplot = new AccBarPlot ($group);
- }
- else {
- $gbplot = new GroupBarPlot ($group);
- }
- $graph->Add($gbplot);
- }
- }
- if ($graph) {
- $graph->Stroke( _MPDF_PATH.$figure_file);
- $srcpath = str_replace("\\","/",dirname(__FILE__)) . "/";
- $srcpath .= $figure_file;
- return array('file'=>$srcpath, 'w'=>$w, 'h'=>$h);
- }
- }
- return false;
-}
-//======================================================================================================
-//======================================================================================================
-//======================================================================================================
-//======================================================================================================
-
-?>
\ No newline at end of file
diff --git a/public/mpdf/graph_cache/dummy.txt b/public/mpdf/graph_cache/dummy.txt
deleted file mode 100644
index 4123496..0000000
--- a/public/mpdf/graph_cache/dummy.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-This is just a placeholder file so that the folder is created on install.
-It can be deleted once installed.
\ No newline at end of file
diff --git a/public/mpdf/iccprofiles/SWOP2006_Coated5v2.icc b/public/mpdf/iccprofiles/SWOP2006_Coated5v2.icc
deleted file mode 100644
index 0d06cd5..0000000
Binary files a/public/mpdf/iccprofiles/SWOP2006_Coated5v2.icc and /dev/null differ
diff --git a/public/mpdf/iccprofiles/sRGB_IEC61966-2-1.icc b/public/mpdf/iccprofiles/sRGB_IEC61966-2-1.icc
deleted file mode 100644
index d0ef573..0000000
Binary files a/public/mpdf/iccprofiles/sRGB_IEC61966-2-1.icc and /dev/null differ
diff --git a/public/mpdf/includes/CJKdata.php b/public/mpdf/includes/CJKdata.php
deleted file mode 100644
index 8423052..0000000
--- a/public/mpdf/includes/CJKdata.php
+++ /dev/null
@@ -1,101 +0,0 @@
- 250, 33 => 250, 34 => 408, 35 => 668, 36 => 490, 37 => 875, 38 => 698, 39 => 250, 40 => 240, 41 => 240,
- 42 => 417, 43 => 667, 44 => 250, 45 => 313, 46 => 250, 47 => 520, 48 => 500, 49 => 500, 50 => 500, 51 => 500,
- 52 => 500, 53 => 500, 54 => 500, 55 => 500, 56 => 500, 57 => 500, 58 => 250, 59 => 250, 60 => 667, 61 => 667,
- 62 => 667, 63 => 396, 64 => 921, 65 => 677, 66 => 615, 67 => 719, 68 => 760, 69 => 625, 70 => 552, 71 => 771,
- 72 => 802, 73 => 354, 74 => 354, 75 => 781, 76 => 604, 77 => 927, 78 => 750, 79 => 823, 80 => 563, 81 => 823,
- 82 => 729, 83 => 542, 84 => 698, 85 => 771, 86 => 729, 87 => 948, 88 => 771, 89 => 677, 90 => 635, 91 => 344,
- 92 => 520, 93 => 344, 94 => 469, 95 => 500, 96 => 250, 97 => 469, 98 => 521, 99 => 427, 100 => 521, 101 => 438,
- 102 => 271, 103 => 469, 104 => 531, 105 => 250, 106 => 250, 107 => 458, 108 => 240, 109 => 802, 110 => 531, 111 => 500,
- 112 => 521, 113 => 521, 114 => 365, 115 => 333, 116 => 292, 117 => 521, 118 => 458, 119 => 677, 120 => 479, 121 => 458,
- 122 => 427, 123 => 480, 124 => 496, 125 => 480, 126 => 667,
- 17601 => 500,
-);
-$this->Big5_widths=$cw;
-
-
-// GB
-$cw = array(
- 32 => 207, 33 => 270, 34 => 342, 35 => 467, 36 => 462, 37 => 797, 38 => 710, 39 => 239, 40 => 374, 41 => 374,
- 42 => 423, 43 => 605, 44 => 238, 45 => 375, 46 => 238, 47 => 334, 48 => 462, 49 => 462, 50 => 462, 51 => 462,
- 52 => 462, 53 => 462, 54 => 462, 55 => 462, 56 => 462, 57 => 462, 58 => 238, 59 => 238, 60 => 605, 61 => 605,
- 62 => 605, 63 => 344, 64 => 748, 65 => 684, 66 => 560, 67 => 695, 68 => 739, 69 => 563, 70 => 511, 71 => 729,
- 72 => 793, 73 => 318, 74 => 312, 75 => 666, 76 => 526, 77 => 896, 78 => 758, 79 => 772, 80 => 544, 81 => 772,
- 82 => 628, 83 => 465, 84 => 607, 85 => 753, 86 => 711, 87 => 972, 88 => 647, 89 => 620, 90 => 607, 91 => 374,
- 92 => 333, 93 => 374, 94 => 606, 95 => 500, 96 => 239, 97 => 417, 98 => 503, 99 => 427, 100 => 529, 101 => 415,
- 102 => 264, 103 => 444, 104 => 518, 105 => 241, 106 => 230, 107 => 495, 108 => 228, 109 => 793, 110 => 527, 111 => 524,
- 112 => 524, 113 => 504, 114 => 338, 115 => 336, 116 => 277, 117 => 517, 118 => 450, 119 => 652, 120 => 466, 121 => 452,
- 122 => 407, 123 => 370, 124 => 258, 125 => 370, 126 => 605,
-);
-$this->GB_widths=$cw;
-
-// Japanese
-$cw = array(
- 32 => 278, 33 => 299, 34 => 353, 35 => 614, 36 => 614, 37 => 721, 38 => 735, 39 => 216, 40 => 323, 41 => 323,
- 42 => 449, 43 => 529, 44 => 219, 45 => 306, 46 => 219, 47 => 453, 48 => 614, 49 => 614, 50 => 614, 51 => 614,
- 52 => 614, 53 => 614, 54 => 614, 55 => 614, 56 => 614, 57 => 614, 58 => 219, 59 => 219, 60 => 529, 61 => 529,
- 62 => 529, 63 => 486, 64 => 744, 65 => 646, 66 => 604, 67 => 617, 68 => 681, 69 => 567, 70 => 537, 71 => 647,
- 72 => 738, 73 => 320, 74 => 433, 75 => 637, 76 => 566, 77 => 904, 78 => 710, 79 => 716, 80 => 605, 81 => 716,
- 82 => 623, 83 => 517, 84 => 601, 85 => 690, 86 => 668, 87 => 990, 88 => 681, 89 => 634, 90 => 578, 91 => 316,
- 92 => 614, 93 => 316, 94 => 529, 95 => 500, 96 => 387, 97 => 509, 98 => 566, 99 => 478, 100 => 565, 101 => 503,
- 102 => 337, 103 => 549, 104 => 580, 105 => 275, 106 => 266, 107 => 544, 108 => 276, 109 => 854, 110 => 579, 111 => 550,
- 112 => 578, 113 => 566, 114 => 410, 115 => 444, 116 => 340, 117 => 575, 118 => 512, 119 => 760, 120 => 503, 121 => 529,
- 122 => 453, 123 => 326, 124 => 380, 125 => 326, 126 => 387, 127 => 216, 128 => 453, 129 => 216, 130 => 380, 131 => 529,
- 132 => 299, 133 => 614, 134 => 614, 135 => 265, 136 => 614, 137 => 475, 138 => 614, 139 => 353, 140 => 451, 141 => 291,
- 142 => 291, 143 => 588, 144 => 589, 145 => 500, 146 => 476, 147 => 476, 148 => 219, 149 => 494, 150 => 452, 151 => 216,
- 152 => 353, 153 => 353, 154 => 451, 156 => 1075, 157 => 486, 158 => 387, 159 => 387, 160 => 387, 161 => 387,
- 162 => 387, 163 => 387, 164 => 387, 165 => 387, 166 => 387, 167 => 387, 168 => 387, 170 => 880, 171 => 448,
- 172 => 566, 173 => 716, 174 => 903, 175 => 460, 176 => 805, 177 => 275, 178 => 276, 179 => 550, 180 => 886, 181 => 582,
- 182 => 529, 183 => 738, 184 => 529, 185 => 738, 186 => 357, 187 => 529, 188 => 406, 189 => 406, 190 => 575, 191 => 406,
- 192 => 934, 193 => 934, 194 => 934, 195 => 646, 196 => 646, 197 => 646, 198 => 646, 199 => 646, 200 => 646, 201 => 617,
- 202 => 567, 203 => 567, 204 => 567, 205 => 567, 206 => 320, 207 => 320, 208 => 320, 209 => 320, 210 => 681, 211 => 710,
- 212 => 716, 213 => 716, 214 => 716, 215 => 716, 216 => 716, 217 => 529, 218 => 690, 219 => 690, 220 => 690, 221 => 690,
- 222 => 634, 223 => 605, 224 => 509, 225 => 509, 226 => 509, 227 => 509, 228 => 509, 229 => 509, 230 => 478, 231 => 503,
- 232 => 503, 233 => 503, 234 => 503, 235 => 275, 236 => 275, 237 => 275, 238 => 275, 239 => 550, 240 => 579, 241 => 550,
- 242 => 550, 243 => 550, 244 => 550, 245 => 550, 246 => 529, 247 => 575, 248 => 575, 249 => 575, 250 => 575, 251 => 529,
- 252 => 578, 253 => 529, 254 => 517, 255 => 634, 256 => 578, 257 => 445, 258 => 444, 259 => 842, 260 => 453, 261 => 614,
-);
-
-
-$_cr = array(
- array(231, 632, 500), // half-width
- array(8718, 8718, 500),
- array(9738, 9757, 250), // quarter-width
- array(9758, 9778, 333), // third-width
- array(12063, 12087, 500),
-);
-foreach($_cr as $_r) {
- for($i = $_r[0]; $i <= $_r[1]; $i++) {
- $cw[$i+31] = $_r[2];
- }
-}
-$this->SJIS_widths=$cw;
-
-// Korean
-$cw = array(
- 32 => 333, 33 => 416, 34 => 416, 35 => 833, 36 => 625, 37 => 916, 38 => 833, 39 => 250, 40 => 500, 41 => 500,
- 42 => 500, 43 => 833, 44 => 291, 45 => 450, 46 => 291, 47 => 375, 48 => 625, 49 => 625, 50 => 625, 51 => 625,
- 52 => 625, 53 => 625, 54 => 625, 55 => 625, 56 => 625, 57 => 625, 58 => 333, 59 => 333, 60 => 833, 61 => 833,
- 62 => 916, 63 => 500, 64 => 1000, 65 => 791, 66 => 708, 67 => 708, 68 => 750, 69 => 708, 70 => 666, 71 => 750,
- 72 => 791, 73 => 375, 74 => 500, 75 => 791, 76 => 666, 77 => 916, 78 => 791, 79 => 750, 80 => 666, 81 => 750,
- 82 => 708, 83 => 666, 84 => 791, 85 => 791, 86 => 750, 87 => 1000, 88 => 708, 89 => 708, 90 => 666, 91 => 500,
- 92 => 375, 93 => 500, 94 => 500, 95 => 500, 96 => 333, 97 => 541, 98 => 583, 99 => 541, 100 => 583, 101 => 583,
- 102 => 375, 103 => 583, 104 => 583, 105 => 291, 106 => 333, 107 => 583, 108 => 291, 109 => 875, 110 => 583, 111 => 583,
- 112 => 583, 113 => 583, 114 => 458, 115 => 541, 116 => 375, 117 => 583, 118 => 583, 119 => 833, 120 => 625, 121 => 625,
- 122 => 500, 123 => 583, 124 => 583, 125 => 583, 126 => 750,
-);
-$_cr = array(
- array(8094, 8190, 500)
-);
-foreach($_cr as $_r) {
- for($i = $_r[0]; $i <= $_r[1]; $i++) {
- $cw[$i+31] = $_r[2];
- }
-}
-$this->UHC_widths=$cw;
-
-?>
\ No newline at end of file
diff --git a/public/mpdf/includes/functions.php b/public/mpdf/includes/functions.php
deleted file mode 100644
index 9db003a..0000000
--- a/public/mpdf/includes/functions.php
+++ /dev/null
@@ -1,99 +0,0 @@
-',$text); }
- return (''.$text.' ');
-}
-
-if(!function_exists('strcode2utf')){
- function strcode2utf($str,$lo=true) {
- //converts all the nnn; and hhh; in a string to Unicode
- if ($lo) { $lo = 1; } else { $lo = 0; }
- $str = preg_replace('/\&\#([0-9]+)\;/me', "code2utf('\\1',{$lo})",$str);
- $str = preg_replace('/\&\#x([0-9a-fA-F]+)\;/me', "codeHex2utf('\\1',{$lo})",$str);
- return $str;
- }
-}
-
-if(!function_exists('code2utf')){
- function code2utf($num,$lo=true){
- //Returns the utf string corresponding to the unicode value
- //added notes - http://uk.php.net/utf8_encode
- if ($num<128) {
- if ($lo) return chr($num);
- else return ''.$num.';'; // i.e. no change
- }
- if ($num<2048) return chr(($num>>6)+192).chr(($num&63)+128);
- if ($num<65536) return chr(($num>>12)+224).chr((($num>>6)&63)+128).chr(($num&63)+128);
- if ($num<2097152) return chr(($num>>18)+240).chr((($num>>12)&63)+128).chr((($num>>6)&63)+128) .chr(($num&63)+128);
- return '?';
- }
-}
-
-
-if(!function_exists('codeHex2utf')){
- function codeHex2utf($hex,$lo=true){
- $num = hexdec($hex);
- if (($num<128) && !$lo) return ''.$hex.';'; // i.e. no change
- return code2utf($num,$lo);
- }
-}
-
-
-
-
-?>
\ No newline at end of file
diff --git a/public/mpdf/includes/ind_bn_1_001.volt.php b/public/mpdf/includes/ind_bn_1_001.volt.php
deleted file mode 100644
index f745de0..0000000
--- a/public/mpdf/includes/ind_bn_1_001.volt.php
+++ /dev/null
@@ -1,3164 +0,0 @@
-
- array (
- 'match' => '0995 09CD 09B7',
- 'replace' => 'E002',
- ),
- 1 =>
- array (
- 'match' => '099C 09CD 099E',
- 'replace' => 'E003',
- ),
- 2 =>
- array (
- 'match' => '09CD 200D',
- 'replace' => '007E',
- ),
- 3 =>
- array (
- 'match' => '09CD 200C',
- 'replace' => '200C',
- ),
- 4 =>
- array (
- 'match' => '200D 09CD',
- 'replace' => '00D0',
- ),
- 5 =>
- array (
- 'match' => '((0995|0996|0997|0998|0999|099A|099B|099C|099D|099E|099F|09A0|09A1|09A2|09A3|09A4|09A5|09A6|09A7|09A8|09AA|09AB|09AC|09AD|09AE|09AF|09B0|09B2|09B6|09B7|09B8|09B9)) 09CD 09B0',
- 'replace' => '\\1 E1CD',
- ),
- 6 =>
- array (
- 'match' => '((0995|0996|0997|0998|0999|099A|099B|099C|099D|099E|099F|09A0|09A1|09A2|09A3|09A4|09A5|09A6|09A7|09A8|09AA|09AB|09AC|09AD|09AE|09AF|09B0|09B2|09B6|09B7|09B8|09B9)) 09B0 09CD',
- 'replace' => '\\1 E068',
- ),
- 7 =>
- array (
- 'match' => '((09BE|09C0|09C1|09C2|09C3|09C4|09CB|09CC|09D7|09BC)) 09CD 09B0',
- 'replace' => '\\1 E1CD',
- ),
- 8 =>
- array (
- 'match' => '((09BE|09C0|09C1|09C2|09C3|09C4|09CB|09CC|09D7|09BC)) 09B0 09CD',
- 'replace' => '\\1 E068',
- ),
- 9 =>
- array (
- 'match' => '(0020) 09CD 09B0',
- 'replace' => '\\1 E1CD',
- ),
- 10 =>
- array (
- 'match' => '(0020) 09B0 09CD',
- 'replace' => '\\1 E068',
- ),
- 11 =>
- array (
- 'match' => '(25CC) 09CD 09B0',
- 'replace' => '\\1 E1CD',
- ),
- 12 =>
- array (
- 'match' => '(25CC) 09B0 09CD',
- 'replace' => '\\1 E068',
- ),
- 13 =>
- array (
- 'match' => '((09B0|E042|E043|E044|E048|E049|E04E|E04F|E050|E051|E052|E053|E054|E056|E057|E058|E059|E05B|E05C|E05D|E05E|E062|E063|E064|E065|E0A8|E0BC|E0EF|E0FD|E101|E11C|E11E|E14F|E151|E152|E164|E17D|E18E|E190)) 09C1',
- 'replace' => '\\1 E03C',
- ),
- 14 =>
- array (
- 'match' => '((09B0|E042|E043|E044|E048|E049|E04E|E04F|E050|E051|E052|E053|E054|E056|E057|E058|E059|E05B|E05C|E05D|E05E|E062|E063|E064|E065|E0A8|E0BC|E0EF|E0FD|E101|E11C|E11E|E14F|E151|E152|E164|E17D|E18E|E190)) 09C2',
- 'replace' => '\\1 E03E',
- ),
- 15 =>
- array (
- 'match' => '((E045|E046|E047|E04A|E04B|E04C|E04D|E05F|E060|E061|E07C|E07D|E0B1|E0E8|E0E9|E11A|E11B|E163|E17B|E18D)) 09C1',
- 'replace' => '\\1 E03D',
- ),
- 16 =>
- array (
- 'match' => 'E068 0981',
- 'replace' => 'E069',
- ),
- 17 =>
- array (
- 'match' => '0995 09CD 0995',
- 'replace' => 'E06A',
- ),
- 18 =>
- array (
- 'match' => '0995 09CD 0996',
- 'replace' => 'E06B',
- ),
- 19 =>
- array (
- 'match' => '0995 09CD 099A',
- 'replace' => 'E06C',
- ),
- 20 =>
- array (
- 'match' => '0995 09CD 099B',
- 'replace' => 'E06D',
- ),
- 21 =>
- array (
- 'match' => '0995 09CD 099F',
- 'replace' => 'E06E',
- ),
- 22 =>
- array (
- 'match' => '0995 09CD 09A0',
- 'replace' => 'E06F',
- ),
- 23 =>
- array (
- 'match' => '0995 09CD 09A3',
- 'replace' => 'E070',
- ),
- 24 =>
- array (
- 'match' => '0995 09CD 09A4',
- 'replace' => 'E071',
- ),
- 25 =>
- array (
- 'match' => '0995 09CD 09A5',
- 'replace' => 'E072',
- ),
- 26 =>
- array (
- 'match' => '0995 09CD 09A8',
- 'replace' => 'E073',
- ),
- 27 =>
- array (
- 'match' => '0995 09CD 09AA',
- 'replace' => 'E074',
- ),
- 28 =>
- array (
- 'match' => '0995 09CD 09AB',
- 'replace' => 'E075',
- ),
- 29 =>
- array (
- 'match' => '0995 09CD 09AE',
- 'replace' => 'E076',
- ),
- 30 =>
- array (
- 'match' => '0995 09CD 09B2',
- 'replace' => 'E077',
- ),
- 31 =>
- array (
- 'match' => '0995 09CD 09AC',
- 'replace' => 'E078',
- ),
- 32 =>
- array (
- 'match' => '0995 09CD 09B6',
- 'replace' => 'E079',
- ),
- 33 =>
- array (
- 'match' => '0995 09CD 09B8',
- 'replace' => 'E07A',
- ),
- 34 =>
- array (
- 'match' => '0996 09CD 0996',
- 'replace' => 'E083',
- ),
- 35 =>
- array (
- 'match' => '0996 09CD 09A4',
- 'replace' => 'E084',
- ),
- 36 =>
- array (
- 'match' => '0996 09CD 09A8',
- 'replace' => 'E085',
- ),
- 37 =>
- array (
- 'match' => '0996 09CD 09AE',
- 'replace' => 'E086',
- ),
- 38 =>
- array (
- 'match' => '0996 09CD 09AC',
- 'replace' => 'E087',
- ),
- 39 =>
- array (
- 'match' => '0997 09CD 0997',
- 'replace' => 'E088',
- ),
- 40 =>
- array (
- 'match' => '0997 09CD 0998',
- 'replace' => 'E089',
- ),
- 41 =>
- array (
- 'match' => '0997 09CD 099C',
- 'replace' => 'E08A',
- ),
- 42 =>
- array (
- 'match' => '0997 09CD 099D',
- 'replace' => 'E08B',
- ),
- 43 =>
- array (
- 'match' => '0997 09CD 09A1',
- 'replace' => 'E08C',
- ),
- 44 =>
- array (
- 'match' => '0997 09CD 09A2',
- 'replace' => 'E08D',
- ),
- 45 =>
- array (
- 'match' => '0997 09CD 09A3',
- 'replace' => 'E08E',
- ),
- 46 =>
- array (
- 'match' => '0997 09CD 09A6',
- 'replace' => 'E08F',
- ),
- 47 =>
- array (
- 'match' => '0997 09CD 09A7',
- 'replace' => 'E090',
- ),
- 48 =>
- array (
- 'match' => '0997 09CD 09A8',
- 'replace' => 'E091',
- ),
- 49 =>
- array (
- 'match' => '0997 09CD 09AB',
- 'replace' => 'E092',
- ),
- 50 =>
- array (
- 'match' => '0997 09CD 09AC',
- 'replace' => 'E093',
- ),
- 51 =>
- array (
- 'match' => '0997 09CD 09AD',
- 'replace' => 'E094',
- ),
- 52 =>
- array (
- 'match' => '0997 09CD 09AE',
- 'replace' => 'E095',
- ),
- 53 =>
- array (
- 'match' => '0997 09CD 09B2',
- 'replace' => 'E096',
- ),
- 54 =>
- array (
- 'match' => '0998 09CD 09A8',
- 'replace' => 'E099',
- ),
- 55 =>
- array (
- 'match' => '0998 09CD 09AE',
- 'replace' => 'E09A',
- ),
- 56 =>
- array (
- 'match' => '0998 09CD 09AC',
- 'replace' => 'E09B',
- ),
- 57 =>
- array (
- 'match' => '0999 09CD 0995',
- 'replace' => 'E09C',
- ),
- 58 =>
- array (
- 'match' => '0999 09CD 0996',
- 'replace' => 'E09D',
- ),
- 59 =>
- array (
- 'match' => '0999 09CD 0997',
- 'replace' => 'E09E',
- ),
- 60 =>
- array (
- 'match' => '0999 09CD 0998',
- 'replace' => 'E09F',
- ),
- 61 =>
- array (
- 'match' => '0999 09CD 09A8',
- 'replace' => 'E0A0',
- ),
- 62 =>
- array (
- 'match' => '0999 09CD 09AD',
- 'replace' => 'E0A1',
- ),
- 63 =>
- array (
- 'match' => '0999 09CD 09AE',
- 'replace' => 'E0A2',
- ),
- 64 =>
- array (
- 'match' => '0999 09CD 09AC',
- 'replace' => 'E0A3',
- ),
- 65 =>
- array (
- 'match' => '0999 09CD 09B6',
- 'replace' => 'E0A4',
- ),
- 66 =>
- array (
- 'match' => '0999 09CD 09B7',
- 'replace' => 'E0A5',
- ),
- 67 =>
- array (
- 'match' => '0999 09CD 09B9',
- 'replace' => 'E0A6',
- ),
- 68 =>
- array (
- 'match' => '099A 09CD 099A',
- 'replace' => 'E0AC',
- ),
- 69 =>
- array (
- 'match' => '099A 09CD 099B',
- 'replace' => 'E0AD',
- ),
- 70 =>
- array (
- 'match' => '099A 09CD 099E',
- 'replace' => 'E0AE',
- ),
- 71 =>
- array (
- 'match' => '099A 09CD 09AE',
- 'replace' => 'E0AF',
- ),
- 72 =>
- array (
- 'match' => '099A 09CD 09AC',
- 'replace' => 'E0B0',
- ),
- 73 =>
- array (
- 'match' => '099B 09CD 099B',
- 'replace' => 'E0B4',
- ),
- 74 =>
- array (
- 'match' => '099B 09CD 09B2',
- 'replace' => 'E0B5',
- ),
- 75 =>
- array (
- 'match' => '099B 09CD 09AC',
- 'replace' => 'E0B6',
- ),
- 76 =>
- array (
- 'match' => '099C 09CD 099C',
- 'replace' => 'E0B7',
- ),
- 77 =>
- array (
- 'match' => '099C 09CD 099D',
- 'replace' => 'E0B8',
- ),
- 78 =>
- array (
- 'match' => '099C 09CD 09A6',
- 'replace' => 'E0B9',
- ),
- 79 =>
- array (
- 'match' => '099C 09CD 09AC',
- 'replace' => 'E0BA',
- ),
- 80 =>
- array (
- 'match' => '099C 09CD 09AE',
- 'replace' => 'E0BB',
- ),
- 81 =>
- array (
- 'match' => '099D 09CD 099D',
- 'replace' => 'E0BE',
- ),
- 82 =>
- array (
- 'match' => '099D 09CD 09AE',
- 'replace' => 'E0BF',
- ),
- 83 =>
- array (
- 'match' => '099D 09CD 09AC',
- 'replace' => 'E0C0',
- ),
- 84 =>
- array (
- 'match' => '099E 09CD 099A',
- 'replace' => 'E0C1',
- ),
- 85 =>
- array (
- 'match' => '099E 09CD 099B',
- 'replace' => 'E0C2',
- ),
- 86 =>
- array (
- 'match' => '099E 09CD 099C',
- 'replace' => 'E0C3',
- ),
- 87 =>
- array (
- 'match' => '099E 09CD 099D',
- 'replace' => 'E0C4',
- ),
- 88 =>
- array (
- 'match' => '099E 09CD 09B6',
- 'replace' => 'E0C5',
- ),
- 89 =>
- array (
- 'match' => '099F 09CD 0995',
- 'replace' => 'E0C6',
- ),
- 90 =>
- array (
- 'match' => '099F 09CD 0996',
- 'replace' => 'E0C7',
- ),
- 91 =>
- array (
- 'match' => '099F 09CD 099A',
- 'replace' => 'E0C8',
- ),
- 92 =>
- array (
- 'match' => '099F 09CD 099B',
- 'replace' => 'E0C9',
- ),
- 93 =>
- array (
- 'match' => '099F 09CD 099F',
- 'replace' => 'E0CA',
- ),
- 94 =>
- array (
- 'match' => '099F 09CD 09A0',
- 'replace' => 'E0CB',
- ),
- 95 =>
- array (
- 'match' => '099F 09CD 09A4',
- 'replace' => 'E0CC',
- ),
- 96 =>
- array (
- 'match' => '099F 09CD 09A5',
- 'replace' => 'E0CD',
- ),
- 97 =>
- array (
- 'match' => '099F 09CD 09AA',
- 'replace' => 'E0CE',
- ),
- 98 =>
- array (
- 'match' => '099F 09CD 09AB',
- 'replace' => 'E0CF',
- ),
- 99 =>
- array (
- 'match' => '099F 09CD 09AC',
- 'replace' => 'E0D0',
- ),
- 100 =>
- array (
- 'match' => '099F 09CD 09AE',
- 'replace' => 'E0D1',
- ),
- 101 =>
- array (
- 'match' => '099F 09CD 09B6',
- 'replace' => 'E0D2',
- ),
- 102 =>
- array (
- 'match' => '099F 09CD 09B7',
- 'replace' => 'E0D3',
- ),
- 103 =>
- array (
- 'match' => '099F 09CD 09B8',
- 'replace' => 'E0D4',
- ),
- 104 =>
- array (
- 'match' => '09A0 09CD 09A0',
- 'replace' => 'E0D5',
- ),
- 105 =>
- array (
- 'match' => '09A0 09CD 09A3',
- 'replace' => 'E0D6',
- ),
- 106 =>
- array (
- 'match' => '09A0 09CD 09AC',
- 'replace' => 'E0D7',
- ),
- 107 =>
- array (
- 'match' => '09A1 09CD 0997',
- 'replace' => 'E0D8',
- ),
- 108 =>
- array (
- 'match' => '09A1 09CD 09A1',
- 'replace' => 'E0D9',
- ),
- 109 =>
- array (
- 'match' => '09A1 09CD 09A2',
- 'replace' => 'E0DA',
- ),
- 110 =>
- array (
- 'match' => '09A1 09CD 09AE',
- 'replace' => 'E0DB',
- ),
- 111 =>
- array (
- 'match' => '09A1 09CD 09AC',
- 'replace' => 'E0DC',
- ),
- 112 =>
- array (
- 'match' => '09A2 09CD 09A2',
- 'replace' => 'E0DD',
- ),
- 113 =>
- array (
- 'match' => '09A2 09CD 09A3',
- 'replace' => 'E0DE',
- ),
- 114 =>
- array (
- 'match' => '09A2 09CD 09AC',
- 'replace' => 'E0DF',
- ),
- 115 =>
- array (
- 'match' => '09A3 09CD 099F',
- 'replace' => 'E0E0',
- ),
- 116 =>
- array (
- 'match' => '09A3 09CD 09A0',
- 'replace' => 'E0E1',
- ),
- 117 =>
- array (
- 'match' => '09A3 09CD 09A1',
- 'replace' => 'E0E2',
- ),
- 118 =>
- array (
- 'match' => '09A3 09CD 09A2',
- 'replace' => 'E0E3',
- ),
- 119 =>
- array (
- 'match' => '09A3 09CD 09A3',
- 'replace' => 'E0E4',
- ),
- 120 =>
- array (
- 'match' => '09A3 09CD 09AE',
- 'replace' => 'E0E5',
- ),
- 121 =>
- array (
- 'match' => '09A3 09CD 09AC',
- 'replace' => 'E0E6',
- ),
- 122 =>
- array (
- 'match' => '09A3 09CD 09B8',
- 'replace' => 'E0E7',
- ),
- 123 =>
- array (
- 'match' => '09A4 09CD 09A4',
- 'replace' => 'E0EA',
- ),
- 124 =>
- array (
- 'match' => '09A4 09CD 09A5',
- 'replace' => 'E0EB',
- ),
- 125 =>
- array (
- 'match' => '09A4 09CD 09A8',
- 'replace' => 'E0EC',
- ),
- 126 =>
- array (
- 'match' => '09A4 09CD 09AE',
- 'replace' => 'E0ED',
- ),
- 127 =>
- array (
- 'match' => '09A4 09CD 09AC',
- 'replace' => 'E0EE',
- ),
- 128 =>
- array (
- 'match' => '09A5 09CD 09A5',
- 'replace' => 'E0F1',
- ),
- 129 =>
- array (
- 'match' => '09A5 09CD 09A8',
- 'replace' => 'E0F2',
- ),
- 130 =>
- array (
- 'match' => '09A5 09CD 09AC',
- 'replace' => 'E0F3',
- ),
- 131 =>
- array (
- 'match' => '09A6 09CD 0997',
- 'replace' => 'E0F4',
- ),
- 132 =>
- array (
- 'match' => '09A6 09CD 0998',
- 'replace' => 'E0F5',
- ),
- 133 =>
- array (
- 'match' => '09A6 09CD 09A6',
- 'replace' => 'E0F6',
- ),
- 134 =>
- array (
- 'match' => '09A6 09CD 09A7',
- 'replace' => 'E0F7',
- ),
- 135 =>
- array (
- 'match' => '09A6 09CD 09A8',
- 'replace' => 'E0F8',
- ),
- 136 =>
- array (
- 'match' => '09A6 09CD 09AC',
- 'replace' => 'E0F9',
- ),
- 137 =>
- array (
- 'match' => '09A6 09CD 09AE',
- 'replace' => 'E0FB',
- ),
- 138 =>
- array (
- 'match' => '09A6 09CD 09AF',
- 'replace' => 'E0FC',
- ),
- 139 =>
- array (
- 'match' => '09A7 09CD 09A7',
- 'replace' => 'E102',
- ),
- 140 =>
- array (
- 'match' => '09A7 09CD 09A8',
- 'replace' => 'E103',
- ),
- 141 =>
- array (
- 'match' => '09A7 09CD 09AE',
- 'replace' => 'E104',
- ),
- 142 =>
- array (
- 'match' => '09A7 09CD 09AC',
- 'replace' => 'E105',
- ),
- 143 =>
- array (
- 'match' => '09A8 09CD 0995',
- 'replace' => 'E106',
- ),
- 144 =>
- array (
- 'match' => '09A8 09CD 0997',
- 'replace' => 'E107',
- ),
- 145 =>
- array (
- 'match' => '09A8 09CD 099A',
- 'replace' => 'E108',
- ),
- 146 =>
- array (
- 'match' => '09A8 09CD 099C',
- 'replace' => 'E109',
- ),
- 147 =>
- array (
- 'match' => '09A8 09CD 099F',
- 'replace' => 'E10A',
- ),
- 148 =>
- array (
- 'match' => '09A8 09CD 09A0',
- 'replace' => 'E10B',
- ),
- 149 =>
- array (
- 'match' => '09A8 09CD 09A1',
- 'replace' => 'E10C',
- ),
- 150 =>
- array (
- 'match' => '09A8 09CD 09A4',
- 'replace' => 'E10D',
- ),
- 151 =>
- array (
- 'match' => '09A8 09CD 09A5',
- 'replace' => 'E10E',
- ),
- 152 =>
- array (
- 'match' => '09A8 09CD 09A6',
- 'replace' => 'E10F',
- ),
- 153 =>
- array (
- 'match' => '09A8 09CD 09A7',
- 'replace' => 'E110',
- ),
- 154 =>
- array (
- 'match' => '09A8 09CD 09A8',
- 'replace' => 'E111',
- ),
- 155 =>
- array (
- 'match' => '09A8 09CD 09AB',
- 'replace' => 'E112',
- ),
- 156 =>
- array (
- 'match' => '09A8 09CD 09AD',
- 'replace' => 'E113',
- ),
- 157 =>
- array (
- 'match' => '09A8 09CD 09AE',
- 'replace' => 'E114',
- ),
- 158 =>
- array (
- 'match' => '09A8 09CD 09AF',
- 'replace' => 'E115',
- ),
- 159 =>
- array (
- 'match' => '09A8 09CD 09AC',
- 'replace' => 'E116',
- ),
- 160 =>
- array (
- 'match' => '09A8 09CD 09B6',
- 'replace' => 'E117',
- ),
- 161 =>
- array (
- 'match' => '09A8 09CD 09B7',
- 'replace' => 'E118',
- ),
- 162 =>
- array (
- 'match' => '09A8 09CD 09B8',
- 'replace' => 'E119',
- ),
- 163 =>
- array (
- 'match' => '09AA 09CD 0995',
- 'replace' => 'E122',
- ),
- 164 =>
- array (
- 'match' => '09AA 09CD 0996',
- 'replace' => 'E123',
- ),
- 165 =>
- array (
- 'match' => '09AA 09CD 099A',
- 'replace' => 'E124',
- ),
- 166 =>
- array (
- 'match' => '09AA 09CD 099B',
- 'replace' => 'E125',
- ),
- 167 =>
- array (
- 'match' => '09AA 09CD 099F',
- 'replace' => 'E126',
- ),
- 168 =>
- array (
- 'match' => '09AA 09CD 09A0',
- 'replace' => 'E127',
- ),
- 169 =>
- array (
- 'match' => '09AA 09CD 09A4',
- 'replace' => 'E128',
- ),
- 170 =>
- array (
- 'match' => '09AA 09CD 09A8',
- 'replace' => 'E129',
- ),
- 171 =>
- array (
- 'match' => '09AA 09CD 09AA',
- 'replace' => 'E12A',
- ),
- 172 =>
- array (
- 'match' => '09AA 09CD 09AB',
- 'replace' => 'E12B',
- ),
- 173 =>
- array (
- 'match' => '09AA 09CD 09AE',
- 'replace' => 'E12C',
- ),
- 174 =>
- array (
- 'match' => '09AA 09CD 09B2',
- 'replace' => 'E12D',
- ),
- 175 =>
- array (
- 'match' => '09AA 09CD 09AC',
- 'replace' => 'E12E',
- ),
- 176 =>
- array (
- 'match' => '09AA 09CD 09B6',
- 'replace' => 'E12F',
- ),
- 177 =>
- array (
- 'match' => '09AA 09CD 09B7',
- 'replace' => 'E130',
- ),
- 178 =>
- array (
- 'match' => '09AA 09CD 09B8',
- 'replace' => 'E131',
- ),
- 179 =>
- array (
- 'match' => '09AB 09CD 099F',
- 'replace' => 'E132',
- ),
- 180 =>
- array (
- 'match' => '09AB 09CD 09A4',
- 'replace' => 'E133',
- ),
- 181 =>
- array (
- 'match' => '09AB 09CD 09AA',
- 'replace' => 'E134',
- ),
- 182 =>
- array (
- 'match' => '09AB 09CD 09AB',
- 'replace' => 'E135',
- ),
- 183 =>
- array (
- 'match' => '09AB 09CD 09B2',
- 'replace' => 'E136',
- ),
- 184 =>
- array (
- 'match' => '09AC 09CD 099C',
- 'replace' => 'E137',
- ),
- 185 =>
- array (
- 'match' => '09AC 09CD 099D',
- 'replace' => 'E138',
- ),
- 186 =>
- array (
- 'match' => '09AC 09CD 09A1',
- 'replace' => 'E139',
- ),
- 187 =>
- array (
- 'match' => '09AC 09CD 09A2',
- 'replace' => 'E13A',
- ),
- 188 =>
- array (
- 'match' => '09AC 09CD 09A6',
- 'replace' => 'E13B',
- ),
- 189 =>
- array (
- 'match' => '09AC 09CD 09A7',
- 'replace' => 'E13C',
- ),
- 190 =>
- array (
- 'match' => '09AC 09CD 09A8',
- 'replace' => 'E13D',
- ),
- 191 =>
- array (
- 'match' => '09AC 09CD 09B2',
- 'replace' => 'E13E',
- ),
- 192 =>
- array (
- 'match' => '09AC 09CD 09AC',
- 'replace' => 'E13F',
- ),
- 193 =>
- array (
- 'match' => '09AD 09CD 09A3',
- 'replace' => 'E141',
- ),
- 194 =>
- array (
- 'match' => '09AD 09CD 09A8',
- 'replace' => 'E142',
- ),
- 195 =>
- array (
- 'match' => '09AD 09CD 09AD',
- 'replace' => 'E143',
- ),
- 196 =>
- array (
- 'match' => '09AD 09CD 09AE',
- 'replace' => 'E144',
- ),
- 197 =>
- array (
- 'match' => '09AD 09CD 09B2',
- 'replace' => 'E145',
- ),
- 198 =>
- array (
- 'match' => '09AD 09CD 09AC',
- 'replace' => 'E146',
- ),
- 199 =>
- array (
- 'match' => '09AE 09CD 09A3',
- 'replace' => 'E147',
- ),
- 200 =>
- array (
- 'match' => '09AE 09CD 09A8',
- 'replace' => 'E148',
- ),
- 201 =>
- array (
- 'match' => '09AE 09CD 09AA',
- 'replace' => 'E149',
- ),
- 202 =>
- array (
- 'match' => '09AE 09CD 09AB',
- 'replace' => 'E14A',
- ),
- 203 =>
- array (
- 'match' => '09AE 09CD 09AC',
- 'replace' => 'E14B',
- ),
- 204 =>
- array (
- 'match' => '09AE 09CD 09AD',
- 'replace' => 'E14C',
- ),
- 205 =>
- array (
- 'match' => '09AE 09CD 09AE',
- 'replace' => 'E14D',
- ),
- 206 =>
- array (
- 'match' => '09AE 09CD 09B2',
- 'replace' => 'E14E',
- ),
- 207 =>
- array (
- 'match' => '09B2 09CD 0995',
- 'replace' => 'E153',
- ),
- 208 =>
- array (
- 'match' => '09B2 09CD 0996',
- 'replace' => 'E154',
- ),
- 209 =>
- array (
- 'match' => '09B2 09CD 0997',
- 'replace' => 'E155',
- ),
- 210 =>
- array (
- 'match' => '09B2 09CD 099A',
- 'replace' => 'E156',
- ),
- 211 =>
- array (
- 'match' => '09B2 09CD 099C',
- 'replace' => 'E157',
- ),
- 212 =>
- array (
- 'match' => '09B2 09CD 099F',
- 'replace' => 'E158',
- ),
- 213 =>
- array (
- 'match' => '09B2 09CD 09A1',
- 'replace' => 'E159',
- ),
- 214 =>
- array (
- 'match' => '09B2 09CD 09A6',
- 'replace' => 'E15A',
- ),
- 215 =>
- array (
- 'match' => '09B2 09CD 09AA',
- 'replace' => 'E15B',
- ),
- 216 =>
- array (
- 'match' => '09B2 09CD 09AB',
- 'replace' => 'E15C',
- ),
- 217 =>
- array (
- 'match' => '09B2 09CD 09AC',
- 'replace' => 'E15D',
- ),
- 218 =>
- array (
- 'match' => '09B2 09CD 09AE',
- 'replace' => 'E15E',
- ),
- 219 =>
- array (
- 'match' => '09B2 09CD 09B2',
- 'replace' => 'E15F',
- ),
- 220 =>
- array (
- 'match' => '09B2 09CD 09B6',
- 'replace' => 'E160',
- ),
- 221 =>
- array (
- 'match' => '09B2 09CD 09B8',
- 'replace' => 'E161',
- ),
- 222 =>
- array (
- 'match' => '09B2 09CD 09B9',
- 'replace' => 'E162',
- ),
- 223 =>
- array (
- 'match' => '09B6 09CD 0995',
- 'replace' => 'E166',
- ),
- 224 =>
- array (
- 'match' => '09B6 09CD 099A',
- 'replace' => 'E167',
- ),
- 225 =>
- array (
- 'match' => '09B6 09CD 099B',
- 'replace' => 'E168',
- ),
- 226 =>
- array (
- 'match' => '09B6 09CD 09A4',
- 'replace' => 'E169',
- ),
- 227 =>
- array (
- 'match' => '09B6 09CD 09A8',
- 'replace' => 'E16A',
- ),
- 228 =>
- array (
- 'match' => '09B6 09CD 09AA',
- 'replace' => 'E16B',
- ),
- 229 =>
- array (
- 'match' => '09B6 09CD 09AE',
- 'replace' => 'E16C',
- ),
- 230 =>
- array (
- 'match' => '09B6 09CD 09AF',
- 'replace' => 'E16D',
- ),
- 231 =>
- array (
- 'match' => '09B6 09CD 09B2',
- 'replace' => 'E16E',
- ),
- 232 =>
- array (
- 'match' => '09B6 09CD 09AC',
- 'replace' => 'E16F',
- ),
- 233 =>
- array (
- 'match' => '09B6 09CD 09B6',
- 'replace' => 'E170',
- ),
- 234 =>
- array (
- 'match' => '09B7 09CD 0995',
- 'replace' => 'E171',
- ),
- 235 =>
- array (
- 'match' => '09B7 09CD 099F',
- 'replace' => 'E172',
- ),
- 236 =>
- array (
- 'match' => '09B7 09CD 09A0',
- 'replace' => 'E173',
- ),
- 237 =>
- array (
- 'match' => '09B7 09CD 09A3',
- 'replace' => 'E174',
- ),
- 238 =>
- array (
- 'match' => '09B7 09CD 09AA',
- 'replace' => 'E175',
- ),
- 239 =>
- array (
- 'match' => '09B7 09CD 09AB',
- 'replace' => 'E176',
- ),
- 240 =>
- array (
- 'match' => '09B7 09CD 09AE',
- 'replace' => 'E177',
- ),
- 241 =>
- array (
- 'match' => '09B7 09CD 09AF',
- 'replace' => 'E178',
- ),
- 242 =>
- array (
- 'match' => '09B7 09CD 09AC',
- 'replace' => 'E179',
- ),
- 243 =>
- array (
- 'match' => '09B8 09CD 0995',
- 'replace' => 'E17E',
- ),
- 244 =>
- array (
- 'match' => '09B8 09CD 0996',
- 'replace' => 'E17F',
- ),
- 245 =>
- array (
- 'match' => '09B8 09CD 099C',
- 'replace' => 'E180',
- ),
- 246 =>
- array (
- 'match' => '09B8 09CD 099F',
- 'replace' => 'E181',
- ),
- 247 =>
- array (
- 'match' => '09B8 09CD 09A4',
- 'replace' => 'E182',
- ),
- 248 =>
- array (
- 'match' => '09B8 09CD 09A5',
- 'replace' => 'E183',
- ),
- 249 =>
- array (
- 'match' => '09B8 09CD 09A8',
- 'replace' => 'E184',
- ),
- 250 =>
- array (
- 'match' => '09B8 09CD 09AA',
- 'replace' => 'E185',
- ),
- 251 =>
- array (
- 'match' => '09B8 09CD 09AB',
- 'replace' => 'E186',
- ),
- 252 =>
- array (
- 'match' => '09B8 09CD 09AE',
- 'replace' => 'E187',
- ),
- 253 =>
- array (
- 'match' => '09B8 09CD 09AF',
- 'replace' => 'E188',
- ),
- 254 =>
- array (
- 'match' => '09B8 09CD 09B2',
- 'replace' => 'E189',
- ),
- 255 =>
- array (
- 'match' => '09B8 09CD 09AC',
- 'replace' => 'E18A',
- ),
- 256 =>
- array (
- 'match' => '09B8 09CD 09B8',
- 'replace' => 'E18B',
- ),
- 257 =>
- array (
- 'match' => '09B9 09CD 09A3',
- 'replace' => 'E192',
- ),
- 258 =>
- array (
- 'match' => '09B9 09CD 09A8',
- 'replace' => 'E193',
- ),
- 259 =>
- array (
- 'match' => '09B9 09CD 09AE',
- 'replace' => 'E194',
- ),
- 260 =>
- array (
- 'match' => '09B9 09CD 09AF',
- 'replace' => 'E195',
- ),
- 261 =>
- array (
- 'match' => '09B9 09CD 09B2',
- 'replace' => 'E196',
- ),
- 262 =>
- array (
- 'match' => '09B9 09CD 09AC',
- 'replace' => 'E197',
- ),
- 263 =>
- array (
- 'match' => '09DC 09CD 0997',
- 'replace' => 'E198',
- ),
- 264 =>
- array (
- 'match' => '09DC 09CD 099C',
- 'replace' => 'E199',
- ),
- 265 =>
- array (
- 'match' => '09DC 09CD 09A7',
- 'replace' => 'E19A',
- ),
- 266 =>
- array (
- 'match' => '0995 E1CD',
- 'replace' => 'E041',
- ),
- 267 =>
- array (
- 'match' => '0996 E1CD',
- 'replace' => 'E042',
- ),
- 268 =>
- array (
- 'match' => '0997 E1CD',
- 'replace' => 'E043',
- ),
- 269 =>
- array (
- 'match' => '0998 E1CD',
- 'replace' => 'E044',
- ),
- 270 =>
- array (
- 'match' => '0999 E1CD',
- 'replace' => 'E045',
- ),
- 271 =>
- array (
- 'match' => '099A E1CD',
- 'replace' => 'E046',
- ),
- 272 =>
- array (
- 'match' => '099B E1CD',
- 'replace' => 'E047',
- ),
- 273 =>
- array (
- 'match' => '099C E1CD',
- 'replace' => 'E048',
- ),
- 274 =>
- array (
- 'match' => '099D E1CD',
- 'replace' => 'E049',
- ),
- 275 =>
- array (
- 'match' => '099F E1CD',
- 'replace' => 'E04A',
- ),
- 276 =>
- array (
- 'match' => '09A0 E1CD',
- 'replace' => 'E04B',
- ),
- 277 =>
- array (
- 'match' => '09A1 E1CD',
- 'replace' => 'E04C',
- ),
- 278 =>
- array (
- 'match' => '09A2 E1CD',
- 'replace' => 'E04D',
- ),
- 279 =>
- array (
- 'match' => '09A3 E1CD',
- 'replace' => 'E04E',
- ),
- 280 =>
- array (
- 'match' => '09A4 E1CD',
- 'replace' => 'E04F',
- ),
- 281 =>
- array (
- 'match' => '09A5 E1CD',
- 'replace' => 'E050',
- ),
- 282 =>
- array (
- 'match' => '09A6 E1CD',
- 'replace' => 'E051',
- ),
- 283 =>
- array (
- 'match' => '09A7 E1CD',
- 'replace' => 'E052',
- ),
- 284 =>
- array (
- 'match' => '09A8 E1CD',
- 'replace' => 'E053',
- ),
- 285 =>
- array (
- 'match' => '09AA E1CD',
- 'replace' => 'E054',
- ),
- 286 =>
- array (
- 'match' => '09AB E1CD',
- 'replace' => 'E055',
- ),
- 287 =>
- array (
- 'match' => '09AC E1CD',
- 'replace' => 'E056',
- ),
- 288 =>
- array (
- 'match' => '09AD E1CD',
- 'replace' => 'E057',
- ),
- 289 =>
- array (
- 'match' => '09AE E1CD',
- 'replace' => 'E058',
- ),
- 290 =>
- array (
- 'match' => '09AF E1CD',
- 'replace' => 'E059',
- ),
- 291 =>
- array (
- 'match' => '09B0 E1CD',
- 'replace' => 'E05A',
- ),
- 292 =>
- array (
- 'match' => '09B2 E1CD',
- 'replace' => 'E05B',
- ),
- 293 =>
- array (
- 'match' => '09B6 E1CD',
- 'replace' => 'E05C',
- ),
- 294 =>
- array (
- 'match' => '09B7 E1CD',
- 'replace' => 'E05D',
- ),
- 295 =>
- array (
- 'match' => '09B8 E1CD',
- 'replace' => 'E05E',
- ),
- 296 =>
- array (
- 'match' => '09B9 E1CD',
- 'replace' => 'E05F',
- ),
- 297 =>
- array (
- 'match' => '09DC E1CD',
- 'replace' => 'E060',
- ),
- 298 =>
- array (
- 'match' => '09DD E1CD',
- 'replace' => 'E061',
- ),
- 299 =>
- array (
- 'match' => '09DF E1CD',
- 'replace' => 'E062',
- ),
- 300 =>
- array (
- 'match' => '00D0 09B0',
- 'replace' => 'E1CD',
- ),
- 301 =>
- array (
- 'match' => 'E06A E1CD',
- 'replace' => 'E07B',
- ),
- 302 =>
- array (
- 'match' => 'E06E E1CD',
- 'replace' => 'E07C',
- ),
- 303 =>
- array (
- 'match' => 'E071 E1CD',
- 'replace' => 'E07D',
- ),
- 304 =>
- array (
- 'match' => 'E071 09CD 09AC',
- 'replace' => 'E07E',
- ),
- 305 =>
- array (
- 'match' => 'E002 09CD 09A3',
- 'replace' => 'E07F',
- ),
- 306 =>
- array (
- 'match' => 'E002 09CD 09AE',
- 'replace' => 'E080',
- ),
- 307 =>
- array (
- 'match' => 'E002 E1CD',
- 'replace' => 'E081',
- ),
- 308 =>
- array (
- 'match' => 'E002 09CD 09AC',
- 'replace' => 'E082',
- ),
- 309 =>
- array (
- 'match' => 'E090 E1CD',
- 'replace' => 'E097',
- ),
- 310 =>
- array (
- 'match' => 'E090 09CD 09AC',
- 'replace' => 'E098',
- ),
- 311 =>
- array (
- 'match' => 'E09C E1CD',
- 'replace' => 'E0A7',
- ),
- 312 =>
- array (
- 'match' => 'E09F E1CD',
- 'replace' => 'E0A8',
- ),
- 313 =>
- array (
- 'match' => '0999 09CD E002',
- 'replace' => 'E0A9',
- ),
- 314 =>
- array (
- 'match' => 'E0AD E1CD',
- 'replace' => 'E0B1',
- ),
- 315 =>
- array (
- 'match' => 'E0AD 09CD 09B2',
- 'replace' => 'E0B2',
- ),
- 316 =>
- array (
- 'match' => 'E0AD 09CD 09AC',
- 'replace' => 'E0B3',
- ),
- 317 =>
- array (
- 'match' => 'E0B7 E1CD',
- 'replace' => 'E0BC',
- ),
- 318 =>
- array (
- 'match' => 'E0B7 09CD 09AC',
- 'replace' => 'E0BD',
- ),
- 319 =>
- array (
- 'match' => 'E0E0 E1CD',
- 'replace' => 'E0E8',
- ),
- 320 =>
- array (
- 'match' => 'E0E2 E1CD',
- 'replace' => 'E0E9',
- ),
- 321 =>
- array (
- 'match' => 'E0EA E1CD',
- 'replace' => 'E0EF',
- ),
- 322 =>
- array (
- 'match' => 'E0EA 09CD 09AC',
- 'replace' => 'E0F0',
- ),
- 323 =>
- array (
- 'match' => 'E0F6 E1CD',
- 'replace' => 'E0FD',
- ),
- 324 =>
- array (
- 'match' => 'E0F6 09CD 09AC',
- 'replace' => 'E0FE',
- ),
- 325 =>
- array (
- 'match' => 'E0F7 E1CD',
- 'replace' => 'E0FF',
- ),
- 326 =>
- array (
- 'match' => 'E0F7 09CD 09AC',
- 'replace' => 'E100',
- ),
- 327 =>
- array (
- 'match' => 'E0FA E1CD',
- 'replace' => 'E101',
- ),
- 328 =>
- array (
- 'match' => 'E10A E1CD',
- 'replace' => 'E11A',
- ),
- 329 =>
- array (
- 'match' => 'E10C E1CD',
- 'replace' => 'E11B',
- ),
- 330 =>
- array (
- 'match' => 'E10D E1CD',
- 'replace' => 'E11C',
- ),
- 331 =>
- array (
- 'match' => 'E10D 09CD 09AC',
- 'replace' => 'E11D',
- ),
- 332 =>
- array (
- 'match' => 'E10F E1CD',
- 'replace' => 'E11E',
- ),
- 333 =>
- array (
- 'match' => 'E10F 09CD 09AC',
- 'replace' => 'E11F',
- ),
- 334 =>
- array (
- 'match' => 'E110 E1CD',
- 'replace' => 'E120',
- ),
- 335 =>
- array (
- 'match' => 'E110 09CD 09AC',
- 'replace' => 'E121',
- ),
- 336 =>
- array (
- 'match' => 'E13C 09CD 09AC',
- 'replace' => 'E140',
- ),
- 337 =>
- array (
- 'match' => 'E149 E1CD',
- 'replace' => 'E14F',
- ),
- 338 =>
- array (
- 'match' => 'E14A E1CD',
- 'replace' => 'E150',
- ),
- 339 =>
- array (
- 'match' => 'E14B E1CD',
- 'replace' => 'E151',
- ),
- 340 =>
- array (
- 'match' => 'E14C E1CD',
- 'replace' => 'E152',
- ),
- 341 =>
- array (
- 'match' => 'E158 E1CD',
- 'replace' => 'E163',
- ),
- 342 =>
- array (
- 'match' => 'E15B E1CD',
- 'replace' => 'E164',
- ),
- 343 =>
- array (
- 'match' => 'E161 09CD 099F',
- 'replace' => 'E165',
- ),
- 344 =>
- array (
- 'match' => 'E171 E1CD',
- 'replace' => 'E17A',
- ),
- 345 =>
- array (
- 'match' => 'E172 E1CD',
- 'replace' => 'E17B',
- ),
- 346 =>
- array (
- 'match' => 'E172 09CD 09AC',
- 'replace' => 'E17C',
- ),
- 347 =>
- array (
- 'match' => 'E175 E1CD',
- 'replace' => 'E17D',
- ),
- 348 =>
- array (
- 'match' => 'E17E E1CD',
- 'replace' => 'E18C',
- ),
- 349 =>
- array (
- 'match' => 'E181 E1CD',
- 'replace' => 'E18D',
- ),
- 350 =>
- array (
- 'match' => 'E182 E1CD',
- 'replace' => 'E18E',
- ),
- 351 =>
- array (
- 'match' => 'E182 09CD 09AC',
- 'replace' => 'E18F',
- ),
- 352 =>
- array (
- 'match' => 'E185 E1CD',
- 'replace' => 'E190',
- ),
- 353 =>
- array (
- 'match' => 'E185 09CD 09B2',
- 'replace' => 'E191',
- ),
- 354 =>
- array (
- 'match' => '((0995|0996|0997|0998|0999|099A|099B|099C|099D|099F|09A0|09A1|09A2|09A3|09A4|09A5|09A6|09A7|09A8|09AA|09AB|09AC|09AD|09AE|09AF|09B0|09B2|09B6|09B7|09B8|09B9|09DC|09DD|09DF)) 09CD 09AF',
- 'replace' => '\\1 E067',
- ),
- 355 =>
- array (
- 'match' => '((E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E051|E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062)) 09CD 09AF',
- 'replace' => '\\1 E067',
- ),
- 356 =>
- array (
- 'match' => '((E002|E003|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E079|E07A|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E086|E089|E08A|E08B|E08C|E08D|E08F|E090|E092|E095|E097|E098|E09A|E09B|E09D|E09F|E0A2|E0A4|E0A5|E0A6|E0A7|E0A8|E0A9|E0AA|E0AB|E0AC|E0AD|E0AE|E0AF|E0B1|E0B2|E0B3|E0B4|E0B7|E0B8|E0B9|E0BB|E0BC|E0BD|E0BE|E0BF|E0C5|E0C6|E0C7|E0C8|E0C9|E0CB|E0CC|E0CD|E0CE|E0CF|E0D2|E0D3|E0D5|E0D6|E0D8|E0D9|E0DA|E0DB|E0E0|E0E1|E0E3|E0E5|E0E7|E0E8|E0ED|E0F1|E0F5|E0F6|E0FB|E0FC|E0FD|E0FE|E102|E104|E105|E106|E108|E109|E10A|E10B|E10C|E10F|E110|E112|E114|E115|E117|E118|E119|E11A|E11B|E11E|E11F|E120|E121|E122|E123|E124|E125|E126|E127|E12B|E12C|E130|E131|E132|E133|E134|E135|E136|E137|E139|E13A|E13B|E13F|E144|E149|E14A|E14D|E14F|E150|E153|E154|E156|E157|E158|E159|E15A|E15C|E161|E162|E163|E165|E166|E167|E168|E16C|E16D|E174|E175|E176|E177|E178|E17A|E17B|E17C|E17D|E17E|E17F|E180|E181|E185|E186|E187|E188|E18B|E18C|E18D|E190|E191|E193|E194|E195|E198|E199|E19A|0995|0999|099A|099B|099E|09A1|09A2|09A4|09AB|09AD|09B9|E002|E003|E06A|E073|E074|E077|E078|E07B|E07D|E07E|E07F|E081|E082|E084|E08A|E08C|E08D|E090|E092|E094|E097|E098|E09C|E0A0|E0A1|E0A6|E0A7|E0A9|E0AA|E0AB|E0AC|E0AD|E0AE|E0B1|E0B2|E0B3|E0B4|E0B5|E0B6|E0C1|E0C2|E0C3|E0C4|E0C6|E0C8|E0C9|E0CC|E0CF|E0D9|E0DA|E0DC|E0DD|E0DF|E0E2|E0E3|E0E9|E0EA|E0F0|E108|E109|E10C|E10D|E10E|E110|E112|E113|E11B|E120|E121|E122|E124|E125|E128|E12B|E133|E134|E135|E136|E137|E139|E13A|E13C|E140|E143|E14A|E14C|E153|E156|E157|E159|E15C|E162|E166|E167|E168|E169|E171|E174|E176|E17A|E17E|E180|E182|E183|E18C|E192|E193|E194|E195|E196|E197|09A6|E08F|E0B9|E0F4|E0F6|E0F7|E0F8|E0F9|E0FA|E0FD|E0DC|E0FF|E100|E101|E10F|E11E|E11F|E13B|E15A|099F|09A0|E06E|E06F|E07C|E0CA|E0CB|E0D0|E0D1|E0D4|E0D5|E0D7|E0E0|E0E1|E0E8|E10A|E10B|E11A|E126|E127|E132|E158|E163|E165|E172|E173|E17B|E17C|E181|E18D)) 09CD 09AF',
- 'replace' => '\\1 E067',
- ),
- 357 =>
- array (
- 'match' => '(200C) 09CD 09AF',
- 'replace' => '\\1 E067',
- ),
- 358 =>
- array (
- 'match' => 'E0A9 E1CD',
- 'replace' => 'E0AA',
- ),
- 359 =>
- array (
- 'match' => 'E0A9 E1CD',
- 'replace' => 'E0AB',
- ),
- 360 =>
- array (
- 'match' => '(09BF (0995|0996|0997|0998|0999|099A|099B|099C|099D|099F|09A0|09A1|09A2|09A3|09A4|09A5|09A6|09A7|09A8|09AA|09AB|09AC|09AD|09AE|09AF|09B0|09B2|09B6|09B7|09B8|09B9|09DC|09DD|09DF)) 09CD',
- 'replace' => '\\1 09CD 09BF',
- ),
- 361 =>
- array (
- 'match' => '(09BF (0995|0996|0997|0998|0999|099A|099B|099C|099D|099F|09A0|09A1|09A2|09A3|09A4|09A5|09A6|09A7|09A8|09AA|09AB|09AC|09AD|09AE|09AF|09B0|09B2|09B6|09B7|09B8|09B9|09DC|09DD|09DF)) 007E',
- 'replace' => '\\1 007E 09BF',
- ),
- 362 =>
- array (
- 'match' => '(09C7 (0995|0996|0997|0998|0999|099A|099B|099C|099D|099F|09A0|09A1|09A2|09A3|09A4|09A5|09A6|09A7|09A8|09AA|09AB|09AC|09AD|09AE|09AF|09B0|09B2|09B6|09B7|09B8|09B9|09DC|09DD|09DF)) 09CD',
- 'replace' => '\\1 09CD 09C7',
- ),
- 363 =>
- array (
- 'match' => '(09C7 (0995|0996|0997|0998|0999|099A|099B|099C|099D|099F|09A0|09A1|09A2|09A3|09A4|09A5|09A6|09A7|09A8|09AA|09AB|09AC|09AD|09AE|09AF|09B0|09B2|09B6|09B7|09B8|09B9|09DC|09DD|09DF)) 007E',
- 'replace' => '\\1 007E 09C7',
- ),
- 364 =>
- array (
- 'match' => '(09C8 (0995|0996|0997|0998|0999|099A|099B|099C|099D|099F|09A0|09A1|09A2|09A3|09A4|09A5|09A6|09A7|09A8|09AA|09AB|09AC|09AD|09AE|09AF|09B0|09B2|09B6|09B7|09B8|09B9|09DC|09DD|09DF)) 09CD',
- 'replace' => '\\1 09CD 09C8',
- ),
- 365 =>
- array (
- 'match' => '(09C8 (0995|0996|0997|0998|0999|099A|099B|099C|099D|099F|09A0|09A1|09A2|09A3|09A4|09A5|09A6|09A7|09A8|09AA|09AB|09AC|09AD|09AE|09AF|09B0|09B2|09B6|09B7|09B8|09B9|09DC|09DD|09DF)) 007E',
- 'replace' => '\\1 007E 09C8',
- ),
- 366 =>
- array (
- 'match' => '09BF 0995 (09CD (09BF|09C7|09C8))',
- 'replace' => '0995 \\1',
- ),
- 367 =>
- array (
- 'match' => '09BF 0996 (09CD (09BF|09C7|09C8))',
- 'replace' => '0996 \\1',
- ),
- 368 =>
- array (
- 'match' => '09BF 0997 (09CD (09BF|09C7|09C8))',
- 'replace' => '0997 \\1',
- ),
- 369 =>
- array (
- 'match' => '09BF 0998 (09CD (09BF|09C7|09C8))',
- 'replace' => '0998 \\1',
- ),
- 370 =>
- array (
- 'match' => '09BF 0999 (09CD (09BF|09C7|09C8))',
- 'replace' => '0999 \\1',
- ),
- 371 =>
- array (
- 'match' => '09BF 099A (09CD (09BF|09C7|09C8))',
- 'replace' => '099A \\1',
- ),
- 372 =>
- array (
- 'match' => '09BF 099B (09CD (09BF|09C7|09C8))',
- 'replace' => '099B \\1',
- ),
- 373 =>
- array (
- 'match' => '09BF 099C (09CD (09BF|09C7|09C8))',
- 'replace' => '099C \\1',
- ),
- 374 =>
- array (
- 'match' => '09BF 099D (09CD (09BF|09C7|09C8))',
- 'replace' => '099D \\1',
- ),
- 375 =>
- array (
- 'match' => '09BF 099F (09CD (09BF|09C7|09C8))',
- 'replace' => '099F \\1',
- ),
- 376 =>
- array (
- 'match' => '09BF 09A0 (09CD (09BF|09C7|09C8))',
- 'replace' => '09A0 \\1',
- ),
- 377 =>
- array (
- 'match' => '09BF 09A1 (09CD (09BF|09C7|09C8))',
- 'replace' => '09A1 \\1',
- ),
- 378 =>
- array (
- 'match' => '09BF 09A2 (09CD (09BF|09C7|09C8))',
- 'replace' => '09A2 \\1',
- ),
- 379 =>
- array (
- 'match' => '09BF 09A3 (09CD (09BF|09C7|09C8))',
- 'replace' => '09A3 \\1',
- ),
- 380 =>
- array (
- 'match' => '09BF 09A4 (09CD (09BF|09C7|09C8))',
- 'replace' => '09A4 \\1',
- ),
- 381 =>
- array (
- 'match' => '09BF 09A5 (09CD (09BF|09C7|09C8))',
- 'replace' => '09A5 \\1',
- ),
- 382 =>
- array (
- 'match' => '09BF 09A6 (09CD (09BF|09C7|09C8))',
- 'replace' => '09A6 \\1',
- ),
- 383 =>
- array (
- 'match' => '09BF 09A7 (09CD (09BF|09C7|09C8))',
- 'replace' => '09A7 \\1',
- ),
- 384 =>
- array (
- 'match' => '09BF 09A8 (09CD (09BF|09C7|09C8))',
- 'replace' => '09A8 \\1',
- ),
- 385 =>
- array (
- 'match' => '09BF 09AA (09CD (09BF|09C7|09C8))',
- 'replace' => '09AA \\1',
- ),
- 386 =>
- array (
- 'match' => '09BF 09AB (09CD (09BF|09C7|09C8))',
- 'replace' => '09AB \\1',
- ),
- 387 =>
- array (
- 'match' => '09BF 09AC (09CD (09BF|09C7|09C8))',
- 'replace' => '09AC \\1',
- ),
- 388 =>
- array (
- 'match' => '09BF 09AD (09CD (09BF|09C7|09C8))',
- 'replace' => '09AD \\1',
- ),
- 389 =>
- array (
- 'match' => '09BF 09AE (09CD (09BF|09C7|09C8))',
- 'replace' => '09AE \\1',
- ),
- 390 =>
- array (
- 'match' => '09BF 09AF (09CD (09BF|09C7|09C8))',
- 'replace' => '09AF \\1',
- ),
- 391 =>
- array (
- 'match' => '09BF 09B0 (09CD (09BF|09C7|09C8))',
- 'replace' => '09B0 \\1',
- ),
- 392 =>
- array (
- 'match' => '09BF 09B2 (09CD (09BF|09C7|09C8))',
- 'replace' => '09B2 \\1',
- ),
- 393 =>
- array (
- 'match' => '09BF 09B6 (09CD (09BF|09C7|09C8))',
- 'replace' => '09B6 \\1',
- ),
- 394 =>
- array (
- 'match' => '09BF 09B7 (09CD (09BF|09C7|09C8))',
- 'replace' => '09B7 \\1',
- ),
- 395 =>
- array (
- 'match' => '09BF 09B8 (09CD (09BF|09C7|09C8))',
- 'replace' => '09B8 \\1',
- ),
- 396 =>
- array (
- 'match' => '09BF 09B9 (09CD (09BF|09C7|09C8))',
- 'replace' => '09B9 \\1',
- ),
- 397 =>
- array (
- 'match' => '09BF 09DC (09CD (09BF|09C7|09C8))',
- 'replace' => '09DC \\1',
- ),
- 398 =>
- array (
- 'match' => '09BF 09DD (09CD (09BF|09C7|09C8))',
- 'replace' => '09DD \\1',
- ),
- 399 =>
- array (
- 'match' => '09BF 09DF (09CD (09BF|09C7|09C8))',
- 'replace' => '09DF \\1',
- ),
- 400 =>
- array (
- 'match' => '09C7 0995 (09CD (09BF|09C7|09C8))',
- 'replace' => '0995 \\1',
- ),
- 401 =>
- array (
- 'match' => '09C7 0996 (09CD (09BF|09C7|09C8))',
- 'replace' => '0996 \\1',
- ),
- 402 =>
- array (
- 'match' => '09C7 0997 (09CD (09BF|09C7|09C8))',
- 'replace' => '0997 \\1',
- ),
- 403 =>
- array (
- 'match' => '09C7 0998 (09CD (09BF|09C7|09C8))',
- 'replace' => '0998 \\1',
- ),
- 404 =>
- array (
- 'match' => '09C7 0999 (09CD (09BF|09C7|09C8))',
- 'replace' => '0999 \\1',
- ),
- 405 =>
- array (
- 'match' => '09C7 099A (09CD (09BF|09C7|09C8))',
- 'replace' => '099A \\1',
- ),
- 406 =>
- array (
- 'match' => '09C7 099B (09CD (09BF|09C7|09C8))',
- 'replace' => '099B \\1',
- ),
- 407 =>
- array (
- 'match' => '09C7 099C (09CD (09BF|09C7|09C8))',
- 'replace' => '099C \\1',
- ),
- 408 =>
- array (
- 'match' => '09C7 099D (09CD (09BF|09C7|09C8))',
- 'replace' => '099D \\1',
- ),
- 409 =>
- array (
- 'match' => '09C7 099F (09CD (09BF|09C7|09C8))',
- 'replace' => '099F \\1',
- ),
- 410 =>
- array (
- 'match' => '09C7 09A0 (09CD (09BF|09C7|09C8))',
- 'replace' => '09A0 \\1',
- ),
- 411 =>
- array (
- 'match' => '09C7 09A1 (09CD (09BF|09C7|09C8))',
- 'replace' => '09A1 \\1',
- ),
- 412 =>
- array (
- 'match' => '09C7 09A2 (09CD (09BF|09C7|09C8))',
- 'replace' => '09A2 \\1',
- ),
- 413 =>
- array (
- 'match' => '09C7 09A3 (09CD (09BF|09C7|09C8))',
- 'replace' => '09A3 \\1',
- ),
- 414 =>
- array (
- 'match' => '09C7 09A4 (09CD (09BF|09C7|09C8))',
- 'replace' => '09A4 \\1',
- ),
- 415 =>
- array (
- 'match' => '09C7 09A5 (09CD (09BF|09C7|09C8))',
- 'replace' => '09A5 \\1',
- ),
- 416 =>
- array (
- 'match' => '09C7 09A6 (09CD (09BF|09C7|09C8))',
- 'replace' => '09A6 \\1',
- ),
- 417 =>
- array (
- 'match' => '09C7 09A7 (09CD (09BF|09C7|09C8))',
- 'replace' => '09A7 \\1',
- ),
- 418 =>
- array (
- 'match' => '09C7 09A8 (09CD (09BF|09C7|09C8))',
- 'replace' => '09A8 \\1',
- ),
- 419 =>
- array (
- 'match' => '09C7 09AA (09CD (09BF|09C7|09C8))',
- 'replace' => '09AA \\1',
- ),
- 420 =>
- array (
- 'match' => '09C7 09AB (09CD (09BF|09C7|09C8))',
- 'replace' => '09AB \\1',
- ),
- 421 =>
- array (
- 'match' => '09C7 09AC (09CD (09BF|09C7|09C8))',
- 'replace' => '09AC \\1',
- ),
- 422 =>
- array (
- 'match' => '09C7 09AD (09CD (09BF|09C7|09C8))',
- 'replace' => '09AD \\1',
- ),
- 423 =>
- array (
- 'match' => '09C7 09AE (09CD (09BF|09C7|09C8))',
- 'replace' => '09AE \\1',
- ),
- 424 =>
- array (
- 'match' => '09C7 09AF (09CD (09BF|09C7|09C8))',
- 'replace' => '09AF \\1',
- ),
- 425 =>
- array (
- 'match' => '09C7 09B0 (09CD (09BF|09C7|09C8))',
- 'replace' => '09B0 \\1',
- ),
- 426 =>
- array (
- 'match' => '09C7 09B2 (09CD (09BF|09C7|09C8))',
- 'replace' => '09B2 \\1',
- ),
- 427 =>
- array (
- 'match' => '09C7 09B6 (09CD (09BF|09C7|09C8))',
- 'replace' => '09B6 \\1',
- ),
- 428 =>
- array (
- 'match' => '09C7 09B7 (09CD (09BF|09C7|09C8))',
- 'replace' => '09B7 \\1',
- ),
- 429 =>
- array (
- 'match' => '09C7 09B8 (09CD (09BF|09C7|09C8))',
- 'replace' => '09B8 \\1',
- ),
- 430 =>
- array (
- 'match' => '09C7 09B9 (09CD (09BF|09C7|09C8))',
- 'replace' => '09B9 \\1',
- ),
- 431 =>
- array (
- 'match' => '09C7 09DC (09CD (09BF|09C7|09C8))',
- 'replace' => '09DC \\1',
- ),
- 432 =>
- array (
- 'match' => '09C7 09DD (09CD (09BF|09C7|09C8))',
- 'replace' => '09DD \\1',
- ),
- 433 =>
- array (
- 'match' => '09C7 09DF (09CD (09BF|09C7|09C8))',
- 'replace' => '09DF \\1',
- ),
- 434 =>
- array (
- 'match' => '09C8 0995 (09CD (09BF|09C7|09C8))',
- 'replace' => '0995 \\1',
- ),
- 435 =>
- array (
- 'match' => '09C8 0996 (09CD (09BF|09C7|09C8))',
- 'replace' => '0996 \\1',
- ),
- 436 =>
- array (
- 'match' => '09C8 0997 (09CD (09BF|09C7|09C8))',
- 'replace' => '0997 \\1',
- ),
- 437 =>
- array (
- 'match' => '09C8 0998 (09CD (09BF|09C7|09C8))',
- 'replace' => '0998 \\1',
- ),
- 438 =>
- array (
- 'match' => '09C8 0999 (09CD (09BF|09C7|09C8))',
- 'replace' => '0999 \\1',
- ),
- 439 =>
- array (
- 'match' => '09C8 099A (09CD (09BF|09C7|09C8))',
- 'replace' => '099A \\1',
- ),
- 440 =>
- array (
- 'match' => '09C8 099B (09CD (09BF|09C7|09C8))',
- 'replace' => '099B \\1',
- ),
- 441 =>
- array (
- 'match' => '09C8 099C (09CD (09BF|09C7|09C8))',
- 'replace' => '099C \\1',
- ),
- 442 =>
- array (
- 'match' => '09C8 099D (09CD (09BF|09C7|09C8))',
- 'replace' => '099D \\1',
- ),
- 443 =>
- array (
- 'match' => '09C8 099F (09CD (09BF|09C7|09C8))',
- 'replace' => '099F \\1',
- ),
- 444 =>
- array (
- 'match' => '09C8 09A0 (09CD (09BF|09C7|09C8))',
- 'replace' => '09A0 \\1',
- ),
- 445 =>
- array (
- 'match' => '09C8 09A1 (09CD (09BF|09C7|09C8))',
- 'replace' => '09A1 \\1',
- ),
- 446 =>
- array (
- 'match' => '09C8 09A2 (09CD (09BF|09C7|09C8))',
- 'replace' => '09A2 \\1',
- ),
- 447 =>
- array (
- 'match' => '09C8 09A3 (09CD (09BF|09C7|09C8))',
- 'replace' => '09A3 \\1',
- ),
- 448 =>
- array (
- 'match' => '09C8 09A4 (09CD (09BF|09C7|09C8))',
- 'replace' => '09A4 \\1',
- ),
- 449 =>
- array (
- 'match' => '09C8 09A5 (09CD (09BF|09C7|09C8))',
- 'replace' => '09A5 \\1',
- ),
- 450 =>
- array (
- 'match' => '09C8 09A6 (09CD (09BF|09C7|09C8))',
- 'replace' => '09A6 \\1',
- ),
- 451 =>
- array (
- 'match' => '09C8 09A7 (09CD (09BF|09C7|09C8))',
- 'replace' => '09A7 \\1',
- ),
- 452 =>
- array (
- 'match' => '09C8 09A8 (09CD (09BF|09C7|09C8))',
- 'replace' => '09A8 \\1',
- ),
- 453 =>
- array (
- 'match' => '09C8 09AA (09CD (09BF|09C7|09C8))',
- 'replace' => '09AA \\1',
- ),
- 454 =>
- array (
- 'match' => '09C8 09AB (09CD (09BF|09C7|09C8))',
- 'replace' => '09AB \\1',
- ),
- 455 =>
- array (
- 'match' => '09C8 09AC (09CD (09BF|09C7|09C8))',
- 'replace' => '09AC \\1',
- ),
- 456 =>
- array (
- 'match' => '09C8 09AD (09CD (09BF|09C7|09C8))',
- 'replace' => '09AD \\1',
- ),
- 457 =>
- array (
- 'match' => '09C8 09AE (09CD (09BF|09C7|09C8))',
- 'replace' => '09AE \\1',
- ),
- 458 =>
- array (
- 'match' => '09C8 09AF (09CD (09BF|09C7|09C8))',
- 'replace' => '09AF \\1',
- ),
- 459 =>
- array (
- 'match' => '09C8 09B0 (09CD (09BF|09C7|09C8))',
- 'replace' => '09B0 \\1',
- ),
- 460 =>
- array (
- 'match' => '09C8 09B2 (09CD (09BF|09C7|09C8))',
- 'replace' => '09B2 \\1',
- ),
- 461 =>
- array (
- 'match' => '09C8 09B6 (09CD (09BF|09C7|09C8))',
- 'replace' => '09B6 \\1',
- ),
- 462 =>
- array (
- 'match' => '09C8 09B7 (09CD (09BF|09C7|09C8))',
- 'replace' => '09B7 \\1',
- ),
- 463 =>
- array (
- 'match' => '09C8 09B8 (09CD (09BF|09C7|09C8))',
- 'replace' => '09B8 \\1',
- ),
- 464 =>
- array (
- 'match' => '09C8 09B9 (09CD (09BF|09C7|09C8))',
- 'replace' => '09B9 \\1',
- ),
- 465 =>
- array (
- 'match' => '09C8 09DC (09CD (09BF|09C7|09C8))',
- 'replace' => '09DC \\1',
- ),
- 466 =>
- array (
- 'match' => '09C8 09DD (09CD (09BF|09C7|09C8))',
- 'replace' => '09DD \\1',
- ),
- 467 =>
- array (
- 'match' => '09C8 09DF (09CD (09BF|09C7|09C8))',
- 'replace' => '09DF \\1',
- ),
- 468 =>
- array (
- 'match' => '09BF 0995 (007E (09BF|09C7|09C8))',
- 'replace' => '0995 \\1',
- ),
- 469 =>
- array (
- 'match' => '09BF 0996 (007E (09BF|09C7|09C8))',
- 'replace' => '0996 \\1',
- ),
- 470 =>
- array (
- 'match' => '09BF 0997 (007E (09BF|09C7|09C8))',
- 'replace' => '0997 \\1',
- ),
- 471 =>
- array (
- 'match' => '09BF 0998 (007E (09BF|09C7|09C8))',
- 'replace' => '0998 \\1',
- ),
- 472 =>
- array (
- 'match' => '09BF 0999 (007E (09BF|09C7|09C8))',
- 'replace' => '0999 \\1',
- ),
- 473 =>
- array (
- 'match' => '09BF 099A (007E (09BF|09C7|09C8))',
- 'replace' => '099A \\1',
- ),
- 474 =>
- array (
- 'match' => '09BF 099B (007E (09BF|09C7|09C8))',
- 'replace' => '099B \\1',
- ),
- 475 =>
- array (
- 'match' => '09BF 099C (007E (09BF|09C7|09C8))',
- 'replace' => '099C \\1',
- ),
- 476 =>
- array (
- 'match' => '09BF 099D (007E (09BF|09C7|09C8))',
- 'replace' => '099D \\1',
- ),
- 477 =>
- array (
- 'match' => '09BF 099F (007E (09BF|09C7|09C8))',
- 'replace' => '099F \\1',
- ),
- 478 =>
- array (
- 'match' => '09BF 09A0 (007E (09BF|09C7|09C8))',
- 'replace' => '09A0 \\1',
- ),
- 479 =>
- array (
- 'match' => '09BF 09A1 (007E (09BF|09C7|09C8))',
- 'replace' => '09A1 \\1',
- ),
- 480 =>
- array (
- 'match' => '09BF 09A2 (007E (09BF|09C7|09C8))',
- 'replace' => '09A2 \\1',
- ),
- 481 =>
- array (
- 'match' => '09BF 09A3 (007E (09BF|09C7|09C8))',
- 'replace' => '09A3 \\1',
- ),
- 482 =>
- array (
- 'match' => '09BF 09A4 (007E (09BF|09C7|09C8))',
- 'replace' => '09A4 \\1',
- ),
- 483 =>
- array (
- 'match' => '09BF 09A5 (007E (09BF|09C7|09C8))',
- 'replace' => '09A5 \\1',
- ),
- 484 =>
- array (
- 'match' => '09BF 09A6 (007E (09BF|09C7|09C8))',
- 'replace' => '09A6 \\1',
- ),
- 485 =>
- array (
- 'match' => '09BF 09A7 (007E (09BF|09C7|09C8))',
- 'replace' => '09A7 \\1',
- ),
- 486 =>
- array (
- 'match' => '09BF 09A8 (007E (09BF|09C7|09C8))',
- 'replace' => '09A8 \\1',
- ),
- 487 =>
- array (
- 'match' => '09BF 09AA (007E (09BF|09C7|09C8))',
- 'replace' => '09AA \\1',
- ),
- 488 =>
- array (
- 'match' => '09BF 09AB (007E (09BF|09C7|09C8))',
- 'replace' => '09AB \\1',
- ),
- 489 =>
- array (
- 'match' => '09BF 09AC (007E (09BF|09C7|09C8))',
- 'replace' => '09AC \\1',
- ),
- 490 =>
- array (
- 'match' => '09BF 09AD (007E (09BF|09C7|09C8))',
- 'replace' => '09AD \\1',
- ),
- 491 =>
- array (
- 'match' => '09BF 09AE (007E (09BF|09C7|09C8))',
- 'replace' => '09AE \\1',
- ),
- 492 =>
- array (
- 'match' => '09BF 09AF (007E (09BF|09C7|09C8))',
- 'replace' => '09AF \\1',
- ),
- 493 =>
- array (
- 'match' => '09BF 09B0 (007E (09BF|09C7|09C8))',
- 'replace' => '09B0 \\1',
- ),
- 494 =>
- array (
- 'match' => '09BF 09B2 (007E (09BF|09C7|09C8))',
- 'replace' => '09B2 \\1',
- ),
- 495 =>
- array (
- 'match' => '09BF 09B6 (007E (09BF|09C7|09C8))',
- 'replace' => '09B6 \\1',
- ),
- 496 =>
- array (
- 'match' => '09BF 09B7 (007E (09BF|09C7|09C8))',
- 'replace' => '09B7 \\1',
- ),
- 497 =>
- array (
- 'match' => '09BF 09B8 (007E (09BF|09C7|09C8))',
- 'replace' => '09B8 \\1',
- ),
- 498 =>
- array (
- 'match' => '09BF 09B9 (007E (09BF|09C7|09C8))',
- 'replace' => '09B9 \\1',
- ),
- 499 =>
- array (
- 'match' => '09BF 09DC (007E (09BF|09C7|09C8))',
- 'replace' => '09DC \\1',
- ),
- 500 =>
- array (
- 'match' => '09BF 09DD (007E (09BF|09C7|09C8))',
- 'replace' => '09DD \\1',
- ),
- 501 =>
- array (
- 'match' => '09BF 09DF (007E (09BF|09C7|09C8))',
- 'replace' => '09DF \\1',
- ),
- 502 =>
- array (
- 'match' => '09C7 0995 (007E (09BF|09C7|09C8))',
- 'replace' => '0995 \\1',
- ),
- 503 =>
- array (
- 'match' => '09C7 0996 (007E (09BF|09C7|09C8))',
- 'replace' => '0996 \\1',
- ),
- 504 =>
- array (
- 'match' => '09C7 0997 (007E (09BF|09C7|09C8))',
- 'replace' => '0997 \\1',
- ),
- 505 =>
- array (
- 'match' => '09C7 0998 (007E (09BF|09C7|09C8))',
- 'replace' => '0998 \\1',
- ),
- 506 =>
- array (
- 'match' => '09C7 0999 (007E (09BF|09C7|09C8))',
- 'replace' => '0999 \\1',
- ),
- 507 =>
- array (
- 'match' => '09C7 099A (007E (09BF|09C7|09C8))',
- 'replace' => '099A \\1',
- ),
- 508 =>
- array (
- 'match' => '09C7 099B (007E (09BF|09C7|09C8))',
- 'replace' => '099B \\1',
- ),
- 509 =>
- array (
- 'match' => '09C7 099C (007E (09BF|09C7|09C8))',
- 'replace' => '099C \\1',
- ),
- 510 =>
- array (
- 'match' => '09C7 099D (007E (09BF|09C7|09C8))',
- 'replace' => '099D \\1',
- ),
- 511 =>
- array (
- 'match' => '09C7 099F (007E (09BF|09C7|09C8))',
- 'replace' => '099F \\1',
- ),
- 512 =>
- array (
- 'match' => '09C7 09A0 (007E (09BF|09C7|09C8))',
- 'replace' => '09A0 \\1',
- ),
- 513 =>
- array (
- 'match' => '09C7 09A1 (007E (09BF|09C7|09C8))',
- 'replace' => '09A1 \\1',
- ),
- 514 =>
- array (
- 'match' => '09C7 09A2 (007E (09BF|09C7|09C8))',
- 'replace' => '09A2 \\1',
- ),
- 515 =>
- array (
- 'match' => '09C7 09A3 (007E (09BF|09C7|09C8))',
- 'replace' => '09A3 \\1',
- ),
- 516 =>
- array (
- 'match' => '09C7 09A4 (007E (09BF|09C7|09C8))',
- 'replace' => '09A4 \\1',
- ),
- 517 =>
- array (
- 'match' => '09C7 09A5 (007E (09BF|09C7|09C8))',
- 'replace' => '09A5 \\1',
- ),
- 518 =>
- array (
- 'match' => '09C7 09A6 (007E (09BF|09C7|09C8))',
- 'replace' => '09A6 \\1',
- ),
- 519 =>
- array (
- 'match' => '09C7 09A7 (007E (09BF|09C7|09C8))',
- 'replace' => '09A7 \\1',
- ),
- 520 =>
- array (
- 'match' => '09C7 09A8 (007E (09BF|09C7|09C8))',
- 'replace' => '09A8 \\1',
- ),
- 521 =>
- array (
- 'match' => '09C7 09AA (007E (09BF|09C7|09C8))',
- 'replace' => '09AA \\1',
- ),
- 522 =>
- array (
- 'match' => '09C7 09AB (007E (09BF|09C7|09C8))',
- 'replace' => '09AB \\1',
- ),
- 523 =>
- array (
- 'match' => '09C7 09AC (007E (09BF|09C7|09C8))',
- 'replace' => '09AC \\1',
- ),
- 524 =>
- array (
- 'match' => '09C7 09AD (007E (09BF|09C7|09C8))',
- 'replace' => '09AD \\1',
- ),
- 525 =>
- array (
- 'match' => '09C7 09AE (007E (09BF|09C7|09C8))',
- 'replace' => '09AE \\1',
- ),
- 526 =>
- array (
- 'match' => '09C7 09AF (007E (09BF|09C7|09C8))',
- 'replace' => '09AF \\1',
- ),
- 527 =>
- array (
- 'match' => '09C7 09B0 (007E (09BF|09C7|09C8))',
- 'replace' => '09B0 \\1',
- ),
- 528 =>
- array (
- 'match' => '09C7 09B2 (007E (09BF|09C7|09C8))',
- 'replace' => '09B2 \\1',
- ),
- 529 =>
- array (
- 'match' => '09C7 09B6 (007E (09BF|09C7|09C8))',
- 'replace' => '09B6 \\1',
- ),
- 530 =>
- array (
- 'match' => '09C7 09B7 (007E (09BF|09C7|09C8))',
- 'replace' => '09B7 \\1',
- ),
- 531 =>
- array (
- 'match' => '09C7 09B8 (007E (09BF|09C7|09C8))',
- 'replace' => '09B8 \\1',
- ),
- 532 =>
- array (
- 'match' => '09C7 09B9 (007E (09BF|09C7|09C8))',
- 'replace' => '09B9 \\1',
- ),
- 533 =>
- array (
- 'match' => '09C7 09DC (007E (09BF|09C7|09C8))',
- 'replace' => '09DC \\1',
- ),
- 534 =>
- array (
- 'match' => '09C7 09DD (007E (09BF|09C7|09C8))',
- 'replace' => '09DD \\1',
- ),
- 535 =>
- array (
- 'match' => '09C7 09DF (007E (09BF|09C7|09C8))',
- 'replace' => '09DF \\1',
- ),
- 536 =>
- array (
- 'match' => '09C8 0995 (007E (09BF|09C7|09C8))',
- 'replace' => '0995 \\1',
- ),
- 537 =>
- array (
- 'match' => '09C8 0996 (007E (09BF|09C7|09C8))',
- 'replace' => '0996 \\1',
- ),
- 538 =>
- array (
- 'match' => '09C8 0997 (007E (09BF|09C7|09C8))',
- 'replace' => '0997 \\1',
- ),
- 539 =>
- array (
- 'match' => '09C8 0998 (007E (09BF|09C7|09C8))',
- 'replace' => '0998 \\1',
- ),
- 540 =>
- array (
- 'match' => '09C8 0999 (007E (09BF|09C7|09C8))',
- 'replace' => '0999 \\1',
- ),
- 541 =>
- array (
- 'match' => '09C8 099A (007E (09BF|09C7|09C8))',
- 'replace' => '099A \\1',
- ),
- 542 =>
- array (
- 'match' => '09C8 099B (007E (09BF|09C7|09C8))',
- 'replace' => '099B \\1',
- ),
- 543 =>
- array (
- 'match' => '09C8 099C (007E (09BF|09C7|09C8))',
- 'replace' => '099C \\1',
- ),
- 544 =>
- array (
- 'match' => '09C8 099D (007E (09BF|09C7|09C8))',
- 'replace' => '099D \\1',
- ),
- 545 =>
- array (
- 'match' => '09C8 099F (007E (09BF|09C7|09C8))',
- 'replace' => '099F \\1',
- ),
- 546 =>
- array (
- 'match' => '09C8 09A0 (007E (09BF|09C7|09C8))',
- 'replace' => '09A0 \\1',
- ),
- 547 =>
- array (
- 'match' => '09C8 09A1 (007E (09BF|09C7|09C8))',
- 'replace' => '09A1 \\1',
- ),
- 548 =>
- array (
- 'match' => '09C8 09A2 (007E (09BF|09C7|09C8))',
- 'replace' => '09A2 \\1',
- ),
- 549 =>
- array (
- 'match' => '09C8 09A3 (007E (09BF|09C7|09C8))',
- 'replace' => '09A3 \\1',
- ),
- 550 =>
- array (
- 'match' => '09C8 09A4 (007E (09BF|09C7|09C8))',
- 'replace' => '09A4 \\1',
- ),
- 551 =>
- array (
- 'match' => '09C8 09A5 (007E (09BF|09C7|09C8))',
- 'replace' => '09A5 \\1',
- ),
- 552 =>
- array (
- 'match' => '09C8 09A6 (007E (09BF|09C7|09C8))',
- 'replace' => '09A6 \\1',
- ),
- 553 =>
- array (
- 'match' => '09C8 09A7 (007E (09BF|09C7|09C8))',
- 'replace' => '09A7 \\1',
- ),
- 554 =>
- array (
- 'match' => '09C8 09A8 (007E (09BF|09C7|09C8))',
- 'replace' => '09A8 \\1',
- ),
- 555 =>
- array (
- 'match' => '09C8 09AA (007E (09BF|09C7|09C8))',
- 'replace' => '09AA \\1',
- ),
- 556 =>
- array (
- 'match' => '09C8 09AB (007E (09BF|09C7|09C8))',
- 'replace' => '09AB \\1',
- ),
- 557 =>
- array (
- 'match' => '09C8 09AC (007E (09BF|09C7|09C8))',
- 'replace' => '09AC \\1',
- ),
- 558 =>
- array (
- 'match' => '09C8 09AD (007E (09BF|09C7|09C8))',
- 'replace' => '09AD \\1',
- ),
- 559 =>
- array (
- 'match' => '09C8 09AE (007E (09BF|09C7|09C8))',
- 'replace' => '09AE \\1',
- ),
- 560 =>
- array (
- 'match' => '09C8 09AF (007E (09BF|09C7|09C8))',
- 'replace' => '09AF \\1',
- ),
- 561 =>
- array (
- 'match' => '09C8 09B0 (007E (09BF|09C7|09C8))',
- 'replace' => '09B0 \\1',
- ),
- 562 =>
- array (
- 'match' => '09C8 09B2 (007E (09BF|09C7|09C8))',
- 'replace' => '09B2 \\1',
- ),
- 563 =>
- array (
- 'match' => '09C8 09B6 (007E (09BF|09C7|09C8))',
- 'replace' => '09B6 \\1',
- ),
- 564 =>
- array (
- 'match' => '09C8 09B7 (007E (09BF|09C7|09C8))',
- 'replace' => '09B7 \\1',
- ),
- 565 =>
- array (
- 'match' => '09C8 09B8 (007E (09BF|09C7|09C8))',
- 'replace' => '09B8 \\1',
- ),
- 566 =>
- array (
- 'match' => '09C8 09B9 (007E (09BF|09C7|09C8))',
- 'replace' => '09B9 \\1',
- ),
- 567 =>
- array (
- 'match' => '09C8 09DC (007E (09BF|09C7|09C8))',
- 'replace' => '09DC \\1',
- ),
- 568 =>
- array (
- 'match' => '09C8 09DD (007E (09BF|09C7|09C8))',
- 'replace' => '09DD \\1',
- ),
- 569 =>
- array (
- 'match' => '09C8 09DF (007E (09BF|09C7|09C8))',
- 'replace' => '09DF \\1',
- ),
- 570 =>
- array (
- 'match' => '09A4 09CD',
- 'replace' => 'E066',
- ),
- 571 =>
- array (
- 'match' => '09A4 007E',
- 'replace' => 'E066',
- ),
- 572 =>
- array (
- 'match' => 'E066 200D',
- 'replace' => 'E066',
- ),
- 573 =>
- array (
- 'match' => '09BF 200D',
- 'replace' => '09BF',
- ),
- 574 =>
- array (
- 'match' => '09C7 200D',
- 'replace' => '09C7',
- ),
- 575 =>
- array (
- 'match' => '09C8 200D',
- 'replace' => '09C8',
- ),
- 576 =>
- array (
- 'match' => '007E',
- 'replace' => '09CD',
- ),
- 577 =>
- array (
- 'match' => '200C',
- 'replace' => '09CD',
- ),
- 578 =>
- array (
- 'match' => '00D0',
- 'replace' => '09CD',
- ),
- 579 =>
- array (
- 'match' => '0997 09C1',
- 'replace' => 'E00A',
- ),
- 580 =>
- array (
- 'match' => '09DC 09C1',
- 'replace' => 'E012',
- ),
- 581 =>
- array (
- 'match' => '09DC 09C2',
- 'replace' => 'E013',
- ),
- 582 =>
- array (
- 'match' => '09DC 09C3',
- 'replace' => 'E014',
- ),
- 583 =>
- array (
- 'match' => '09DC 09C4',
- 'replace' => 'E015',
- ),
- 584 =>
- array (
- 'match' => '09DD 09C1',
- 'replace' => 'E016',
- ),
- 585 =>
- array (
- 'match' => '09DD 09C2',
- 'replace' => 'E017',
- ),
- 586 =>
- array (
- 'match' => '09DD 09C3',
- 'replace' => 'E018',
- ),
- 587 =>
- array (
- 'match' => '09DD 09C4',
- 'replace' => 'E019',
- ),
- 588 =>
- array (
- 'match' => '09B6 09C1',
- 'replace' => 'E00F',
- ),
- 589 =>
- array (
- 'match' => '09B9 09C1',
- 'replace' => 'E010',
- ),
- 590 =>
- array (
- 'match' => '09B9 09C3',
- 'replace' => 'E011',
- ),
- 591 =>
- array (
- 'match' => 'E084 09C1',
- 'replace' => 'E19B',
- ),
- 592 =>
- array (
- 'match' => 'E0F4 09C1',
- 'replace' => 'E19C',
- ),
- 593 =>
- array (
- 'match' => 'E10D 09C1',
- 'replace' => 'E19D',
- ),
- 594 =>
- array (
- 'match' => 'E128 09C1',
- 'replace' => 'E19E',
- ),
- 595 =>
- array (
- 'match' => 'E133 09C1',
- 'replace' => 'E19F',
- ),
- 596 =>
- array (
- 'match' => 'E155 09C1',
- 'replace' => 'E1A0',
- ),
- 597 =>
- array (
- 'match' => 'E169 09C1',
- 'replace' => 'E1A1',
- ),
- 598 =>
- array (
- 'match' => 'E182 09C1',
- 'replace' => 'E1A2',
- ),
- 599 =>
- array (
- 'match' => '09BF ((E002|E003|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E079|E07A|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E086|E089|E08A|E08B|E08C|E08D|E08F|E090|E092|E095|E097|E098|E09A|E09B|E09D|E09F|E0A2|E0A4|E0A5|E0A6|E0A7|E0A8|E0A9|E0AA|E0AB|E0AC|E0AD|E0AE|E0AF|E0B1|E0B2|E0B3|E0B4|E0B7|E0B8|E0B9|E0BB|E0BC|E0BD|E0BE|E0BF|E0C5|E0C6|E0C7|E0C8|E0C9|E0CB|E0CC|E0CD|E0CE|E0CF|E0D2|E0D3|E0D5|E0D6|E0D8|E0D9|E0DA|E0DB|E0E0|E0E1|E0E3|E0E5|E0E7|E0E8|E0ED|E0F1|E0F5|E0F6|E0FB|E0FC|E0FD|E0FE|E102|E104|E105|E106|E108|E109|E10A|E10B|E10C|E10F|E110|E112|E114|E115|E117|E118|E119|E11A|E11B|E11E|E11F|E120|E121|E122|E123|E124|E125|E126|E127|E12B|E12C|E130|E131|E132|E133|E134|E135|E136|E137|E139|E13A|E13B|E13F|E144|E149|E14A|E14D|E14F|E150|E153|E154|E156|E157|E158|E159|E15A|E15C|E161|E162|E163|E165|E166|E167|E168|E16C|E16D|E174|E175|E176|E177|E178|E17A|E17B|E17C|E17D|E17E|E17F|E180|E181|E185|E186|E187|E188|E18B|E18C|E18D|E190|E191|E193|E194|E195|E198|E199|E19A))',
- 'replace' => 'E01C \\1',
- ),
- 600 =>
- array (
- 'match' => '((0995|0999|099A|099B|099F|09A0|09A1|09A2|09A4|09AB|09AD|09B9)) 09BE',
- 'replace' => '\\1 E01A',
- ),
- 601 =>
- array (
- 'match' => '((0995|0999|099A|099B|099F|09A0|09A1|09A2|09A4|09AB|09AD|09B9)) 09D7',
- 'replace' => '\\1 E03F',
- ),
- 602 =>
- array (
- 'match' => '((09A6)) 09BE',
- 'replace' => '\\1 E01B',
- ),
- 603 =>
- array (
- 'match' => '((09A6)) 09D7',
- 'replace' => '\\1 E040',
- ),
- 604 =>
- array (
- 'match' => '09C0 0981',
- 'replace' => 'E1B4',
- ),
- 605 =>
- array (
- 'match' => '09D7 0981',
- 'replace' => 'E1B5',
- ),
- 606 =>
- array (
- 'match' => 'E01D 0981',
- 'replace' => 'E1B6',
- ),
- 607 =>
- array (
- 'match' => 'E01E 0981',
- 'replace' => 'E1B7',
- ),
- 608 =>
- array (
- 'match' => 'E01F 0981',
- 'replace' => 'E1B8',
- ),
- 609 =>
- array (
- 'match' => 'E03F 0981',
- 'replace' => 'E1B9',
- ),
- 610 =>
- array (
- 'match' => 'E040 0981',
- 'replace' => 'E1BA',
- ),
- 611 =>
- array (
- 'match' => '09C0 E069',
- 'replace' => 'E1BB',
- ),
- 612 =>
- array (
- 'match' => '09D7 E069',
- 'replace' => 'E1BC',
- ),
- 613 =>
- array (
- 'match' => 'E01D E069',
- 'replace' => 'E1BD',
- ),
- 614 =>
- array (
- 'match' => 'E01E E069',
- 'replace' => 'E1BE',
- ),
- 615 =>
- array (
- 'match' => 'E01F E069',
- 'replace' => 'E1BF',
- ),
- 616 =>
- array (
- 'match' => 'E03F E069',
- 'replace' => 'E1C0',
- ),
- 617 =>
- array (
- 'match' => 'E040 E069',
- 'replace' => 'E1C1',
- ),
- 618 =>
- array (
- 'match' => '0987 0981',
- 'replace' => 'E1C2',
- ),
- 619 =>
- array (
- 'match' => '0988 0981',
- 'replace' => 'E1C3',
- ),
- 620 =>
- array (
- 'match' => '098A 0981',
- 'replace' => 'E1C4',
- ),
- 621 =>
- array (
- 'match' => '0990 0981',
- 'replace' => 'E1C5',
- ),
- 622 =>
- array (
- 'match' => '0994 0981',
- 'replace' => 'E1C6',
- ),
- 623 =>
- array (
- 'match' => '099F 0981',
- 'replace' => 'E1C7',
- ),
- 624 =>
- array (
- 'match' => '09A0 0981',
- 'replace' => 'E1C8',
- ),
- 625 =>
- array (
- 'match' => '099F E068',
- 'replace' => 'E1C9',
- ),
- 626 =>
- array (
- 'match' => '09A0 E068',
- 'replace' => 'E1CA',
- ),
- 627 =>
- array (
- 'match' => '099F E069',
- 'replace' => 'E1CB',
- ),
- 628 =>
- array (
- 'match' => '09A0 E069',
- 'replace' => 'E1CC',
- ),
- 629 =>
- array (
- 'match' => '((0995|0999|099A|099B|099E|09A1|09A2|09A4|09AB|09AD|09B9|E002|E003|E06A|E073|E074|E077|E078|E07B|E07D|E07E|E07F|E081|E082|E084|E08A|E08C|E08D|E090|E092|E094|E097|E098|E09C|E0A0|E0A1|E0A6|E0A7|E0A9|E0AA|E0AB|E0AC|E0AD|E0AE|E0B1|E0B2|E0B3|E0B4|E0B5|E0B6|E0C1|E0C2|E0C3|E0C4|E0C6|E0C8|E0C9|E0CC|E0CF|E0D9|E0DA|E0DC|E0DD|E0DF|E0E2|E0E3|E0E9|E0EA|E0F0|E108|E109|E10C|E10D|E10E|E110|E112|E113|E11B|E120|E121|E122|E124|E125|E128|E12B|E133|E134|E135|E136|E137|E139|E13A|E13C|E140|E143|E14A|E14C|E153|E156|E157|E159|E15C|E162|E166|E167|E168|E169|E171|E174|E176|E17A|E17E|E180|E182|E183|E18C|E192|E193|E194|E195|E196|E197)) 09C0',
- 'replace' => '\\1 E01D',
- ),
- 630 =>
- array (
- 'match' => '((09A6|E08F|E0B9|E0F4|E0F6|E0F7|E0F8|E0F9|E0FA|E0FD|E0DC|E0FF|E100|E101|E10F|E11E|E11F|E13B|E15A)) 09C0',
- 'replace' => '\\1 E01E',
- ),
- 631 =>
- array (
- 'match' => '((099F|09A0|E06E|E06F|E07C|E0CA|E0CB|E0D0|E0D1|E0D4|E0D5|E0D7|E0E0|E0E1|E0E8|E10A|E10B|E11A|E126|E127|E132|E158|E163|E165|E172|E173|E17B|E17C|E181|E18D)) 09C0',
- 'replace' => '\\1 E01F',
- ),
-);
-?>
\ No newline at end of file
diff --git a/public/mpdf/includes/ind_gu_1_001.volt.php b/public/mpdf/includes/ind_gu_1_001.volt.php
deleted file mode 100644
index a3e6c03..0000000
--- a/public/mpdf/includes/ind_gu_1_001.volt.php
+++ /dev/null
@@ -1,3314 +0,0 @@
-
- array (
- 'match' => '0A95 0ACD 0AB7',
- 'replace' => 'E002',
- ),
- 1 =>
- array (
- 'match' => '0A9C 0ACD 0A9E',
- 'replace' => 'E003',
- ),
- 2 =>
- array (
- 'match' => '0ACD 200C',
- 'replace' => 'E163',
- ),
- 3 =>
- array (
- 'match' => '0A95 0ABC',
- 'replace' => 'E004',
- ),
- 4 =>
- array (
- 'match' => '0A96 0ABC',
- 'replace' => 'E005',
- ),
- 5 =>
- array (
- 'match' => '0A97 0ABC',
- 'replace' => 'E006',
- ),
- 6 =>
- array (
- 'match' => '0A98 0ABC',
- 'replace' => 'E007',
- ),
- 7 =>
- array (
- 'match' => '0A99 0ABC',
- 'replace' => 'E008',
- ),
- 8 =>
- array (
- 'match' => '0A9A 0ABC',
- 'replace' => 'E009',
- ),
- 9 =>
- array (
- 'match' => '0A9B 0ABC',
- 'replace' => 'E00A',
- ),
- 10 =>
- array (
- 'match' => '0A9C 0ABC',
- 'replace' => 'E00B',
- ),
- 11 =>
- array (
- 'match' => '0A9D 0ABC',
- 'replace' => 'E00C',
- ),
- 12 =>
- array (
- 'match' => '0A9E 0ABC',
- 'replace' => 'E00D',
- ),
- 13 =>
- array (
- 'match' => '0A9F 0ABC',
- 'replace' => 'E00E',
- ),
- 14 =>
- array (
- 'match' => '0AA0 0ABC',
- 'replace' => 'E00F',
- ),
- 15 =>
- array (
- 'match' => '0AA1 0ABC',
- 'replace' => 'E010',
- ),
- 16 =>
- array (
- 'match' => '0AA2 0ABC',
- 'replace' => 'E011',
- ),
- 17 =>
- array (
- 'match' => '0AA3 0ABC',
- 'replace' => 'E012',
- ),
- 18 =>
- array (
- 'match' => '0AA4 0ABC',
- 'replace' => 'E013',
- ),
- 19 =>
- array (
- 'match' => '0AA5 0ABC',
- 'replace' => 'E014',
- ),
- 20 =>
- array (
- 'match' => '0AA6 0ABC',
- 'replace' => 'E015',
- ),
- 21 =>
- array (
- 'match' => '0AA7 0ABC',
- 'replace' => 'E016',
- ),
- 22 =>
- array (
- 'match' => '0AA8 0ABC',
- 'replace' => 'E017',
- ),
- 23 =>
- array (
- 'match' => '0AAA 0ABC',
- 'replace' => 'E018',
- ),
- 24 =>
- array (
- 'match' => '0AAB 0ABC',
- 'replace' => 'E019',
- ),
- 25 =>
- array (
- 'match' => '0AAC 0ABC',
- 'replace' => 'E01A',
- ),
- 26 =>
- array (
- 'match' => '0AAD 0ABC',
- 'replace' => 'E01B',
- ),
- 27 =>
- array (
- 'match' => '0AAE 0ABC',
- 'replace' => 'E01C',
- ),
- 28 =>
- array (
- 'match' => '0AAF 0ABC',
- 'replace' => 'E01D',
- ),
- 29 =>
- array (
- 'match' => '0AB0 0ABC',
- 'replace' => 'E01E',
- ),
- 30 =>
- array (
- 'match' => '0AB2 0ABC',
- 'replace' => 'E01F',
- ),
- 31 =>
- array (
- 'match' => '0AB3 0ABC',
- 'replace' => 'E020',
- ),
- 32 =>
- array (
- 'match' => '0AB5 0ABC',
- 'replace' => 'E021',
- ),
- 33 =>
- array (
- 'match' => '0AB6 0ABC',
- 'replace' => 'E022',
- ),
- 34 =>
- array (
- 'match' => '0AB7 0ABC',
- 'replace' => 'E023',
- ),
- 35 =>
- array (
- 'match' => '0AB8 0ABC',
- 'replace' => 'E024',
- ),
- 36 =>
- array (
- 'match' => '0AB9 0ABC',
- 'replace' => 'E025',
- ),
- 37 =>
- array (
- 'match' => 'E002 0ABC',
- 'replace' => 'E026',
- ),
- 38 =>
- array (
- 'match' => 'E003 0ABC',
- 'replace' => 'E027',
- ),
- 39 =>
- array (
- 'match' => '((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E)) 0ACD 0AB0',
- 'replace' => '\\1 E05D',
- ),
- 40 =>
- array (
- 'match' => '(25CC) 0ACD 0AB0',
- 'replace' => '\\1 E05D',
- ),
- 41 =>
- array (
- 'match' => '(200D) 0ACD 0AB0',
- 'replace' => '\\1 E05D',
- ),
- 42 =>
- array (
- 'match' => '(0020) 0ACD 0AB0',
- 'replace' => '\\1 E05D',
- ),
- 43 =>
- array (
- 'match' => '((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E)) 0AB0 0ACD',
- 'replace' => '\\1 E032',
- ),
- 44 =>
- array (
- 'match' => '((0ABE|0AC0|0AC1|0AC2|0AC3|0AC4|0AC5|0AC7|0AC8|0AC9|0ACB|0ACC)) 0AB0 0ACD',
- 'replace' => '\\1 E032',
- ),
- 45 =>
- array (
- 'match' => '(E05D) 0AB0 0ACD',
- 'replace' => '\\1 E032',
- ),
- 46 =>
- array (
- 'match' => '(25CC) 0AB0 0ACD',
- 'replace' => '\\1 E032',
- ),
- 47 =>
- array (
- 'match' => '0A95 E05D',
- 'replace' => 'E05E',
- ),
- 48 =>
- array (
- 'match' => '0A96 E05D',
- 'replace' => 'E05F',
- ),
- 49 =>
- array (
- 'match' => '0A97 E05D',
- 'replace' => 'E060',
- ),
- 50 =>
- array (
- 'match' => '0A98 E05D',
- 'replace' => 'E061',
- ),
- 51 =>
- array (
- 'match' => '0A99 E05D',
- 'replace' => 'E062',
- ),
- 52 =>
- array (
- 'match' => '0A9A E05D',
- 'replace' => 'E063',
- ),
- 53 =>
- array (
- 'match' => '0A9B E05D',
- 'replace' => 'E064',
- ),
- 54 =>
- array (
- 'match' => '0A9C E05D',
- 'replace' => 'E065',
- ),
- 55 =>
- array (
- 'match' => '0A9D E05D',
- 'replace' => 'E066',
- ),
- 56 =>
- array (
- 'match' => '0A9E E05D',
- 'replace' => 'E067',
- ),
- 57 =>
- array (
- 'match' => '0A9F E05D',
- 'replace' => 'E068',
- ),
- 58 =>
- array (
- 'match' => '0AA0 E05D',
- 'replace' => 'E069',
- ),
- 59 =>
- array (
- 'match' => '0AA1 E05D',
- 'replace' => 'E06A',
- ),
- 60 =>
- array (
- 'match' => '0AA2 E05D',
- 'replace' => 'E06B',
- ),
- 61 =>
- array (
- 'match' => '0AA3 E05D',
- 'replace' => 'E06C',
- ),
- 62 =>
- array (
- 'match' => '0AA4 E05D',
- 'replace' => 'E06D',
- ),
- 63 =>
- array (
- 'match' => '0AA5 E05D',
- 'replace' => 'E06E',
- ),
- 64 =>
- array (
- 'match' => '0AA6 E05D',
- 'replace' => 'E06F',
- ),
- 65 =>
- array (
- 'match' => '0AA7 E05D',
- 'replace' => 'E070',
- ),
- 66 =>
- array (
- 'match' => '0AA8 E05D',
- 'replace' => 'E071',
- ),
- 67 =>
- array (
- 'match' => '0AAA E05D',
- 'replace' => 'E072',
- ),
- 68 =>
- array (
- 'match' => '0AAB E05D',
- 'replace' => 'E073',
- ),
- 69 =>
- array (
- 'match' => '0AAC E05D',
- 'replace' => 'E074',
- ),
- 70 =>
- array (
- 'match' => '0AAD E05D',
- 'replace' => 'E075',
- ),
- 71 =>
- array (
- 'match' => '0AAE E05D',
- 'replace' => 'E076',
- ),
- 72 =>
- array (
- 'match' => '0AAF E05D',
- 'replace' => 'E077',
- ),
- 73 =>
- array (
- 'match' => '0AB0 E05D',
- 'replace' => 'E078',
- ),
- 74 =>
- array (
- 'match' => '0AB2 E05D',
- 'replace' => 'E079',
- ),
- 75 =>
- array (
- 'match' => '0AB3 E05D',
- 'replace' => 'E07A',
- ),
- 76 =>
- array (
- 'match' => '0AB5 E05D',
- 'replace' => 'E07B',
- ),
- 77 =>
- array (
- 'match' => '0AB6 E05D',
- 'replace' => 'E07C',
- ),
- 78 =>
- array (
- 'match' => '0AB7 E05D',
- 'replace' => 'E07D',
- ),
- 79 =>
- array (
- 'match' => '0AB8 E05D',
- 'replace' => 'E07E',
- ),
- 80 =>
- array (
- 'match' => '0AB9 E05D',
- 'replace' => 'E07F',
- ),
- 81 =>
- array (
- 'match' => 'E002 E05D',
- 'replace' => 'E080',
- ),
- 82 =>
- array (
- 'match' => 'E003 E05D',
- 'replace' => 'E081',
- ),
- 83 =>
- array (
- 'match' => 'E004 E05D',
- 'replace' => 'E082',
- ),
- 84 =>
- array (
- 'match' => 'E005 E05D',
- 'replace' => 'E083',
- ),
- 85 =>
- array (
- 'match' => 'E006 E05D',
- 'replace' => 'E084',
- ),
- 86 =>
- array (
- 'match' => 'E007 E05D',
- 'replace' => 'E085',
- ),
- 87 =>
- array (
- 'match' => 'E008 E05D',
- 'replace' => 'E086',
- ),
- 88 =>
- array (
- 'match' => 'E009 E05D',
- 'replace' => 'E087',
- ),
- 89 =>
- array (
- 'match' => 'E00A E05D',
- 'replace' => 'E088',
- ),
- 90 =>
- array (
- 'match' => 'E00B E05D',
- 'replace' => 'E089',
- ),
- 91 =>
- array (
- 'match' => 'E00C E05D',
- 'replace' => 'E08A',
- ),
- 92 =>
- array (
- 'match' => 'E00D E05D',
- 'replace' => 'E08B',
- ),
- 93 =>
- array (
- 'match' => 'E00E E05D',
- 'replace' => 'E08C',
- ),
- 94 =>
- array (
- 'match' => 'E00F E05D',
- 'replace' => 'E08D',
- ),
- 95 =>
- array (
- 'match' => 'E010 E05D',
- 'replace' => 'E08E',
- ),
- 96 =>
- array (
- 'match' => 'E011 E05D',
- 'replace' => 'E08F',
- ),
- 97 =>
- array (
- 'match' => 'E012 E05D',
- 'replace' => 'E090',
- ),
- 98 =>
- array (
- 'match' => 'E013 E05D',
- 'replace' => 'E091',
- ),
- 99 =>
- array (
- 'match' => 'E014 E05D',
- 'replace' => 'E092',
- ),
- 100 =>
- array (
- 'match' => 'E015 E05D',
- 'replace' => 'E093',
- ),
- 101 =>
- array (
- 'match' => 'E016 E05D',
- 'replace' => 'E094',
- ),
- 102 =>
- array (
- 'match' => 'E017 E05D',
- 'replace' => 'E095',
- ),
- 103 =>
- array (
- 'match' => 'E018 E05D',
- 'replace' => 'E096',
- ),
- 104 =>
- array (
- 'match' => 'E019 E05D',
- 'replace' => 'E097',
- ),
- 105 =>
- array (
- 'match' => 'E01A E05D',
- 'replace' => 'E098',
- ),
- 106 =>
- array (
- 'match' => 'E01B E05D',
- 'replace' => 'E099',
- ),
- 107 =>
- array (
- 'match' => 'E01C E05D',
- 'replace' => 'E09A',
- ),
- 108 =>
- array (
- 'match' => 'E01D E05D',
- 'replace' => 'E09B',
- ),
- 109 =>
- array (
- 'match' => 'E01E E05D',
- 'replace' => 'E09C',
- ),
- 110 =>
- array (
- 'match' => 'E01F E05D',
- 'replace' => 'E09D',
- ),
- 111 =>
- array (
- 'match' => 'E020 E05D',
- 'replace' => 'E09E',
- ),
- 112 =>
- array (
- 'match' => 'E021 E05D',
- 'replace' => 'E09F',
- ),
- 113 =>
- array (
- 'match' => 'E022 E05D',
- 'replace' => 'E0A0',
- ),
- 114 =>
- array (
- 'match' => 'E023 E05D',
- 'replace' => 'E0A1',
- ),
- 115 =>
- array (
- 'match' => 'E024 E05D',
- 'replace' => 'E0A2',
- ),
- 116 =>
- array (
- 'match' => 'E025 E05D',
- 'replace' => 'E0A3',
- ),
- 117 =>
- array (
- 'match' => 'E026 E05D',
- 'replace' => 'E0A4',
- ),
- 118 =>
- array (
- 'match' => 'E027 E05D',
- 'replace' => 'E0A5',
- ),
- 119 =>
- array (
- 'match' => '0A95 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0A6 \\1',
- ),
- 120 =>
- array (
- 'match' => '0A96 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0A7 \\1',
- ),
- 121 =>
- array (
- 'match' => '0A97 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0A8 \\1',
- ),
- 122 =>
- array (
- 'match' => '0A98 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0A9 \\1',
- ),
- 123 =>
- array (
- 'match' => '0A99 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0AA \\1',
- ),
- 124 =>
- array (
- 'match' => '0A9A 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0AB \\1',
- ),
- 125 =>
- array (
- 'match' => '0A9B 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0AC \\1',
- ),
- 126 =>
- array (
- 'match' => '0A9C 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0AD \\1',
- ),
- 127 =>
- array (
- 'match' => '0A9D 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0AE \\1',
- ),
- 128 =>
- array (
- 'match' => '0A9E 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0AF \\1',
- ),
- 129 =>
- array (
- 'match' => '0A9F 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0B0 \\1',
- ),
- 130 =>
- array (
- 'match' => '0AA0 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0B1 \\1',
- ),
- 131 =>
- array (
- 'match' => '0AA1 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0B2 \\1',
- ),
- 132 =>
- array (
- 'match' => '0AA2 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0B3 \\1',
- ),
- 133 =>
- array (
- 'match' => '0AA3 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0B4 \\1',
- ),
- 134 =>
- array (
- 'match' => '0AA4 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0B5 \\1',
- ),
- 135 =>
- array (
- 'match' => '0AA5 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0B6 \\1',
- ),
- 136 =>
- array (
- 'match' => '0AA6 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0B7 \\1',
- ),
- 137 =>
- array (
- 'match' => '0AA7 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0B8 \\1',
- ),
- 138 =>
- array (
- 'match' => '0AA8 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0B9 \\1',
- ),
- 139 =>
- array (
- 'match' => '0AAA 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0BA \\1',
- ),
- 140 =>
- array (
- 'match' => '0AAB 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0BB \\1',
- ),
- 141 =>
- array (
- 'match' => '0AAC 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0BC \\1',
- ),
- 142 =>
- array (
- 'match' => '0AAD 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0BD \\1',
- ),
- 143 =>
- array (
- 'match' => '0AAE 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0BE \\1',
- ),
- 144 =>
- array (
- 'match' => '0AAF 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0BF \\1',
- ),
- 145 =>
- array (
- 'match' => '0AB0 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0C0 \\1',
- ),
- 146 =>
- array (
- 'match' => '0AB2 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0C1 \\1',
- ),
- 147 =>
- array (
- 'match' => '0AB3 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0C2 \\1',
- ),
- 148 =>
- array (
- 'match' => '0AB5 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0C3 \\1',
- ),
- 149 =>
- array (
- 'match' => '0AB6 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0C4 \\1',
- ),
- 150 =>
- array (
- 'match' => '0AB7 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0C5 \\1',
- ),
- 151 =>
- array (
- 'match' => '0AB8 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0C6 \\1',
- ),
- 152 =>
- array (
- 'match' => '0AB9 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0C7 \\1',
- ),
- 153 =>
- array (
- 'match' => 'E002 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0C8 \\1',
- ),
- 154 =>
- array (
- 'match' => 'E003 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0C9 \\1',
- ),
- 155 =>
- array (
- 'match' => 'E004 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0CA \\1',
- ),
- 156 =>
- array (
- 'match' => 'E005 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0CB \\1',
- ),
- 157 =>
- array (
- 'match' => 'E006 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0CC \\1',
- ),
- 158 =>
- array (
- 'match' => 'E007 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0CD \\1',
- ),
- 159 =>
- array (
- 'match' => 'E008 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0CE \\1',
- ),
- 160 =>
- array (
- 'match' => 'E009 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0CF \\1',
- ),
- 161 =>
- array (
- 'match' => 'E00A 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0D0 \\1',
- ),
- 162 =>
- array (
- 'match' => 'E00B 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0D1 \\1',
- ),
- 163 =>
- array (
- 'match' => 'E00C 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0D2 \\1',
- ),
- 164 =>
- array (
- 'match' => 'E00D 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0D3 \\1',
- ),
- 165 =>
- array (
- 'match' => 'E00E 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0D4 \\1',
- ),
- 166 =>
- array (
- 'match' => 'E00F 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0D5 \\1',
- ),
- 167 =>
- array (
- 'match' => 'E010 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0D6 \\1',
- ),
- 168 =>
- array (
- 'match' => 'E011 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0D7 \\1',
- ),
- 169 =>
- array (
- 'match' => 'E012 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0D8 \\1',
- ),
- 170 =>
- array (
- 'match' => 'E013 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0D9 \\1',
- ),
- 171 =>
- array (
- 'match' => 'E014 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0DA \\1',
- ),
- 172 =>
- array (
- 'match' => 'E015 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0DB \\1',
- ),
- 173 =>
- array (
- 'match' => 'E016 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0DC \\1',
- ),
- 174 =>
- array (
- 'match' => 'E017 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0DD \\1',
- ),
- 175 =>
- array (
- 'match' => 'E018 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0DE \\1',
- ),
- 176 =>
- array (
- 'match' => 'E019 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0DF \\1',
- ),
- 177 =>
- array (
- 'match' => 'E01A 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0E0 \\1',
- ),
- 178 =>
- array (
- 'match' => 'E01B 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0E1 \\1',
- ),
- 179 =>
- array (
- 'match' => 'E01C 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0E2 \\1',
- ),
- 180 =>
- array (
- 'match' => 'E01D 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0E3 \\1',
- ),
- 181 =>
- array (
- 'match' => 'E01E 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0E4 \\1',
- ),
- 182 =>
- array (
- 'match' => 'E01F 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0E5 \\1',
- ),
- 183 =>
- array (
- 'match' => 'E020 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0E6 \\1',
- ),
- 184 =>
- array (
- 'match' => 'E021 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0E7 \\1',
- ),
- 185 =>
- array (
- 'match' => 'E022 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0E8 \\1',
- ),
- 186 =>
- array (
- 'match' => 'E023 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0E9 \\1',
- ),
- 187 =>
- array (
- 'match' => 'E024 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0EA \\1',
- ),
- 188 =>
- array (
- 'match' => 'E025 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0EB \\1',
- ),
- 189 =>
- array (
- 'match' => 'E026 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0EC \\1',
- ),
- 190 =>
- array (
- 'match' => 'E027 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0ED \\1',
- ),
- 191 =>
- array (
- 'match' => 'E05E 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0EE \\1',
- ),
- 192 =>
- array (
- 'match' => 'E05F 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0EF \\1',
- ),
- 193 =>
- array (
- 'match' => 'E060 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0F0 \\1',
- ),
- 194 =>
- array (
- 'match' => 'E061 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0F1 \\1',
- ),
- 195 =>
- array (
- 'match' => 'E062 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0F2 \\1',
- ),
- 196 =>
- array (
- 'match' => 'E063 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0F3 \\1',
- ),
- 197 =>
- array (
- 'match' => 'E064 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0F4 \\1',
- ),
- 198 =>
- array (
- 'match' => 'E065 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0F5 \\1',
- ),
- 199 =>
- array (
- 'match' => 'E066 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0F6 \\1',
- ),
- 200 =>
- array (
- 'match' => 'E067 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0F7 \\1',
- ),
- 201 =>
- array (
- 'match' => 'E068 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0F8 \\1',
- ),
- 202 =>
- array (
- 'match' => 'E069 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0F9 \\1',
- ),
- 203 =>
- array (
- 'match' => 'E06A 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0FA \\1',
- ),
- 204 =>
- array (
- 'match' => 'E06B 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0FB \\1',
- ),
- 205 =>
- array (
- 'match' => 'E06C 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0FC \\1',
- ),
- 206 =>
- array (
- 'match' => 'E06D 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0FD \\1',
- ),
- 207 =>
- array (
- 'match' => 'E06E 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0FE \\1',
- ),
- 208 =>
- array (
- 'match' => 'E06F 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E0FF \\1',
- ),
- 209 =>
- array (
- 'match' => 'E070 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E100 \\1',
- ),
- 210 =>
- array (
- 'match' => 'E071 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E101 \\1',
- ),
- 211 =>
- array (
- 'match' => 'E072 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E102 \\1',
- ),
- 212 =>
- array (
- 'match' => 'E073 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E103 \\1',
- ),
- 213 =>
- array (
- 'match' => 'E074 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E104 \\1',
- ),
- 214 =>
- array (
- 'match' => 'E075 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E105 \\1',
- ),
- 215 =>
- array (
- 'match' => 'E076 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E106 \\1',
- ),
- 216 =>
- array (
- 'match' => 'E077 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E107 \\1',
- ),
- 217 =>
- array (
- 'match' => 'E078 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E108 \\1',
- ),
- 218 =>
- array (
- 'match' => 'E079 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E109 \\1',
- ),
- 219 =>
- array (
- 'match' => 'E07A 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E10A \\1',
- ),
- 220 =>
- array (
- 'match' => 'E07B 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E10B \\1',
- ),
- 221 =>
- array (
- 'match' => 'E07C 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E10C \\1',
- ),
- 222 =>
- array (
- 'match' => 'E07D 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E10D \\1',
- ),
- 223 =>
- array (
- 'match' => 'E07E 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E10E \\1',
- ),
- 224 =>
- array (
- 'match' => 'E07F 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E10F \\1',
- ),
- 225 =>
- array (
- 'match' => 'E080 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E110 \\1',
- ),
- 226 =>
- array (
- 'match' => 'E081 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E111 \\1',
- ),
- 227 =>
- array (
- 'match' => 'E082 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E112 \\1',
- ),
- 228 =>
- array (
- 'match' => 'E083 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E113 \\1',
- ),
- 229 =>
- array (
- 'match' => 'E084 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E114 \\1',
- ),
- 230 =>
- array (
- 'match' => 'E085 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E115 \\1',
- ),
- 231 =>
- array (
- 'match' => 'E086 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E116 \\1',
- ),
- 232 =>
- array (
- 'match' => 'E087 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E117 \\1',
- ),
- 233 =>
- array (
- 'match' => 'E088 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E118 \\1',
- ),
- 234 =>
- array (
- 'match' => 'E089 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E119 \\1',
- ),
- 235 =>
- array (
- 'match' => 'E08A 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E11A \\1',
- ),
- 236 =>
- array (
- 'match' => 'E08B 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E11B \\1',
- ),
- 237 =>
- array (
- 'match' => 'E08C 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E11C \\1',
- ),
- 238 =>
- array (
- 'match' => 'E08D 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E11D \\1',
- ),
- 239 =>
- array (
- 'match' => 'E08E 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E11E \\1',
- ),
- 240 =>
- array (
- 'match' => 'E08F 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E11F \\1',
- ),
- 241 =>
- array (
- 'match' => 'E090 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E120 \\1',
- ),
- 242 =>
- array (
- 'match' => 'E091 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E121 \\1',
- ),
- 243 =>
- array (
- 'match' => 'E092 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E122 \\1',
- ),
- 244 =>
- array (
- 'match' => 'E093 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E123 \\1',
- ),
- 245 =>
- array (
- 'match' => 'E094 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E124 \\1',
- ),
- 246 =>
- array (
- 'match' => 'E095 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E125 \\1',
- ),
- 247 =>
- array (
- 'match' => 'E096 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E126 \\1',
- ),
- 248 =>
- array (
- 'match' => 'E097 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E127 \\1',
- ),
- 249 =>
- array (
- 'match' => 'E098 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E128 \\1',
- ),
- 250 =>
- array (
- 'match' => 'E099 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E129 \\1',
- ),
- 251 =>
- array (
- 'match' => 'E09A 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E12A \\1',
- ),
- 252 =>
- array (
- 'match' => 'E09B 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E12B \\1',
- ),
- 253 =>
- array (
- 'match' => 'E09C 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E12C \\1',
- ),
- 254 =>
- array (
- 'match' => 'E09D 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E12D \\1',
- ),
- 255 =>
- array (
- 'match' => 'E09E 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E12E \\1',
- ),
- 256 =>
- array (
- 'match' => 'E09F 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E12F \\1',
- ),
- 257 =>
- array (
- 'match' => 'E0A0 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E130 \\1',
- ),
- 258 =>
- array (
- 'match' => 'E0A1 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E131 \\1',
- ),
- 259 =>
- array (
- 'match' => 'E0A2 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E132 \\1',
- ),
- 260 =>
- array (
- 'match' => 'E0A3 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E133 \\1',
- ),
- 261 =>
- array (
- 'match' => 'E0A4 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E134 \\1',
- ),
- 262 =>
- array (
- 'match' => 'E0A5 0ACD ((0A95|0A96|0A97|0A98|0A99|0A9A|0A9B|0A9C|0A9D|0A9E|0A9F|0AA0|0AA1|0AA2|0AA3|0AA4|0AA5|0AA6|0AA7|0AA8|0AAA|0AAB|0AAC|0AAD|0AAE|0AAF|0AB0|0AB2|0AB3|0AB5|0AB6|0AB7|0AB8|0AB9|E002|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E136|E137|E138|E139|E13A|E13B|E13C|E13D|E13E|E13F|E140|E141|E142|E143|E144|E145|E146|E147|E148|E149|E14A|E14B|E14C|E14D|E14E|E14F|E150|E151|E152|E153|E154|E155|E156|E157|E158|E159|E15A|E15B|E15C|E15D|E15E))',
- 'replace' => 'E135 \\1',
- ),
- 263 =>
- array (
- 'match' => '0A95 0ACD (200D)',
- 'replace' => 'E0A6 \\1',
- ),
- 264 =>
- array (
- 'match' => '0A96 0ACD (200D)',
- 'replace' => 'E0A7 \\1',
- ),
- 265 =>
- array (
- 'match' => '0A97 0ACD (200D)',
- 'replace' => 'E0A8 \\1',
- ),
- 266 =>
- array (
- 'match' => '0A98 0ACD (200D)',
- 'replace' => 'E0A9 \\1',
- ),
- 267 =>
- array (
- 'match' => '0A99 0ACD (200D)',
- 'replace' => 'E0AA \\1',
- ),
- 268 =>
- array (
- 'match' => '0A9A 0ACD (200D)',
- 'replace' => 'E0AB \\1',
- ),
- 269 =>
- array (
- 'match' => '0A9B 0ACD (200D)',
- 'replace' => 'E0AC \\1',
- ),
- 270 =>
- array (
- 'match' => '0A9C 0ACD (200D)',
- 'replace' => 'E0AD \\1',
- ),
- 271 =>
- array (
- 'match' => '0A9D 0ACD (200D)',
- 'replace' => 'E0AE \\1',
- ),
- 272 =>
- array (
- 'match' => '0A9E 0ACD (200D)',
- 'replace' => 'E0AF \\1',
- ),
- 273 =>
- array (
- 'match' => '0A9F 0ACD (200D)',
- 'replace' => 'E0B0 \\1',
- ),
- 274 =>
- array (
- 'match' => '0AA0 0ACD (200D)',
- 'replace' => 'E0B1 \\1',
- ),
- 275 =>
- array (
- 'match' => '0AA1 0ACD (200D)',
- 'replace' => 'E0B2 \\1',
- ),
- 276 =>
- array (
- 'match' => '0AA2 0ACD (200D)',
- 'replace' => 'E0B3 \\1',
- ),
- 277 =>
- array (
- 'match' => '0AA3 0ACD (200D)',
- 'replace' => 'E0B4 \\1',
- ),
- 278 =>
- array (
- 'match' => '0AA4 0ACD (200D)',
- 'replace' => 'E0B5 \\1',
- ),
- 279 =>
- array (
- 'match' => '0AA5 0ACD (200D)',
- 'replace' => 'E0B6 \\1',
- ),
- 280 =>
- array (
- 'match' => '0AA6 0ACD (200D)',
- 'replace' => 'E0B7 \\1',
- ),
- 281 =>
- array (
- 'match' => '0AA7 0ACD (200D)',
- 'replace' => 'E0B8 \\1',
- ),
- 282 =>
- array (
- 'match' => '0AA8 0ACD (200D)',
- 'replace' => 'E0B9 \\1',
- ),
- 283 =>
- array (
- 'match' => '0AAA 0ACD (200D)',
- 'replace' => 'E0BA \\1',
- ),
- 284 =>
- array (
- 'match' => '0AAB 0ACD (200D)',
- 'replace' => 'E0BB \\1',
- ),
- 285 =>
- array (
- 'match' => '0AAC 0ACD (200D)',
- 'replace' => 'E0BC \\1',
- ),
- 286 =>
- array (
- 'match' => '0AAD 0ACD (200D)',
- 'replace' => 'E0BD \\1',
- ),
- 287 =>
- array (
- 'match' => '0AAE 0ACD (200D)',
- 'replace' => 'E0BE \\1',
- ),
- 288 =>
- array (
- 'match' => '0AAF 0ACD (200D)',
- 'replace' => 'E0BF \\1',
- ),
- 289 =>
- array (
- 'match' => '0AB0 0ACD (200D)',
- 'replace' => 'E0C0 \\1',
- ),
- 290 =>
- array (
- 'match' => '0AB2 0ACD (200D)',
- 'replace' => 'E0C1 \\1',
- ),
- 291 =>
- array (
- 'match' => '0AB3 0ACD (200D)',
- 'replace' => 'E0C2 \\1',
- ),
- 292 =>
- array (
- 'match' => '0AB5 0ACD (200D)',
- 'replace' => 'E0C3 \\1',
- ),
- 293 =>
- array (
- 'match' => '0AB6 0ACD (200D)',
- 'replace' => 'E0C4 \\1',
- ),
- 294 =>
- array (
- 'match' => '0AB7 0ACD (200D)',
- 'replace' => 'E0C5 \\1',
- ),
- 295 =>
- array (
- 'match' => '0AB8 0ACD (200D)',
- 'replace' => 'E0C6 \\1',
- ),
- 296 =>
- array (
- 'match' => '0AB9 0ACD (200D)',
- 'replace' => 'E0C7 \\1',
- ),
- 297 =>
- array (
- 'match' => 'E002 0ACD (200D)',
- 'replace' => 'E0C8 \\1',
- ),
- 298 =>
- array (
- 'match' => 'E003 0ACD (200D)',
- 'replace' => 'E0C9 \\1',
- ),
- 299 =>
- array (
- 'match' => 'E004 0ACD (200D)',
- 'replace' => 'E0CA \\1',
- ),
- 300 =>
- array (
- 'match' => 'E005 0ACD (200D)',
- 'replace' => 'E0CB \\1',
- ),
- 301 =>
- array (
- 'match' => 'E006 0ACD (200D)',
- 'replace' => 'E0CC \\1',
- ),
- 302 =>
- array (
- 'match' => 'E007 0ACD (200D)',
- 'replace' => 'E0CD \\1',
- ),
- 303 =>
- array (
- 'match' => 'E008 0ACD (200D)',
- 'replace' => 'E0CE \\1',
- ),
- 304 =>
- array (
- 'match' => 'E009 0ACD (200D)',
- 'replace' => 'E0CF \\1',
- ),
- 305 =>
- array (
- 'match' => 'E00A 0ACD (200D)',
- 'replace' => 'E0D0 \\1',
- ),
- 306 =>
- array (
- 'match' => 'E00B 0ACD (200D)',
- 'replace' => 'E0D1 \\1',
- ),
- 307 =>
- array (
- 'match' => 'E00C 0ACD (200D)',
- 'replace' => 'E0D2 \\1',
- ),
- 308 =>
- array (
- 'match' => 'E00D 0ACD (200D)',
- 'replace' => 'E0D3 \\1',
- ),
- 309 =>
- array (
- 'match' => 'E00E 0ACD (200D)',
- 'replace' => 'E0D4 \\1',
- ),
- 310 =>
- array (
- 'match' => 'E00F 0ACD (200D)',
- 'replace' => 'E0D5 \\1',
- ),
- 311 =>
- array (
- 'match' => 'E010 0ACD (200D)',
- 'replace' => 'E0D6 \\1',
- ),
- 312 =>
- array (
- 'match' => 'E011 0ACD (200D)',
- 'replace' => 'E0D7 \\1',
- ),
- 313 =>
- array (
- 'match' => 'E012 0ACD (200D)',
- 'replace' => 'E0D8 \\1',
- ),
- 314 =>
- array (
- 'match' => 'E013 0ACD (200D)',
- 'replace' => 'E0D9 \\1',
- ),
- 315 =>
- array (
- 'match' => 'E014 0ACD (200D)',
- 'replace' => 'E0DA \\1',
- ),
- 316 =>
- array (
- 'match' => 'E015 0ACD (200D)',
- 'replace' => 'E0DB \\1',
- ),
- 317 =>
- array (
- 'match' => 'E016 0ACD (200D)',
- 'replace' => 'E0DC \\1',
- ),
- 318 =>
- array (
- 'match' => 'E017 0ACD (200D)',
- 'replace' => 'E0DD \\1',
- ),
- 319 =>
- array (
- 'match' => 'E018 0ACD (200D)',
- 'replace' => 'E0DE \\1',
- ),
- 320 =>
- array (
- 'match' => 'E019 0ACD (200D)',
- 'replace' => 'E0DF \\1',
- ),
- 321 =>
- array (
- 'match' => 'E01A 0ACD (200D)',
- 'replace' => 'E0E0 \\1',
- ),
- 322 =>
- array (
- 'match' => 'E01B 0ACD (200D)',
- 'replace' => 'E0E1 \\1',
- ),
- 323 =>
- array (
- 'match' => 'E01C 0ACD (200D)',
- 'replace' => 'E0E2 \\1',
- ),
- 324 =>
- array (
- 'match' => 'E01D 0ACD (200D)',
- 'replace' => 'E0E3 \\1',
- ),
- 325 =>
- array (
- 'match' => 'E01E 0ACD (200D)',
- 'replace' => 'E0E4 \\1',
- ),
- 326 =>
- array (
- 'match' => 'E01F 0ACD (200D)',
- 'replace' => 'E0E5 \\1',
- ),
- 327 =>
- array (
- 'match' => 'E020 0ACD (200D)',
- 'replace' => 'E0E6 \\1',
- ),
- 328 =>
- array (
- 'match' => 'E021 0ACD (200D)',
- 'replace' => 'E0E7 \\1',
- ),
- 329 =>
- array (
- 'match' => 'E022 0ACD (200D)',
- 'replace' => 'E0E8 \\1',
- ),
- 330 =>
- array (
- 'match' => 'E023 0ACD (200D)',
- 'replace' => 'E0E9 \\1',
- ),
- 331 =>
- array (
- 'match' => 'E024 0ACD (200D)',
- 'replace' => 'E0EA \\1',
- ),
- 332 =>
- array (
- 'match' => 'E025 0ACD (200D)',
- 'replace' => 'E0EB \\1',
- ),
- 333 =>
- array (
- 'match' => 'E026 0ACD (200D)',
- 'replace' => 'E0EC \\1',
- ),
- 334 =>
- array (
- 'match' => 'E027 0ACD (200D)',
- 'replace' => 'E0ED \\1',
- ),
- 335 =>
- array (
- 'match' => 'E05E 0ACD (200D)',
- 'replace' => 'E0EE \\1',
- ),
- 336 =>
- array (
- 'match' => 'E05F 0ACD (200D)',
- 'replace' => 'E0EF \\1',
- ),
- 337 =>
- array (
- 'match' => 'E060 0ACD (200D)',
- 'replace' => 'E0F0 \\1',
- ),
- 338 =>
- array (
- 'match' => 'E061 0ACD (200D)',
- 'replace' => 'E0F1 \\1',
- ),
- 339 =>
- array (
- 'match' => 'E062 0ACD (200D)',
- 'replace' => 'E0F2 \\1',
- ),
- 340 =>
- array (
- 'match' => 'E063 0ACD (200D)',
- 'replace' => 'E0F3 \\1',
- ),
- 341 =>
- array (
- 'match' => 'E064 0ACD (200D)',
- 'replace' => 'E0F4 \\1',
- ),
- 342 =>
- array (
- 'match' => 'E065 0ACD (200D)',
- 'replace' => 'E0F5 \\1',
- ),
- 343 =>
- array (
- 'match' => 'E066 0ACD (200D)',
- 'replace' => 'E0F6 \\1',
- ),
- 344 =>
- array (
- 'match' => 'E067 0ACD (200D)',
- 'replace' => 'E0F7 \\1',
- ),
- 345 =>
- array (
- 'match' => 'E068 0ACD (200D)',
- 'replace' => 'E0F8 \\1',
- ),
- 346 =>
- array (
- 'match' => 'E069 0ACD (200D)',
- 'replace' => 'E0F9 \\1',
- ),
- 347 =>
- array (
- 'match' => 'E06A 0ACD (200D)',
- 'replace' => 'E0FA \\1',
- ),
- 348 =>
- array (
- 'match' => 'E06B 0ACD (200D)',
- 'replace' => 'E0FB \\1',
- ),
- 349 =>
- array (
- 'match' => 'E06C 0ACD (200D)',
- 'replace' => 'E0FC \\1',
- ),
- 350 =>
- array (
- 'match' => 'E06D 0ACD (200D)',
- 'replace' => 'E0FD \\1',
- ),
- 351 =>
- array (
- 'match' => 'E06E 0ACD (200D)',
- 'replace' => 'E0FE \\1',
- ),
- 352 =>
- array (
- 'match' => 'E06F 0ACD (200D)',
- 'replace' => 'E0FF \\1',
- ),
- 353 =>
- array (
- 'match' => 'E070 0ACD (200D)',
- 'replace' => 'E100 \\1',
- ),
- 354 =>
- array (
- 'match' => 'E071 0ACD (200D)',
- 'replace' => 'E101 \\1',
- ),
- 355 =>
- array (
- 'match' => 'E072 0ACD (200D)',
- 'replace' => 'E102 \\1',
- ),
- 356 =>
- array (
- 'match' => 'E073 0ACD (200D)',
- 'replace' => 'E103 \\1',
- ),
- 357 =>
- array (
- 'match' => 'E074 0ACD (200D)',
- 'replace' => 'E104 \\1',
- ),
- 358 =>
- array (
- 'match' => 'E075 0ACD (200D)',
- 'replace' => 'E105 \\1',
- ),
- 359 =>
- array (
- 'match' => 'E076 0ACD (200D)',
- 'replace' => 'E106 \\1',
- ),
- 360 =>
- array (
- 'match' => 'E077 0ACD (200D)',
- 'replace' => 'E107 \\1',
- ),
- 361 =>
- array (
- 'match' => 'E078 0ACD (200D)',
- 'replace' => 'E108 \\1',
- ),
- 362 =>
- array (
- 'match' => 'E079 0ACD (200D)',
- 'replace' => 'E109 \\1',
- ),
- 363 =>
- array (
- 'match' => 'E07A 0ACD (200D)',
- 'replace' => 'E10A \\1',
- ),
- 364 =>
- array (
- 'match' => 'E07B 0ACD (200D)',
- 'replace' => 'E10B \\1',
- ),
- 365 =>
- array (
- 'match' => 'E07C 0ACD (200D)',
- 'replace' => 'E10C \\1',
- ),
- 366 =>
- array (
- 'match' => 'E07D 0ACD (200D)',
- 'replace' => 'E10D \\1',
- ),
- 367 =>
- array (
- 'match' => 'E07E 0ACD (200D)',
- 'replace' => 'E10E \\1',
- ),
- 368 =>
- array (
- 'match' => 'E07F 0ACD (200D)',
- 'replace' => 'E10F \\1',
- ),
- 369 =>
- array (
- 'match' => 'E080 0ACD (200D)',
- 'replace' => 'E110 \\1',
- ),
- 370 =>
- array (
- 'match' => 'E081 0ACD (200D)',
- 'replace' => 'E111 \\1',
- ),
- 371 =>
- array (
- 'match' => 'E082 0ACD (200D)',
- 'replace' => 'E112 \\1',
- ),
- 372 =>
- array (
- 'match' => 'E083 0ACD (200D)',
- 'replace' => 'E113 \\1',
- ),
- 373 =>
- array (
- 'match' => 'E084 0ACD (200D)',
- 'replace' => 'E114 \\1',
- ),
- 374 =>
- array (
- 'match' => 'E085 0ACD (200D)',
- 'replace' => 'E115 \\1',
- ),
- 375 =>
- array (
- 'match' => 'E086 0ACD (200D)',
- 'replace' => 'E116 \\1',
- ),
- 376 =>
- array (
- 'match' => 'E087 0ACD (200D)',
- 'replace' => 'E117 \\1',
- ),
- 377 =>
- array (
- 'match' => 'E088 0ACD (200D)',
- 'replace' => 'E118 \\1',
- ),
- 378 =>
- array (
- 'match' => 'E089 0ACD (200D)',
- 'replace' => 'E119 \\1',
- ),
- 379 =>
- array (
- 'match' => 'E08A 0ACD (200D)',
- 'replace' => 'E11A \\1',
- ),
- 380 =>
- array (
- 'match' => 'E08B 0ACD (200D)',
- 'replace' => 'E11B \\1',
- ),
- 381 =>
- array (
- 'match' => 'E08C 0ACD (200D)',
- 'replace' => 'E11C \\1',
- ),
- 382 =>
- array (
- 'match' => 'E08D 0ACD (200D)',
- 'replace' => 'E11D \\1',
- ),
- 383 =>
- array (
- 'match' => 'E08E 0ACD (200D)',
- 'replace' => 'E11E \\1',
- ),
- 384 =>
- array (
- 'match' => 'E08F 0ACD (200D)',
- 'replace' => 'E11F \\1',
- ),
- 385 =>
- array (
- 'match' => 'E090 0ACD (200D)',
- 'replace' => 'E120 \\1',
- ),
- 386 =>
- array (
- 'match' => 'E091 0ACD (200D)',
- 'replace' => 'E121 \\1',
- ),
- 387 =>
- array (
- 'match' => 'E092 0ACD (200D)',
- 'replace' => 'E122 \\1',
- ),
- 388 =>
- array (
- 'match' => 'E093 0ACD (200D)',
- 'replace' => 'E123 \\1',
- ),
- 389 =>
- array (
- 'match' => 'E094 0ACD (200D)',
- 'replace' => 'E124 \\1',
- ),
- 390 =>
- array (
- 'match' => 'E095 0ACD (200D)',
- 'replace' => 'E125 \\1',
- ),
- 391 =>
- array (
- 'match' => 'E096 0ACD (200D)',
- 'replace' => 'E126 \\1',
- ),
- 392 =>
- array (
- 'match' => 'E097 0ACD (200D)',
- 'replace' => 'E127 \\1',
- ),
- 393 =>
- array (
- 'match' => 'E098 0ACD (200D)',
- 'replace' => 'E128 \\1',
- ),
- 394 =>
- array (
- 'match' => 'E099 0ACD (200D)',
- 'replace' => 'E129 \\1',
- ),
- 395 =>
- array (
- 'match' => 'E09A 0ACD (200D)',
- 'replace' => 'E12A \\1',
- ),
- 396 =>
- array (
- 'match' => 'E09B 0ACD (200D)',
- 'replace' => 'E12B \\1',
- ),
- 397 =>
- array (
- 'match' => 'E09C 0ACD (200D)',
- 'replace' => 'E12C \\1',
- ),
- 398 =>
- array (
- 'match' => 'E09D 0ACD (200D)',
- 'replace' => 'E12D \\1',
- ),
- 399 =>
- array (
- 'match' => 'E09E 0ACD (200D)',
- 'replace' => 'E12E \\1',
- ),
- 400 =>
- array (
- 'match' => 'E09F 0ACD (200D)',
- 'replace' => 'E12F \\1',
- ),
- 401 =>
- array (
- 'match' => 'E0A0 0ACD (200D)',
- 'replace' => 'E130 \\1',
- ),
- 402 =>
- array (
- 'match' => 'E0A1 0ACD (200D)',
- 'replace' => 'E131 \\1',
- ),
- 403 =>
- array (
- 'match' => 'E0A2 0ACD (200D)',
- 'replace' => 'E132 \\1',
- ),
- 404 =>
- array (
- 'match' => 'E0A3 0ACD (200D)',
- 'replace' => 'E133 \\1',
- ),
- 405 =>
- array (
- 'match' => 'E0A4 0ACD (200D)',
- 'replace' => 'E134 \\1',
- ),
- 406 =>
- array (
- 'match' => 'E0A5 0ACD (200D)',
- 'replace' => 'E135 \\1',
- ),
- 407 =>
- array (
- 'match' => 'E0A6 E0A6',
- 'replace' => 'E221',
- ),
- 408 =>
- array (
- 'match' => 'E0B7 E0A8',
- 'replace' => 'E223',
- ),
- 409 =>
- array (
- 'match' => 'E0C6 E0B5',
- 'replace' => 'E222',
- ),
- 410 =>
- array (
- 'match' => 'E0AA 0A95',
- 'replace' => 'E136',
- ),
- 411 =>
- array (
- 'match' => 'E0AA 0A96',
- 'replace' => 'E137',
- ),
- 412 =>
- array (
- 'match' => 'E0AA 0A97',
- 'replace' => 'E138',
- ),
- 413 =>
- array (
- 'match' => 'E0AA 0A98',
- 'replace' => 'E139',
- ),
- 414 =>
- array (
- 'match' => 'E0AA 0AAE',
- 'replace' => 'E13A',
- ),
- 415 =>
- array (
- 'match' => 'E0AA 0AB5',
- 'replace' => 'E13B',
- ),
- 416 =>
- array (
- 'match' => 'E0AA E002',
- 'replace' => 'E13C',
- ),
- 417 =>
- array (
- 'match' => 'E0AC 0AB5',
- 'replace' => 'E13D',
- ),
- 418 =>
- array (
- 'match' => 'E0B0 0A9F',
- 'replace' => 'E13E',
- ),
- 419 =>
- array (
- 'match' => 'E0B0 0AA0',
- 'replace' => 'E13F',
- ),
- 420 =>
- array (
- 'match' => 'E0B1 0AA0',
- 'replace' => 'E140',
- ),
- 421 =>
- array (
- 'match' => 'E0B2 0AA1',
- 'replace' => 'E141',
- ),
- 422 =>
- array (
- 'match' => 'E0B2 0AA2',
- 'replace' => 'E142',
- ),
- 423 =>
- array (
- 'match' => 'E0B3 0AA2',
- 'replace' => 'E143',
- ),
- 424 =>
- array (
- 'match' => 'E0B7 0A97',
- 'replace' => 'E145',
- ),
- 425 =>
- array (
- 'match' => 'E0B7 E060',
- 'replace' => 'E146',
- ),
- 426 =>
- array (
- 'match' => 'E0B7 0A98',
- 'replace' => 'E147',
- ),
- 427 =>
- array (
- 'match' => 'E0B7 0AA8',
- 'replace' => 'E148',
- ),
- 428 =>
- array (
- 'match' => 'E0B7 0AA7',
- 'replace' => 'E149',
- ),
- 429 =>
- array (
- 'match' => 'E0B7 0AB5',
- 'replace' => 'E14A',
- ),
- 430 =>
- array (
- 'match' => 'E0B7 0AAC',
- 'replace' => 'E14B',
- ),
- 431 =>
- array (
- 'match' => 'E0B7 0AAE',
- 'replace' => 'E14C',
- ),
- 432 =>
- array (
- 'match' => 'E0B7 0AB2',
- 'replace' => 'E14D',
- ),
- 433 =>
- array (
- 'match' => 'E0B7 0AA6',
- 'replace' => 'E14E',
- ),
- 434 =>
- array (
- 'match' => 'E0C7 0AA8',
- 'replace' => 'E14F',
- ),
- 435 =>
- array (
- 'match' => 'E0C7 0AA3',
- 'replace' => 'E150',
- ),
- 436 =>
- array (
- 'match' => 'E0C7 0AAF',
- 'replace' => 'E151',
- ),
- 437 =>
- array (
- 'match' => 'E0C7 0AB2',
- 'replace' => 'E152',
- ),
- 438 =>
- array (
- 'match' => 'E0C7 0AB5',
- 'replace' => 'E153',
- ),
- 439 =>
- array (
- 'match' => 'E0C7 0AAE',
- 'replace' => 'E154',
- ),
- 440 =>
- array (
- 'match' => 'E0AF 0A9A',
- 'replace' => 'E155',
- ),
- 441 =>
- array (
- 'match' => 'E0AF 0A9C',
- 'replace' => 'E156',
- ),
- 442 =>
- array (
- 'match' => 'E0B9 0AA8',
- 'replace' => 'E157',
- ),
- 443 =>
- array (
- 'match' => 'E0C4 0AA8',
- 'replace' => 'E158',
- ),
- 444 =>
- array (
- 'match' => 'E0C4 0AB5',
- 'replace' => 'E159',
- ),
- 445 =>
- array (
- 'match' => 'E0C4 0A9A',
- 'replace' => 'E15A',
- ),
- 446 =>
- array (
- 'match' => 'E0B5 0AA4',
- 'replace' => 'E15B',
- ),
- 447 =>
- array (
- 'match' => 'E0C6 E06D',
- 'replace' => 'E15C',
- ),
- 448 =>
- array (
- 'match' => 'E0B7 0AAF',
- 'replace' => 'E15D',
- ),
- 449 =>
- array (
- 'match' => 'E0FF 0AAF',
- 'replace' => 'E15E',
- ),
- 450 =>
- array (
- 'match' => 'E0A6 0A95',
- 'replace' => 'E21F',
- ),
- 451 =>
- array (
- 'match' => 'E0A6 E05E',
- 'replace' => 'E220',
- ),
- 452 =>
- array (
- 'match' => 'E163',
- 'replace' => '0ACD',
- ),
- 453 =>
- array (
- 'match' => 'E0A6 200D',
- 'replace' => 'E0A6',
- ),
- 454 =>
- array (
- 'match' => 'E0A7 200D',
- 'replace' => 'E0A7',
- ),
- 455 =>
- array (
- 'match' => 'E0A8 200D',
- 'replace' => 'E0A8',
- ),
- 456 =>
- array (
- 'match' => 'E0A9 200D',
- 'replace' => 'E0A9',
- ),
- 457 =>
- array (
- 'match' => 'E0AA 200D',
- 'replace' => 'E0AA',
- ),
- 458 =>
- array (
- 'match' => 'E0AB 200D',
- 'replace' => 'E0AB',
- ),
- 459 =>
- array (
- 'match' => 'E0AC 200D',
- 'replace' => 'E0AC',
- ),
- 460 =>
- array (
- 'match' => 'E0AD 200D',
- 'replace' => 'E0AD',
- ),
- 461 =>
- array (
- 'match' => 'E0AE 200D',
- 'replace' => 'E0AE',
- ),
- 462 =>
- array (
- 'match' => 'E0AF 200D',
- 'replace' => 'E0AF',
- ),
- 463 =>
- array (
- 'match' => 'E0B0 200D',
- 'replace' => 'E0B0',
- ),
- 464 =>
- array (
- 'match' => 'E0B1 200D',
- 'replace' => 'E0B1',
- ),
- 465 =>
- array (
- 'match' => 'E0B2 200D',
- 'replace' => 'E0B2',
- ),
- 466 =>
- array (
- 'match' => 'E0B3 200D',
- 'replace' => 'E0B3',
- ),
- 467 =>
- array (
- 'match' => 'E0B4 200D',
- 'replace' => 'E0B4',
- ),
- 468 =>
- array (
- 'match' => 'E0B5 200D',
- 'replace' => 'E0B5',
- ),
- 469 =>
- array (
- 'match' => 'E0B6 200D',
- 'replace' => 'E0B6',
- ),
- 470 =>
- array (
- 'match' => 'E0B7 200D',
- 'replace' => 'E0B7',
- ),
- 471 =>
- array (
- 'match' => 'E0B8 200D',
- 'replace' => 'E0B8',
- ),
- 472 =>
- array (
- 'match' => 'E0B9 200D',
- 'replace' => 'E0B9',
- ),
- 473 =>
- array (
- 'match' => 'E0BA 200D',
- 'replace' => 'E0BA',
- ),
- 474 =>
- array (
- 'match' => 'E0BB 200D',
- 'replace' => 'E0BB',
- ),
- 475 =>
- array (
- 'match' => 'E0BC 200D',
- 'replace' => 'E0BC',
- ),
- 476 =>
- array (
- 'match' => 'E0BD 200D',
- 'replace' => 'E0BD',
- ),
- 477 =>
- array (
- 'match' => 'E0BE 200D',
- 'replace' => 'E0BE',
- ),
- 478 =>
- array (
- 'match' => 'E0BF 200D',
- 'replace' => 'E0BF',
- ),
- 479 =>
- array (
- 'match' => 'E0C0 200D',
- 'replace' => 'E0C0',
- ),
- 480 =>
- array (
- 'match' => 'E0C1 200D',
- 'replace' => 'E0C1',
- ),
- 481 =>
- array (
- 'match' => 'E0C2 200D',
- 'replace' => 'E0C2',
- ),
- 482 =>
- array (
- 'match' => 'E0C3 200D',
- 'replace' => 'E0C3',
- ),
- 483 =>
- array (
- 'match' => 'E0C4 200D',
- 'replace' => 'E0C4',
- ),
- 484 =>
- array (
- 'match' => 'E0C5 200D',
- 'replace' => 'E0C5',
- ),
- 485 =>
- array (
- 'match' => 'E0C6 200D',
- 'replace' => 'E0C6',
- ),
- 486 =>
- array (
- 'match' => 'E0C7 200D',
- 'replace' => 'E0C7',
- ),
- 487 =>
- array (
- 'match' => 'E0C8 200D',
- 'replace' => 'E0C8',
- ),
- 488 =>
- array (
- 'match' => 'E0C9 200D',
- 'replace' => 'E0C9',
- ),
- 489 =>
- array (
- 'match' => 'E0CA 200D',
- 'replace' => 'E0CA',
- ),
- 490 =>
- array (
- 'match' => 'E0CB 200D',
- 'replace' => 'E0CB',
- ),
- 491 =>
- array (
- 'match' => 'E0CC 200D',
- 'replace' => 'E0CC',
- ),
- 492 =>
- array (
- 'match' => 'E0CD 200D',
- 'replace' => 'E0CD',
- ),
- 493 =>
- array (
- 'match' => 'E0CE 200D',
- 'replace' => 'E0CE',
- ),
- 494 =>
- array (
- 'match' => 'E0CF 200D',
- 'replace' => 'E0CF',
- ),
- 495 =>
- array (
- 'match' => 'E0D0 200D',
- 'replace' => 'E0D0',
- ),
- 496 =>
- array (
- 'match' => 'E0D1 200D',
- 'replace' => 'E0D1',
- ),
- 497 =>
- array (
- 'match' => 'E0D2 200D',
- 'replace' => 'E0D2',
- ),
- 498 =>
- array (
- 'match' => 'E0D3 200D',
- 'replace' => 'E0D3',
- ),
- 499 =>
- array (
- 'match' => 'E0D4 200D',
- 'replace' => 'E0D4',
- ),
- 500 =>
- array (
- 'match' => 'E0D5 200D',
- 'replace' => 'E0D5',
- ),
- 501 =>
- array (
- 'match' => 'E0D6 200D',
- 'replace' => 'E0D6',
- ),
- 502 =>
- array (
- 'match' => 'E0D7 200D',
- 'replace' => 'E0D7',
- ),
- 503 =>
- array (
- 'match' => 'E0D8 200D',
- 'replace' => 'E0D8',
- ),
- 504 =>
- array (
- 'match' => 'E0D9 200D',
- 'replace' => 'E0D9',
- ),
- 505 =>
- array (
- 'match' => 'E0DA 200D',
- 'replace' => 'E0DA',
- ),
- 506 =>
- array (
- 'match' => 'E0DB 200D',
- 'replace' => 'E0DB',
- ),
- 507 =>
- array (
- 'match' => 'E0DC 200D',
- 'replace' => 'E0DC',
- ),
- 508 =>
- array (
- 'match' => 'E0DD 200D',
- 'replace' => 'E0DD',
- ),
- 509 =>
- array (
- 'match' => 'E0DE 200D',
- 'replace' => 'E0DE',
- ),
- 510 =>
- array (
- 'match' => 'E0DF 200D',
- 'replace' => 'E0DF',
- ),
- 511 =>
- array (
- 'match' => 'E0E0 200D',
- 'replace' => 'E0E0',
- ),
- 512 =>
- array (
- 'match' => 'E0E1 200D',
- 'replace' => 'E0E1',
- ),
- 513 =>
- array (
- 'match' => 'E0E2 200D',
- 'replace' => 'E0E2',
- ),
- 514 =>
- array (
- 'match' => 'E0E3 200D',
- 'replace' => 'E0E3',
- ),
- 515 =>
- array (
- 'match' => 'E0E4 200D',
- 'replace' => 'E0E4',
- ),
- 516 =>
- array (
- 'match' => 'E0E5 200D',
- 'replace' => 'E0E5',
- ),
- 517 =>
- array (
- 'match' => 'E0E6 200D',
- 'replace' => 'E0E6',
- ),
- 518 =>
- array (
- 'match' => 'E0E7 200D',
- 'replace' => 'E0E7',
- ),
- 519 =>
- array (
- 'match' => 'E0E8 200D',
- 'replace' => 'E0E8',
- ),
- 520 =>
- array (
- 'match' => 'E0E9 200D',
- 'replace' => 'E0E9',
- ),
- 521 =>
- array (
- 'match' => 'E0EA 200D',
- 'replace' => 'E0EA',
- ),
- 522 =>
- array (
- 'match' => 'E0EB 200D',
- 'replace' => 'E0EB',
- ),
- 523 =>
- array (
- 'match' => 'E0EC 200D',
- 'replace' => 'E0EC',
- ),
- 524 =>
- array (
- 'match' => 'E0ED 200D',
- 'replace' => 'E0ED',
- ),
- 525 =>
- array (
- 'match' => 'E0EE 200D',
- 'replace' => 'E0EE',
- ),
- 526 =>
- array (
- 'match' => 'E0EF 200D',
- 'replace' => 'E0EF',
- ),
- 527 =>
- array (
- 'match' => 'E0F0 200D',
- 'replace' => 'E0F0',
- ),
- 528 =>
- array (
- 'match' => 'E0F1 200D',
- 'replace' => 'E0F1',
- ),
- 529 =>
- array (
- 'match' => 'E0F2 200D',
- 'replace' => 'E0F2',
- ),
- 530 =>
- array (
- 'match' => 'E0F3 200D',
- 'replace' => 'E0F3',
- ),
- 531 =>
- array (
- 'match' => 'E0F4 200D',
- 'replace' => 'E0F4',
- ),
- 532 =>
- array (
- 'match' => 'E0F5 200D',
- 'replace' => 'E0F5',
- ),
- 533 =>
- array (
- 'match' => 'E0F6 200D',
- 'replace' => 'E0F6',
- ),
- 534 =>
- array (
- 'match' => 'E0F7 200D',
- 'replace' => 'E0F7',
- ),
- 535 =>
- array (
- 'match' => 'E0F8 200D',
- 'replace' => 'E0F8',
- ),
- 536 =>
- array (
- 'match' => 'E0F9 200D',
- 'replace' => 'E0F9',
- ),
- 537 =>
- array (
- 'match' => 'E0FA 200D',
- 'replace' => 'E0FA',
- ),
- 538 =>
- array (
- 'match' => 'E0FB 200D',
- 'replace' => 'E0FB',
- ),
- 539 =>
- array (
- 'match' => 'E0FC 200D',
- 'replace' => 'E0FC',
- ),
- 540 =>
- array (
- 'match' => 'E0FD 200D',
- 'replace' => 'E0FD',
- ),
- 541 =>
- array (
- 'match' => 'E0FE 200D',
- 'replace' => 'E0FE',
- ),
- 542 =>
- array (
- 'match' => 'E0FF 200D',
- 'replace' => 'E0FF',
- ),
- 543 =>
- array (
- 'match' => 'E100 200D',
- 'replace' => 'E100',
- ),
- 544 =>
- array (
- 'match' => 'E101 200D',
- 'replace' => 'E101',
- ),
- 545 =>
- array (
- 'match' => 'E102 200D',
- 'replace' => 'E102',
- ),
- 546 =>
- array (
- 'match' => 'E103 200D',
- 'replace' => 'E103',
- ),
- 547 =>
- array (
- 'match' => 'E104 200D',
- 'replace' => 'E104',
- ),
- 548 =>
- array (
- 'match' => 'E105 200D',
- 'replace' => 'E105',
- ),
- 549 =>
- array (
- 'match' => 'E106 200D',
- 'replace' => 'E106',
- ),
- 550 =>
- array (
- 'match' => 'E107 200D',
- 'replace' => 'E107',
- ),
- 551 =>
- array (
- 'match' => 'E108 200D',
- 'replace' => 'E108',
- ),
- 552 =>
- array (
- 'match' => 'E109 200D',
- 'replace' => 'E109',
- ),
- 553 =>
- array (
- 'match' => 'E10A 200D',
- 'replace' => 'E10A',
- ),
- 554 =>
- array (
- 'match' => 'E10B 200D',
- 'replace' => 'E10B',
- ),
- 555 =>
- array (
- 'match' => 'E10C 200D',
- 'replace' => 'E10C',
- ),
- 556 =>
- array (
- 'match' => 'E10D 200D',
- 'replace' => 'E10D',
- ),
- 557 =>
- array (
- 'match' => 'E10E 200D',
- 'replace' => 'E10E',
- ),
- 558 =>
- array (
- 'match' => 'E10F 200D',
- 'replace' => 'E10F',
- ),
- 559 =>
- array (
- 'match' => 'E110 200D',
- 'replace' => 'E110',
- ),
- 560 =>
- array (
- 'match' => 'E111 200D',
- 'replace' => 'E111',
- ),
- 561 =>
- array (
- 'match' => 'E112 200D',
- 'replace' => 'E112',
- ),
- 562 =>
- array (
- 'match' => 'E113 200D',
- 'replace' => 'E113',
- ),
- 563 =>
- array (
- 'match' => 'E114 200D',
- 'replace' => 'E114',
- ),
- 564 =>
- array (
- 'match' => 'E115 200D',
- 'replace' => 'E115',
- ),
- 565 =>
- array (
- 'match' => 'E116 200D',
- 'replace' => 'E116',
- ),
- 566 =>
- array (
- 'match' => 'E117 200D',
- 'replace' => 'E117',
- ),
- 567 =>
- array (
- 'match' => 'E118 200D',
- 'replace' => 'E118',
- ),
- 568 =>
- array (
- 'match' => 'E119 200D',
- 'replace' => 'E119',
- ),
- 569 =>
- array (
- 'match' => 'E11A 200D',
- 'replace' => 'E11A',
- ),
- 570 =>
- array (
- 'match' => 'E11B 200D',
- 'replace' => 'E11B',
- ),
- 571 =>
- array (
- 'match' => 'E11C 200D',
- 'replace' => 'E11C',
- ),
- 572 =>
- array (
- 'match' => 'E11D 200D',
- 'replace' => 'E11D',
- ),
- 573 =>
- array (
- 'match' => 'E11E 200D',
- 'replace' => 'E11E',
- ),
- 574 =>
- array (
- 'match' => 'E11F 200D',
- 'replace' => 'E11F',
- ),
- 575 =>
- array (
- 'match' => 'E120 200D',
- 'replace' => 'E120',
- ),
- 576 =>
- array (
- 'match' => 'E121 200D',
- 'replace' => 'E121',
- ),
- 577 =>
- array (
- 'match' => 'E122 200D',
- 'replace' => 'E122',
- ),
- 578 =>
- array (
- 'match' => 'E123 200D',
- 'replace' => 'E123',
- ),
- 579 =>
- array (
- 'match' => 'E124 200D',
- 'replace' => 'E124',
- ),
- 580 =>
- array (
- 'match' => 'E125 200D',
- 'replace' => 'E125',
- ),
- 581 =>
- array (
- 'match' => 'E126 200D',
- 'replace' => 'E126',
- ),
- 582 =>
- array (
- 'match' => 'E127 200D',
- 'replace' => 'E127',
- ),
- 583 =>
- array (
- 'match' => 'E128 200D',
- 'replace' => 'E128',
- ),
- 584 =>
- array (
- 'match' => 'E129 200D',
- 'replace' => 'E129',
- ),
- 585 =>
- array (
- 'match' => 'E12A 200D',
- 'replace' => 'E12A',
- ),
- 586 =>
- array (
- 'match' => 'E12B 200D',
- 'replace' => 'E12B',
- ),
- 587 =>
- array (
- 'match' => 'E12C 200D',
- 'replace' => 'E12C',
- ),
- 588 =>
- array (
- 'match' => 'E12D 200D',
- 'replace' => 'E12D',
- ),
- 589 =>
- array (
- 'match' => 'E12E 200D',
- 'replace' => 'E12E',
- ),
- 590 =>
- array (
- 'match' => 'E12F 200D',
- 'replace' => 'E12F',
- ),
- 591 =>
- array (
- 'match' => 'E130 200D',
- 'replace' => 'E130',
- ),
- 592 =>
- array (
- 'match' => 'E131 200D',
- 'replace' => 'E131',
- ),
- 593 =>
- array (
- 'match' => 'E132 200D',
- 'replace' => 'E132',
- ),
- 594 =>
- array (
- 'match' => 'E133 200D',
- 'replace' => 'E133',
- ),
- 595 =>
- array (
- 'match' => 'E134 200D',
- 'replace' => 'E134',
- ),
- 596 =>
- array (
- 'match' => 'E135 200D',
- 'replace' => 'E135',
- ),
- 597 =>
- array (
- 'match' => '200D 0ACD',
- 'replace' => '0ACD',
- ),
- 598 =>
- array (
- 'match' => '200D E05D',
- 'replace' => 'E05D',
- ),
- 599 =>
- array (
- 'match' => '0A9C 0ABE',
- 'replace' => 'E21B',
- ),
- 600 =>
- array (
- 'match' => '0A9C 0AC9',
- 'replace' => 'E21C',
- ),
- 601 =>
- array (
- 'match' => '0A9C 0ACB',
- 'replace' => 'E21D',
- ),
- 602 =>
- array (
- 'match' => '0A9C 0ACC',
- 'replace' => 'E21E',
- ),
- 603 =>
- array (
- 'match' => '0ABF ((0A95|0A99|0AA1|0AA6|0AAB|0AB0|0AB9|E004|E008|E010|E015|E019|E01E|E025|E05E|E062|E06A|E06F|E073|E078|E07F|E082|E086|E08E|E093|E097|E09C|E0A3|E136|E137|E138|E139|E13A|E13B|E13C|E141|E142|E144|E145|E146|E148|E14A|E14B|E14E))',
- 'replace' => 'E038 \\1',
- ),
- 604 =>
- array (
- 'match' => '0ABF ((0A9F|0AA0|0AA2|0A9C|E00E|E00F|E011|E00B|E068|E069|E06B|E065|E08C|E08D|E08F|E089|E14F|E150|E151|E152|E153|E154))',
- 'replace' => 'E03A \\1',
- ),
- 605 =>
- array (
- 'match' => '0ABF ((0A96|0AA3|0AAC|0AAD|0AB3|E002|E003|E005|E012|E01A|E01B|E020|E026|E027|E05F|E06C|E074|E075|E07A|E080|E081|E083|E090|E098|E099|E09E|E0A4|E0A5|E15E))',
- 'replace' => 'E039 \\1',
- ),
- 606 =>
- array (
- 'match' => '0ABF ((E13D))',
- 'replace' => 'E03B \\1',
- ),
- 607 =>
- array (
- 'match' => '0ABF ((E13E|E13F|E140|E143))',
- 'replace' => 'E03C \\1',
- ),
- 608 =>
- array (
- 'match' => '0ABF ((E15C))',
- 'replace' => 'E03D \\1',
- ),
- 609 =>
- array (
- 'match' => '0ABF ((E0A7|E0BC|E0BD|E0C8|E0C9|E0C2) (0A97|0A98|0AAF|0A9B|0A9D|0A9E|0AA4|0AA5|0AA7|0AA8|0AAA|0AAE|0AAF|0AB2|0AB5|0AB6|0AB7|0AB8))',
- 'replace' => 'E25C \\1',
- ),
- 610 =>
- array (
- 'match' => '0ABF ((E0A7|E0BC|E0BD|E0C8|E0C9|E0C2) (0A96|0AA3|0AAC|0AAD|0AB3|E002|E003))',
- 'replace' => 'E25C \\1',
- ),
- 611 =>
- array (
- 'match' => '0ABF ((E0AB|E0B6|E0BA|E0BE|E0BF|E0C1|E0C3|E0C5|E0C6|E0A9|E0B8|E0AD|E0AF|E0B0|E0B3) (0A96|0AA3|0AAC|0AAD|0AB3|E002|E003))',
- 'replace' => 'E25C \\1',
- ),
- 612 =>
- array (
- 'match' => '0ABF ((E0AC|E0AE) (0A97|0A98|0AAF|0A9B|0A9D|0A9E|0AA4|0AA5|0AA7|0AA8|0AAA|0AAE|0AAF|0AB2|0AB5|0AB6|0AB7|0AB8))',
- 'replace' => 'E25C \\1',
- ),
- 613 =>
- array (
- 'match' => '0ABF ((E0AC|E0AE) (0A96|0AA3|0AAC|0AAD|0AB3|E002|E003))',
- 'replace' => 'E25C \\1',
- ),
- 614 =>
- array (
- 'match' => '0ABF ((E0B4|E0B5|E0B9) (0A96|0AA3|0AAC|0AAD|0AB3|E002|E003))',
- 'replace' => 'E25C \\1',
- ),
- 615 =>
- array (
- 'match' => '0ABF ((E0B1) (0A96|0AA3|0AAC|0AAD|0AB3|E002|E003))',
- 'replace' => 'E25C \\1',
- ),
- 616 =>
- array (
- 'match' => '0ABF ((E0A6|E0A8|E0AA|E0B2|E0B7|E0BB|E0C4|E0C7) (0A9C|0A9F|0AA0|0AA2))',
- 'replace' => 'E25D \\1',
- ),
- 617 =>
- array (
- 'match' => '0ABF ((E0AB|E0B6|E0BA|E0BE|E0BF|E0C1|E0C3|E0C5|E0C6|E0A9|E0B8|E0AD|E0AF|E0B0|E0B3) (0A95|0A99|0AA1|0AA6|0AAB|0AB9))',
- 'replace' => 'E25D \\1',
- ),
- 618 =>
- array (
- 'match' => '0ABF ((E0AB|E0B6|E0BA|E0BE|E0BF|E0C1|E0C3|E0C5|E0C6|E0A9|E0B8|E0AD|E0AF|E0B0|E0B3) (0A9C|0A9F|0AA0|0AA2))',
- 'replace' => 'E25D \\1',
- ),
- 619 =>
- array (
- 'match' => '0ABF ((E0B4|E0B5|E0B9) (0A95|0A99|0AA1|0AA6|0AAB|0AB9))',
- 'replace' => 'E25D \\1',
- ),
- 620 =>
- array (
- 'match' => '0ABF ((E0B1) (0A95|0A99|0AA1|0AA6|0AAB|0AB9))',
- 'replace' => 'E25D \\1',
- ),
- 621 =>
- array (
- 'match' => '0AB9 0AC3',
- 'replace' => 'E02F',
- ),
- 622 =>
- array (
- 'match' => '0AB0 0AC1',
- 'replace' => 'E15F',
- ),
- 623 =>
- array (
- 'match' => '0AC0 E032',
- 'replace' => 'E043',
- ),
- 624 =>
- array (
- 'match' => '0AC7 E032',
- 'replace' => 'E04D',
- ),
- 625 =>
- array (
- 'match' => '0AC8 E032',
- 'replace' => 'E051',
- ),
- 626 =>
- array (
- 'match' => '0ACB E032',
- 'replace' => 'E055',
- ),
- 627 =>
- array (
- 'match' => '0ACC E032',
- 'replace' => 'E059',
- ),
- 628 =>
- array (
- 'match' => '0A87 0A82',
- 'replace' => 'E160',
- ),
- 629 =>
- array (
- 'match' => '0A89 0A82',
- 'replace' => 'E161',
- ),
- 630 =>
- array (
- 'match' => '0A8A 0A82',
- 'replace' => 'E162',
- ),
- 631 =>
- array (
- 'match' => 'E032 0A81',
- 'replace' => 'E034',
- ),
- 632 =>
- array (
- 'match' => 'E032 0A82',
- 'replace' => 'E033',
- ),
- 633 =>
- array (
- 'match' => '0AC7 0A82',
- 'replace' => 'E04C',
- ),
- 634 =>
- array (
- 'match' => '0AC8 0A82',
- 'replace' => 'E050',
- ),
- 635 =>
- array (
- 'match' => '0AC0 0A82',
- 'replace' => 'E040',
- ),
- 636 =>
- array (
- 'match' => '0ACB 0A82',
- 'replace' => 'E054',
- ),
- 637 =>
- array (
- 'match' => '0ACC 0A82',
- 'replace' => 'E058',
- ),
- 638 =>
- array (
- 'match' => 'E04D 0A82',
- 'replace' => 'E04E',
- ),
- 639 =>
- array (
- 'match' => 'E051 0A82',
- 'replace' => 'E052',
- ),
- 640 =>
- array (
- 'match' => 'E043 0A82',
- 'replace' => 'E046',
- ),
- 641 =>
- array (
- 'match' => 'E055 0A82',
- 'replace' => 'E056',
- ),
- 642 =>
- array (
- 'match' => 'E059 0A82',
- 'replace' => 'E05A',
- ),
- 643 =>
- array (
- 'match' => 'E04D 0A81',
- 'replace' => 'E04F',
- ),
- 644 =>
- array (
- 'match' => 'E051 0A81',
- 'replace' => 'E053',
- ),
- 645 =>
- array (
- 'match' => 'E043 0A81',
- 'replace' => 'E049',
- ),
- 646 =>
- array (
- 'match' => 'E055 0A81',
- 'replace' => 'E057',
- ),
- 647 =>
- array (
- 'match' => 'E059 0A81',
- 'replace' => 'E05B',
- ),
- 648 =>
- array (
- 'match' => '((0A8D|0A8F|0A90|0A91|0A93|0A94|0AC0|E03E|E03F|0AC5|0AC7|0AC8|0AC9|0ACB|0ACC)) 0A81',
- 'replace' => '\\1 E031',
- ),
- 649 =>
- array (
- 'match' => '((0A95|0A99|0AA1|0AA6|0AAB|0AB9|E004|E008|E010|E015|E019|E025|E05E|E062|E06A|E06F|E073|E07F|E082|E086|E08E|E093|E097|E0A3|E136|E137|E138|E139|E13A|E13B|E13C|E141|E142)) 0AC0',
- 'replace' => '\\1 E03E',
- ),
- 650 =>
- array (
- 'match' => '((0A95|0A99|0AA1|0AA6|0AAB|0AB9|E004|E008|E010|E015|E019|E025|E05E|E062|E06A|E06F|E073|E07F|E082|E086|E08E|E093|E097|E0A3|E136|E137|E138|E139|E13A|E13B|E13C|E141|E142)) E040',
- 'replace' => '\\1 E041',
- ),
- 651 =>
- array (
- 'match' => '((0A95|0A99|0AA1|0AA6|0AAB|0AB9|E004|E008|E010|E015|E019|E025|E05E|E062|E06A|E06F|E073|E07F|E082|E086|E08E|E093|E097|E0A3|E136|E137|E138|E139|E13A|E13B|E13C|E141|E142)) E046',
- 'replace' => '\\1 E047',
- ),
- 652 =>
- array (
- 'match' => '((0A95|0A99|0AA1|0AA6|0AAB|0AB9|E004|E008|E010|E015|E019|E025|E05E|E062|E06A|E06F|E073|E07F|E082|E086|E08E|E093|E097|E0A3|E136|E137|E138|E139|E13A|E13B|E13C|E141|E142)) E049',
- 'replace' => '\\1 E04A',
- ),
- 653 =>
- array (
- 'match' => '((0A9F|0AA0|0AA2|0A9B|0AB0|E00E|E00F|E011|E00A|E01E|E068|E069|E06B|E064|E078|E08C|E08D|E08F|E088|E09C)) 0AC0',
- 'replace' => '\\1 E03F',
- ),
- 654 =>
- array (
- 'match' => '((0A9F|0AA0|0AA2|0A9B|0AB0|E00E|E00F|E011|E00A|E01E|E068|E069|E06B|E064|E078|E08C|E08D|E08F|E088|E09C)) E040',
- 'replace' => '\\1 E042',
- ),
- 655 =>
- array (
- 'match' => '((0A9F|0AA0|0AA2|0A9B|0AB0|E00E|E00F|E011|E00A|E01E|E068|E069|E06B|E064|E078|E08C|E08D|E08F|E088|E09C)) E046',
- 'replace' => '\\1 E048',
- ),
- 656 =>
- array (
- 'match' => '((0A9F|0AA0|0AA2|0A9B|0AB0|E00E|E00F|E011|E00A|E01E|E068|E069|E06B|E064|E078|E08C|E08D|E08F|E088|E09C)) E049',
- 'replace' => '\\1 E04B',
- ),
- 657 =>
- array (
- 'match' => '0A9C 0AC0',
- 'replace' => 'E028',
- ),
- 658 =>
- array (
- 'match' => '0AB3 0AC0',
- 'replace' => 'E02A',
- ),
- 659 =>
- array (
- 'match' => '0AB3 E043',
- 'replace' => 'E02B',
- ),
- 660 =>
- array (
- 'match' => '0AB3 E046',
- 'replace' => 'E02C',
- ),
- 661 =>
- array (
- 'match' => '0AB3 E049',
- 'replace' => 'E02D',
- ),
-);
-?>
\ No newline at end of file
diff --git a/public/mpdf/includes/ind_hi_1_001.volt.php b/public/mpdf/includes/ind_hi_1_001.volt.php
deleted file mode 100644
index 637d70f..0000000
--- a/public/mpdf/includes/ind_hi_1_001.volt.php
+++ /dev/null
@@ -1,4169 +0,0 @@
-
- array (
- 'match' => '0915 094D 0937',
- 'replace' => 'E028',
- ),
- 1 =>
- array (
- 'match' => '091C 094D 091E',
- 'replace' => 'E029',
- ),
- 2 =>
- array (
- 'match' => '0926 094D 092F',
- 'replace' => 'E128',
- ),
- 3 =>
- array (
- 'match' => '094D (200D)',
- 'replace' => 'E00E \\1',
- ),
- 4 =>
- array (
- 'match' => '094D ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029))',
- 'replace' => 'E00E \\1',
- ),
- 5 =>
- array (
- 'match' => '094D (25CC)',
- 'replace' => 'E00E \\1',
- ),
- 6 =>
- array (
- 'match' => '094D 200C',
- 'replace' => 'E00C',
- ),
- 7 =>
- array (
- 'match' => '((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029|0958|0959|095A|E02A|E02B|E02C|E02D|095B|E02E|E02F|E030|E031|095C|095D|E032|E033|E034|E035|E036|0929|E037|095E|E038|E039|E03A|095F|0931|E03B|0934|E03C|E03D|E03E|E03F|E040|E041|E042|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E0A6|E0A7|E0A8|E0A9|E0AA|E0AB|E0AC|E0AD|E0AE|E0AF|E0B0|E0B1|E0B2|E0B3|E0B4|E0B5|E0B6|E0B7|E0B8|E0B9|E0BA|E0BB|E0BC|E0BD|E0BE|E0BF|E0C0|E0C1|E0C2|E0C3|E0C4|E0C5|E0C6|E0C7|E0C8|E0C9|E0CA|E0CB|E0CC|E0CD|E0CE|E0CF|E0D0|E0D1|E0D2|E11E|E11F|E120|E121|E122|E123|E124|E125|E126|E127|E128|E129|E12A|E12B|E12C|E12D|E12E|E12F|E130|E131|E132|E133)) E00E 0930',
- 'replace' => '\\1 E013',
- ),
- 8 =>
- array (
- 'match' => '(093C) E00E 0930',
- 'replace' => '\\1 E013',
- ),
- 9 =>
- array (
- 'match' => '(200D) E00E 0930',
- 'replace' => '\\1 E013',
- ),
- 10 =>
- array (
- 'match' => '(25CC) E00E 0930',
- 'replace' => '\\1 E013',
- ),
- 11 =>
- array (
- 'match' => '(0020) E00E 0930',
- 'replace' => '\\1 E013',
- ),
- 12 =>
- array (
- 'match' => '((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029|0958|0959|095A|E02A|E02B|E02C|E02D|095B|E02E|E02F|E030|E031|095C|095D|E032|E033|E034|E035|E036|0929|E037|095E|E038|E039|E03A|095F|0931|E03B|0934|E03C|E03D|E03E|E03F|E040|E041|E042|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0A0|E0A1|E0A2|E0A3|E0A4|E0A5|E0A6|E0A7|E0A8|E0A9|E0AA|E0AB|E0AC|E0AD|E0AE|E0AF|E0B0|E0B1|E0B2|E0B3|E0B4|E0B5|E0B6|E0B7|E0B8|E0B9|E0BA|E0BB|E0BC|E0BD|E0BE|E0BF|E0C0|E0C1|E0C2|E0C3|E0C4|E0C5|E0C6|E0C7|E0C8|E0C9|E0CA|E0CB|E0CC|E0CD|E0CE|E0CF|E0D0|E0D1|E0D2|E11E|E11F|E120|E121|E122|E123|E124|E125|E126|E127|E128|E129|E12A|E12B|E12C|E12D|E12E|E12F|E130|E131|E132|E133)) 0930 094D',
- 'replace' => '\\1 E015',
- ),
- 13 =>
- array (
- 'match' => '((E013|E015|0941|0942|0943|0962|093E|0940|0949|094A|094B|094C|0945|0946|0947|0948|0901)) 0930 094D',
- 'replace' => '\\1 E015',
- ),
- 14 =>
- array (
- 'match' => '(093C) 0930 094D',
- 'replace' => '\\1 E015',
- ),
- 15 =>
- array (
- 'match' => '(25CC) 0930 094D',
- 'replace' => '\\1 E015',
- ),
- 16 =>
- array (
- 'match' => '(E128) 0930 094D',
- 'replace' => '\\1 E015',
- ),
- 17 =>
- array (
- 'match' => '0915 093C',
- 'replace' => '0958',
- ),
- 18 =>
- array (
- 'match' => '0916 093C',
- 'replace' => '0959',
- ),
- 19 =>
- array (
- 'match' => '0917 093C',
- 'replace' => '095A',
- ),
- 20 =>
- array (
- 'match' => '0918 093C',
- 'replace' => 'E02A',
- ),
- 21 =>
- array (
- 'match' => '0919 093C',
- 'replace' => 'E02B',
- ),
- 22 =>
- array (
- 'match' => '091A 093C',
- 'replace' => 'E02C',
- ),
- 23 =>
- array (
- 'match' => '091B 093C',
- 'replace' => 'E02D',
- ),
- 24 =>
- array (
- 'match' => '091C 093C',
- 'replace' => '095B',
- ),
- 25 =>
- array (
- 'match' => '091D 093C',
- 'replace' => 'E02E',
- ),
- 26 =>
- array (
- 'match' => '091E 093C',
- 'replace' => 'E02F',
- ),
- 27 =>
- array (
- 'match' => '091F 093C',
- 'replace' => 'E030',
- ),
- 28 =>
- array (
- 'match' => '0920 093C',
- 'replace' => 'E031',
- ),
- 29 =>
- array (
- 'match' => '0921 093C',
- 'replace' => '095C',
- ),
- 30 =>
- array (
- 'match' => '0922 093C',
- 'replace' => '095D',
- ),
- 31 =>
- array (
- 'match' => '0923 093C',
- 'replace' => 'E032',
- ),
- 32 =>
- array (
- 'match' => '0924 093C',
- 'replace' => 'E033',
- ),
- 33 =>
- array (
- 'match' => '0925 093C',
- 'replace' => 'E034',
- ),
- 34 =>
- array (
- 'match' => '0926 093C',
- 'replace' => 'E035',
- ),
- 35 =>
- array (
- 'match' => '0927 093C',
- 'replace' => 'E036',
- ),
- 36 =>
- array (
- 'match' => '0928 093C',
- 'replace' => '0929',
- ),
- 37 =>
- array (
- 'match' => '092A 093C',
- 'replace' => 'E037',
- ),
- 38 =>
- array (
- 'match' => '092B 093C',
- 'replace' => '095E',
- ),
- 39 =>
- array (
- 'match' => '092C 093C',
- 'replace' => 'E038',
- ),
- 40 =>
- array (
- 'match' => '092D 093C',
- 'replace' => 'E039',
- ),
- 41 =>
- array (
- 'match' => '092E 093C',
- 'replace' => 'E03A',
- ),
- 42 =>
- array (
- 'match' => '092F 093C',
- 'replace' => '095F',
- ),
- 43 =>
- array (
- 'match' => '0930 093C',
- 'replace' => '0931',
- ),
- 44 =>
- array (
- 'match' => '0932 093C',
- 'replace' => 'E03B',
- ),
- 45 =>
- array (
- 'match' => '0933 093C',
- 'replace' => '0934',
- ),
- 46 =>
- array (
- 'match' => '0935 093C',
- 'replace' => 'E03C',
- ),
- 47 =>
- array (
- 'match' => '0936 093C',
- 'replace' => 'E03D',
- ),
- 48 =>
- array (
- 'match' => '0937 093C',
- 'replace' => 'E03E',
- ),
- 49 =>
- array (
- 'match' => '0938 093C',
- 'replace' => 'E03F',
- ),
- 50 =>
- array (
- 'match' => '0939 093C',
- 'replace' => 'E040',
- ),
- 51 =>
- array (
- 'match' => 'E028 093C',
- 'replace' => 'E041',
- ),
- 52 =>
- array (
- 'match' => 'E029 093C',
- 'replace' => 'E042',
- ),
- 53 =>
- array (
- 'match' => '0915 E013',
- 'replace' => 'E08B',
- ),
- 54 =>
- array (
- 'match' => '0916 E013',
- 'replace' => 'E08C',
- ),
- 55 =>
- array (
- 'match' => '0917 E013',
- 'replace' => 'E08D',
- ),
- 56 =>
- array (
- 'match' => '0918 E013',
- 'replace' => 'E08E',
- ),
- 57 =>
- array (
- 'match' => '0919 E013',
- 'replace' => 'E08F',
- ),
- 58 =>
- array (
- 'match' => '091A E013',
- 'replace' => 'E090',
- ),
- 59 =>
- array (
- 'match' => '091B E013',
- 'replace' => 'E091',
- ),
- 60 =>
- array (
- 'match' => '091C E013',
- 'replace' => 'E092',
- ),
- 61 =>
- array (
- 'match' => '091D E013',
- 'replace' => 'E093',
- ),
- 62 =>
- array (
- 'match' => '091E E013',
- 'replace' => 'E094',
- ),
- 63 =>
- array (
- 'match' => '091F E013',
- 'replace' => 'E095',
- ),
- 64 =>
- array (
- 'match' => '0920 E013',
- 'replace' => 'E096',
- ),
- 65 =>
- array (
- 'match' => '0921 E013',
- 'replace' => 'E097',
- ),
- 66 =>
- array (
- 'match' => '0922 E013',
- 'replace' => 'E098',
- ),
- 67 =>
- array (
- 'match' => '0923 E013',
- 'replace' => 'E099',
- ),
- 68 =>
- array (
- 'match' => '0924 E013',
- 'replace' => 'E09A',
- ),
- 69 =>
- array (
- 'match' => '0925 E013',
- 'replace' => 'E09B',
- ),
- 70 =>
- array (
- 'match' => '0926 E013',
- 'replace' => 'E09C',
- ),
- 71 =>
- array (
- 'match' => '0927 E013',
- 'replace' => 'E09D',
- ),
- 72 =>
- array (
- 'match' => '0928 E013',
- 'replace' => 'E09E',
- ),
- 73 =>
- array (
- 'match' => '092A E013',
- 'replace' => 'E09F',
- ),
- 74 =>
- array (
- 'match' => '092B E013',
- 'replace' => 'E0A0',
- ),
- 75 =>
- array (
- 'match' => '092C E013',
- 'replace' => 'E0A1',
- ),
- 76 =>
- array (
- 'match' => '092D E013',
- 'replace' => 'E0A2',
- ),
- 77 =>
- array (
- 'match' => '092E E013',
- 'replace' => 'E0A3',
- ),
- 78 =>
- array (
- 'match' => '092F E013',
- 'replace' => 'E0A4',
- ),
- 79 =>
- array (
- 'match' => '0930 E013',
- 'replace' => 'E0A5',
- ),
- 80 =>
- array (
- 'match' => '0932 E013',
- 'replace' => 'E0A6',
- ),
- 81 =>
- array (
- 'match' => '0933 E013',
- 'replace' => 'E0A7',
- ),
- 82 =>
- array (
- 'match' => '0935 E013',
- 'replace' => 'E0A8',
- ),
- 83 =>
- array (
- 'match' => '0936 E013',
- 'replace' => 'E0A9',
- ),
- 84 =>
- array (
- 'match' => '0937 E013',
- 'replace' => 'E0AA',
- ),
- 85 =>
- array (
- 'match' => '0938 E013',
- 'replace' => 'E0AB',
- ),
- 86 =>
- array (
- 'match' => '0939 E013',
- 'replace' => 'E0AC',
- ),
- 87 =>
- array (
- 'match' => 'E028 E013',
- 'replace' => 'E0AD',
- ),
- 88 =>
- array (
- 'match' => 'E029 E013',
- 'replace' => 'E0AE',
- ),
- 89 =>
- array (
- 'match' => '0958 E013',
- 'replace' => 'E0AF',
- ),
- 90 =>
- array (
- 'match' => '0959 E013',
- 'replace' => 'E0B0',
- ),
- 91 =>
- array (
- 'match' => '095A E013',
- 'replace' => 'E0B1',
- ),
- 92 =>
- array (
- 'match' => 'E02A E013',
- 'replace' => 'E0B2',
- ),
- 93 =>
- array (
- 'match' => 'E02B E013',
- 'replace' => 'E0B3',
- ),
- 94 =>
- array (
- 'match' => 'E02C E013',
- 'replace' => 'E0B4',
- ),
- 95 =>
- array (
- 'match' => 'E02D E013',
- 'replace' => 'E0B5',
- ),
- 96 =>
- array (
- 'match' => '095B E013',
- 'replace' => 'E0B6',
- ),
- 97 =>
- array (
- 'match' => 'E02E E013',
- 'replace' => 'E0B7',
- ),
- 98 =>
- array (
- 'match' => 'E02F E013',
- 'replace' => 'E0B8',
- ),
- 99 =>
- array (
- 'match' => 'E030 E013',
- 'replace' => 'E0B9',
- ),
- 100 =>
- array (
- 'match' => 'E031 E013',
- 'replace' => 'E0BA',
- ),
- 101 =>
- array (
- 'match' => '095C E013',
- 'replace' => 'E0BB',
- ),
- 102 =>
- array (
- 'match' => '095D E013',
- 'replace' => 'E0BC',
- ),
- 103 =>
- array (
- 'match' => 'E032 E013',
- 'replace' => 'E0BD',
- ),
- 104 =>
- array (
- 'match' => 'E033 E013',
- 'replace' => 'E0BE',
- ),
- 105 =>
- array (
- 'match' => 'E034 E013',
- 'replace' => 'E0BF',
- ),
- 106 =>
- array (
- 'match' => 'E035 E013',
- 'replace' => 'E0C0',
- ),
- 107 =>
- array (
- 'match' => 'E036 E013',
- 'replace' => 'E0C1',
- ),
- 108 =>
- array (
- 'match' => '0929 E013',
- 'replace' => 'E0C2',
- ),
- 109 =>
- array (
- 'match' => 'E037 E013',
- 'replace' => 'E0C3',
- ),
- 110 =>
- array (
- 'match' => '095E E013',
- 'replace' => 'E0C4',
- ),
- 111 =>
- array (
- 'match' => 'E038 E013',
- 'replace' => 'E0C5',
- ),
- 112 =>
- array (
- 'match' => 'E039 E013',
- 'replace' => 'E0C6',
- ),
- 113 =>
- array (
- 'match' => 'E03A E013',
- 'replace' => 'E0C7',
- ),
- 114 =>
- array (
- 'match' => '095F E013',
- 'replace' => 'E0C8',
- ),
- 115 =>
- array (
- 'match' => '0931 E013',
- 'replace' => 'E0C9',
- ),
- 116 =>
- array (
- 'match' => 'E03B E013',
- 'replace' => 'E0CA',
- ),
- 117 =>
- array (
- 'match' => '0934 E013',
- 'replace' => 'E0CB',
- ),
- 118 =>
- array (
- 'match' => 'E03C E013',
- 'replace' => 'E0CC',
- ),
- 119 =>
- array (
- 'match' => 'E03D E013',
- 'replace' => 'E0CD',
- ),
- 120 =>
- array (
- 'match' => 'E03E E013',
- 'replace' => 'E0CE',
- ),
- 121 =>
- array (
- 'match' => 'E03F E013',
- 'replace' => 'E0CF',
- ),
- 122 =>
- array (
- 'match' => 'E040 E013',
- 'replace' => 'E0D0',
- ),
- 123 =>
- array (
- 'match' => 'E041 E013',
- 'replace' => 'E0D1',
- ),
- 124 =>
- array (
- 'match' => 'E042 E013',
- 'replace' => 'E0D2',
- ),
- 125 =>
- array (
- 'match' => 'E028 E013',
- 'replace' => 'E0AD',
- ),
- 126 =>
- array (
- 'match' => 'E029 E013',
- 'replace' => 'E0AE',
- ),
- 127 =>
- array (
- 'match' => '0915 E00E',
- 'replace' => 'E043',
- ),
- 128 =>
- array (
- 'match' => '0916 E00E',
- 'replace' => 'E044',
- ),
- 129 =>
- array (
- 'match' => '0917 E00E',
- 'replace' => 'E045',
- ),
- 130 =>
- array (
- 'match' => '0918 E00E',
- 'replace' => 'E046',
- ),
- 131 =>
- array (
- 'match' => '0919 E00E',
- 'replace' => 'E047',
- ),
- 132 =>
- array (
- 'match' => '091A E00E',
- 'replace' => 'E048',
- ),
- 133 =>
- array (
- 'match' => '091B E00E',
- 'replace' => 'E049',
- ),
- 134 =>
- array (
- 'match' => '091C E00E',
- 'replace' => 'E04A',
- ),
- 135 =>
- array (
- 'match' => '091D E00E',
- 'replace' => 'E04B',
- ),
- 136 =>
- array (
- 'match' => '091E E00E',
- 'replace' => 'E04C',
- ),
- 137 =>
- array (
- 'match' => '091F E00E',
- 'replace' => 'E04D',
- ),
- 138 =>
- array (
- 'match' => '0920 E00E',
- 'replace' => 'E04E',
- ),
- 139 =>
- array (
- 'match' => '0921 E00E',
- 'replace' => 'E04F',
- ),
- 140 =>
- array (
- 'match' => '0922 E00E',
- 'replace' => 'E050',
- ),
- 141 =>
- array (
- 'match' => '0923 E00E',
- 'replace' => 'E051',
- ),
- 142 =>
- array (
- 'match' => '0924 E00E',
- 'replace' => 'E052',
- ),
- 143 =>
- array (
- 'match' => '0925 E00E',
- 'replace' => 'E053',
- ),
- 144 =>
- array (
- 'match' => '0926 E00E',
- 'replace' => 'E054',
- ),
- 145 =>
- array (
- 'match' => '0927 E00E',
- 'replace' => 'E055',
- ),
- 146 =>
- array (
- 'match' => '0928 E00E',
- 'replace' => 'E056',
- ),
- 147 =>
- array (
- 'match' => '092A E00E',
- 'replace' => 'E057',
- ),
- 148 =>
- array (
- 'match' => '092B E00E',
- 'replace' => 'E058',
- ),
- 149 =>
- array (
- 'match' => '092C E00E',
- 'replace' => 'E059',
- ),
- 150 =>
- array (
- 'match' => '092D E00E',
- 'replace' => 'E05A',
- ),
- 151 =>
- array (
- 'match' => '092E E00E',
- 'replace' => 'E05B',
- ),
- 152 =>
- array (
- 'match' => '092F E00E',
- 'replace' => 'E05C',
- ),
- 153 =>
- array (
- 'match' => '0930 E00E',
- 'replace' => 'E05D',
- ),
- 154 =>
- array (
- 'match' => '0932 E00E',
- 'replace' => 'E05E',
- ),
- 155 =>
- array (
- 'match' => '0933 E00E',
- 'replace' => 'E05F',
- ),
- 156 =>
- array (
- 'match' => '0935 E00E',
- 'replace' => 'E060',
- ),
- 157 =>
- array (
- 'match' => '0936 E00E',
- 'replace' => 'E061',
- ),
- 158 =>
- array (
- 'match' => '0937 E00E',
- 'replace' => 'E062',
- ),
- 159 =>
- array (
- 'match' => '0938 E00E',
- 'replace' => 'E063',
- ),
- 160 =>
- array (
- 'match' => '0939 E00E',
- 'replace' => 'E064',
- ),
- 161 =>
- array (
- 'match' => 'E028 E00E',
- 'replace' => 'E065',
- ),
- 162 =>
- array (
- 'match' => 'E029 E00E',
- 'replace' => 'E066',
- ),
- 163 =>
- array (
- 'match' => 'E08B E00E',
- 'replace' => 'E0D3',
- ),
- 164 =>
- array (
- 'match' => 'E08C E00E',
- 'replace' => 'E0D4',
- ),
- 165 =>
- array (
- 'match' => 'E08D E00E',
- 'replace' => 'E0D5',
- ),
- 166 =>
- array (
- 'match' => 'E08E E00E',
- 'replace' => 'E0D6',
- ),
- 167 =>
- array (
- 'match' => 'E08F E00E',
- 'replace' => 'E0D7',
- ),
- 168 =>
- array (
- 'match' => 'E090 E00E',
- 'replace' => 'E0D8',
- ),
- 169 =>
- array (
- 'match' => 'E091 E00E',
- 'replace' => 'E0D9',
- ),
- 170 =>
- array (
- 'match' => 'E092 E00E',
- 'replace' => 'E0DA',
- ),
- 171 =>
- array (
- 'match' => 'E093 E00E',
- 'replace' => 'E0DB',
- ),
- 172 =>
- array (
- 'match' => 'E094 E00E',
- 'replace' => 'E0DC',
- ),
- 173 =>
- array (
- 'match' => 'E095 E00E',
- 'replace' => 'E0DD',
- ),
- 174 =>
- array (
- 'match' => 'E096 E00E',
- 'replace' => 'E0DE',
- ),
- 175 =>
- array (
- 'match' => 'E097 E00E',
- 'replace' => 'E0DF',
- ),
- 176 =>
- array (
- 'match' => 'E098 E00E',
- 'replace' => 'E0E0',
- ),
- 177 =>
- array (
- 'match' => 'E099 E00E',
- 'replace' => 'E0E1',
- ),
- 178 =>
- array (
- 'match' => 'E09A E00E',
- 'replace' => 'E0E2',
- ),
- 179 =>
- array (
- 'match' => 'E09B E00E',
- 'replace' => 'E0E3',
- ),
- 180 =>
- array (
- 'match' => 'E09C E00E',
- 'replace' => 'E0E4',
- ),
- 181 =>
- array (
- 'match' => 'E09D E00E',
- 'replace' => 'E0E5',
- ),
- 182 =>
- array (
- 'match' => 'E09E E00E',
- 'replace' => 'E0E6',
- ),
- 183 =>
- array (
- 'match' => 'E09F E00E',
- 'replace' => 'E0E7',
- ),
- 184 =>
- array (
- 'match' => 'E0A0 E00E',
- 'replace' => 'E0E8',
- ),
- 185 =>
- array (
- 'match' => 'E0A1 E00E',
- 'replace' => 'E0E9',
- ),
- 186 =>
- array (
- 'match' => 'E0A2 E00E',
- 'replace' => 'E0EA',
- ),
- 187 =>
- array (
- 'match' => 'E0A3 E00E',
- 'replace' => 'E0EB',
- ),
- 188 =>
- array (
- 'match' => 'E0A4 E00E',
- 'replace' => 'E0EC',
- ),
- 189 =>
- array (
- 'match' => 'E0A5 E00E',
- 'replace' => 'E0ED',
- ),
- 190 =>
- array (
- 'match' => 'E0A6 E00E',
- 'replace' => 'E0EE',
- ),
- 191 =>
- array (
- 'match' => 'E0A7 E00E',
- 'replace' => 'E0EF',
- ),
- 192 =>
- array (
- 'match' => 'E0A8 E00E',
- 'replace' => 'E0F0',
- ),
- 193 =>
- array (
- 'match' => 'E0A9 E00E',
- 'replace' => 'E0F1',
- ),
- 194 =>
- array (
- 'match' => 'E0AA E00E',
- 'replace' => 'E0F2',
- ),
- 195 =>
- array (
- 'match' => 'E0AB E00E',
- 'replace' => 'E0F3',
- ),
- 196 =>
- array (
- 'match' => 'E0AC E00E',
- 'replace' => 'E0F4',
- ),
- 197 =>
- array (
- 'match' => 'E0AD E00E',
- 'replace' => 'E0F5',
- ),
- 198 =>
- array (
- 'match' => 'E0AE E00E',
- 'replace' => 'E0F6',
- ),
- 199 =>
- array (
- 'match' => 'E0AF E00E',
- 'replace' => 'E0F7',
- ),
- 200 =>
- array (
- 'match' => 'E0B0 E00E',
- 'replace' => 'E0F8',
- ),
- 201 =>
- array (
- 'match' => 'E0B1 E00E',
- 'replace' => 'E0F9',
- ),
- 202 =>
- array (
- 'match' => 'E0B2 E00E',
- 'replace' => 'E0FA',
- ),
- 203 =>
- array (
- 'match' => 'E0B3 E00E',
- 'replace' => 'E0FB',
- ),
- 204 =>
- array (
- 'match' => 'E0B4 E00E',
- 'replace' => 'E0FC',
- ),
- 205 =>
- array (
- 'match' => 'E0B5 E00E',
- 'replace' => 'E0FD',
- ),
- 206 =>
- array (
- 'match' => 'E0B6 E00E',
- 'replace' => 'E0FE',
- ),
- 207 =>
- array (
- 'match' => 'E0B7 E00E',
- 'replace' => 'E0FF',
- ),
- 208 =>
- array (
- 'match' => 'E0B8 E00E',
- 'replace' => 'E100',
- ),
- 209 =>
- array (
- 'match' => 'E0B9 E00E',
- 'replace' => 'E101',
- ),
- 210 =>
- array (
- 'match' => 'E0BA E00E',
- 'replace' => 'E102',
- ),
- 211 =>
- array (
- 'match' => 'E0BB E00E',
- 'replace' => 'E103',
- ),
- 212 =>
- array (
- 'match' => 'E0BC E00E',
- 'replace' => 'E104',
- ),
- 213 =>
- array (
- 'match' => 'E0BD E00E',
- 'replace' => 'E105',
- ),
- 214 =>
- array (
- 'match' => 'E0BE E00E',
- 'replace' => 'E106',
- ),
- 215 =>
- array (
- 'match' => 'E0BF E00E',
- 'replace' => 'E107',
- ),
- 216 =>
- array (
- 'match' => 'E0C0 E00E',
- 'replace' => 'E108',
- ),
- 217 =>
- array (
- 'match' => 'E0C1 E00E',
- 'replace' => 'E109',
- ),
- 218 =>
- array (
- 'match' => 'E0C2 E00E',
- 'replace' => 'E10A',
- ),
- 219 =>
- array (
- 'match' => 'E0C3 E00E',
- 'replace' => 'E10B',
- ),
- 220 =>
- array (
- 'match' => 'E0C4 E00E',
- 'replace' => 'E10C',
- ),
- 221 =>
- array (
- 'match' => 'E0C5 E00E',
- 'replace' => 'E10D',
- ),
- 222 =>
- array (
- 'match' => 'E0C6 E00E',
- 'replace' => 'E10E',
- ),
- 223 =>
- array (
- 'match' => 'E0C7 E00E',
- 'replace' => 'E10F',
- ),
- 224 =>
- array (
- 'match' => 'E0C8 E00E',
- 'replace' => 'E110',
- ),
- 225 =>
- array (
- 'match' => 'E0C9 E00E',
- 'replace' => 'E111',
- ),
- 226 =>
- array (
- 'match' => 'E0CA E00E',
- 'replace' => 'E112',
- ),
- 227 =>
- array (
- 'match' => 'E0CB E00E',
- 'replace' => 'E113',
- ),
- 228 =>
- array (
- 'match' => 'E0CC E00E',
- 'replace' => 'E114',
- ),
- 229 =>
- array (
- 'match' => 'E0CD E00E',
- 'replace' => 'E115',
- ),
- 230 =>
- array (
- 'match' => 'E0CE E00E',
- 'replace' => 'E116',
- ),
- 231 =>
- array (
- 'match' => 'E0CF E00E',
- 'replace' => 'E117',
- ),
- 232 =>
- array (
- 'match' => 'E0D0 E00E',
- 'replace' => 'E118',
- ),
- 233 =>
- array (
- 'match' => 'E0D1 E00E',
- 'replace' => 'E119',
- ),
- 234 =>
- array (
- 'match' => 'E0D2 E00E',
- 'replace' => 'E11A',
- ),
- 235 =>
- array (
- 'match' => '0958 E00E',
- 'replace' => 'E067',
- ),
- 236 =>
- array (
- 'match' => '0959 E00E',
- 'replace' => 'E068',
- ),
- 237 =>
- array (
- 'match' => '095A E00E',
- 'replace' => 'E069',
- ),
- 238 =>
- array (
- 'match' => 'E02A E00E',
- 'replace' => 'E06A',
- ),
- 239 =>
- array (
- 'match' => 'E02B E00E',
- 'replace' => 'E06B',
- ),
- 240 =>
- array (
- 'match' => 'E02C E00E',
- 'replace' => 'E06C',
- ),
- 241 =>
- array (
- 'match' => 'E02D E00E',
- 'replace' => 'E06D',
- ),
- 242 =>
- array (
- 'match' => '095B E00E',
- 'replace' => 'E06E',
- ),
- 243 =>
- array (
- 'match' => 'E02E E00E',
- 'replace' => 'E06F',
- ),
- 244 =>
- array (
- 'match' => 'E02F E00E',
- 'replace' => 'E070',
- ),
- 245 =>
- array (
- 'match' => 'E030 E00E',
- 'replace' => 'E071',
- ),
- 246 =>
- array (
- 'match' => 'E031 E00E',
- 'replace' => 'E072',
- ),
- 247 =>
- array (
- 'match' => '095C E00E',
- 'replace' => 'E073',
- ),
- 248 =>
- array (
- 'match' => '095D E00E',
- 'replace' => 'E074',
- ),
- 249 =>
- array (
- 'match' => 'E032 E00E',
- 'replace' => 'E075',
- ),
- 250 =>
- array (
- 'match' => 'E033 E00E',
- 'replace' => 'E076',
- ),
- 251 =>
- array (
- 'match' => 'E034 E00E',
- 'replace' => 'E077',
- ),
- 252 =>
- array (
- 'match' => 'E035 E00E',
- 'replace' => 'E078',
- ),
- 253 =>
- array (
- 'match' => 'E036 E00E',
- 'replace' => 'E079',
- ),
- 254 =>
- array (
- 'match' => '0929 E00E',
- 'replace' => 'E07A',
- ),
- 255 =>
- array (
- 'match' => 'E037 E00E',
- 'replace' => 'E07B',
- ),
- 256 =>
- array (
- 'match' => '095E E00E',
- 'replace' => 'E07C',
- ),
- 257 =>
- array (
- 'match' => 'E038 E00E',
- 'replace' => 'E07D',
- ),
- 258 =>
- array (
- 'match' => 'E039 E00E',
- 'replace' => 'E07E',
- ),
- 259 =>
- array (
- 'match' => 'E03A E00E',
- 'replace' => 'E07F',
- ),
- 260 =>
- array (
- 'match' => '095F E00E',
- 'replace' => 'E080',
- ),
- 261 =>
- array (
- 'match' => '0931 E00E',
- 'replace' => 'E081',
- ),
- 262 =>
- array (
- 'match' => 'E03B E00E',
- 'replace' => 'E082',
- ),
- 263 =>
- array (
- 'match' => '0934 E00E',
- 'replace' => 'E083',
- ),
- 264 =>
- array (
- 'match' => 'E03C E00E',
- 'replace' => 'E084',
- ),
- 265 =>
- array (
- 'match' => 'E03D E00E',
- 'replace' => 'E085',
- ),
- 266 =>
- array (
- 'match' => 'E03E E00E',
- 'replace' => 'E086',
- ),
- 267 =>
- array (
- 'match' => 'E03F E00E',
- 'replace' => 'E087',
- ),
- 268 =>
- array (
- 'match' => 'E040 E00E',
- 'replace' => 'E088',
- ),
- 269 =>
- array (
- 'match' => 'E041 E00E',
- 'replace' => 'E089',
- ),
- 270 =>
- array (
- 'match' => 'E042 E00E',
- 'replace' => 'E08A',
- ),
- 271 =>
- array (
- 'match' => 'E043 0924',
- 'replace' => 'E11B',
- ),
- 272 =>
- array (
- 'match' => 'E044 0928',
- 'replace' => 'E11C',
- ),
- 273 =>
- array (
- 'match' => 'E047 092E',
- 'replace' => 'E11D',
- ),
- 274 =>
- array (
- 'match' => 'E052 0924',
- 'replace' => 'E11E',
- ),
- 275 =>
- array (
- 'match' => 'E052 0928',
- 'replace' => 'E11F',
- ),
- 276 =>
- array (
- 'match' => 'E054 0917',
- 'replace' => 'E120',
- ),
- 277 =>
- array (
- 'match' => 'E054 0918',
- 'replace' => 'E121',
- ),
- 278 =>
- array (
- 'match' => 'E054 0926',
- 'replace' => 'E122',
- ),
- 279 =>
- array (
- 'match' => 'E054 0927',
- 'replace' => 'E123',
- ),
- 280 =>
- array (
- 'match' => 'E054 0928',
- 'replace' => 'E124',
- ),
- 281 =>
- array (
- 'match' => 'E054 092C',
- 'replace' => 'E125',
- ),
- 282 =>
- array (
- 'match' => 'E054 092D',
- 'replace' => 'E126',
- ),
- 283 =>
- array (
- 'match' => 'E054 E05C 092D',
- 'replace' => 'E127',
- ),
- 284 =>
- array (
- 'match' => 'E054 092F',
- 'replace' => 'E128',
- ),
- 285 =>
- array (
- 'match' => 'E054 0935',
- 'replace' => 'E129',
- ),
- 286 =>
- array (
- 'match' => 'E057 0924',
- 'replace' => 'E12A',
- ),
- 287 =>
- array (
- 'match' => 'E061 0928',
- 'replace' => 'E12B',
- ),
- 288 =>
- array (
- 'match' => 'E061 091A',
- 'replace' => 'E12C',
- ),
- 289 =>
- array (
- 'match' => 'E061 0932',
- 'replace' => 'E12D',
- ),
- 290 =>
- array (
- 'match' => 'E061 0935',
- 'replace' => 'E12E',
- ),
- 291 =>
- array (
- 'match' => 'E062 091F',
- 'replace' => 'E12F',
- ),
- 292 =>
- array (
- 'match' => 'E062 0920',
- 'replace' => 'E130',
- ),
- 293 =>
- array (
- 'match' => 'E062 E095',
- 'replace' => 'E131',
- ),
- 294 =>
- array (
- 'match' => 'E062 E096',
- 'replace' => 'E132',
- ),
- 295 =>
- array (
- 'match' => 'E063 E09A',
- 'replace' => 'E133',
- ),
- 296 =>
- array (
- 'match' => 'E064 0928',
- 'replace' => 'E134',
- ),
- 297 =>
- array (
- 'match' => 'E064 092E',
- 'replace' => 'E135',
- ),
- 298 =>
- array (
- 'match' => 'E064 092F',
- 'replace' => 'E136',
- ),
- 299 =>
- array (
- 'match' => 'E064 0923',
- 'replace' => 'E137',
- ),
- 300 =>
- array (
- 'match' => 'E064 0932',
- 'replace' => 'E138',
- ),
- 301 =>
- array (
- 'match' => 'E064 0935',
- 'replace' => 'E139',
- ),
- 302 =>
- array (
- 'match' => 'E044 E056',
- 'replace' => 'E13B',
- ),
- 303 =>
- array (
- 'match' => 'E052 E052',
- 'replace' => 'E13D',
- ),
- 304 =>
- array (
- 'match' => 'E052 E056',
- 'replace' => 'E13E',
- ),
- 305 =>
- array (
- 'match' => 'E054 E05B',
- 'replace' => 'E13F',
- ),
- 306 =>
- array (
- 'match' => 'E057 E052',
- 'replace' => 'E140',
- ),
- 307 =>
- array (
- 'match' => 'E061 E056',
- 'replace' => 'E141',
- ),
- 308 =>
- array (
- 'match' => 'E061 E048',
- 'replace' => 'E142',
- ),
- 309 =>
- array (
- 'match' => 'E061 E05E',
- 'replace' => 'E143',
- ),
- 310 =>
- array (
- 'match' => 'E061 E060',
- 'replace' => 'E144',
- ),
- 311 =>
- array (
- 'match' => 'E063 E0E2',
- 'replace' => 'E145',
- ),
- 312 =>
- array (
- 'match' => 'E047 ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) E015)',
- 'replace' => 'E047 E015 \\1',
- ),
- 313 =>
- array (
- 'match' => 'E04D ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) E015)',
- 'replace' => 'E04D E015 \\1',
- ),
- 314 =>
- array (
- 'match' => 'E04E ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) E015)',
- 'replace' => 'E04E E015 \\1',
- ),
- 315 =>
- array (
- 'match' => 'E04F ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) E015)',
- 'replace' => 'E04F E015 \\1',
- ),
- 316 =>
- array (
- 'match' => 'E050 ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) E015)',
- 'replace' => 'E050 E015 \\1',
- ),
- 317 =>
- array (
- 'match' => 'E054 ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) E015)',
- 'replace' => 'E054 E015 \\1',
- ),
- 318 =>
- array (
- 'match' => 'E06B ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) E015)',
- 'replace' => 'E06B E015 \\1',
- ),
- 319 =>
- array (
- 'match' => 'E071 ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) E015)',
- 'replace' => 'E071 E015 \\1',
- ),
- 320 =>
- array (
- 'match' => 'E072 ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) E015)',
- 'replace' => 'E072 E015 \\1',
- ),
- 321 =>
- array (
- 'match' => 'E073 ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) E015)',
- 'replace' => 'E073 E015 \\1',
- ),
- 322 =>
- array (
- 'match' => 'E074 ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) E015)',
- 'replace' => 'E074 E015 \\1',
- ),
- 323 =>
- array (
- 'match' => 'E078 ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) E015)',
- 'replace' => 'E078 E015 \\1',
- ),
- 324 =>
- array (
- 'match' => 'E0FB ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) E015)',
- 'replace' => 'E0FB E015 \\1',
- ),
- 325 =>
- array (
- 'match' => 'E101 ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) E015)',
- 'replace' => 'E101 E015 \\1',
- ),
- 326 =>
- array (
- 'match' => 'E102 ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) E015)',
- 'replace' => 'E102 E015 \\1',
- ),
- 327 =>
- array (
- 'match' => 'E103 ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) E015)',
- 'replace' => 'E103 E015 \\1',
- ),
- 328 =>
- array (
- 'match' => 'E104 ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) E015)',
- 'replace' => 'E104 E015 \\1',
- ),
- 329 =>
- array (
- 'match' => 'E108 ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) E015)',
- 'replace' => 'E108 E015 \\1',
- ),
- 330 =>
- array (
- 'match' => 'E047 ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) (E015|0947|E1A8|E1A7|E199|E1B2|E1B1|0946|E202|E201|E1A3|E1C6|E1C5|0945|E200|E1FF|0948|E1AA|E1A9|E19A|E1B4|E1B3|0902|E00F|0901|0953|0954|0951) E015)',
- 'replace' => 'E047 E015 \\1',
- ),
- 331 =>
- array (
- 'match' => 'E04D ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) (E015|0947|E1A8|E1A7|E199|E1B2|E1B1|0946|E202|E201|E1A3|E1C6|E1C5|0945|E200|E1FF|0948|E1AA|E1A9|E19A|E1B4|E1B3|0902|E00F|0901|0953|0954|0951) E015)',
- 'replace' => 'E04D E015 \\1',
- ),
- 332 =>
- array (
- 'match' => 'E04E ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) (E015|0947|E1A8|E1A7|E199|E1B2|E1B1|0946|E202|E201|E1A3|E1C6|E1C5|0945|E200|E1FF|0948|E1AA|E1A9|E19A|E1B4|E1B3|0902|E00F|0901|0953|0954|0951) E015)',
- 'replace' => 'E04E E015 \\1',
- ),
- 333 =>
- array (
- 'match' => 'E04F ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) (E015|0947|E1A8|E1A7|E199|E1B2|E1B1|0946|E202|E201|E1A3|E1C6|E1C5|0945|E200|E1FF|0948|E1AA|E1A9|E19A|E1B4|E1B3|0902|E00F|0901|0953|0954|0951) E015)',
- 'replace' => 'E04F E015 \\1',
- ),
- 334 =>
- array (
- 'match' => 'E050 ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) (E015|0947|E1A8|E1A7|E199|E1B2|E1B1|0946|E202|E201|E1A3|E1C6|E1C5|0945|E200|E1FF|0948|E1AA|E1A9|E19A|E1B4|E1B3|0902|E00F|0901|0953|0954|0951) E015)',
- 'replace' => 'E050 E015 \\1',
- ),
- 335 =>
- array (
- 'match' => 'E054 ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) (E015|0947|E1A8|E1A7|E199|E1B2|E1B1|0946|E202|E201|E1A3|E1C6|E1C5|0945|E200|E1FF|0948|E1AA|E1A9|E19A|E1B4|E1B3|0902|E00F|0901|0953|0954|0951) E015)',
- 'replace' => 'E054 E015 \\1',
- ),
- 336 =>
- array (
- 'match' => 'E06B ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) (E015|0947|E1A8|E1A7|E199|E1B2|E1B1|0946|E202|E201|E1A3|E1C6|E1C5|0945|E200|E1FF|0948|E1AA|E1A9|E19A|E1B4|E1B3|0902|E00F|0901|0953|0954|0951) E015)',
- 'replace' => 'E06B E015 \\1',
- ),
- 337 =>
- array (
- 'match' => 'E071 ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) (E015|0947|E1A8|E1A7|E199|E1B2|E1B1|0946|E202|E201|E1A3|E1C6|E1C5|0945|E200|E1FF|0948|E1AA|E1A9|E19A|E1B4|E1B3|0902|E00F|0901|0953|0954|0951) E015)',
- 'replace' => 'E071 E015 \\1',
- ),
- 338 =>
- array (
- 'match' => 'E072 ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) (E015|0947|E1A8|E1A7|E199|E1B2|E1B1|0946|E202|E201|E1A3|E1C6|E1C5|0945|E200|E1FF|0948|E1AA|E1A9|E19A|E1B4|E1B3|0902|E00F|0901|0953|0954|0951) E015)',
- 'replace' => 'E072 E015 \\1',
- ),
- 339 =>
- array (
- 'match' => 'E073 ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) (E015|0947|E1A8|E1A7|E199|E1B2|E1B1|0946|E202|E201|E1A3|E1C6|E1C5|0945|E200|E1FF|0948|E1AA|E1A9|E19A|E1B4|E1B3|0902|E00F|0901|0953|0954|0951) E015)',
- 'replace' => 'E073 E015 \\1',
- ),
- 340 =>
- array (
- 'match' => 'E074 ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) (E015|0947|E1A8|E1A7|E199|E1B2|E1B1|0946|E202|E201|E1A3|E1C6|E1C5|0945|E200|E1FF|0948|E1AA|E1A9|E19A|E1B4|E1B3|0902|E00F|0901|0953|0954|0951) E015)',
- 'replace' => 'E074 E015 \\1',
- ),
- 341 =>
- array (
- 'match' => 'E078 ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) (E015|0947|E1A8|E1A7|E199|E1B2|E1B1|0946|E202|E201|E1A3|E1C6|E1C5|0945|E200|E1FF|0948|E1AA|E1A9|E19A|E1B4|E1B3|0902|E00F|0901|0953|0954|0951) E015)',
- 'replace' => 'E078 E015 \\1',
- ),
- 342 =>
- array (
- 'match' => 'E0FB ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) (E015|0947|E1A8|E1A7|E199|E1B2|E1B1|0946|E202|E201|E1A3|E1C6|E1C5|0945|E200|E1FF|0948|E1AA|E1A9|E19A|E1B4|E1B3|0902|E00F|0901|0953|0954|0951) E015)',
- 'replace' => 'E0FB E015 \\1',
- ),
- 343 =>
- array (
- 'match' => 'E101 ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) (E015|0947|E1A8|E1A7|E199|E1B2|E1B1|0946|E202|E201|E1A3|E1C6|E1C5|0945|E200|E1FF|0948|E1AA|E1A9|E19A|E1B4|E1B3|0902|E00F|0901|0953|0954|0951) E015)',
- 'replace' => 'E101 E015 \\1',
- ),
- 344 =>
- array (
- 'match' => 'E102 ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) (E015|0947|E1A8|E1A7|E199|E1B2|E1B1|0946|E202|E201|E1A3|E1C6|E1C5|0945|E200|E1FF|0948|E1AA|E1A9|E19A|E1B4|E1B3|0902|E00F|0901|0953|0954|0951) E015)',
- 'replace' => 'E102 E015 \\1',
- ),
- 345 =>
- array (
- 'match' => 'E103 ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) (E015|0947|E1A8|E1A7|E199|E1B2|E1B1|0946|E202|E201|E1A3|E1C6|E1C5|0945|E200|E1FF|0948|E1AA|E1A9|E19A|E1B4|E1B3|0902|E00F|0901|0953|0954|0951) E015)',
- 'replace' => 'E103 E015 \\1',
- ),
- 346 =>
- array (
- 'match' => 'E104 ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) (E015|0947|E1A8|E1A7|E199|E1B2|E1B1|0946|E202|E201|E1A3|E1C6|E1C5|0945|E200|E1FF|0948|E1AA|E1A9|E19A|E1B4|E1B3|0902|E00F|0901|0953|0954|0951) E015)',
- 'replace' => 'E104 E015 \\1',
- ),
- 347 =>
- array (
- 'match' => 'E108 ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) (E015|0947|E1A8|E1A7|E199|E1B2|E1B1|0946|E202|E201|E1A3|E1C6|E1C5|0945|E200|E1FF|0948|E1AA|E1A9|E19A|E1B4|E1B3|0902|E00F|0901|0953|0954|0951) E015)',
- 'replace' => 'E108 E015 \\1',
- ),
- 348 =>
- array (
- 'match' => 'E047 ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) (0941|0942|0943|0944|0952|E013) E015)',
- 'replace' => 'E047 E015 \\1',
- ),
- 349 =>
- array (
- 'match' => 'E04D ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) (0941|0942|0943|0944|0952|E013) E015)',
- 'replace' => 'E04D E015 \\1',
- ),
- 350 =>
- array (
- 'match' => 'E04E ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) (0941|0942|0943|0944|0952|E013) E015)',
- 'replace' => 'E04E E015 \\1',
- ),
- 351 =>
- array (
- 'match' => 'E04F ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) (0941|0942|0943|0944|0952|E013) E015)',
- 'replace' => 'E04F E015 \\1',
- ),
- 352 =>
- array (
- 'match' => 'E050 ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) (0941|0942|0943|0944|0952|E013) E015)',
- 'replace' => 'E050 E015 \\1',
- ),
- 353 =>
- array (
- 'match' => 'E054 ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) (0941|0942|0943|0944|0952|E013) E015)',
- 'replace' => 'E054 E015 \\1',
- ),
- 354 =>
- array (
- 'match' => 'E06B ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) (0941|0942|0943|0944|0952|E013) E015)',
- 'replace' => 'E06B E015 \\1',
- ),
- 355 =>
- array (
- 'match' => 'E071 ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) (0941|0942|0943|0944|0952|E013) E015)',
- 'replace' => 'E071 E015 \\1',
- ),
- 356 =>
- array (
- 'match' => 'E072 ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) (0941|0942|0943|0944|0952|E013) E015)',
- 'replace' => 'E072 E015 \\1',
- ),
- 357 =>
- array (
- 'match' => 'E073 ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) (0941|0942|0943|0944|0952|E013) E015)',
- 'replace' => 'E073 E015 \\1',
- ),
- 358 =>
- array (
- 'match' => 'E074 ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) (0941|0942|0943|0944|0952|E013) E015)',
- 'replace' => 'E074 E015 \\1',
- ),
- 359 =>
- array (
- 'match' => 'E078 ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) (0941|0942|0943|0944|0952|E013) E015)',
- 'replace' => 'E078 E015 \\1',
- ),
- 360 =>
- array (
- 'match' => 'E0FB ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) (0941|0942|0943|0944|0952|E013) E015)',
- 'replace' => 'E0FB E015 \\1',
- ),
- 361 =>
- array (
- 'match' => 'E101 ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) (0941|0942|0943|0944|0952|E013) E015)',
- 'replace' => 'E101 E015 \\1',
- ),
- 362 =>
- array (
- 'match' => 'E102 ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) (0941|0942|0943|0944|0952|E013) E015)',
- 'replace' => 'E102 E015 \\1',
- ),
- 363 =>
- array (
- 'match' => 'E103 ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) (0941|0942|0943|0944|0952|E013) E015)',
- 'replace' => 'E103 E015 \\1',
- ),
- 364 =>
- array (
- 'match' => 'E104 ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) (0941|0942|0943|0944|0952|E013) E015)',
- 'replace' => 'E104 E015 \\1',
- ),
- 365 =>
- array (
- 'match' => 'E108 ((0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029) (0941|0942|0943|0944|0952|E013) E015)',
- 'replace' => 'E108 E015 \\1',
- ),
- 366 =>
- array (
- 'match' => '200D E00E',
- 'replace' => '094D',
- ),
- 367 =>
- array (
- 'match' => 'E00C',
- 'replace' => '094D',
- ),
- 368 =>
- array (
- 'match' => 'E00E',
- 'replace' => '094D',
- ),
- 369 =>
- array (
- 'match' => 'E043 200D',
- 'replace' => 'E043',
- ),
- 370 =>
- array (
- 'match' => 'E044 200D',
- 'replace' => 'E044',
- ),
- 371 =>
- array (
- 'match' => 'E045 200D',
- 'replace' => 'E045',
- ),
- 372 =>
- array (
- 'match' => 'E046 200D',
- 'replace' => 'E046',
- ),
- 373 =>
- array (
- 'match' => 'E047 200D',
- 'replace' => 'E047',
- ),
- 374 =>
- array (
- 'match' => 'E048 200D',
- 'replace' => 'E048',
- ),
- 375 =>
- array (
- 'match' => 'E049 200D',
- 'replace' => 'E049',
- ),
- 376 =>
- array (
- 'match' => 'E04A 200D',
- 'replace' => 'E04A',
- ),
- 377 =>
- array (
- 'match' => 'E04B 200D',
- 'replace' => 'E04B',
- ),
- 378 =>
- array (
- 'match' => 'E04C 200D',
- 'replace' => 'E04C',
- ),
- 379 =>
- array (
- 'match' => 'E04D 200D',
- 'replace' => 'E04D',
- ),
- 380 =>
- array (
- 'match' => 'E04E 200D',
- 'replace' => 'E04E',
- ),
- 381 =>
- array (
- 'match' => 'E04F 200D',
- 'replace' => 'E04F',
- ),
- 382 =>
- array (
- 'match' => 'E050 200D',
- 'replace' => 'E050',
- ),
- 383 =>
- array (
- 'match' => 'E051 200D',
- 'replace' => 'E051',
- ),
- 384 =>
- array (
- 'match' => 'E052 200D',
- 'replace' => 'E052',
- ),
- 385 =>
- array (
- 'match' => 'E053 200D',
- 'replace' => 'E053',
- ),
- 386 =>
- array (
- 'match' => 'E054 200D',
- 'replace' => 'E054',
- ),
- 387 =>
- array (
- 'match' => 'E055 200D',
- 'replace' => 'E055',
- ),
- 388 =>
- array (
- 'match' => 'E056 200D',
- 'replace' => 'E056',
- ),
- 389 =>
- array (
- 'match' => 'E057 200D',
- 'replace' => 'E057',
- ),
- 390 =>
- array (
- 'match' => 'E058 200D',
- 'replace' => 'E058',
- ),
- 391 =>
- array (
- 'match' => 'E059 200D',
- 'replace' => 'E059',
- ),
- 392 =>
- array (
- 'match' => 'E05A 200D',
- 'replace' => 'E05A',
- ),
- 393 =>
- array (
- 'match' => 'E05B 200D',
- 'replace' => 'E05B',
- ),
- 394 =>
- array (
- 'match' => 'E05C 200D',
- 'replace' => 'E05C',
- ),
- 395 =>
- array (
- 'match' => 'E05D 200D',
- 'replace' => 'E05D',
- ),
- 396 =>
- array (
- 'match' => 'E05E 200D',
- 'replace' => 'E05E',
- ),
- 397 =>
- array (
- 'match' => 'E05F 200D',
- 'replace' => 'E05F',
- ),
- 398 =>
- array (
- 'match' => 'E060 200D',
- 'replace' => 'E060',
- ),
- 399 =>
- array (
- 'match' => 'E061 200D',
- 'replace' => 'E061',
- ),
- 400 =>
- array (
- 'match' => 'E062 200D',
- 'replace' => 'E062',
- ),
- 401 =>
- array (
- 'match' => 'E063 200D',
- 'replace' => 'E063',
- ),
- 402 =>
- array (
- 'match' => 'E064 200D',
- 'replace' => 'E064',
- ),
- 403 =>
- array (
- 'match' => 'E065 200D',
- 'replace' => 'E065',
- ),
- 404 =>
- array (
- 'match' => 'E066 200D',
- 'replace' => 'E066',
- ),
- 405 =>
- array (
- 'match' => 'E067 200D',
- 'replace' => 'E067',
- ),
- 406 =>
- array (
- 'match' => 'E068 200D',
- 'replace' => 'E068',
- ),
- 407 =>
- array (
- 'match' => 'E069 200D',
- 'replace' => 'E069',
- ),
- 408 =>
- array (
- 'match' => 'E06A 200D',
- 'replace' => 'E06A',
- ),
- 409 =>
- array (
- 'match' => 'E06B 200D',
- 'replace' => 'E06B',
- ),
- 410 =>
- array (
- 'match' => 'E06C 200D',
- 'replace' => 'E06C',
- ),
- 411 =>
- array (
- 'match' => 'E06D 200D',
- 'replace' => 'E06D',
- ),
- 412 =>
- array (
- 'match' => 'E06E 200D',
- 'replace' => 'E06E',
- ),
- 413 =>
- array (
- 'match' => 'E06F 200D',
- 'replace' => 'E06F',
- ),
- 414 =>
- array (
- 'match' => 'E070 200D',
- 'replace' => 'E070',
- ),
- 415 =>
- array (
- 'match' => 'E071 200D',
- 'replace' => 'E071',
- ),
- 416 =>
- array (
- 'match' => 'E072 200D',
- 'replace' => 'E072',
- ),
- 417 =>
- array (
- 'match' => 'E073 200D',
- 'replace' => 'E073',
- ),
- 418 =>
- array (
- 'match' => 'E074 200D',
- 'replace' => 'E074',
- ),
- 419 =>
- array (
- 'match' => 'E075 200D',
- 'replace' => 'E075',
- ),
- 420 =>
- array (
- 'match' => 'E076 200D',
- 'replace' => 'E076',
- ),
- 421 =>
- array (
- 'match' => 'E077 200D',
- 'replace' => 'E077',
- ),
- 422 =>
- array (
- 'match' => 'E078 200D',
- 'replace' => 'E078',
- ),
- 423 =>
- array (
- 'match' => 'E079 200D',
- 'replace' => 'E079',
- ),
- 424 =>
- array (
- 'match' => 'E07A 200D',
- 'replace' => 'E07A',
- ),
- 425 =>
- array (
- 'match' => 'E07B 200D',
- 'replace' => 'E07B',
- ),
- 426 =>
- array (
- 'match' => 'E07C 200D',
- 'replace' => 'E07C',
- ),
- 427 =>
- array (
- 'match' => 'E07D 200D',
- 'replace' => 'E07D',
- ),
- 428 =>
- array (
- 'match' => 'E07E 200D',
- 'replace' => 'E07E',
- ),
- 429 =>
- array (
- 'match' => 'E07F 200D',
- 'replace' => 'E07F',
- ),
- 430 =>
- array (
- 'match' => 'E080 200D',
- 'replace' => 'E080',
- ),
- 431 =>
- array (
- 'match' => 'E081 200D',
- 'replace' => 'E081',
- ),
- 432 =>
- array (
- 'match' => 'E082 200D',
- 'replace' => 'E082',
- ),
- 433 =>
- array (
- 'match' => 'E083 200D',
- 'replace' => 'E083',
- ),
- 434 =>
- array (
- 'match' => 'E084 200D',
- 'replace' => 'E084',
- ),
- 435 =>
- array (
- 'match' => 'E085 200D',
- 'replace' => 'E085',
- ),
- 436 =>
- array (
- 'match' => 'E086 200D',
- 'replace' => 'E086',
- ),
- 437 =>
- array (
- 'match' => 'E087 200D',
- 'replace' => 'E087',
- ),
- 438 =>
- array (
- 'match' => 'E088 200D',
- 'replace' => 'E088',
- ),
- 439 =>
- array (
- 'match' => 'E089 200D',
- 'replace' => 'E089',
- ),
- 440 =>
- array (
- 'match' => 'E08A 200D',
- 'replace' => 'E08A',
- ),
- 441 =>
- array (
- 'match' => 'E0D3 200D',
- 'replace' => 'E0D3',
- ),
- 442 =>
- array (
- 'match' => 'E0D4 200D',
- 'replace' => 'E0D4',
- ),
- 443 =>
- array (
- 'match' => 'E0D5 200D',
- 'replace' => 'E0D5',
- ),
- 444 =>
- array (
- 'match' => 'E0D6 200D',
- 'replace' => 'E0D6',
- ),
- 445 =>
- array (
- 'match' => 'E0D7 200D',
- 'replace' => 'E0D7',
- ),
- 446 =>
- array (
- 'match' => 'E0D8 200D',
- 'replace' => 'E0D8',
- ),
- 447 =>
- array (
- 'match' => 'E0D9 200D',
- 'replace' => 'E0D9',
- ),
- 448 =>
- array (
- 'match' => 'E0DA 200D',
- 'replace' => 'E0DA',
- ),
- 449 =>
- array (
- 'match' => 'E0DB 200D',
- 'replace' => 'E0DB',
- ),
- 450 =>
- array (
- 'match' => 'E0DC 200D',
- 'replace' => 'E0DC',
- ),
- 451 =>
- array (
- 'match' => 'E0DD 200D',
- 'replace' => 'E0DD',
- ),
- 452 =>
- array (
- 'match' => 'E0DE 200D',
- 'replace' => 'E0DE',
- ),
- 453 =>
- array (
- 'match' => 'E0DF 200D',
- 'replace' => 'E0DF',
- ),
- 454 =>
- array (
- 'match' => 'E0E0 200D',
- 'replace' => 'E0E0',
- ),
- 455 =>
- array (
- 'match' => 'E0E1 200D',
- 'replace' => 'E0E1',
- ),
- 456 =>
- array (
- 'match' => 'E0E2 200D',
- 'replace' => 'E0E2',
- ),
- 457 =>
- array (
- 'match' => 'E0E3 200D',
- 'replace' => 'E0E3',
- ),
- 458 =>
- array (
- 'match' => 'E0E4 200D',
- 'replace' => 'E0E4',
- ),
- 459 =>
- array (
- 'match' => 'E0E5 200D',
- 'replace' => 'E0E5',
- ),
- 460 =>
- array (
- 'match' => 'E0E6 200D',
- 'replace' => 'E0E6',
- ),
- 461 =>
- array (
- 'match' => 'E0E7 200D',
- 'replace' => 'E0E7',
- ),
- 462 =>
- array (
- 'match' => 'E0E8 200D',
- 'replace' => 'E0E8',
- ),
- 463 =>
- array (
- 'match' => 'E0E9 200D',
- 'replace' => 'E0E9',
- ),
- 464 =>
- array (
- 'match' => 'E0EA 200D',
- 'replace' => 'E0EA',
- ),
- 465 =>
- array (
- 'match' => 'E0EB 200D',
- 'replace' => 'E0EB',
- ),
- 466 =>
- array (
- 'match' => 'E0EC 200D',
- 'replace' => 'E0EC',
- ),
- 467 =>
- array (
- 'match' => 'E0ED 200D',
- 'replace' => 'E0ED',
- ),
- 468 =>
- array (
- 'match' => 'E0EE 200D',
- 'replace' => 'E0EE',
- ),
- 469 =>
- array (
- 'match' => 'E0EF 200D',
- 'replace' => 'E0EF',
- ),
- 470 =>
- array (
- 'match' => 'E0F0 200D',
- 'replace' => 'E0F0',
- ),
- 471 =>
- array (
- 'match' => 'E0F1 200D',
- 'replace' => 'E0F1',
- ),
- 472 =>
- array (
- 'match' => 'E0F2 200D',
- 'replace' => 'E0F2',
- ),
- 473 =>
- array (
- 'match' => 'E0F3 200D',
- 'replace' => 'E0F3',
- ),
- 474 =>
- array (
- 'match' => 'E0F4 200D',
- 'replace' => 'E0F4',
- ),
- 475 =>
- array (
- 'match' => 'E0F5 200D',
- 'replace' => 'E0F5',
- ),
- 476 =>
- array (
- 'match' => 'E0F6 200D',
- 'replace' => 'E0F6',
- ),
- 477 =>
- array (
- 'match' => 'E0F7 200D',
- 'replace' => 'E0F7',
- ),
- 478 =>
- array (
- 'match' => 'E0F8 200D',
- 'replace' => 'E0F8',
- ),
- 479 =>
- array (
- 'match' => 'E0F9 200D',
- 'replace' => 'E0F9',
- ),
- 480 =>
- array (
- 'match' => 'E0FA 200D',
- 'replace' => 'E0FA',
- ),
- 481 =>
- array (
- 'match' => 'E0FB 200D',
- 'replace' => 'E0FB',
- ),
- 482 =>
- array (
- 'match' => 'E0FC 200D',
- 'replace' => 'E0FC',
- ),
- 483 =>
- array (
- 'match' => 'E0FD 200D',
- 'replace' => 'E0FD',
- ),
- 484 =>
- array (
- 'match' => 'E0FE 200D',
- 'replace' => 'E0FE',
- ),
- 485 =>
- array (
- 'match' => 'E0FF 200D',
- 'replace' => 'E0FF',
- ),
- 486 =>
- array (
- 'match' => 'E100 200D',
- 'replace' => 'E100',
- ),
- 487 =>
- array (
- 'match' => 'E101 200D',
- 'replace' => 'E101',
- ),
- 488 =>
- array (
- 'match' => 'E102 200D',
- 'replace' => 'E102',
- ),
- 489 =>
- array (
- 'match' => 'E103 200D',
- 'replace' => 'E103',
- ),
- 490 =>
- array (
- 'match' => 'E104 200D',
- 'replace' => 'E104',
- ),
- 491 =>
- array (
- 'match' => 'E105 200D',
- 'replace' => 'E105',
- ),
- 492 =>
- array (
- 'match' => 'E106 200D',
- 'replace' => 'E106',
- ),
- 493 =>
- array (
- 'match' => 'E107 200D',
- 'replace' => 'E107',
- ),
- 494 =>
- array (
- 'match' => 'E108 200D',
- 'replace' => 'E108',
- ),
- 495 =>
- array (
- 'match' => 'E109 200D',
- 'replace' => 'E109',
- ),
- 496 =>
- array (
- 'match' => 'E10A 200D',
- 'replace' => 'E10A',
- ),
- 497 =>
- array (
- 'match' => 'E10B 200D',
- 'replace' => 'E10B',
- ),
- 498 =>
- array (
- 'match' => 'E10C 200D',
- 'replace' => 'E10C',
- ),
- 499 =>
- array (
- 'match' => 'E10D 200D',
- 'replace' => 'E10D',
- ),
- 500 =>
- array (
- 'match' => 'E10E 200D',
- 'replace' => 'E10E',
- ),
- 501 =>
- array (
- 'match' => 'E10F 200D',
- 'replace' => 'E10F',
- ),
- 502 =>
- array (
- 'match' => 'E110 200D',
- 'replace' => 'E110',
- ),
- 503 =>
- array (
- 'match' => 'E111 200D',
- 'replace' => 'E111',
- ),
- 504 =>
- array (
- 'match' => 'E112 200D',
- 'replace' => 'E112',
- ),
- 505 =>
- array (
- 'match' => 'E113 200D',
- 'replace' => 'E113',
- ),
- 506 =>
- array (
- 'match' => 'E114 200D',
- 'replace' => 'E114',
- ),
- 507 =>
- array (
- 'match' => 'E115 200D',
- 'replace' => 'E115',
- ),
- 508 =>
- array (
- 'match' => 'E116 200D',
- 'replace' => 'E116',
- ),
- 509 =>
- array (
- 'match' => 'E117 200D',
- 'replace' => 'E117',
- ),
- 510 =>
- array (
- 'match' => 'E118 200D',
- 'replace' => 'E118',
- ),
- 511 =>
- array (
- 'match' => 'E119 200D',
- 'replace' => 'E119',
- ),
- 512 =>
- array (
- 'match' => 'E11A 200D',
- 'replace' => 'E11A',
- ),
- 513 =>
- array (
- 'match' => 'E13D 200D',
- 'replace' => 'E13D',
- ),
- 514 =>
- array (
- 'match' => 'E13E 200D',
- 'replace' => 'E13E',
- ),
- 515 =>
- array (
- 'match' => 'E13F 200D',
- 'replace' => 'E13F',
- ),
- 516 =>
- array (
- 'match' => 'E140 200D',
- 'replace' => 'E140',
- ),
- 517 =>
- array (
- 'match' => 'E141 200D',
- 'replace' => 'E141',
- ),
- 518 =>
- array (
- 'match' => 'E142 200D',
- 'replace' => 'E142',
- ),
- 519 =>
- array (
- 'match' => 'E143 200D',
- 'replace' => 'E143',
- ),
- 520 =>
- array (
- 'match' => 'E144 200D',
- 'replace' => 'E144',
- ),
- 521 =>
- array (
- 'match' => 'E145 200D',
- 'replace' => 'E145',
- ),
- 522 =>
- array (
- 'match' => '200D E013',
- 'replace' => 'E013',
- ),
- 523 =>
- array (
- 'match' => '200D',
- 'replace' => '200B',
- ),
- 524 =>
- array (
- 'match' => '200C',
- 'replace' => '200B',
- ),
- 525 =>
- array (
- 'match' => '(093F) E047',
- 'replace' => '\\1 E047 093F',
- ),
- 526 =>
- array (
- 'match' => '(093F) E04D',
- 'replace' => '\\1 E04D 093F',
- ),
- 527 =>
- array (
- 'match' => '(093F) E04E',
- 'replace' => '\\1 E04E 093F',
- ),
- 528 =>
- array (
- 'match' => '(093F) E04F',
- 'replace' => '\\1 E04F 093F',
- ),
- 529 =>
- array (
- 'match' => '(093F) E050',
- 'replace' => '\\1 E050 093F',
- ),
- 530 =>
- array (
- 'match' => '(093F) E054',
- 'replace' => '\\1 E054 093F',
- ),
- 531 =>
- array (
- 'match' => '(093F) E06B',
- 'replace' => '\\1 E06B 093F',
- ),
- 532 =>
- array (
- 'match' => '(093F) E071',
- 'replace' => '\\1 E071 093F',
- ),
- 533 =>
- array (
- 'match' => '(093F) E072',
- 'replace' => '\\1 E072 093F',
- ),
- 534 =>
- array (
- 'match' => '(093F) E073',
- 'replace' => '\\1 E073 093F',
- ),
- 535 =>
- array (
- 'match' => '(093F) E074',
- 'replace' => '\\1 E074 093F',
- ),
- 536 =>
- array (
- 'match' => '(093F) E078',
- 'replace' => '\\1 E078 093F',
- ),
- 537 =>
- array (
- 'match' => '(093F) E0FB',
- 'replace' => '\\1 E0FB 093F',
- ),
- 538 =>
- array (
- 'match' => '(093F) E101',
- 'replace' => '\\1 E101 093F',
- ),
- 539 =>
- array (
- 'match' => '(093F) E102',
- 'replace' => '\\1 E102 093F',
- ),
- 540 =>
- array (
- 'match' => '(093F) E103',
- 'replace' => '\\1 E103 093F',
- ),
- 541 =>
- array (
- 'match' => '(093F) E104',
- 'replace' => '\\1 E104 093F',
- ),
- 542 =>
- array (
- 'match' => '(093F) E108',
- 'replace' => '\\1 E108 093F',
- ),
- 543 =>
- array (
- 'match' => '093F E047 (093F)',
- 'replace' => 'E047 \\1',
- ),
- 544 =>
- array (
- 'match' => '093F E04D (093F)',
- 'replace' => 'E04D \\1',
- ),
- 545 =>
- array (
- 'match' => '093F E04E (093F)',
- 'replace' => 'E04E \\1',
- ),
- 546 =>
- array (
- 'match' => '093F E04F (093F)',
- 'replace' => 'E04F \\1',
- ),
- 547 =>
- array (
- 'match' => '093F E050 (093F)',
- 'replace' => 'E050 \\1',
- ),
- 548 =>
- array (
- 'match' => '093F E054 (093F)',
- 'replace' => 'E054 \\1',
- ),
- 549 =>
- array (
- 'match' => '093F E06B (093F)',
- 'replace' => 'E06B \\1',
- ),
- 550 =>
- array (
- 'match' => '093F E071 (093F)',
- 'replace' => 'E071 \\1',
- ),
- 551 =>
- array (
- 'match' => '093F E072 (093F)',
- 'replace' => 'E072 \\1',
- ),
- 552 =>
- array (
- 'match' => '093F E073 (093F)',
- 'replace' => 'E073 \\1',
- ),
- 553 =>
- array (
- 'match' => '093F E074 (093F)',
- 'replace' => 'E074 \\1',
- ),
- 554 =>
- array (
- 'match' => '093F E078 (093F)',
- 'replace' => 'E078 \\1',
- ),
- 555 =>
- array (
- 'match' => '093F E0FB (093F)',
- 'replace' => 'E0FB \\1',
- ),
- 556 =>
- array (
- 'match' => '093F E101 (093F)',
- 'replace' => 'E101 \\1',
- ),
- 557 =>
- array (
- 'match' => '093F E102 (093F)',
- 'replace' => 'E102 \\1',
- ),
- 558 =>
- array (
- 'match' => '093F E103 (093F)',
- 'replace' => 'E103 \\1',
- ),
- 559 =>
- array (
- 'match' => '093F E104 (093F)',
- 'replace' => 'E104 \\1',
- ),
- 560 =>
- array (
- 'match' => '093F E108 (093F)',
- 'replace' => 'E108 \\1',
- ),
- 561 =>
- array (
- 'match' => '(E015) 0915 E015',
- 'replace' => '\\1 0915',
- ),
- 562 =>
- array (
- 'match' => '(E015) 0916 E015',
- 'replace' => '\\1 0916',
- ),
- 563 =>
- array (
- 'match' => '(E015) 0917 E015',
- 'replace' => '\\1 0917',
- ),
- 564 =>
- array (
- 'match' => '(E015) 0918 E015',
- 'replace' => '\\1 0918',
- ),
- 565 =>
- array (
- 'match' => '(E015) 0919 E015',
- 'replace' => '\\1 0919',
- ),
- 566 =>
- array (
- 'match' => '(E015) 091A E015',
- 'replace' => '\\1 091A',
- ),
- 567 =>
- array (
- 'match' => '(E015) 091B E015',
- 'replace' => '\\1 091B',
- ),
- 568 =>
- array (
- 'match' => '(E015) 091C E015',
- 'replace' => '\\1 091C',
- ),
- 569 =>
- array (
- 'match' => '(E015) 091D E015',
- 'replace' => '\\1 091D',
- ),
- 570 =>
- array (
- 'match' => '(E015) 091E E015',
- 'replace' => '\\1 091E',
- ),
- 571 =>
- array (
- 'match' => '(E015) 091F E015',
- 'replace' => '\\1 091F',
- ),
- 572 =>
- array (
- 'match' => '(E015) 0920 E015',
- 'replace' => '\\1 0920',
- ),
- 573 =>
- array (
- 'match' => '(E015) 0921 E015',
- 'replace' => '\\1 0921',
- ),
- 574 =>
- array (
- 'match' => '(E015) 0922 E015',
- 'replace' => '\\1 0922',
- ),
- 575 =>
- array (
- 'match' => '(E015) 0923 E015',
- 'replace' => '\\1 0923',
- ),
- 576 =>
- array (
- 'match' => '(E015) 0924 E015',
- 'replace' => '\\1 0924',
- ),
- 577 =>
- array (
- 'match' => '(E015) 0925 E015',
- 'replace' => '\\1 0925',
- ),
- 578 =>
- array (
- 'match' => '(E015) 0926 E015',
- 'replace' => '\\1 0926',
- ),
- 579 =>
- array (
- 'match' => '(E015) 0927 E015',
- 'replace' => '\\1 0927',
- ),
- 580 =>
- array (
- 'match' => '(E015) 0928 E015',
- 'replace' => '\\1 0928',
- ),
- 581 =>
- array (
- 'match' => '(E015) 092A E015',
- 'replace' => '\\1 092A',
- ),
- 582 =>
- array (
- 'match' => '(E015) 092B E015',
- 'replace' => '\\1 092B',
- ),
- 583 =>
- array (
- 'match' => '(E015) 092C E015',
- 'replace' => '\\1 092C',
- ),
- 584 =>
- array (
- 'match' => '(E015) 092D E015',
- 'replace' => '\\1 092D',
- ),
- 585 =>
- array (
- 'match' => '(E015) 092E E015',
- 'replace' => '\\1 092E',
- ),
- 586 =>
- array (
- 'match' => '(E015) 092F E015',
- 'replace' => '\\1 092F',
- ),
- 587 =>
- array (
- 'match' => '(E015) 0930 E015',
- 'replace' => '\\1 0930',
- ),
- 588 =>
- array (
- 'match' => '(E015) 0932 E015',
- 'replace' => '\\1 0932',
- ),
- 589 =>
- array (
- 'match' => '(E015) 0933 E015',
- 'replace' => '\\1 0933',
- ),
- 590 =>
- array (
- 'match' => '(E015) 0935 E015',
- 'replace' => '\\1 0935',
- ),
- 591 =>
- array (
- 'match' => '(E015) 0936 E015',
- 'replace' => '\\1 0936',
- ),
- 592 =>
- array (
- 'match' => '(E015) 0937 E015',
- 'replace' => '\\1 0937',
- ),
- 593 =>
- array (
- 'match' => '(E015) 0938 E015',
- 'replace' => '\\1 0938',
- ),
- 594 =>
- array (
- 'match' => '(E015) 0939 E015',
- 'replace' => '\\1 0939',
- ),
- 595 =>
- array (
- 'match' => '(E015) E028 E015',
- 'replace' => '\\1 E028',
- ),
- 596 =>
- array (
- 'match' => '(E015) E029 E015',
- 'replace' => '\\1 E029',
- ),
- 597 =>
- array (
- 'match' => '(E015) E015 E015',
- 'replace' => '\\1 E015',
- ),
- 598 =>
- array (
- 'match' => '(E015) 0947 E015',
- 'replace' => '\\1 0947',
- ),
- 599 =>
- array (
- 'match' => '(E015) E1A8 E015',
- 'replace' => '\\1 E1A8',
- ),
- 600 =>
- array (
- 'match' => '(E015) E1A7 E015',
- 'replace' => '\\1 E1A7',
- ),
- 601 =>
- array (
- 'match' => '(E015) E199 E015',
- 'replace' => '\\1 E199',
- ),
- 602 =>
- array (
- 'match' => '(E015) E1B2 E015',
- 'replace' => '\\1 E1B2',
- ),
- 603 =>
- array (
- 'match' => '(E015) E1B1 E015',
- 'replace' => '\\1 E1B1',
- ),
- 604 =>
- array (
- 'match' => '(E015) 0946 E015',
- 'replace' => '\\1 0946',
- ),
- 605 =>
- array (
- 'match' => '(E015) E202 E015',
- 'replace' => '\\1 E202',
- ),
- 606 =>
- array (
- 'match' => '(E015) E201 E015',
- 'replace' => '\\1 E201',
- ),
- 607 =>
- array (
- 'match' => '(E015) E1A3 E015',
- 'replace' => '\\1 E1A3',
- ),
- 608 =>
- array (
- 'match' => '(E015) E1C6 E015',
- 'replace' => '\\1 E1C6',
- ),
- 609 =>
- array (
- 'match' => '(E015) E1C5 E015',
- 'replace' => '\\1 E1C5',
- ),
- 610 =>
- array (
- 'match' => '(E015) 0945 E015',
- 'replace' => '\\1 0945',
- ),
- 611 =>
- array (
- 'match' => '(E015) E200 E015',
- 'replace' => '\\1 E200',
- ),
- 612 =>
- array (
- 'match' => '(E015) E1FF E015',
- 'replace' => '\\1 E1FF',
- ),
- 613 =>
- array (
- 'match' => '(E015) 0948 E015',
- 'replace' => '\\1 0948',
- ),
- 614 =>
- array (
- 'match' => '(E015) E1AA E015',
- 'replace' => '\\1 E1AA',
- ),
- 615 =>
- array (
- 'match' => '(E015) E1A9 E015',
- 'replace' => '\\1 E1A9',
- ),
- 616 =>
- array (
- 'match' => '(E015) E19A E015',
- 'replace' => '\\1 E19A',
- ),
- 617 =>
- array (
- 'match' => '(E015) E1B4 E015',
- 'replace' => '\\1 E1B4',
- ),
- 618 =>
- array (
- 'match' => '(E015) E1B3 E015',
- 'replace' => '\\1 E1B3',
- ),
- 619 =>
- array (
- 'match' => '(E015) 0902 E015',
- 'replace' => '\\1 0902',
- ),
- 620 =>
- array (
- 'match' => '(E015) E00F E015',
- 'replace' => '\\1 E00F',
- ),
- 621 =>
- array (
- 'match' => '(E015) 0901 E015',
- 'replace' => '\\1 0901',
- ),
- 622 =>
- array (
- 'match' => '(E015) 0953 E015',
- 'replace' => '\\1 0953',
- ),
- 623 =>
- array (
- 'match' => '(E015) 0954 E015',
- 'replace' => '\\1 0954',
- ),
- 624 =>
- array (
- 'match' => '(E015) 0951 E015',
- 'replace' => '\\1 0951',
- ),
- 625 =>
- array (
- 'match' => '(E015) 0941 E015',
- 'replace' => '\\1 0941',
- ),
- 626 =>
- array (
- 'match' => '(E015) 0942 E015',
- 'replace' => '\\1 0942',
- ),
- 627 =>
- array (
- 'match' => '(E015) 0943 E015',
- 'replace' => '\\1 0943',
- ),
- 628 =>
- array (
- 'match' => '(E015) 0944 E015',
- 'replace' => '\\1 0944',
- ),
- 629 =>
- array (
- 'match' => '(E015) 0952 E015',
- 'replace' => '\\1 0952',
- ),
- 630 =>
- array (
- 'match' => '(E015) E013 E015',
- 'replace' => '\\1 E013',
- ),
- 631 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 0915 E015',
- 'replace' => '\\1 0915',
- ),
- 632 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 0916 E015',
- 'replace' => '\\1 0916',
- ),
- 633 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 0917 E015',
- 'replace' => '\\1 0917',
- ),
- 634 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 0918 E015',
- 'replace' => '\\1 0918',
- ),
- 635 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 0919 E015',
- 'replace' => '\\1 0919',
- ),
- 636 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 091A E015',
- 'replace' => '\\1 091A',
- ),
- 637 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 091B E015',
- 'replace' => '\\1 091B',
- ),
- 638 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 091C E015',
- 'replace' => '\\1 091C',
- ),
- 639 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 091D E015',
- 'replace' => '\\1 091D',
- ),
- 640 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 091E E015',
- 'replace' => '\\1 091E',
- ),
- 641 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 091F E015',
- 'replace' => '\\1 091F',
- ),
- 642 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 0920 E015',
- 'replace' => '\\1 0920',
- ),
- 643 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 0921 E015',
- 'replace' => '\\1 0921',
- ),
- 644 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 0922 E015',
- 'replace' => '\\1 0922',
- ),
- 645 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 0923 E015',
- 'replace' => '\\1 0923',
- ),
- 646 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 0924 E015',
- 'replace' => '\\1 0924',
- ),
- 647 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 0925 E015',
- 'replace' => '\\1 0925',
- ),
- 648 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 0926 E015',
- 'replace' => '\\1 0926',
- ),
- 649 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 0927 E015',
- 'replace' => '\\1 0927',
- ),
- 650 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 0928 E015',
- 'replace' => '\\1 0928',
- ),
- 651 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 092A E015',
- 'replace' => '\\1 092A',
- ),
- 652 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 092B E015',
- 'replace' => '\\1 092B',
- ),
- 653 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 092C E015',
- 'replace' => '\\1 092C',
- ),
- 654 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 092D E015',
- 'replace' => '\\1 092D',
- ),
- 655 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 092E E015',
- 'replace' => '\\1 092E',
- ),
- 656 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 092F E015',
- 'replace' => '\\1 092F',
- ),
- 657 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 0930 E015',
- 'replace' => '\\1 0930',
- ),
- 658 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 0932 E015',
- 'replace' => '\\1 0932',
- ),
- 659 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 0933 E015',
- 'replace' => '\\1 0933',
- ),
- 660 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 0935 E015',
- 'replace' => '\\1 0935',
- ),
- 661 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 0936 E015',
- 'replace' => '\\1 0936',
- ),
- 662 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 0937 E015',
- 'replace' => '\\1 0937',
- ),
- 663 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 0938 E015',
- 'replace' => '\\1 0938',
- ),
- 664 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 0939 E015',
- 'replace' => '\\1 0939',
- ),
- 665 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) E028 E015',
- 'replace' => '\\1 E028',
- ),
- 666 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) E029 E015',
- 'replace' => '\\1 E029',
- ),
- 667 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) E015 E015',
- 'replace' => '\\1 E015',
- ),
- 668 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 0947 E015',
- 'replace' => '\\1 0947',
- ),
- 669 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) E1A8 E015',
- 'replace' => '\\1 E1A8',
- ),
- 670 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) E1A7 E015',
- 'replace' => '\\1 E1A7',
- ),
- 671 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) E199 E015',
- 'replace' => '\\1 E199',
- ),
- 672 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) E1B2 E015',
- 'replace' => '\\1 E1B2',
- ),
- 673 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) E1B1 E015',
- 'replace' => '\\1 E1B1',
- ),
- 674 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 0946 E015',
- 'replace' => '\\1 0946',
- ),
- 675 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) E202 E015',
- 'replace' => '\\1 E202',
- ),
- 676 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) E201 E015',
- 'replace' => '\\1 E201',
- ),
- 677 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) E1A3 E015',
- 'replace' => '\\1 E1A3',
- ),
- 678 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) E1C6 E015',
- 'replace' => '\\1 E1C6',
- ),
- 679 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) E1C5 E015',
- 'replace' => '\\1 E1C5',
- ),
- 680 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 0945 E015',
- 'replace' => '\\1 0945',
- ),
- 681 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) E200 E015',
- 'replace' => '\\1 E200',
- ),
- 682 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) E1FF E015',
- 'replace' => '\\1 E1FF',
- ),
- 683 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 0948 E015',
- 'replace' => '\\1 0948',
- ),
- 684 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) E1AA E015',
- 'replace' => '\\1 E1AA',
- ),
- 685 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) E1A9 E015',
- 'replace' => '\\1 E1A9',
- ),
- 686 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) E19A E015',
- 'replace' => '\\1 E19A',
- ),
- 687 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) E1B4 E015',
- 'replace' => '\\1 E1B4',
- ),
- 688 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) E1B3 E015',
- 'replace' => '\\1 E1B3',
- ),
- 689 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 0902 E015',
- 'replace' => '\\1 0902',
- ),
- 690 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) E00F E015',
- 'replace' => '\\1 E00F',
- ),
- 691 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 0901 E015',
- 'replace' => '\\1 0901',
- ),
- 692 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 0953 E015',
- 'replace' => '\\1 0953',
- ),
- 693 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 0954 E015',
- 'replace' => '\\1 0954',
- ),
- 694 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 0951 E015',
- 'replace' => '\\1 0951',
- ),
- 695 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 0941 E015',
- 'replace' => '\\1 0941',
- ),
- 696 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 0942 E015',
- 'replace' => '\\1 0942',
- ),
- 697 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 0943 E015',
- 'replace' => '\\1 0943',
- ),
- 698 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 0944 E015',
- 'replace' => '\\1 0944',
- ),
- 699 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) 0952 E015',
- 'replace' => '\\1 0952',
- ),
- 700 =>
- array (
- 'match' => '(E015 (0915|0916|0917|0918|0919|091A|091B|091C|091D|091E|091F|0920|0921|0922|0923|0924|0925|0926|0927|0928|092A|092B|092C|092D|092E|092F|0930|0932|0933|0935|0936|0937|0938|0939|E028|E029)) E013 E015',
- 'replace' => '\\1 E013',
- ),
- 701 =>
- array (
- 'match' => '(093F) E015',
- 'replace' => '\\1 E015 093F',
- ),
- 702 =>
- array (
- 'match' => '093F E015',
- 'replace' => 'E015',
- ),
- 703 =>
- array (
- 'match' => '0915 0962',
- 'replace' => 'E153',
- ),
- 704 =>
- array (
- 'match' => '0915 0963',
- 'replace' => 'E154',
- ),
- 705 =>
- array (
- 'match' => 'E08F 0941',
- 'replace' => 'E155',
- ),
- 706 =>
- array (
- 'match' => 'E08F 0942',
- 'replace' => 'E156',
- ),
- 707 =>
- array (
- 'match' => 'E08F 0943',
- 'replace' => 'E157',
- ),
- 708 =>
- array (
- 'match' => 'E08F 0944',
- 'replace' => 'E158',
- ),
- 709 =>
- array (
- 'match' => 'E091 0941',
- 'replace' => 'E159',
- ),
- 710 =>
- array (
- 'match' => 'E091 0942',
- 'replace' => 'E15A',
- ),
- 711 =>
- array (
- 'match' => 'E091 0943',
- 'replace' => 'E15B',
- ),
- 712 =>
- array (
- 'match' => 'E091 0944',
- 'replace' => 'E15C',
- ),
- 713 =>
- array (
- 'match' => 'E095 0941',
- 'replace' => 'E15D',
- ),
- 714 =>
- array (
- 'match' => 'E095 0942',
- 'replace' => 'E15E',
- ),
- 715 =>
- array (
- 'match' => 'E095 0943',
- 'replace' => 'E15F',
- ),
- 716 =>
- array (
- 'match' => 'E095 0944',
- 'replace' => 'E160',
- ),
- 717 =>
- array (
- 'match' => 'E096 0941',
- 'replace' => 'E161',
- ),
- 718 =>
- array (
- 'match' => 'E096 0942',
- 'replace' => 'E162',
- ),
- 719 =>
- array (
- 'match' => 'E096 0943',
- 'replace' => 'E163',
- ),
- 720 =>
- array (
- 'match' => 'E096 0944',
- 'replace' => 'E164',
- ),
- 721 =>
- array (
- 'match' => 'E097 0941',
- 'replace' => 'E165',
- ),
- 722 =>
- array (
- 'match' => 'E097 0942',
- 'replace' => 'E166',
- ),
- 723 =>
- array (
- 'match' => 'E097 0943',
- 'replace' => 'E167',
- ),
- 724 =>
- array (
- 'match' => 'E097 0944',
- 'replace' => 'E168',
- ),
- 725 =>
- array (
- 'match' => 'E098 0941',
- 'replace' => 'E169',
- ),
- 726 =>
- array (
- 'match' => 'E098 0942',
- 'replace' => 'E16A',
- ),
- 727 =>
- array (
- 'match' => 'E098 0943',
- 'replace' => 'E16B',
- ),
- 728 =>
- array (
- 'match' => 'E098 0944',
- 'replace' => 'E16C',
- ),
- 729 =>
- array (
- 'match' => '0926 0943',
- 'replace' => 'E16D',
- ),
- 730 =>
- array (
- 'match' => '092A 0962',
- 'replace' => 'E16E',
- ),
- 731 =>
- array (
- 'match' => '092A 0963',
- 'replace' => 'E16F',
- ),
- 732 =>
- array (
- 'match' => '0939 0943',
- 'replace' => 'E172',
- ),
- 733 =>
- array (
- 'match' => '0939 0944',
- 'replace' => 'E173',
- ),
- 734 =>
- array (
- 'match' => 'E0B3 0941',
- 'replace' => 'E174',
- ),
- 735 =>
- array (
- 'match' => 'E0B3 0942',
- 'replace' => 'E175',
- ),
- 736 =>
- array (
- 'match' => 'E0B3 0943',
- 'replace' => 'E176',
- ),
- 737 =>
- array (
- 'match' => 'E0B3 0944',
- 'replace' => 'E177',
- ),
- 738 =>
- array (
- 'match' => 'E0B5 0941',
- 'replace' => 'E178',
- ),
- 739 =>
- array (
- 'match' => 'E0B5 0942',
- 'replace' => 'E179',
- ),
- 740 =>
- array (
- 'match' => 'E0B5 0943',
- 'replace' => 'E17A',
- ),
- 741 =>
- array (
- 'match' => 'E0B5 0944',
- 'replace' => 'E17B',
- ),
- 742 =>
- array (
- 'match' => 'E0B9 0941',
- 'replace' => 'E17C',
- ),
- 743 =>
- array (
- 'match' => 'E0B9 0942',
- 'replace' => 'E17D',
- ),
- 744 =>
- array (
- 'match' => 'E0B9 0943',
- 'replace' => 'E17E',
- ),
- 745 =>
- array (
- 'match' => 'E0B9 0944',
- 'replace' => 'E17F',
- ),
- 746 =>
- array (
- 'match' => 'E0BA 0941',
- 'replace' => 'E180',
- ),
- 747 =>
- array (
- 'match' => 'E0BA 0942',
- 'replace' => 'E181',
- ),
- 748 =>
- array (
- 'match' => 'E0BA 0943',
- 'replace' => 'E182',
- ),
- 749 =>
- array (
- 'match' => 'E0BA 0944',
- 'replace' => 'E183',
- ),
- 750 =>
- array (
- 'match' => 'E0BB 0941',
- 'replace' => 'E184',
- ),
- 751 =>
- array (
- 'match' => 'E0BB 0942',
- 'replace' => 'E185',
- ),
- 752 =>
- array (
- 'match' => 'E0BB 0943',
- 'replace' => 'E186',
- ),
- 753 =>
- array (
- 'match' => 'E0BB 0944',
- 'replace' => 'E187',
- ),
- 754 =>
- array (
- 'match' => 'E0BC 0941',
- 'replace' => 'E188',
- ),
- 755 =>
- array (
- 'match' => 'E0BC 0942',
- 'replace' => 'E189',
- ),
- 756 =>
- array (
- 'match' => 'E0BC 0943',
- 'replace' => 'E18A',
- ),
- 757 =>
- array (
- 'match' => 'E0BC 0944',
- 'replace' => 'E18B',
- ),
- 758 =>
- array (
- 'match' => 'E131 0941',
- 'replace' => 'E18C',
- ),
- 759 =>
- array (
- 'match' => 'E131 0942',
- 'replace' => 'E18D',
- ),
- 760 =>
- array (
- 'match' => 'E131 0943',
- 'replace' => 'E18E',
- ),
- 761 =>
- array (
- 'match' => 'E131 0944',
- 'replace' => 'E18F',
- ),
- 762 =>
- array (
- 'match' => 'E132 0941',
- 'replace' => 'E190',
- ),
- 763 =>
- array (
- 'match' => 'E132 0942',
- 'replace' => 'E191',
- ),
- 764 =>
- array (
- 'match' => 'E132 0943',
- 'replace' => 'E192',
- ),
- 765 =>
- array (
- 'match' => 'E132 0944',
- 'replace' => 'E193',
- ),
- 766 =>
- array (
- 'match' => '((0930|0931|E0A5|E0C9)) 0941',
- 'replace' => '\\1 E170',
- ),
- 767 =>
- array (
- 'match' => '((0930|0931|E0A5|E0C9)) 0942',
- 'replace' => '\\1 E171',
- ),
- 768 =>
- array (
- 'match' => '0947 E015',
- 'replace' => 'E199',
- ),
- 769 =>
- array (
- 'match' => '0948 E015',
- 'replace' => 'E19A',
- ),
- 770 =>
- array (
- 'match' => '0940 E015',
- 'replace' => 'E19B',
- ),
- 771 =>
- array (
- 'match' => 'E194 E015',
- 'replace' => 'E19C',
- ),
- 772 =>
- array (
- 'match' => 'E195 E015',
- 'replace' => 'E19D',
- ),
- 773 =>
- array (
- 'match' => 'E196 E015',
- 'replace' => 'E19E',
- ),
- 774 =>
- array (
- 'match' => 'E197 E015',
- 'replace' => 'E19F',
- ),
- 775 =>
- array (
- 'match' => 'E198 E015',
- 'replace' => 'E1A0',
- ),
- 776 =>
- array (
- 'match' => '094B E015',
- 'replace' => 'E1A1',
- ),
- 777 =>
- array (
- 'match' => '094C E015',
- 'replace' => 'E1A2',
- ),
- 778 =>
- array (
- 'match' => '0946 E015',
- 'replace' => 'E1A3',
- ),
- 779 =>
- array (
- 'match' => '094A E015',
- 'replace' => 'E1A4',
- ),
- 780 =>
- array (
- 'match' => '0908 0901',
- 'replace' => 'E1A5',
- ),
- 781 =>
- array (
- 'match' => '0908 0902',
- 'replace' => 'E1A6',
- ),
- 782 =>
- array (
- 'match' => 'E12F 0901',
- 'replace' => 'E1C9',
- ),
- 783 =>
- array (
- 'match' => 'E130 0901',
- 'replace' => 'E1CA',
- ),
- 784 =>
- array (
- 'match' => '0945 0901',
- 'replace' => 'E200',
- ),
- 785 =>
- array (
- 'match' => '0946 0901',
- 'replace' => 'E202',
- ),
- 786 =>
- array (
- 'match' => '0947 0901',
- 'replace' => 'E1A7',
- ),
- 787 =>
- array (
- 'match' => '0948 0901',
- 'replace' => 'E1A9',
- ),
- 788 =>
- array (
- 'match' => '094B 0901',
- 'replace' => 'E1AB',
- ),
- 789 =>
- array (
- 'match' => '094C 0901',
- 'replace' => 'E1AD',
- ),
- 790 =>
- array (
- 'match' => '0945 0902',
- 'replace' => 'E1FF',
- ),
- 791 =>
- array (
- 'match' => '0946 0902',
- 'replace' => 'E201',
- ),
- 792 =>
- array (
- 'match' => '0947 0902',
- 'replace' => 'E1A8',
- ),
- 793 =>
- array (
- 'match' => '0948 0902',
- 'replace' => 'E1AA',
- ),
- 794 =>
- array (
- 'match' => '094B 0902',
- 'replace' => 'E1AC',
- ),
- 795 =>
- array (
- 'match' => '094C 0902',
- 'replace' => 'E1AE',
- ),
- 796 =>
- array (
- 'match' => 'E015 0902 0901',
- 'replace' => 'E1B0 E1AF',
- ),
- 797 =>
- array (
- 'match' => 'E199 0902 0901',
- 'replace' => 'E1B2 E1B1',
- ),
- 798 =>
- array (
- 'match' => 'E19A 0902 0901',
- 'replace' => 'E1B4 E1B3',
- ),
- 799 =>
- array (
- 'match' => 'E1A1 0902 0901',
- 'replace' => 'E1C2 E1C1',
- ),
- 800 =>
- array (
- 'match' => 'E1A3 0902 0901',
- 'replace' => 'E1C6 E1C5',
- ),
- 801 =>
- array (
- 'match' => 'E1A4 0902 0901',
- 'replace' => 'E1C8 E1C7',
- ),
- 802 =>
- array (
- 'match' => 'E1A2 0902 0901',
- 'replace' => 'E1C4 E1C3',
- ),
- 803 =>
- array (
- 'match' => 'E19B 0901',
- 'replace' => 'E1B5',
- ),
- 804 =>
- array (
- 'match' => 'E19C 0901',
- 'replace' => 'E1B6',
- ),
- 805 =>
- array (
- 'match' => 'E19D 0901',
- 'replace' => 'E1B7',
- ),
- 806 =>
- array (
- 'match' => 'E19E 0901',
- 'replace' => 'E1B8',
- ),
- 807 =>
- array (
- 'match' => 'E19F 0901',
- 'replace' => 'E1B9',
- ),
- 808 =>
- array (
- 'match' => 'E1A0 0901',
- 'replace' => 'E1BA',
- ),
- 809 =>
- array (
- 'match' => 'E19B 0902',
- 'replace' => 'E1BB',
- ),
- 810 =>
- array (
- 'match' => 'E19C 0902',
- 'replace' => 'E1BC',
- ),
- 811 =>
- array (
- 'match' => 'E19D 0902',
- 'replace' => 'E1BD',
- ),
- 812 =>
- array (
- 'match' => 'E19E 0902',
- 'replace' => 'E1BE',
- ),
- 813 =>
- array (
- 'match' => 'E19F 0902',
- 'replace' => 'E1BF',
- ),
- 814 =>
- array (
- 'match' => 'E1A0 0902',
- 'replace' => 'E1C0',
- ),
- 815 =>
- array (
- 'match' => '((0908|E01B|090D|090E|E01F|0910|E021|0914|E025|E016|E017|0940|E194|E195|E196|E197|E198|E19B|E19C|E19D|E19E|E19F|E1A0|0949|094A|E1A4|094B|E1A1|094C|E1A2|E015|0947|E1A8|E1A7|E199|E1B2|E1B1|0946|E202|E201|E1A3|E1C6|E1C5|0945|E200|E1FF|0948|E1AA|E1A9|E19A|E1B4|E1B3|0902|E00F|0901|0953|0954|0951)) 0901',
- 'replace' => '\\1 E00F',
- ),
- 816 =>
- array (
- 'match' => '093F ((0930|0931))',
- 'replace' => 'E14B \\1',
- ),
- 817 =>
- array (
- 'match' => '093F ((0915|0958|E08B|E0AF|0919|E02B|E08F|E0B3|091F|E030|E095|E0B9|0920|E031|E096|E0BA|0921|095C|E097|E0BB|0922|095D|E098|E0BC|0926|E035|E09C|E0C0|092B|095E|E0A0|E0C4|0939|E040|E0AC|E0D0|E120|E122|E124|E125|E129|E134|E139))',
- 'replace' => 'E14C \\1',
- ),
- 818 =>
- array (
- 'match' => '093F ((0924|E033|E09A|E0BE|092A|E037|E09F|E0C3|092C|E038|E0A1|E0C5|0935|E03C|E0A8|E0CC|0937|E03E|E0AA|E0CE|E11B|E11E|E121|E123|E126|E12F|E130|E131|E132|E137|E138))',
- 'replace' => 'E14D \\1',
- ),
- 819 =>
- array (
- 'match' => '093F ((0917|095A|E08D|E0B1|0918|E02A|E08E|E0B2|091A|E02C|E090|E0B4|091B|E02D|E091|E0B5|091E|E02F|E094|E0B8|0925|E034|0927|E036|E09D|E0C1|0928|0929|E09E|E0C2|092D|E039|E0A2|E0C6|092E|E03A|E0A3|E0C7|092F|095F|E0A4|E0C8|0932|E03B|E0A6|E0CA|0933|0934|E0A7|E0CB|0936|E03D|E0A9|E0CD|0938|E03F|E0AB|E0CF|E127|E128|E12A|E135|E136))',
- 'replace' => 'E14E \\1',
- ),
- 820 =>
- array (
- 'match' => '((0940|094A|094B|094C|0946|0947|0948)) E015',
- 'replace' => '\\1 E014',
- ),
- 821 =>
- array (
- 'match' => '((0919|E02B|E08F|E0B3|091F|E030|E095|E0B9|0922|095D|E098|E0BC|0926|E035|E09C|E0C0|0930|0931|0932|E03B|E0A6|E0CA|0939|E040|E0AC|E0D0)) 0940',
- 'replace' => '\\1 E194',
- ),
- 822 =>
- array (
- 'match' => '((0919|E02B|E08F|E0B3|091F|E030|E095|E0B9|0922|095D|E098|E0BC|0926|E035|E09C|E0C0|0930|0931|0932|E03B|E0A6|E0CA|0939|E040|E0AC|E0D0)) E19B',
- 'replace' => '\\1 E19C',
- ),
- 823 =>
- array (
- 'match' => '((0919|E02B|E08F|E0B3|091F|E030|E095|E0B9|0922|095D|E098|E0BC|0926|E035|E09C|E0C0|0930|0931|0932|E03B|E0A6|E0CA|0939|E040|E0AC|E0D0)) E1B5',
- 'replace' => '\\1 E1B6',
- ),
- 824 =>
- array (
- 'match' => '((0919|E02B|E08F|E0B3|091F|E030|E095|E0B9|0922|095D|E098|E0BC|0926|E035|E09C|E0C0|0930|0931|0932|E03B|E0A6|E0CA|0939|E040|E0AC|E0D0)) E1BB',
- 'replace' => '\\1 E1BC',
- ),
- 825 =>
- array (
- 'match' => '((091B|E02D|E091|E0B5|0920|E031|E096|E0BA)) 0940',
- 'replace' => '\\1 E195',
- ),
- 826 =>
- array (
- 'match' => '((091B|E02D|E091|E0B5|0920|E031|E096|E0BA)) E19B',
- 'replace' => '\\1 E19D',
- ),
- 827 =>
- array (
- 'match' => '((091B|E02D|E091|E0B5|0920|E031|E096|E0BA)) E1B5',
- 'replace' => '\\1 E1B7',
- ),
- 828 =>
- array (
- 'match' => '((091B|E02D|E091|E0B5|0920|E031|E096|E0BA)) E1BB',
- 'replace' => '\\1 E1BD',
- ),
- 829 =>
- array (
- 'match' => '((0915|0958|E08B|E0AF|092B|095E|E0A0|E0C4)) 0940',
- 'replace' => '\\1 E198',
- ),
- 830 =>
- array (
- 'match' => '((0915|0958|E08B|E0AF|092B|095E|E0A0|E0C4)) E19B',
- 'replace' => '\\1 E1A0',
- ),
- 831 =>
- array (
- 'match' => '((0915|0958|E08B|E0AF|092B|095E|E0A0|E0C4)) E1B5',
- 'replace' => '\\1 E1BA',
- ),
- 832 =>
- array (
- 'match' => '((0915|0958|E08B|E0AF|092B|095E|E0A0|E0C4)) E1BB',
- 'replace' => '\\1 E1C0',
- ),
-);
-?>
\ No newline at end of file
diff --git a/public/mpdf/includes/ind_kn_1_001.volt.php b/public/mpdf/includes/ind_kn_1_001.volt.php
deleted file mode 100644
index b059f8f..0000000
--- a/public/mpdf/includes/ind_kn_1_001.volt.php
+++ /dev/null
@@ -1,2994 +0,0 @@
-
- array (
- 'match' => '0CCD 200C',
- 'replace' => 'E0AD',
- ),
- 1 =>
- array (
- 'match' => '200D 0CCD',
- 'replace' => 'E0AC',
- ),
- 2 =>
- array (
- 'match' => '0CC6 0CC2',
- 'replace' => '0CCA',
- ),
- 3 =>
- array (
- 'match' => '0C95 0CCD 0CB7',
- 'replace' => 'E07D',
- ),
- 4 =>
- array (
- 'match' => '0C9C 0CCD 0C9E',
- 'replace' => 'E07E',
- ),
- 5 =>
- array (
- 'match' => '0CB0 0CCD',
- 'replace' => 'E00B',
- ),
- 6 =>
- array (
- 'match' => '((0C95|0C96|0C97|0C98|0C99|0C9A|0C9B|0C9C|0C9D|0C9E|0C9F|0CA0|0CA1|0CA2|0CA3|0CA4|0CA5|0CA6|0CA7|0CA8|0CAA|0CAB|0CAC|0CAD|0CAE|0CAF|0CB0|0CB1|0CB2|0CB3|0CB5|0CB6|0CB7|0CB8|0CB9|E07D|E07E|E0A3)) 0CCD',
- 'replace' => '\\1 E0AC',
- ),
- 7 =>
- array (
- 'match' => '((0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) 0CCD',
- 'replace' => '\\1 E0AC',
- ),
- 8 =>
- array (
- 'match' => '(0CBC) 0CCD',
- 'replace' => '\\1 E0AC',
- ),
- 9 =>
- array (
- 'match' => '(0020) 0CCD',
- 'replace' => '\\1 E0AC',
- ),
- 10 =>
- array (
- 'match' => '(25CC) 0CCD',
- 'replace' => '\\1 E0AC',
- ),
- 11 =>
- array (
- 'match' => '0C95 0CBC',
- 'replace' => 'E0E6',
- ),
- 12 =>
- array (
- 'match' => '0C96 0CBC',
- 'replace' => 'E0E7',
- ),
- 13 =>
- array (
- 'match' => '0C97 0CBC',
- 'replace' => 'E172',
- ),
- 14 =>
- array (
- 'match' => '0C98 0CBC',
- 'replace' => 'E173',
- ),
- 15 =>
- array (
- 'match' => '0C99 0CBC',
- 'replace' => 'E174',
- ),
- 16 =>
- array (
- 'match' => '0C9A 0CBC',
- 'replace' => 'E175',
- ),
- 17 =>
- array (
- 'match' => '0C9B 0CBC',
- 'replace' => 'E176',
- ),
- 18 =>
- array (
- 'match' => '0C9C 0CBC',
- 'replace' => 'E0E8',
- ),
- 19 =>
- array (
- 'match' => '0C9D 0CBC',
- 'replace' => 'E0E9',
- ),
- 20 =>
- array (
- 'match' => '0C9E 0CBC',
- 'replace' => 'E177',
- ),
- 21 =>
- array (
- 'match' => '0C9F 0CBC',
- 'replace' => 'E178',
- ),
- 22 =>
- array (
- 'match' => '0CA0 0CBC',
- 'replace' => 'E179',
- ),
- 23 =>
- array (
- 'match' => '0CA1 0CBC',
- 'replace' => 'E17A',
- ),
- 24 =>
- array (
- 'match' => '0CA2 0CBC',
- 'replace' => 'E17B',
- ),
- 25 =>
- array (
- 'match' => '0CA3 0CBC',
- 'replace' => 'E17C',
- ),
- 26 =>
- array (
- 'match' => '0CA4 0CBC',
- 'replace' => 'E17D',
- ),
- 27 =>
- array (
- 'match' => '0CA5 0CBC',
- 'replace' => 'E17E',
- ),
- 28 =>
- array (
- 'match' => '0CA6 0CBC',
- 'replace' => 'E17F',
- ),
- 29 =>
- array (
- 'match' => '0CA7 0CBC',
- 'replace' => 'E180',
- ),
- 30 =>
- array (
- 'match' => '0CA8 0CBC',
- 'replace' => 'E181',
- ),
- 31 =>
- array (
- 'match' => '0CAA 0CBC',
- 'replace' => 'E182',
- ),
- 32 =>
- array (
- 'match' => '0CAB 0CBC',
- 'replace' => 'E0EA',
- ),
- 33 =>
- array (
- 'match' => '0CAC 0CBC',
- 'replace' => 'E183',
- ),
- 34 =>
- array (
- 'match' => '0CAD 0CBC',
- 'replace' => 'E184',
- ),
- 35 =>
- array (
- 'match' => '0CAE 0CBC',
- 'replace' => 'E185',
- ),
- 36 =>
- array (
- 'match' => '0CAF 0CBC',
- 'replace' => 'E186',
- ),
- 37 =>
- array (
- 'match' => '0CB0 0CBC',
- 'replace' => 'E0EB',
- ),
- 38 =>
- array (
- 'match' => '0CB1 0CBC',
- 'replace' => 'E187',
- ),
- 39 =>
- array (
- 'match' => '0CB2 0CBC',
- 'replace' => 'E188',
- ),
- 40 =>
- array (
- 'match' => '0CB3 0CBC',
- 'replace' => 'E189',
- ),
- 41 =>
- array (
- 'match' => '0CB5 0CBC',
- 'replace' => 'E18A',
- ),
- 42 =>
- array (
- 'match' => '0CB6 0CBC',
- 'replace' => 'E18B',
- ),
- 43 =>
- array (
- 'match' => '0CB7 0CBC',
- 'replace' => 'E18C',
- ),
- 44 =>
- array (
- 'match' => '0CB8 0CBC',
- 'replace' => 'E18D',
- ),
- 45 =>
- array (
- 'match' => '0CB9 0CBC',
- 'replace' => 'E18E',
- ),
- 46 =>
- array (
- 'match' => 'E07D 0CBC',
- 'replace' => 'E117',
- ),
- 47 =>
- array (
- 'match' => 'E07E 0CBC',
- 'replace' => 'E118',
- ),
- 48 =>
- array (
- 'match' => 'E0A3 0CBC',
- 'replace' => 'E136',
- ),
- 49 =>
- array (
- 'match' => 'E0AC 0C95',
- 'replace' => 'E02E',
- ),
- 50 =>
- array (
- 'match' => 'E0AC 0C96',
- 'replace' => 'E02F',
- ),
- 51 =>
- array (
- 'match' => 'E0AC 0C97',
- 'replace' => 'E030',
- ),
- 52 =>
- array (
- 'match' => 'E0AC 0C98',
- 'replace' => 'E031',
- ),
- 53 =>
- array (
- 'match' => 'E0AC 0C99',
- 'replace' => 'E032',
- ),
- 54 =>
- array (
- 'match' => 'E0AC 0C9A',
- 'replace' => 'E033',
- ),
- 55 =>
- array (
- 'match' => 'E0AC 0C9B',
- 'replace' => 'E034',
- ),
- 56 =>
- array (
- 'match' => 'E0AC 0C9C',
- 'replace' => 'E035',
- ),
- 57 =>
- array (
- 'match' => 'E0AC 0C9D',
- 'replace' => 'E036',
- ),
- 58 =>
- array (
- 'match' => 'E0AC 0C9E',
- 'replace' => 'E037',
- ),
- 59 =>
- array (
- 'match' => 'E0AC 0C9F',
- 'replace' => 'E038',
- ),
- 60 =>
- array (
- 'match' => 'E0AC 0CA0',
- 'replace' => 'E039',
- ),
- 61 =>
- array (
- 'match' => 'E0AC 0CA1',
- 'replace' => 'E03A',
- ),
- 62 =>
- array (
- 'match' => 'E0AC 0CA2',
- 'replace' => 'E03B',
- ),
- 63 =>
- array (
- 'match' => 'E0AC 0CA3',
- 'replace' => 'E03C',
- ),
- 64 =>
- array (
- 'match' => 'E0AC 0CA4',
- 'replace' => 'E03D',
- ),
- 65 =>
- array (
- 'match' => 'E0AC 0CA5',
- 'replace' => 'E03E',
- ),
- 66 =>
- array (
- 'match' => 'E0AC 0CA6',
- 'replace' => 'E03F',
- ),
- 67 =>
- array (
- 'match' => 'E0AC 0CA7',
- 'replace' => 'E040',
- ),
- 68 =>
- array (
- 'match' => 'E0AC 0CA8',
- 'replace' => 'E041',
- ),
- 69 =>
- array (
- 'match' => 'E0AC 0CAA',
- 'replace' => 'E042',
- ),
- 70 =>
- array (
- 'match' => 'E0AC 0CAB',
- 'replace' => 'E043',
- ),
- 71 =>
- array (
- 'match' => 'E0AC 0CAC',
- 'replace' => 'E044',
- ),
- 72 =>
- array (
- 'match' => 'E0AC 0CAD',
- 'replace' => 'E045',
- ),
- 73 =>
- array (
- 'match' => 'E0AC 0CAE',
- 'replace' => 'E046',
- ),
- 74 =>
- array (
- 'match' => 'E0AC 0CAF',
- 'replace' => 'E047',
- ),
- 75 =>
- array (
- 'match' => 'E0AC 0CB0',
- 'replace' => 'E048',
- ),
- 76 =>
- array (
- 'match' => 'E0AC 0CB1',
- 'replace' => 'E049',
- ),
- 77 =>
- array (
- 'match' => 'E0AC 0CB2',
- 'replace' => 'E04A',
- ),
- 78 =>
- array (
- 'match' => 'E0AC 0CB3',
- 'replace' => 'E04B',
- ),
- 79 =>
- array (
- 'match' => 'E0AC 0CB5',
- 'replace' => 'E04C',
- ),
- 80 =>
- array (
- 'match' => 'E0AC 0CB6',
- 'replace' => 'E04D',
- ),
- 81 =>
- array (
- 'match' => 'E0AC 0CB7',
- 'replace' => 'E04E',
- ),
- 82 =>
- array (
- 'match' => 'E0AC 0CB8',
- 'replace' => 'E04F',
- ),
- 83 =>
- array (
- 'match' => 'E0AC 0CB9',
- 'replace' => 'E050',
- ),
- 84 =>
- array (
- 'match' => 'E0AC E07D',
- 'replace' => 'E081',
- ),
- 85 =>
- array (
- 'match' => 'E07D E03C',
- 'replace' => 'E0A3',
- ),
- 86 =>
- array (
- 'match' => '((E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E081)) E02E',
- 'replace' => '\\1 E052',
- ),
- 87 =>
- array (
- 'match' => '((E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E081)) E02F',
- 'replace' => '\\1 E053',
- ),
- 88 =>
- array (
- 'match' => '((E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E081)) E030',
- 'replace' => '\\1 E054',
- ),
- 89 =>
- array (
- 'match' => '((E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E081)) E031',
- 'replace' => '\\1 E055',
- ),
- 90 =>
- array (
- 'match' => '((E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E081)) E032',
- 'replace' => '\\1 E056',
- ),
- 91 =>
- array (
- 'match' => '((E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E081)) E033',
- 'replace' => '\\1 E057',
- ),
- 92 =>
- array (
- 'match' => '((E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E081)) E034',
- 'replace' => '\\1 E058',
- ),
- 93 =>
- array (
- 'match' => '((E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E081)) E035',
- 'replace' => '\\1 E059',
- ),
- 94 =>
- array (
- 'match' => '((E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E081)) E036',
- 'replace' => '\\1 E05A',
- ),
- 95 =>
- array (
- 'match' => '((E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E081)) E037',
- 'replace' => '\\1 E05B',
- ),
- 96 =>
- array (
- 'match' => '((E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E081)) E038',
- 'replace' => '\\1 E05C',
- ),
- 97 =>
- array (
- 'match' => '((E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E081)) E039',
- 'replace' => '\\1 E05D',
- ),
- 98 =>
- array (
- 'match' => '((E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E081)) E03A',
- 'replace' => '\\1 E05E',
- ),
- 99 =>
- array (
- 'match' => '((E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E081)) E03B',
- 'replace' => '\\1 E05F',
- ),
- 100 =>
- array (
- 'match' => '((E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E081)) E03C',
- 'replace' => '\\1 E060',
- ),
- 101 =>
- array (
- 'match' => '((E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E081)) E03D',
- 'replace' => '\\1 E061',
- ),
- 102 =>
- array (
- 'match' => '((E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E081)) E03E',
- 'replace' => '\\1 E062',
- ),
- 103 =>
- array (
- 'match' => '((E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E081)) E03F',
- 'replace' => '\\1 E063',
- ),
- 104 =>
- array (
- 'match' => '((E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E081)) E040',
- 'replace' => '\\1 E064',
- ),
- 105 =>
- array (
- 'match' => '((E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E081)) E041',
- 'replace' => '\\1 E065',
- ),
- 106 =>
- array (
- 'match' => '((E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E081)) E042',
- 'replace' => '\\1 E066',
- ),
- 107 =>
- array (
- 'match' => '((E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E081)) E043',
- 'replace' => '\\1 E067',
- ),
- 108 =>
- array (
- 'match' => '((E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E081)) E044',
- 'replace' => '\\1 E068',
- ),
- 109 =>
- array (
- 'match' => '((E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E081)) E045',
- 'replace' => '\\1 E069',
- ),
- 110 =>
- array (
- 'match' => '((E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E081)) E046',
- 'replace' => '\\1 E06A',
- ),
- 111 =>
- array (
- 'match' => '((E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E081)) E047',
- 'replace' => '\\1 E06B',
- ),
- 112 =>
- array (
- 'match' => '((E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E081)) E048',
- 'replace' => '\\1 E06C',
- ),
- 113 =>
- array (
- 'match' => '((E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E081)) E049',
- 'replace' => '\\1 E06D',
- ),
- 114 =>
- array (
- 'match' => '((E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E081)) E04A',
- 'replace' => '\\1 E06E',
- ),
- 115 =>
- array (
- 'match' => '((E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E081)) E04B',
- 'replace' => '\\1 E06F',
- ),
- 116 =>
- array (
- 'match' => '((E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E081)) E04C',
- 'replace' => '\\1 E070',
- ),
- 117 =>
- array (
- 'match' => '((E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E081)) E04D',
- 'replace' => '\\1 E071',
- ),
- 118 =>
- array (
- 'match' => '((E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E081)) E04E',
- 'replace' => '\\1 E072',
- ),
- 119 =>
- array (
- 'match' => '((E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E081)) E04F',
- 'replace' => '\\1 E073',
- ),
- 120 =>
- array (
- 'match' => '((E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E081)) E050',
- 'replace' => '\\1 E074',
- ),
- 121 =>
- array (
- 'match' => '((E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E081)) E081',
- 'replace' => '\\1 E081',
- ),
- 122 =>
- array (
- 'match' => '((E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E081)) E02E',
- 'replace' => '\\1 E052',
- ),
- 123 =>
- array (
- 'match' => '((E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E081)) E02F',
- 'replace' => '\\1 E053',
- ),
- 124 =>
- array (
- 'match' => '((E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E081)) E030',
- 'replace' => '\\1 E054',
- ),
- 125 =>
- array (
- 'match' => '((E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E081)) E031',
- 'replace' => '\\1 E055',
- ),
- 126 =>
- array (
- 'match' => '((E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E081)) E032',
- 'replace' => '\\1 E056',
- ),
- 127 =>
- array (
- 'match' => '((E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E081)) E033',
- 'replace' => '\\1 E057',
- ),
- 128 =>
- array (
- 'match' => '((E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E081)) E034',
- 'replace' => '\\1 E058',
- ),
- 129 =>
- array (
- 'match' => '((E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E081)) E035',
- 'replace' => '\\1 E059',
- ),
- 130 =>
- array (
- 'match' => '((E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E081)) E036',
- 'replace' => '\\1 E05A',
- ),
- 131 =>
- array (
- 'match' => '((E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E081)) E037',
- 'replace' => '\\1 E05B',
- ),
- 132 =>
- array (
- 'match' => '((E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E081)) E038',
- 'replace' => '\\1 E05C',
- ),
- 133 =>
- array (
- 'match' => '((E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E081)) E039',
- 'replace' => '\\1 E05D',
- ),
- 134 =>
- array (
- 'match' => '((E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E081)) E03A',
- 'replace' => '\\1 E05E',
- ),
- 135 =>
- array (
- 'match' => '((E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E081)) E03B',
- 'replace' => '\\1 E05F',
- ),
- 136 =>
- array (
- 'match' => '((E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E081)) E03C',
- 'replace' => '\\1 E060',
- ),
- 137 =>
- array (
- 'match' => '((E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E081)) E03D',
- 'replace' => '\\1 E061',
- ),
- 138 =>
- array (
- 'match' => '((E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E081)) E03E',
- 'replace' => '\\1 E062',
- ),
- 139 =>
- array (
- 'match' => '((E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E081)) E03F',
- 'replace' => '\\1 E063',
- ),
- 140 =>
- array (
- 'match' => '((E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E081)) E040',
- 'replace' => '\\1 E064',
- ),
- 141 =>
- array (
- 'match' => '((E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E081)) E041',
- 'replace' => '\\1 E065',
- ),
- 142 =>
- array (
- 'match' => '((E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E081)) E042',
- 'replace' => '\\1 E066',
- ),
- 143 =>
- array (
- 'match' => '((E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E081)) E043',
- 'replace' => '\\1 E067',
- ),
- 144 =>
- array (
- 'match' => '((E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E081)) E044',
- 'replace' => '\\1 E068',
- ),
- 145 =>
- array (
- 'match' => '((E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E081)) E045',
- 'replace' => '\\1 E069',
- ),
- 146 =>
- array (
- 'match' => '((E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E081)) E046',
- 'replace' => '\\1 E06A',
- ),
- 147 =>
- array (
- 'match' => '((E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E081)) E047',
- 'replace' => '\\1 E06B',
- ),
- 148 =>
- array (
- 'match' => '((E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E081)) E048',
- 'replace' => '\\1 E06C',
- ),
- 149 =>
- array (
- 'match' => '((E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E081)) E049',
- 'replace' => '\\1 E06D',
- ),
- 150 =>
- array (
- 'match' => '((E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E081)) E04A',
- 'replace' => '\\1 E06E',
- ),
- 151 =>
- array (
- 'match' => '((E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E081)) E04B',
- 'replace' => '\\1 E06F',
- ),
- 152 =>
- array (
- 'match' => '((E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E081)) E04C',
- 'replace' => '\\1 E070',
- ),
- 153 =>
- array (
- 'match' => '((E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E081)) E04D',
- 'replace' => '\\1 E071',
- ),
- 154 =>
- array (
- 'match' => '((E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E081)) E04E',
- 'replace' => '\\1 E072',
- ),
- 155 =>
- array (
- 'match' => '((E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E081)) E04F',
- 'replace' => '\\1 E073',
- ),
- 156 =>
- array (
- 'match' => '((E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E081)) E050',
- 'replace' => '\\1 E074',
- ),
- 157 =>
- array (
- 'match' => '((E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E081)) E081',
- 'replace' => '\\1 E081',
- ),
- 158 =>
- array (
- 'match' => '(E07D) E02E',
- 'replace' => '\\1 E052',
- ),
- 159 =>
- array (
- 'match' => '(E07D) E02F',
- 'replace' => '\\1 E053',
- ),
- 160 =>
- array (
- 'match' => '(E07D) E030',
- 'replace' => '\\1 E054',
- ),
- 161 =>
- array (
- 'match' => '(E07D) E031',
- 'replace' => '\\1 E055',
- ),
- 162 =>
- array (
- 'match' => '(E07D) E032',
- 'replace' => '\\1 E056',
- ),
- 163 =>
- array (
- 'match' => '(E07D) E033',
- 'replace' => '\\1 E057',
- ),
- 164 =>
- array (
- 'match' => '(E07D) E034',
- 'replace' => '\\1 E058',
- ),
- 165 =>
- array (
- 'match' => '(E07D) E035',
- 'replace' => '\\1 E059',
- ),
- 166 =>
- array (
- 'match' => '(E07D) E036',
- 'replace' => '\\1 E05A',
- ),
- 167 =>
- array (
- 'match' => '(E07D) E037',
- 'replace' => '\\1 E05B',
- ),
- 168 =>
- array (
- 'match' => '(E07D) E038',
- 'replace' => '\\1 E05C',
- ),
- 169 =>
- array (
- 'match' => '(E07D) E039',
- 'replace' => '\\1 E05D',
- ),
- 170 =>
- array (
- 'match' => '(E07D) E03A',
- 'replace' => '\\1 E05E',
- ),
- 171 =>
- array (
- 'match' => '(E07D) E03B',
- 'replace' => '\\1 E05F',
- ),
- 172 =>
- array (
- 'match' => '(E07D) E03C',
- 'replace' => '\\1 E060',
- ),
- 173 =>
- array (
- 'match' => '(E07D) E03D',
- 'replace' => '\\1 E061',
- ),
- 174 =>
- array (
- 'match' => '(E07D) E03E',
- 'replace' => '\\1 E062',
- ),
- 175 =>
- array (
- 'match' => '(E07D) E03F',
- 'replace' => '\\1 E063',
- ),
- 176 =>
- array (
- 'match' => '(E07D) E040',
- 'replace' => '\\1 E064',
- ),
- 177 =>
- array (
- 'match' => '(E07D) E041',
- 'replace' => '\\1 E065',
- ),
- 178 =>
- array (
- 'match' => '(E07D) E042',
- 'replace' => '\\1 E066',
- ),
- 179 =>
- array (
- 'match' => '(E07D) E043',
- 'replace' => '\\1 E067',
- ),
- 180 =>
- array (
- 'match' => '(E07D) E044',
- 'replace' => '\\1 E068',
- ),
- 181 =>
- array (
- 'match' => '(E07D) E045',
- 'replace' => '\\1 E069',
- ),
- 182 =>
- array (
- 'match' => '(E07D) E046',
- 'replace' => '\\1 E06A',
- ),
- 183 =>
- array (
- 'match' => '(E07D) E047',
- 'replace' => '\\1 E06B',
- ),
- 184 =>
- array (
- 'match' => '(E07D) E048',
- 'replace' => '\\1 E06C',
- ),
- 185 =>
- array (
- 'match' => '(E07D) E049',
- 'replace' => '\\1 E06D',
- ),
- 186 =>
- array (
- 'match' => '(E07D) E04A',
- 'replace' => '\\1 E06E',
- ),
- 187 =>
- array (
- 'match' => '(E07D) E04B',
- 'replace' => '\\1 E06F',
- ),
- 188 =>
- array (
- 'match' => '(E07D) E04C',
- 'replace' => '\\1 E070',
- ),
- 189 =>
- array (
- 'match' => '(E07D) E04D',
- 'replace' => '\\1 E071',
- ),
- 190 =>
- array (
- 'match' => '(E07D) E04E',
- 'replace' => '\\1 E072',
- ),
- 191 =>
- array (
- 'match' => '(E07D) E04F',
- 'replace' => '\\1 E073',
- ),
- 192 =>
- array (
- 'match' => '(E07D) E050',
- 'replace' => '\\1 E074',
- ),
- 193 =>
- array (
- 'match' => '(E07D) E081',
- 'replace' => '\\1 E081',
- ),
- 194 =>
- array (
- 'match' => '(E07D (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E02E',
- 'replace' => '\\1 E052',
- ),
- 195 =>
- array (
- 'match' => '(E07D (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E02F',
- 'replace' => '\\1 E053',
- ),
- 196 =>
- array (
- 'match' => '(E07D (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E030',
- 'replace' => '\\1 E054',
- ),
- 197 =>
- array (
- 'match' => '(E07D (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E031',
- 'replace' => '\\1 E055',
- ),
- 198 =>
- array (
- 'match' => '(E07D (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E032',
- 'replace' => '\\1 E056',
- ),
- 199 =>
- array (
- 'match' => '(E07D (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E033',
- 'replace' => '\\1 E057',
- ),
- 200 =>
- array (
- 'match' => '(E07D (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E034',
- 'replace' => '\\1 E058',
- ),
- 201 =>
- array (
- 'match' => '(E07D (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E035',
- 'replace' => '\\1 E059',
- ),
- 202 =>
- array (
- 'match' => '(E07D (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E036',
- 'replace' => '\\1 E05A',
- ),
- 203 =>
- array (
- 'match' => '(E07D (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E037',
- 'replace' => '\\1 E05B',
- ),
- 204 =>
- array (
- 'match' => '(E07D (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E038',
- 'replace' => '\\1 E05C',
- ),
- 205 =>
- array (
- 'match' => '(E07D (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E039',
- 'replace' => '\\1 E05D',
- ),
- 206 =>
- array (
- 'match' => '(E07D (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E03A',
- 'replace' => '\\1 E05E',
- ),
- 207 =>
- array (
- 'match' => '(E07D (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E03B',
- 'replace' => '\\1 E05F',
- ),
- 208 =>
- array (
- 'match' => '(E07D (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E03C',
- 'replace' => '\\1 E060',
- ),
- 209 =>
- array (
- 'match' => '(E07D (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E03D',
- 'replace' => '\\1 E061',
- ),
- 210 =>
- array (
- 'match' => '(E07D (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E03E',
- 'replace' => '\\1 E062',
- ),
- 211 =>
- array (
- 'match' => '(E07D (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E03F',
- 'replace' => '\\1 E063',
- ),
- 212 =>
- array (
- 'match' => '(E07D (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E040',
- 'replace' => '\\1 E064',
- ),
- 213 =>
- array (
- 'match' => '(E07D (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E041',
- 'replace' => '\\1 E065',
- ),
- 214 =>
- array (
- 'match' => '(E07D (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E042',
- 'replace' => '\\1 E066',
- ),
- 215 =>
- array (
- 'match' => '(E07D (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E043',
- 'replace' => '\\1 E067',
- ),
- 216 =>
- array (
- 'match' => '(E07D (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E044',
- 'replace' => '\\1 E068',
- ),
- 217 =>
- array (
- 'match' => '(E07D (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E045',
- 'replace' => '\\1 E069',
- ),
- 218 =>
- array (
- 'match' => '(E07D (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E046',
- 'replace' => '\\1 E06A',
- ),
- 219 =>
- array (
- 'match' => '(E07D (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E047',
- 'replace' => '\\1 E06B',
- ),
- 220 =>
- array (
- 'match' => '(E07D (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E048',
- 'replace' => '\\1 E06C',
- ),
- 221 =>
- array (
- 'match' => '(E07D (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E049',
- 'replace' => '\\1 E06D',
- ),
- 222 =>
- array (
- 'match' => '(E07D (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E04A',
- 'replace' => '\\1 E06E',
- ),
- 223 =>
- array (
- 'match' => '(E07D (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E04B',
- 'replace' => '\\1 E06F',
- ),
- 224 =>
- array (
- 'match' => '(E07D (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E04C',
- 'replace' => '\\1 E070',
- ),
- 225 =>
- array (
- 'match' => '(E07D (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E04D',
- 'replace' => '\\1 E071',
- ),
- 226 =>
- array (
- 'match' => '(E07D (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E04E',
- 'replace' => '\\1 E072',
- ),
- 227 =>
- array (
- 'match' => '(E07D (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E04F',
- 'replace' => '\\1 E073',
- ),
- 228 =>
- array (
- 'match' => '(E07D (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E050',
- 'replace' => '\\1 E074',
- ),
- 229 =>
- array (
- 'match' => '(E07D (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E081',
- 'replace' => '\\1 E081',
- ),
- 230 =>
- array (
- 'match' => '(E07E) E02E',
- 'replace' => '\\1 E052',
- ),
- 231 =>
- array (
- 'match' => '(E07E) E02F',
- 'replace' => '\\1 E053',
- ),
- 232 =>
- array (
- 'match' => '(E07E) E030',
- 'replace' => '\\1 E054',
- ),
- 233 =>
- array (
- 'match' => '(E07E) E031',
- 'replace' => '\\1 E055',
- ),
- 234 =>
- array (
- 'match' => '(E07E) E032',
- 'replace' => '\\1 E056',
- ),
- 235 =>
- array (
- 'match' => '(E07E) E033',
- 'replace' => '\\1 E057',
- ),
- 236 =>
- array (
- 'match' => '(E07E) E034',
- 'replace' => '\\1 E058',
- ),
- 237 =>
- array (
- 'match' => '(E07E) E035',
- 'replace' => '\\1 E059',
- ),
- 238 =>
- array (
- 'match' => '(E07E) E036',
- 'replace' => '\\1 E05A',
- ),
- 239 =>
- array (
- 'match' => '(E07E) E037',
- 'replace' => '\\1 E05B',
- ),
- 240 =>
- array (
- 'match' => '(E07E) E038',
- 'replace' => '\\1 E05C',
- ),
- 241 =>
- array (
- 'match' => '(E07E) E039',
- 'replace' => '\\1 E05D',
- ),
- 242 =>
- array (
- 'match' => '(E07E) E03A',
- 'replace' => '\\1 E05E',
- ),
- 243 =>
- array (
- 'match' => '(E07E) E03B',
- 'replace' => '\\1 E05F',
- ),
- 244 =>
- array (
- 'match' => '(E07E) E03C',
- 'replace' => '\\1 E060',
- ),
- 245 =>
- array (
- 'match' => '(E07E) E03D',
- 'replace' => '\\1 E061',
- ),
- 246 =>
- array (
- 'match' => '(E07E) E03E',
- 'replace' => '\\1 E062',
- ),
- 247 =>
- array (
- 'match' => '(E07E) E03F',
- 'replace' => '\\1 E063',
- ),
- 248 =>
- array (
- 'match' => '(E07E) E040',
- 'replace' => '\\1 E064',
- ),
- 249 =>
- array (
- 'match' => '(E07E) E041',
- 'replace' => '\\1 E065',
- ),
- 250 =>
- array (
- 'match' => '(E07E) E042',
- 'replace' => '\\1 E066',
- ),
- 251 =>
- array (
- 'match' => '(E07E) E043',
- 'replace' => '\\1 E067',
- ),
- 252 =>
- array (
- 'match' => '(E07E) E044',
- 'replace' => '\\1 E068',
- ),
- 253 =>
- array (
- 'match' => '(E07E) E045',
- 'replace' => '\\1 E069',
- ),
- 254 =>
- array (
- 'match' => '(E07E) E046',
- 'replace' => '\\1 E06A',
- ),
- 255 =>
- array (
- 'match' => '(E07E) E047',
- 'replace' => '\\1 E06B',
- ),
- 256 =>
- array (
- 'match' => '(E07E) E048',
- 'replace' => '\\1 E06C',
- ),
- 257 =>
- array (
- 'match' => '(E07E) E049',
- 'replace' => '\\1 E06D',
- ),
- 258 =>
- array (
- 'match' => '(E07E) E04A',
- 'replace' => '\\1 E06E',
- ),
- 259 =>
- array (
- 'match' => '(E07E) E04B',
- 'replace' => '\\1 E06F',
- ),
- 260 =>
- array (
- 'match' => '(E07E) E04C',
- 'replace' => '\\1 E070',
- ),
- 261 =>
- array (
- 'match' => '(E07E) E04D',
- 'replace' => '\\1 E071',
- ),
- 262 =>
- array (
- 'match' => '(E07E) E04E',
- 'replace' => '\\1 E072',
- ),
- 263 =>
- array (
- 'match' => '(E07E) E04F',
- 'replace' => '\\1 E073',
- ),
- 264 =>
- array (
- 'match' => '(E07E) E050',
- 'replace' => '\\1 E074',
- ),
- 265 =>
- array (
- 'match' => '(E07E) E081',
- 'replace' => '\\1 E081',
- ),
- 266 =>
- array (
- 'match' => '(E07E (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E02E',
- 'replace' => '\\1 E052',
- ),
- 267 =>
- array (
- 'match' => '(E07E (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E02F',
- 'replace' => '\\1 E053',
- ),
- 268 =>
- array (
- 'match' => '(E07E (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E030',
- 'replace' => '\\1 E054',
- ),
- 269 =>
- array (
- 'match' => '(E07E (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E031',
- 'replace' => '\\1 E055',
- ),
- 270 =>
- array (
- 'match' => '(E07E (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E032',
- 'replace' => '\\1 E056',
- ),
- 271 =>
- array (
- 'match' => '(E07E (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E033',
- 'replace' => '\\1 E057',
- ),
- 272 =>
- array (
- 'match' => '(E07E (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E034',
- 'replace' => '\\1 E058',
- ),
- 273 =>
- array (
- 'match' => '(E07E (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E035',
- 'replace' => '\\1 E059',
- ),
- 274 =>
- array (
- 'match' => '(E07E (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E036',
- 'replace' => '\\1 E05A',
- ),
- 275 =>
- array (
- 'match' => '(E07E (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E037',
- 'replace' => '\\1 E05B',
- ),
- 276 =>
- array (
- 'match' => '(E07E (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E038',
- 'replace' => '\\1 E05C',
- ),
- 277 =>
- array (
- 'match' => '(E07E (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E039',
- 'replace' => '\\1 E05D',
- ),
- 278 =>
- array (
- 'match' => '(E07E (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E03A',
- 'replace' => '\\1 E05E',
- ),
- 279 =>
- array (
- 'match' => '(E07E (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E03B',
- 'replace' => '\\1 E05F',
- ),
- 280 =>
- array (
- 'match' => '(E07E (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E03C',
- 'replace' => '\\1 E060',
- ),
- 281 =>
- array (
- 'match' => '(E07E (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E03D',
- 'replace' => '\\1 E061',
- ),
- 282 =>
- array (
- 'match' => '(E07E (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E03E',
- 'replace' => '\\1 E062',
- ),
- 283 =>
- array (
- 'match' => '(E07E (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E03F',
- 'replace' => '\\1 E063',
- ),
- 284 =>
- array (
- 'match' => '(E07E (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E040',
- 'replace' => '\\1 E064',
- ),
- 285 =>
- array (
- 'match' => '(E07E (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E041',
- 'replace' => '\\1 E065',
- ),
- 286 =>
- array (
- 'match' => '(E07E (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E042',
- 'replace' => '\\1 E066',
- ),
- 287 =>
- array (
- 'match' => '(E07E (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E043',
- 'replace' => '\\1 E067',
- ),
- 288 =>
- array (
- 'match' => '(E07E (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E044',
- 'replace' => '\\1 E068',
- ),
- 289 =>
- array (
- 'match' => '(E07E (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E045',
- 'replace' => '\\1 E069',
- ),
- 290 =>
- array (
- 'match' => '(E07E (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E046',
- 'replace' => '\\1 E06A',
- ),
- 291 =>
- array (
- 'match' => '(E07E (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E047',
- 'replace' => '\\1 E06B',
- ),
- 292 =>
- array (
- 'match' => '(E07E (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E048',
- 'replace' => '\\1 E06C',
- ),
- 293 =>
- array (
- 'match' => '(E07E (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E049',
- 'replace' => '\\1 E06D',
- ),
- 294 =>
- array (
- 'match' => '(E07E (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E04A',
- 'replace' => '\\1 E06E',
- ),
- 295 =>
- array (
- 'match' => '(E07E (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E04B',
- 'replace' => '\\1 E06F',
- ),
- 296 =>
- array (
- 'match' => '(E07E (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E04C',
- 'replace' => '\\1 E070',
- ),
- 297 =>
- array (
- 'match' => '(E07E (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E04D',
- 'replace' => '\\1 E071',
- ),
- 298 =>
- array (
- 'match' => '(E07E (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E04E',
- 'replace' => '\\1 E072',
- ),
- 299 =>
- array (
- 'match' => '(E07E (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E04F',
- 'replace' => '\\1 E073',
- ),
- 300 =>
- array (
- 'match' => '(E07E (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E050',
- 'replace' => '\\1 E074',
- ),
- 301 =>
- array (
- 'match' => '(E07E (0CBE|0CBF|0CC6|0CC1|0CC2|0CCC|0CCA)) E081',
- 'replace' => '\\1 E081',
- ),
- 302 =>
- array (
- 'match' => '((E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E081)) E03D',
- 'replace' => '\\1 E076',
- ),
- 303 =>
- array (
- 'match' => '((E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E081)) E041',
- 'replace' => '\\1 E077',
- ),
- 304 =>
- array (
- 'match' => '((E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E081)) E046',
- 'replace' => '\\1 E078',
- ),
- 305 =>
- array (
- 'match' => '((E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E081)) E047',
- 'replace' => '\\1 E079',
- ),
- 306 =>
- array (
- 'match' => '((E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E081)) E048',
- 'replace' => '\\1 E07A',
- ),
- 307 =>
- array (
- 'match' => '((E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E081)) E04A',
- 'replace' => '\\1 E07B',
- ),
- 308 =>
- array (
- 'match' => '((E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E081)) E04E',
- 'replace' => '\\1 E07C',
- ),
- 309 =>
- array (
- 'match' => '((E0E6|E0E7|E172|E173|E174|E175|E176|E0E8|E0E9|E177|E178|E179|E17A|E17B|E17C|E17D|E17E|E17F|E180|E181|E182|E0EA|E183|E184|E185|E186|E0EB|E187|E188|E189|E18A|E18B|E18C|E18D|E18E|E0F2|E0F3|E11B|E11C|E11D|E11E|E0F4|E0F5|E11F|E120|E121|E122|E123|E124|E125|E126|E127|E128|E0F9|E129|E12A|E12B|E12C|E0FD|E12D|E12E|E12F|E130|E131|E132|E133)) E030',
- 'replace' => '\\1 E104',
- ),
- 310 =>
- array (
- 'match' => '((E0E6|E0E7|E172|E173|E174|E175|E176|E0E8|E0E9|E177|E178|E179|E17A|E17B|E17C|E17D|E17E|E17F|E180|E181|E182|E0EA|E183|E184|E185|E186|E0EB|E187|E188|E189|E18A|E18B|E18C|E18D|E18E|E0F2|E0F3|E11B|E11C|E11D|E11E|E0F4|E0F5|E11F|E120|E121|E122|E123|E124|E125|E126|E127|E128|E0F9|E129|E12A|E12B|E12C|E0FD|E12D|E12E|E12F|E130|E131|E132|E133)) E032',
- 'replace' => '\\1 E105',
- ),
- 311 =>
- array (
- 'match' => '((E0E6|E0E7|E172|E173|E174|E175|E176|E0E8|E0E9|E177|E178|E179|E17A|E17B|E17C|E17D|E17E|E17F|E180|E181|E182|E0EA|E183|E184|E185|E186|E0EB|E187|E188|E189|E18A|E18B|E18C|E18D|E18E|E0F2|E0F3|E11B|E11C|E11D|E11E|E0F4|E0F5|E11F|E120|E121|E122|E123|E124|E125|E126|E127|E128|E0F9|E129|E12A|E12B|E12C|E0FD|E12D|E12E|E12F|E130|E131|E132|E133)) E034',
- 'replace' => '\\1 E106',
- ),
- 312 =>
- array (
- 'match' => '((E0E6|E0E7|E172|E173|E174|E175|E176|E0E8|E0E9|E177|E178|E179|E17A|E17B|E17C|E17D|E17E|E17F|E180|E181|E182|E0EA|E183|E184|E185|E186|E0EB|E187|E188|E189|E18A|E18B|E18C|E18D|E18E|E0F2|E0F3|E11B|E11C|E11D|E11E|E0F4|E0F5|E11F|E120|E121|E122|E123|E124|E125|E126|E127|E128|E0F9|E129|E12A|E12B|E12C|E0FD|E12D|E12E|E12F|E130|E131|E132|E133)) E035',
- 'replace' => '\\1 E107',
- ),
- 313 =>
- array (
- 'match' => '((E0E6|E0E7|E172|E173|E174|E175|E176|E0E8|E0E9|E177|E178|E179|E17A|E17B|E17C|E17D|E17E|E17F|E180|E181|E182|E0EA|E183|E184|E185|E186|E0EB|E187|E188|E189|E18A|E18B|E18C|E18D|E18E|E0F2|E0F3|E11B|E11C|E11D|E11E|E0F4|E0F5|E11F|E120|E121|E122|E123|E124|E125|E126|E127|E128|E0F9|E129|E12A|E12B|E12C|E0FD|E12D|E12E|E12F|E130|E131|E132|E133)) E036',
- 'replace' => '\\1 E108',
- ),
- 314 =>
- array (
- 'match' => '((E0E6|E0E7|E172|E173|E174|E175|E176|E0E8|E0E9|E177|E178|E179|E17A|E17B|E17C|E17D|E17E|E17F|E180|E181|E182|E0EA|E183|E184|E185|E186|E0EB|E187|E188|E189|E18A|E18B|E18C|E18D|E18E|E0F2|E0F3|E11B|E11C|E11D|E11E|E0F4|E0F5|E11F|E120|E121|E122|E123|E124|E125|E126|E127|E128|E0F9|E129|E12A|E12B|E12C|E0FD|E12D|E12E|E12F|E130|E131|E132|E133)) E037',
- 'replace' => '\\1 E109',
- ),
- 315 =>
- array (
- 'match' => '((E0E6|E0E7|E172|E173|E174|E175|E176|E0E8|E0E9|E177|E178|E179|E17A|E17B|E17C|E17D|E17E|E17F|E180|E181|E182|E0EA|E183|E184|E185|E186|E0EB|E187|E188|E189|E18A|E18B|E18C|E18D|E18E|E0F2|E0F3|E11B|E11C|E11D|E11E|E0F4|E0F5|E11F|E120|E121|E122|E123|E124|E125|E126|E127|E128|E0F9|E129|E12A|E12B|E12C|E0FD|E12D|E12E|E12F|E130|E131|E132|E133)) E039',
- 'replace' => '\\1 E10A',
- ),
- 316 =>
- array (
- 'match' => '((E0E6|E0E7|E172|E173|E174|E175|E176|E0E8|E0E9|E177|E178|E179|E17A|E17B|E17C|E17D|E17E|E17F|E180|E181|E182|E0EA|E183|E184|E185|E186|E0EB|E187|E188|E189|E18A|E18B|E18C|E18D|E18E|E0F2|E0F3|E11B|E11C|E11D|E11E|E0F4|E0F5|E11F|E120|E121|E122|E123|E124|E125|E126|E127|E128|E0F9|E129|E12A|E12B|E12C|E0FD|E12D|E12E|E12F|E130|E131|E132|E133)) E03A',
- 'replace' => '\\1 E10B',
- ),
- 317 =>
- array (
- 'match' => '((E0E6|E0E7|E172|E173|E174|E175|E176|E0E8|E0E9|E177|E178|E179|E17A|E17B|E17C|E17D|E17E|E17F|E180|E181|E182|E0EA|E183|E184|E185|E186|E0EB|E187|E188|E189|E18A|E18B|E18C|E18D|E18E|E0F2|E0F3|E11B|E11C|E11D|E11E|E0F4|E0F5|E11F|E120|E121|E122|E123|E124|E125|E126|E127|E128|E0F9|E129|E12A|E12B|E12C|E0FD|E12D|E12E|E12F|E130|E131|E132|E133)) E03B',
- 'replace' => '\\1 E10C',
- ),
- 318 =>
- array (
- 'match' => '((E0E6|E0E7|E172|E173|E174|E175|E176|E0E8|E0E9|E177|E178|E179|E17A|E17B|E17C|E17D|E17E|E17F|E180|E181|E182|E0EA|E183|E184|E185|E186|E0EB|E187|E188|E189|E18A|E18B|E18C|E18D|E18E|E0F2|E0F3|E11B|E11C|E11D|E11E|E0F4|E0F5|E11F|E120|E121|E122|E123|E124|E125|E126|E127|E128|E0F9|E129|E12A|E12B|E12C|E0FD|E12D|E12E|E12F|E130|E131|E132|E133)) E03C',
- 'replace' => '\\1 E10D',
- ),
- 319 =>
- array (
- 'match' => '((E0E6|E0E7|E172|E173|E174|E175|E176|E0E8|E0E9|E177|E178|E179|E17A|E17B|E17C|E17D|E17E|E17F|E180|E181|E182|E0EA|E183|E184|E185|E186|E0EB|E187|E188|E189|E18A|E18B|E18C|E18D|E18E|E0F2|E0F3|E11B|E11C|E11D|E11E|E0F4|E0F5|E11F|E120|E121|E122|E123|E124|E125|E126|E127|E128|E0F9|E129|E12A|E12B|E12C|E0FD|E12D|E12E|E12F|E130|E131|E132|E133)) E03E',
- 'replace' => '\\1 E10E',
- ),
- 320 =>
- array (
- 'match' => '((E0E6|E0E7|E172|E173|E174|E175|E176|E0E8|E0E9|E177|E178|E179|E17A|E17B|E17C|E17D|E17E|E17F|E180|E181|E182|E0EA|E183|E184|E185|E186|E0EB|E187|E188|E189|E18A|E18B|E18C|E18D|E18E|E0F2|E0F3|E11B|E11C|E11D|E11E|E0F4|E0F5|E11F|E120|E121|E122|E123|E124|E125|E126|E127|E128|E0F9|E129|E12A|E12B|E12C|E0FD|E12D|E12E|E12F|E130|E131|E132|E133)) E03F',
- 'replace' => '\\1 E10F',
- ),
- 321 =>
- array (
- 'match' => '((E0E6|E0E7|E172|E173|E174|E175|E176|E0E8|E0E9|E177|E178|E179|E17A|E17B|E17C|E17D|E17E|E17F|E180|E181|E182|E0EA|E183|E184|E185|E186|E0EB|E187|E188|E189|E18A|E18B|E18C|E18D|E18E|E0F2|E0F3|E11B|E11C|E11D|E11E|E0F4|E0F5|E11F|E120|E121|E122|E123|E124|E125|E126|E127|E128|E0F9|E129|E12A|E12B|E12C|E0FD|E12D|E12E|E12F|E130|E131|E132|E133)) E040',
- 'replace' => '\\1 E110',
- ),
- 322 =>
- array (
- 'match' => '((E0E6|E0E7|E172|E173|E174|E175|E176|E0E8|E0E9|E177|E178|E179|E17A|E17B|E17C|E17D|E17E|E17F|E180|E181|E182|E0EA|E183|E184|E185|E186|E0EB|E187|E188|E189|E18A|E18B|E18C|E18D|E18E|E0F2|E0F3|E11B|E11C|E11D|E11E|E0F4|E0F5|E11F|E120|E121|E122|E123|E124|E125|E126|E127|E128|E0F9|E129|E12A|E12B|E12C|E0FD|E12D|E12E|E12F|E130|E131|E132|E133)) E049',
- 'replace' => '\\1 E111',
- ),
- 323 =>
- array (
- 'match' => '((E0E6|E0E7|E172|E173|E174|E175|E176|E0E8|E0E9|E177|E178|E179|E17A|E17B|E17C|E17D|E17E|E17F|E180|E181|E182|E0EA|E183|E184|E185|E186|E0EB|E187|E188|E189|E18A|E18B|E18C|E18D|E18E|E0F2|E0F3|E11B|E11C|E11D|E11E|E0F4|E0F5|E11F|E120|E121|E122|E123|E124|E125|E126|E127|E128|E0F9|E129|E12A|E12B|E12C|E0FD|E12D|E12E|E12F|E130|E131|E132|E133)) E04A',
- 'replace' => '\\1 E112',
- ),
- 324 =>
- array (
- 'match' => '((E0E6|E0E7|E172|E173|E174|E175|E176|E0E8|E0E9|E177|E178|E179|E17A|E17B|E17C|E17D|E17E|E17F|E180|E181|E182|E0EA|E183|E184|E185|E186|E0EB|E187|E188|E189|E18A|E18B|E18C|E18D|E18E|E0F2|E0F3|E11B|E11C|E11D|E11E|E0F4|E0F5|E11F|E120|E121|E122|E123|E124|E125|E126|E127|E128|E0F9|E129|E12A|E12B|E12C|E0FD|E12D|E12E|E12F|E130|E131|E132|E133)) E04C',
- 'replace' => '\\1 E113',
- ),
- 325 =>
- array (
- 'match' => '((E0E6|E0E7|E172|E173|E174|E175|E176|E0E8|E0E9|E177|E178|E179|E17A|E17B|E17C|E17D|E17E|E17F|E180|E181|E182|E0EA|E183|E184|E185|E186|E0EB|E187|E188|E189|E18A|E18B|E18C|E18D|E18E|E0F2|E0F3|E11B|E11C|E11D|E11E|E0F4|E0F5|E11F|E120|E121|E122|E123|E124|E125|E126|E127|E128|E0F9|E129|E12A|E12B|E12C|E0FD|E12D|E12E|E12F|E130|E131|E132|E133)) E04E',
- 'replace' => '\\1 E114',
- ),
- 326 =>
- array (
- 'match' => '((E0E6|E0E7|E172|E173|E174|E175|E176|E0E8|E0E9|E177|E178|E179|E17A|E17B|E17C|E17D|E17E|E17F|E180|E181|E182|E0EA|E183|E184|E185|E186|E0EB|E187|E188|E189|E18A|E18B|E18C|E18D|E18E|E0F2|E0F3|E11B|E11C|E11D|E11E|E0F4|E0F5|E11F|E120|E121|E122|E123|E124|E125|E126|E127|E128|E0F9|E129|E12A|E12B|E12C|E0FD|E12D|E12E|E12F|E130|E131|E132|E133)) E050',
- 'replace' => '\\1 E115',
- ),
- 327 =>
- array (
- 'match' => '((E0E6|E0E7|E172|E173|E174|E175|E176|E0E8|E0E9|E177|E178|E179|E17A|E17B|E17C|E17D|E17E|E17F|E180|E181|E182|E0EA|E183|E184|E185|E186|E0EB|E187|E188|E189|E18A|E18B|E18C|E18D|E18E|E0F2|E0F3|E11B|E11C|E11D|E11E|E0F4|E0F5|E11F|E120|E121|E122|E123|E124|E125|E126|E127|E128|E0F9|E129|E12A|E12B|E12C|E0FD|E12D|E12E|E12F|E130|E131|E132|E133)) E051',
- 'replace' => '\\1 E116',
- ),
- 328 =>
- array (
- 'match' => '((0CAA|0CAB|0CB5|E182|E0EA|E18A)) 0CC1',
- 'replace' => '\\1 E007',
- ),
- 329 =>
- array (
- 'match' => '((0CAA|0CAB|0CB5|E182|E0EA|E18A)) 0CC2',
- 'replace' => '\\1 E009',
- ),
- 330 =>
- array (
- 'match' => '((0CB3|E189)) 0CC1',
- 'replace' => '\\1 E008',
- ),
- 331 =>
- array (
- 'match' => '((0CB3|E189)) 0CC2',
- 'replace' => '\\1 E00A',
- ),
- 332 =>
- array (
- 'match' => '0C98 0CC1',
- 'replace' => 'E0A5',
- ),
- 333 =>
- array (
- 'match' => '0C98 0CC6',
- 'replace' => 'E0A6',
- ),
- 334 =>
- array (
- 'match' => '0C98 0CCA',
- 'replace' => 'E0A7',
- ),
- 335 =>
- array (
- 'match' => '0C98 0CCB',
- 'replace' => 'E0A8',
- ),
- 336 =>
- array (
- 'match' => '0C99 0CC6',
- 'replace' => 'E0A9',
- ),
- 337 =>
- array (
- 'match' => '0C99 0CCA',
- 'replace' => 'E0AA',
- ),
- 338 =>
- array (
- 'match' => '0C99 0CCB',
- 'replace' => 'E0AB',
- ),
- 339 =>
- array (
- 'match' => '0C9E 0CC1',
- 'replace' => 'E0D8',
- ),
- 340 =>
- array (
- 'match' => '0C9E 0CC2',
- 'replace' => 'E0D9',
- ),
- 341 =>
- array (
- 'match' => '0C9E 0CC6',
- 'replace' => 'E0DA',
- ),
- 342 =>
- array (
- 'match' => '0C9E 0CCA',
- 'replace' => 'E0DB',
- ),
- 343 =>
- array (
- 'match' => '0CB1 0CC6',
- 'replace' => 'E0AC',
- ),
- 344 =>
- array (
- 'match' => '0CB1 0CCA',
- 'replace' => 'E0AD',
- ),
- 345 =>
- array (
- 'match' => '0CB1 0CCB',
- 'replace' => 'E0AE',
- ),
- 346 =>
- array (
- 'match' => '0CAA 0CCA',
- 'replace' => 'E0AF',
- ),
- 347 =>
- array (
- 'match' => '0CAB 0CCA',
- 'replace' => 'E0B0',
- ),
- 348 =>
- array (
- 'match' => '0CB5 0CCA',
- 'replace' => 'E0B1',
- ),
- 349 =>
- array (
- 'match' => '0C9D 0CC6',
- 'replace' => 'E0DD',
- ),
- 350 =>
- array (
- 'match' => '0C9D 0CCA',
- 'replace' => 'E0DE',
- ),
- 351 =>
- array (
- 'match' => '0C9D 0CCB',
- 'replace' => 'E0DF',
- ),
- 352 =>
- array (
- 'match' => '0CAE 0CC6',
- 'replace' => 'E0E0',
- ),
- 353 =>
- array (
- 'match' => '0CAE 0CCA',
- 'replace' => 'E0E1',
- ),
- 354 =>
- array (
- 'match' => '0CAE 0CCB',
- 'replace' => 'E0E2',
- ),
- 355 =>
- array (
- 'match' => '0CAF 0CC6',
- 'replace' => 'E0E3',
- ),
- 356 =>
- array (
- 'match' => '0CAF 0CCA',
- 'replace' => 'E0E4',
- ),
- 357 =>
- array (
- 'match' => '0CAF 0CCB',
- 'replace' => 'E0E5',
- ),
- 358 =>
- array (
- 'match' => '0CB3 0CCA',
- 'replace' => 'E0DC',
- ),
- 359 =>
- array (
- 'match' => 'E173 0CC1',
- 'replace' => 'E138',
- ),
- 360 =>
- array (
- 'match' => 'E173 0CC6',
- 'replace' => 'E139',
- ),
- 361 =>
- array (
- 'match' => 'E173 0CCA',
- 'replace' => 'E13A',
- ),
- 362 =>
- array (
- 'match' => 'E174 0CC6',
- 'replace' => 'E13C',
- ),
- 363 =>
- array (
- 'match' => 'E174 0CCA',
- 'replace' => 'E13D',
- ),
- 364 =>
- array (
- 'match' => 'E187 0CC6',
- 'replace' => 'E13F',
- ),
- 365 =>
- array (
- 'match' => 'E187 0CCA',
- 'replace' => 'E140',
- ),
- 366 =>
- array (
- 'match' => 'E182 0CCA',
- 'replace' => 'E142',
- ),
- 367 =>
- array (
- 'match' => 'E0EA 0CCA',
- 'replace' => 'E0FC',
- ),
- 368 =>
- array (
- 'match' => 'E18A 0CCA',
- 'replace' => 'E143',
- ),
- 369 =>
- array (
- 'match' => 'E177 0CC1',
- 'replace' => 'E164',
- ),
- 370 =>
- array (
- 'match' => 'E177 0CC2',
- 'replace' => 'E165',
- ),
- 371 =>
- array (
- 'match' => 'E177 0CC6',
- 'replace' => 'E166',
- ),
- 372 =>
- array (
- 'match' => 'E177 0CCA',
- 'replace' => 'E167',
- ),
- 373 =>
- array (
- 'match' => 'E189 0CCA',
- 'replace' => 'E168',
- ),
- 374 =>
- array (
- 'match' => 'E0E9 0CC6',
- 'replace' => 'E0F6',
- ),
- 375 =>
- array (
- 'match' => 'E0E9 0CCA',
- 'replace' => 'E0F8',
- ),
- 376 =>
- array (
- 'match' => 'E185 0CC6',
- 'replace' => 'E16C',
- ),
- 377 =>
- array (
- 'match' => 'E185 0CCA',
- 'replace' => 'E16D',
- ),
- 378 =>
- array (
- 'match' => 'E186 0CC6',
- 'replace' => 'E16F',
- ),
- 379 =>
- array (
- 'match' => 'E186 0CCA',
- 'replace' => 'E170',
- ),
- 380 =>
- array (
- 'match' => '0C95 0CBF',
- 'replace' => 'E082',
- ),
- 381 =>
- array (
- 'match' => '0C96 0CBF',
- 'replace' => 'E083',
- ),
- 382 =>
- array (
- 'match' => '0C97 0CBF',
- 'replace' => 'E084',
- ),
- 383 =>
- array (
- 'match' => '0C98 0CBF',
- 'replace' => 'E085',
- ),
- 384 =>
- array (
- 'match' => '0C9A 0CBF',
- 'replace' => 'E086',
- ),
- 385 =>
- array (
- 'match' => '0C9B 0CBF',
- 'replace' => 'E087',
- ),
- 386 =>
- array (
- 'match' => '0C9C 0CBF',
- 'replace' => 'E088',
- ),
- 387 =>
- array (
- 'match' => '0C9D 0CBF',
- 'replace' => 'E089',
- ),
- 388 =>
- array (
- 'match' => '0CA0 0CBF',
- 'replace' => 'E08A',
- ),
- 389 =>
- array (
- 'match' => '0CA1 0CBF',
- 'replace' => 'E08B',
- ),
- 390 =>
- array (
- 'match' => '0CA2 0CBF',
- 'replace' => 'E08C',
- ),
- 391 =>
- array (
- 'match' => '0CA3 0CBF',
- 'replace' => 'E08D',
- ),
- 392 =>
- array (
- 'match' => '0CA4 0CBF',
- 'replace' => 'E08E',
- ),
- 393 =>
- array (
- 'match' => '0CA5 0CBF',
- 'replace' => 'E08F',
- ),
- 394 =>
- array (
- 'match' => '0CA6 0CBF',
- 'replace' => 'E090',
- ),
- 395 =>
- array (
- 'match' => '0CA7 0CBF',
- 'replace' => 'E091',
- ),
- 396 =>
- array (
- 'match' => '0CA8 0CBF',
- 'replace' => 'E092',
- ),
- 397 =>
- array (
- 'match' => '0CAA 0CBF',
- 'replace' => 'E093',
- ),
- 398 =>
- array (
- 'match' => '0CAB 0CBF',
- 'replace' => 'E094',
- ),
- 399 =>
- array (
- 'match' => '0CAC 0CBF',
- 'replace' => 'E095',
- ),
- 400 =>
- array (
- 'match' => '0CAD 0CBF',
- 'replace' => 'E096',
- ),
- 401 =>
- array (
- 'match' => '0CAE 0CBF',
- 'replace' => 'E097',
- ),
- 402 =>
- array (
- 'match' => '0CAF 0CBF',
- 'replace' => 'E098',
- ),
- 403 =>
- array (
- 'match' => '0CB0 0CBF',
- 'replace' => 'E099',
- ),
- 404 =>
- array (
- 'match' => '0CB2 0CBF',
- 'replace' => 'E09A',
- ),
- 405 =>
- array (
- 'match' => '0CB3 0CBF',
- 'replace' => 'E09B',
- ),
- 406 =>
- array (
- 'match' => '0CB5 0CBF',
- 'replace' => 'E09C',
- ),
- 407 =>
- array (
- 'match' => '0CB6 0CBF',
- 'replace' => 'E09D',
- ),
- 408 =>
- array (
- 'match' => '0CB7 0CBF',
- 'replace' => 'E09E',
- ),
- 409 =>
- array (
- 'match' => '0CB8 0CBF',
- 'replace' => 'E09F',
- ),
- 410 =>
- array (
- 'match' => '0CB9 0CBF',
- 'replace' => 'E0A0',
- ),
- 411 =>
- array (
- 'match' => 'E07D 0CBF',
- 'replace' => 'E0A1',
- ),
- 412 =>
- array (
- 'match' => 'E07E 0CBF',
- 'replace' => 'E0A2',
- ),
- 413 =>
- array (
- 'match' => 'E0E6 0CBF',
- 'replace' => 'E0F2',
- ),
- 414 =>
- array (
- 'match' => 'E0E7 0CBF',
- 'replace' => 'E0F3',
- ),
- 415 =>
- array (
- 'match' => 'E172 0CBF',
- 'replace' => 'E11B',
- ),
- 416 =>
- array (
- 'match' => 'E173 0CBF',
- 'replace' => 'E11C',
- ),
- 417 =>
- array (
- 'match' => 'E175 0CBF',
- 'replace' => 'E11D',
- ),
- 418 =>
- array (
- 'match' => 'E176 0CBF',
- 'replace' => 'E11E',
- ),
- 419 =>
- array (
- 'match' => 'E0E8 0CBF',
- 'replace' => 'E0F4',
- ),
- 420 =>
- array (
- 'match' => 'E0E9 0CBF',
- 'replace' => 'E0F5',
- ),
- 421 =>
- array (
- 'match' => 'E179 0CBF',
- 'replace' => 'E11F',
- ),
- 422 =>
- array (
- 'match' => 'E17A 0CBF',
- 'replace' => 'E120',
- ),
- 423 =>
- array (
- 'match' => 'E17B 0CBF',
- 'replace' => 'E121',
- ),
- 424 =>
- array (
- 'match' => 'E17C 0CBF',
- 'replace' => 'E122',
- ),
- 425 =>
- array (
- 'match' => 'E17D 0CBF',
- 'replace' => 'E123',
- ),
- 426 =>
- array (
- 'match' => 'E17E 0CBF',
- 'replace' => 'E124',
- ),
- 427 =>
- array (
- 'match' => 'E17F 0CBF',
- 'replace' => 'E125',
- ),
- 428 =>
- array (
- 'match' => 'E180 0CBF',
- 'replace' => 'E126',
- ),
- 429 =>
- array (
- 'match' => 'E181 0CBF',
- 'replace' => 'E127',
- ),
- 430 =>
- array (
- 'match' => 'E182 0CBF',
- 'replace' => 'E128',
- ),
- 431 =>
- array (
- 'match' => 'E0EA 0CBF',
- 'replace' => 'E0F9',
- ),
- 432 =>
- array (
- 'match' => 'E183 0CBF',
- 'replace' => 'E129',
- ),
- 433 =>
- array (
- 'match' => 'E184 0CBF',
- 'replace' => 'E12A',
- ),
- 434 =>
- array (
- 'match' => 'E185 0CBF',
- 'replace' => 'E12B',
- ),
- 435 =>
- array (
- 'match' => 'E186 0CBF',
- 'replace' => 'E12C',
- ),
- 436 =>
- array (
- 'match' => 'E0EB 0CBF',
- 'replace' => 'E0FD',
- ),
- 437 =>
- array (
- 'match' => 'E188 0CBF',
- 'replace' => 'E12D',
- ),
- 438 =>
- array (
- 'match' => 'E189 0CBF',
- 'replace' => 'E12E',
- ),
- 439 =>
- array (
- 'match' => 'E18A 0CBF',
- 'replace' => 'E12F',
- ),
- 440 =>
- array (
- 'match' => 'E18B 0CBF',
- 'replace' => 'E130',
- ),
- 441 =>
- array (
- 'match' => 'E18C 0CBF',
- 'replace' => 'E131',
- ),
- 442 =>
- array (
- 'match' => 'E18D 0CBF',
- 'replace' => 'E132',
- ),
- 443 =>
- array (
- 'match' => 'E18E 0CBF',
- 'replace' => 'E133',
- ),
- 444 =>
- array (
- 'match' => 'E117 0CBF',
- 'replace' => 'E134',
- ),
- 445 =>
- array (
- 'match' => 'E118 0CBF',
- 'replace' => 'E135',
- ),
- 446 =>
- array (
- 'match' => 'E136 0CBF',
- 'replace' => 'E137',
- ),
- 447 =>
- array (
- 'match' => 'E0AD',
- 'replace' => '0CCD',
- ),
- 448 =>
- array (
- 'match' => 'E0AC',
- 'replace' => '0CCD',
- ),
- 449 =>
- array (
- 'match' => '0C95 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E00C \\1',
- ),
- 450 =>
- array (
- 'match' => '0C96 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E00D \\1',
- ),
- 451 =>
- array (
- 'match' => '0C97 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E00E \\1',
- ),
- 452 =>
- array (
- 'match' => '0C98 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E00F \\1',
- ),
- 453 =>
- array (
- 'match' => '0C99 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E010 \\1',
- ),
- 454 =>
- array (
- 'match' => '0C9A ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E011 \\1',
- ),
- 455 =>
- array (
- 'match' => '0C9B ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E012 \\1',
- ),
- 456 =>
- array (
- 'match' => '0C9C ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E013 \\1',
- ),
- 457 =>
- array (
- 'match' => '0C9D ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E014 \\1',
- ),
- 458 =>
- array (
- 'match' => '0C9F ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E015 \\1',
- ),
- 459 =>
- array (
- 'match' => '0CA0 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E016 \\1',
- ),
- 460 =>
- array (
- 'match' => '0CA1 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E017 \\1',
- ),
- 461 =>
- array (
- 'match' => '0CA2 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E018 \\1',
- ),
- 462 =>
- array (
- 'match' => '0CA3 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E019 \\1',
- ),
- 463 =>
- array (
- 'match' => '0CA4 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E01A \\1',
- ),
- 464 =>
- array (
- 'match' => '0CA5 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E01B \\1',
- ),
- 465 =>
- array (
- 'match' => '0CA6 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E01C \\1',
- ),
- 466 =>
- array (
- 'match' => '0CA7 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E01D \\1',
- ),
- 467 =>
- array (
- 'match' => '0CA8 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E01E \\1',
- ),
- 468 =>
- array (
- 'match' => '0CAA ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E01F \\1',
- ),
- 469 =>
- array (
- 'match' => '0CAB ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E020 \\1',
- ),
- 470 =>
- array (
- 'match' => '0CAC ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E021 \\1',
- ),
- 471 =>
- array (
- 'match' => '0CAD ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E022 \\1',
- ),
- 472 =>
- array (
- 'match' => '0CAE ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E023 \\1',
- ),
- 473 =>
- array (
- 'match' => '0CAF ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E024 \\1',
- ),
- 474 =>
- array (
- 'match' => '0CB0 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E025 \\1',
- ),
- 475 =>
- array (
- 'match' => '0CB1 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E026 \\1',
- ),
- 476 =>
- array (
- 'match' => '0CB2 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E027 \\1',
- ),
- 477 =>
- array (
- 'match' => '0CB3 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E028 \\1',
- ),
- 478 =>
- array (
- 'match' => '0CB5 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E029 \\1',
- ),
- 479 =>
- array (
- 'match' => '0CB6 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E02A \\1',
- ),
- 480 =>
- array (
- 'match' => '0CB7 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E02B \\1',
- ),
- 481 =>
- array (
- 'match' => '0CB8 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E02C \\1',
- ),
- 482 =>
- array (
- 'match' => '0CB9 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E02D \\1',
- ),
- 483 =>
- array (
- 'match' => 'E07D ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E07F \\1',
- ),
- 484 =>
- array (
- 'match' => 'E07E ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E080 \\1',
- ),
- 485 =>
- array (
- 'match' => 'E0E6 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E0EC \\1',
- ),
- 486 =>
- array (
- 'match' => 'E0E7 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E0ED \\1',
- ),
- 487 =>
- array (
- 'match' => 'E172 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E18F \\1',
- ),
- 488 =>
- array (
- 'match' => 'E173 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E190 \\1',
- ),
- 489 =>
- array (
- 'match' => 'E174 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E191 \\1',
- ),
- 490 =>
- array (
- 'match' => 'E175 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E192 \\1',
- ),
- 491 =>
- array (
- 'match' => 'E176 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E193 \\1',
- ),
- 492 =>
- array (
- 'match' => 'E0E8 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E0EE \\1',
- ),
- 493 =>
- array (
- 'match' => 'E0E9 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E0EF \\1',
- ),
- 494 =>
- array (
- 'match' => 'E178 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E194 \\1',
- ),
- 495 =>
- array (
- 'match' => 'E179 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E195 \\1',
- ),
- 496 =>
- array (
- 'match' => 'E17A ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E196 \\1',
- ),
- 497 =>
- array (
- 'match' => 'E17B ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E197 \\1',
- ),
- 498 =>
- array (
- 'match' => 'E17C ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E198 \\1',
- ),
- 499 =>
- array (
- 'match' => 'E17D ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E199 \\1',
- ),
- 500 =>
- array (
- 'match' => 'E17E ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E19A \\1',
- ),
- 501 =>
- array (
- 'match' => 'E17F ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E19B \\1',
- ),
- 502 =>
- array (
- 'match' => 'E180 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E19C \\1',
- ),
- 503 =>
- array (
- 'match' => 'E181 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E19D \\1',
- ),
- 504 =>
- array (
- 'match' => 'E182 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E19E \\1',
- ),
- 505 =>
- array (
- 'match' => 'E0EA ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E0F0 \\1',
- ),
- 506 =>
- array (
- 'match' => 'E183 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E19F \\1',
- ),
- 507 =>
- array (
- 'match' => 'E184 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E1A0 \\1',
- ),
- 508 =>
- array (
- 'match' => 'E185 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E1A1 \\1',
- ),
- 509 =>
- array (
- 'match' => 'E186 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E1A2 \\1',
- ),
- 510 =>
- array (
- 'match' => 'E0EB ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E0F1 \\1',
- ),
- 511 =>
- array (
- 'match' => 'E187 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E1A3 \\1',
- ),
- 512 =>
- array (
- 'match' => 'E188 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E1A4 \\1',
- ),
- 513 =>
- array (
- 'match' => 'E189 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E1A5 \\1',
- ),
- 514 =>
- array (
- 'match' => 'E18A ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E1A6 \\1',
- ),
- 515 =>
- array (
- 'match' => 'E18B ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E1A7 \\1',
- ),
- 516 =>
- array (
- 'match' => 'E18C ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E1A8 \\1',
- ),
- 517 =>
- array (
- 'match' => 'E18D ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E1A9 \\1',
- ),
- 518 =>
- array (
- 'match' => 'E18E ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E1AA \\1',
- ),
- 519 =>
- array (
- 'match' => 'E117 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E119 \\1',
- ),
- 520 =>
- array (
- 'match' => 'E118 ((0CBE|0CC6|0CC7|E003|0CCA|0CCB|0CCC))',
- 'replace' => 'E11A \\1',
- ),
- 521 =>
- array (
- 'match' => '0C95 (0CCD)',
- 'replace' => 'E00C \\1',
- ),
- 522 =>
- array (
- 'match' => '0C96 (0CCD)',
- 'replace' => 'E00D \\1',
- ),
- 523 =>
- array (
- 'match' => '0C97 (0CCD)',
- 'replace' => 'E00E \\1',
- ),
- 524 =>
- array (
- 'match' => '0C98 (0CCD)',
- 'replace' => 'E00F \\1',
- ),
- 525 =>
- array (
- 'match' => '0C99 (0CCD)',
- 'replace' => 'E010 \\1',
- ),
- 526 =>
- array (
- 'match' => '0C9A (0CCD)',
- 'replace' => 'E011 \\1',
- ),
- 527 =>
- array (
- 'match' => '0C9B (0CCD)',
- 'replace' => 'E012 \\1',
- ),
- 528 =>
- array (
- 'match' => '0C9C (0CCD)',
- 'replace' => 'E013 \\1',
- ),
- 529 =>
- array (
- 'match' => '0C9D (0CCD)',
- 'replace' => 'E014 \\1',
- ),
- 530 =>
- array (
- 'match' => '0C9F (0CCD)',
- 'replace' => 'E015 \\1',
- ),
- 531 =>
- array (
- 'match' => '0CA0 (0CCD)',
- 'replace' => 'E016 \\1',
- ),
- 532 =>
- array (
- 'match' => '0CA1 (0CCD)',
- 'replace' => 'E017 \\1',
- ),
- 533 =>
- array (
- 'match' => '0CA2 (0CCD)',
- 'replace' => 'E018 \\1',
- ),
- 534 =>
- array (
- 'match' => '0CA3 (0CCD)',
- 'replace' => 'E019 \\1',
- ),
- 535 =>
- array (
- 'match' => '0CA4 (0CCD)',
- 'replace' => 'E01A \\1',
- ),
- 536 =>
- array (
- 'match' => '0CA5 (0CCD)',
- 'replace' => 'E01B \\1',
- ),
- 537 =>
- array (
- 'match' => '0CA6 (0CCD)',
- 'replace' => 'E01C \\1',
- ),
- 538 =>
- array (
- 'match' => '0CA7 (0CCD)',
- 'replace' => 'E01D \\1',
- ),
- 539 =>
- array (
- 'match' => '0CA8 (0CCD)',
- 'replace' => 'E01E \\1',
- ),
- 540 =>
- array (
- 'match' => '0CAA (0CCD)',
- 'replace' => 'E01F \\1',
- ),
- 541 =>
- array (
- 'match' => '0CAB (0CCD)',
- 'replace' => 'E020 \\1',
- ),
- 542 =>
- array (
- 'match' => '0CAC (0CCD)',
- 'replace' => 'E021 \\1',
- ),
- 543 =>
- array (
- 'match' => '0CAD (0CCD)',
- 'replace' => 'E022 \\1',
- ),
- 544 =>
- array (
- 'match' => '0CAE (0CCD)',
- 'replace' => 'E023 \\1',
- ),
- 545 =>
- array (
- 'match' => '0CAF (0CCD)',
- 'replace' => 'E024 \\1',
- ),
- 546 =>
- array (
- 'match' => '0CB0 (0CCD)',
- 'replace' => 'E025 \\1',
- ),
- 547 =>
- array (
- 'match' => '0CB1 (0CCD)',
- 'replace' => 'E026 \\1',
- ),
- 548 =>
- array (
- 'match' => '0CB2 (0CCD)',
- 'replace' => 'E027 \\1',
- ),
- 549 =>
- array (
- 'match' => '0CB3 (0CCD)',
- 'replace' => 'E028 \\1',
- ),
- 550 =>
- array (
- 'match' => '0CB5 (0CCD)',
- 'replace' => 'E029 \\1',
- ),
- 551 =>
- array (
- 'match' => '0CB6 (0CCD)',
- 'replace' => 'E02A \\1',
- ),
- 552 =>
- array (
- 'match' => '0CB7 (0CCD)',
- 'replace' => 'E02B \\1',
- ),
- 553 =>
- array (
- 'match' => '0CB8 (0CCD)',
- 'replace' => 'E02C \\1',
- ),
- 554 =>
- array (
- 'match' => '0CB9 (0CCD)',
- 'replace' => 'E02D \\1',
- ),
- 555 =>
- array (
- 'match' => 'E07D (0CCD)',
- 'replace' => 'E07F \\1',
- ),
- 556 =>
- array (
- 'match' => 'E07E (0CCD)',
- 'replace' => 'E080 \\1',
- ),
- 557 =>
- array (
- 'match' => 'E0E6 (0CCD)',
- 'replace' => 'E0EC \\1',
- ),
- 558 =>
- array (
- 'match' => 'E0E7 (0CCD)',
- 'replace' => 'E0ED \\1',
- ),
- 559 =>
- array (
- 'match' => 'E172 (0CCD)',
- 'replace' => 'E18F \\1',
- ),
- 560 =>
- array (
- 'match' => 'E173 (0CCD)',
- 'replace' => 'E190 \\1',
- ),
- 561 =>
- array (
- 'match' => 'E174 (0CCD)',
- 'replace' => 'E191 \\1',
- ),
- 562 =>
- array (
- 'match' => 'E175 (0CCD)',
- 'replace' => 'E192 \\1',
- ),
- 563 =>
- array (
- 'match' => 'E176 (0CCD)',
- 'replace' => 'E193 \\1',
- ),
- 564 =>
- array (
- 'match' => 'E0E8 (0CCD)',
- 'replace' => 'E0EE \\1',
- ),
- 565 =>
- array (
- 'match' => 'E0E9 (0CCD)',
- 'replace' => 'E0EF \\1',
- ),
- 566 =>
- array (
- 'match' => 'E178 (0CCD)',
- 'replace' => 'E194 \\1',
- ),
- 567 =>
- array (
- 'match' => 'E179 (0CCD)',
- 'replace' => 'E195 \\1',
- ),
- 568 =>
- array (
- 'match' => 'E17A (0CCD)',
- 'replace' => 'E196 \\1',
- ),
- 569 =>
- array (
- 'match' => 'E17B (0CCD)',
- 'replace' => 'E197 \\1',
- ),
- 570 =>
- array (
- 'match' => 'E17C (0CCD)',
- 'replace' => 'E198 \\1',
- ),
- 571 =>
- array (
- 'match' => 'E17D (0CCD)',
- 'replace' => 'E199 \\1',
- ),
- 572 =>
- array (
- 'match' => 'E17E (0CCD)',
- 'replace' => 'E19A \\1',
- ),
- 573 =>
- array (
- 'match' => 'E17F (0CCD)',
- 'replace' => 'E19B \\1',
- ),
- 574 =>
- array (
- 'match' => 'E180 (0CCD)',
- 'replace' => 'E19C \\1',
- ),
- 575 =>
- array (
- 'match' => 'E181 (0CCD)',
- 'replace' => 'E19D \\1',
- ),
- 576 =>
- array (
- 'match' => 'E182 (0CCD)',
- 'replace' => 'E19E \\1',
- ),
- 577 =>
- array (
- 'match' => 'E0EA (0CCD)',
- 'replace' => 'E0F0 \\1',
- ),
- 578 =>
- array (
- 'match' => 'E183 (0CCD)',
- 'replace' => 'E19F \\1',
- ),
- 579 =>
- array (
- 'match' => 'E184 (0CCD)',
- 'replace' => 'E1A0 \\1',
- ),
- 580 =>
- array (
- 'match' => 'E185 (0CCD)',
- 'replace' => 'E1A1 \\1',
- ),
- 581 =>
- array (
- 'match' => 'E186 (0CCD)',
- 'replace' => 'E1A2 \\1',
- ),
- 582 =>
- array (
- 'match' => 'E0EB (0CCD)',
- 'replace' => 'E0F1 \\1',
- ),
- 583 =>
- array (
- 'match' => 'E187 (0CCD)',
- 'replace' => 'E1A3 \\1',
- ),
- 584 =>
- array (
- 'match' => 'E188 (0CCD)',
- 'replace' => 'E1A4 \\1',
- ),
- 585 =>
- array (
- 'match' => 'E189 (0CCD)',
- 'replace' => 'E1A5 \\1',
- ),
- 586 =>
- array (
- 'match' => 'E18A (0CCD)',
- 'replace' => 'E1A6 \\1',
- ),
- 587 =>
- array (
- 'match' => 'E18B (0CCD)',
- 'replace' => 'E1A7 \\1',
- ),
- 588 =>
- array (
- 'match' => 'E18C (0CCD)',
- 'replace' => 'E1A8 \\1',
- ),
- 589 =>
- array (
- 'match' => 'E18D (0CCD)',
- 'replace' => 'E1A9 \\1',
- ),
- 590 =>
- array (
- 'match' => 'E18E (0CCD)',
- 'replace' => 'E1AA \\1',
- ),
- 591 =>
- array (
- 'match' => 'E117 (0CCD)',
- 'replace' => 'E119 \\1',
- ),
- 592 =>
- array (
- 'match' => 'E118 (0CCD)',
- 'replace' => 'E11A \\1',
- ),
- 593 =>
- array (
- 'match' => '0C98 (0CBE)',
- 'replace' => 'E00F \\1',
- ),
- 594 =>
- array (
- 'match' => '0CB1 (0CBE)',
- 'replace' => 'E026 \\1',
- ),
- 595 =>
- array (
- 'match' => 'E173 (0CBE)',
- 'replace' => 'E190 \\1',
- ),
- 596 =>
- array (
- 'match' => 'E187 (0CBE)',
- 'replace' => 'E1A3 \\1',
- ),
- 597 =>
- array (
- 'match' => '((E00F|0C9E|E026|E190|E177|E1A3)) 0CBE',
- 'replace' => '\\1 E004',
- ),
-);
-?>
\ No newline at end of file
diff --git a/public/mpdf/includes/ind_ml_1_001.volt.php b/public/mpdf/includes/ind_ml_1_001.volt.php
deleted file mode 100644
index 0ef71d1..0000000
--- a/public/mpdf/includes/ind_ml_1_001.volt.php
+++ /dev/null
@@ -1,1769 +0,0 @@
-
- array (
- 'match' => '0D4D 200D',
- 'replace' => '007E',
- ),
- 1 =>
- array (
- 'match' => '0D4D 200C',
- 'replace' => '2018',
- ),
- 2 =>
- array (
- 'match' => '200D 0D4D',
- 'replace' => '2019',
- ),
- 3 =>
- array (
- 'match' => '0D15 0D4D 0D37',
- 'replace' => 'E010',
- ),
- 4 =>
- array (
- 'match' => '0D1C 0D4D 0D1E',
- 'replace' => 'E011',
- ),
- 5 =>
- array (
- 'match' => '0D1A 0D4D 0D1A',
- 'replace' => 'E03E',
- ),
- 6 =>
- array (
- 'match' => '0D2C 0D4D 0D2C',
- 'replace' => 'E04B',
- ),
- 7 =>
- array (
- 'match' => '0D24 0D4D 0D24',
- 'replace' => 'E023',
- ),
- 8 =>
- array (
- 'match' => '0D28 0D4D 0D28',
- 'replace' => 'E02A',
- ),
- 9 =>
- array (
- 'match' => '0D23 0D4D 0D23',
- 'replace' => 'E043',
- ),
- 10 =>
- array (
- 'match' => '0D2E 0D4D 0D2E',
- 'replace' => 'E030',
- ),
- 11 =>
- array (
- 'match' => '0D33 0D4D 0D33',
- 'replace' => 'E036',
- ),
- 12 =>
- array (
- 'match' => '0D32 0D4D 0D32',
- 'replace' => 'E05D',
- ),
- 13 =>
- array (
- 'match' => '0D26 0D4D 0D26',
- 'replace' => 'E015',
- ),
- 14 =>
- array (
- 'match' => '0D1F 0D4D 0D1F',
- 'replace' => 'E014',
- ),
- 15 =>
- array (
- 'match' => '0D1C 0D4D 0D1C',
- 'replace' => 'E01B',
- ),
- 16 =>
- array (
- 'match' => '0D2A 0D4D 0D2A',
- 'replace' => 'E046',
- ),
- 17 =>
- array (
- 'match' => '0D17 0D4D 0D17',
- 'replace' => 'E03B',
- ),
- 18 =>
- array (
- 'match' => '0D15 0D4D 0D15',
- 'replace' => 'E012',
- ),
- 19 =>
- array (
- 'match' => '0D31 0D4D 0D31',
- 'replace' => 'E05C',
- ),
- 20 =>
- array (
- 'match' => '0D19 0D4D 0D15',
- 'replace' => 'E013',
- ),
- 21 =>
- array (
- 'match' => '0D19 0D4D 0D19',
- 'replace' => 'E016',
- ),
- 22 =>
- array (
- 'match' => '0D15 0D4D 0D24',
- 'replace' => 'E017',
- ),
- 23 =>
- array (
- 'match' => '0D17 0D4D 0D2E',
- 'replace' => 'E018',
- ),
- 24 =>
- array (
- 'match' => '0D17 0D4D E029',
- 'replace' => 'E019',
- ),
- 25 =>
- array (
- 'match' => '0D17 0D4D 0D28',
- 'replace' => 'E01A',
- ),
- 26 =>
- array (
- 'match' => '0D1E 0D4D 0D1C',
- 'replace' => 'E01C',
- ),
- 27 =>
- array (
- 'match' => '0D1E 0D4D 0D1E',
- 'replace' => 'E01D',
- ),
- 28 =>
- array (
- 'match' => '0D1E 0D4D 0D1A',
- 'replace' => 'E01E',
- ),
- 29 =>
- array (
- 'match' => '0D1E 0D4D 0D1B',
- 'replace' => 'E01F',
- ),
- 30 =>
- array (
- 'match' => '0D23 0D4D 0D2E',
- 'replace' => 'E020',
- ),
- 31 =>
- array (
- 'match' => '0D23 0D4D 0D21',
- 'replace' => 'E021',
- ),
- 32 =>
- array (
- 'match' => '0D23 0D4D 0D1F',
- 'replace' => 'E022',
- ),
- 33 =>
- array (
- 'match' => '0D24 0D4D 0D38',
- 'replace' => 'E024',
- ),
- 34 =>
- array (
- 'match' => '0D24 0D4D 0D25',
- 'replace' => 'E025',
- ),
- 35 =>
- array (
- 'match' => '0D24 0D4D 0D2E',
- 'replace' => 'E026',
- ),
- 36 =>
- array (
- 'match' => '0D24 0D4D 0D2D',
- 'replace' => 'E027',
- ),
- 37 =>
- array (
- 'match' => '0D24 0D4D 0D28',
- 'replace' => 'E028',
- ),
- 38 =>
- array (
- 'match' => '0D26 0D4D 0D27',
- 'replace' => 'E029',
- ),
- 39 =>
- array (
- 'match' => '0D28 0D4D 0D26',
- 'replace' => 'E02B',
- ),
- 40 =>
- array (
- 'match' => '0D28 0D4D 0D24',
- 'replace' => 'E02C',
- ),
- 41 =>
- array (
- 'match' => '0D28 0D4D 0D27',
- 'replace' => 'E02D',
- ),
- 42 =>
- array (
- 'match' => '0D28 0D4D 0D2A',
- 'replace' => 'E031',
- ),
- 43 =>
- array (
- 'match' => '0D28 0D4D 0D2E',
- 'replace' => 'E02E',
- ),
- 44 =>
- array (
- 'match' => '0D28 0D4D 0D25',
- 'replace' => 'E02F',
- ),
- 45 =>
- array (
- 'match' => '0D2E 0D4D 0D2A',
- 'replace' => 'E031',
- ),
- 46 =>
- array (
- 'match' => '0D36 0D4D 0D1A',
- 'replace' => 'E032',
- ),
- 47 =>
- array (
- 'match' => '0D38 0D4D 0D25',
- 'replace' => 'E033',
- ),
- 48 =>
- array (
- 'match' => '0D39 0D4D 0D28',
- 'replace' => 'E034',
- ),
- 49 =>
- array (
- 'match' => '0D39 0D4D 0D2E',
- 'replace' => 'E035',
- ),
- 50 =>
- array (
- 'match' => '0D15 0D4D 0D32',
- 'replace' => 'E037',
- ),
- 51 =>
- array (
- 'match' => '0D15 0D4D 0D33',
- 'replace' => 'E037',
- ),
- 52 =>
- array (
- 'match' => '0D15 0D4D 0D38',
- 'replace' => 'E038',
- ),
- 53 =>
- array (
- 'match' => '0D15 0D4D 0D1F',
- 'replace' => 'E039',
- ),
- 54 =>
- array (
- 'match' => '0D18 0D4D 0D28',
- 'replace' => 'E03A',
- ),
- 55 =>
- array (
- 'match' => '0D17 0D4D 0D32',
- 'replace' => 'E03C',
- ),
- 56 =>
- array (
- 'match' => '0D17 0D4D 0D33',
- 'replace' => 'E03C',
- ),
- 57 =>
- array (
- 'match' => '0D1A 0D4D 0D1B',
- 'replace' => 'E03F',
- ),
- 58 =>
- array (
- 'match' => '0D21 0D4D 0D21',
- 'replace' => 'E040',
- ),
- 59 =>
- array (
- 'match' => '0D21 0D4D 0D22',
- 'replace' => 'E041',
- ),
- 60 =>
- array (
- 'match' => '0D21 0D4D 0D1C',
- 'replace' => 'E042',
- ),
- 61 =>
- array (
- 'match' => '0D23 0D4D 0D20',
- 'replace' => 'E044',
- ),
- 62 =>
- array (
- 'match' => '0D24 0D4D 0D32',
- 'replace' => 'E045',
- ),
- 63 =>
- array (
- 'match' => '0D2A 0D4D 0D28',
- 'replace' => 'E047',
- ),
- 64 =>
- array (
- 'match' => '0D2A 0D4D 0D32',
- 'replace' => 'E048',
- ),
- 65 =>
- array (
- 'match' => '0D2A 0D4D 0D33',
- 'replace' => 'E048',
- ),
- 66 =>
- array (
- 'match' => '0D2A 0D4D 0D38',
- 'replace' => 'E049',
- ),
- 67 =>
- array (
- 'match' => '0D2A 0D4D 0D24',
- 'replace' => 'E04A',
- ),
- 68 =>
- array (
- 'match' => '0D2C 0D4D 0D32',
- 'replace' => 'E04C',
- ),
- 69 =>
- array (
- 'match' => '0D2C 0D4D 0D33',
- 'replace' => 'E04C',
- ),
- 70 =>
- array (
- 'match' => '0D2C 0D4D 0D26',
- 'replace' => 'E04D',
- ),
- 71 =>
- array (
- 'match' => '0D2C 0D4D 0D27',
- 'replace' => 'E04E',
- ),
- 72 =>
- array (
- 'match' => '0D2C 0D4D 0D15',
- 'replace' => 'E04F',
- ),
- 73 =>
- array (
- 'match' => '0D2B 0D4D 0D32',
- 'replace' => 'E050',
- ),
- 74 =>
- array (
- 'match' => '0D2B 0D4D 0D33',
- 'replace' => 'E050',
- ),
- 75 =>
- array (
- 'match' => '0D2B 0D4D 0D15',
- 'replace' => 'E051',
- ),
- 76 =>
- array (
- 'match' => '0D2B 0D4D 0D24',
- 'replace' => 'E052',
- ),
- 77 =>
- array (
- 'match' => '0D2E 0D4D 0D32',
- 'replace' => 'E053',
- ),
- 78 =>
- array (
- 'match' => '0D2E 0D4D 0D33',
- 'replace' => 'E053',
- ),
- 79 =>
- array (
- 'match' => '0D2E 0D4D 0D28',
- 'replace' => 'E054',
- ),
- 80 =>
- array (
- 'match' => '0D2F 0D4D 0D2F',
- 'replace' => 'E055',
- ),
- 81 =>
- array (
- 'match' => '0D2F 0D4D 0D2E',
- 'replace' => 'E056',
- ),
- 82 =>
- array (
- 'match' => '0D2F 0D4D 0D2A',
- 'replace' => 'E057',
- ),
- 83 =>
- array (
- 'match' => '0D2F 0D4D 0D15',
- 'replace' => 'E058',
- ),
- 84 =>
- array (
- 'match' => '0D2F 0D4D 0D24',
- 'replace' => 'E05A',
- ),
- 85 =>
- array (
- 'match' => '0D32 0D4D 0D32',
- 'replace' => 'E05D',
- ),
- 86 =>
- array (
- 'match' => '0D32 0D4D 0D2A',
- 'replace' => 'E05E',
- ),
- 87 =>
- array (
- 'match' => '0D32 0D4D 0D15',
- 'replace' => 'E05F',
- ),
- 88 =>
- array (
- 'match' => '0D32 0D4D 0D2E',
- 'replace' => 'E060',
- ),
- 89 =>
- array (
- 'match' => '0D35 0D4D 0D35',
- 'replace' => 'E061',
- ),
- 90 =>
- array (
- 'match' => '0D35 0D4D 0D32',
- 'replace' => 'E062',
- ),
- 91 =>
- array (
- 'match' => '0D35 0D4D 0D33',
- 'replace' => 'E062',
- ),
- 92 =>
- array (
- 'match' => '0D36 0D4D 0D36',
- 'replace' => 'E063',
- ),
- 93 =>
- array (
- 'match' => '0D36 0D4D 0D32',
- 'replace' => 'E064',
- ),
- 94 =>
- array (
- 'match' => '0D36 0D4D 0D33',
- 'replace' => 'E064',
- ),
- 95 =>
- array (
- 'match' => '0D36 0D4D 0D28',
- 'replace' => 'E065',
- ),
- 96 =>
- array (
- 'match' => '0D36 0D4D 0D2E',
- 'replace' => 'E066',
- ),
- 97 =>
- array (
- 'match' => '0D37 0D4D 0D2A',
- 'replace' => 'E067',
- ),
- 98 =>
- array (
- 'match' => '0D37 0D4D 0D15',
- 'replace' => 'E068',
- ),
- 99 =>
- array (
- 'match' => '0D37 0D4D 0D23',
- 'replace' => 'E069',
- ),
- 100 =>
- array (
- 'match' => '0D37 0D4D 0D1F',
- 'replace' => 'E06A',
- ),
- 101 =>
- array (
- 'match' => '0D37 0D4D 0D2E',
- 'replace' => 'E06B',
- ),
- 102 =>
- array (
- 'match' => '0D37 0D4D E05C',
- 'replace' => 'E06C',
- ),
- 103 =>
- array (
- 'match' => '0D37 0D4D 0D2B',
- 'replace' => 'E06D',
- ),
- 104 =>
- array (
- 'match' => '0D37 0D4D 0D20',
- 'replace' => 'E06E',
- ),
- 105 =>
- array (
- 'match' => '0D37 0D4D 0D24',
- 'replace' => 'E06F',
- ),
- 106 =>
- array (
- 'match' => '0D38 0D4D 0D38',
- 'replace' => 'E070',
- ),
- 107 =>
- array (
- 'match' => '0D38 0D4D 0D32',
- 'replace' => 'E071',
- ),
- 108 =>
- array (
- 'match' => '0D38 0D4D 0D33',
- 'replace' => 'E071',
- ),
- 109 =>
- array (
- 'match' => '0D38 0D4D E05C',
- 'replace' => 'E072',
- ),
- 110 =>
- array (
- 'match' => '0D38 0D4D 0D2A',
- 'replace' => 'E073',
- ),
- 111 =>
- array (
- 'match' => '0D38 0D4D 0D24',
- 'replace' => 'E074',
- ),
- 112 =>
- array (
- 'match' => '0D38 0D4D 0D15',
- 'replace' => 'E075',
- ),
- 113 =>
- array (
- 'match' => '0D38 0D4D 0D28',
- 'replace' => 'E076',
- ),
- 114 =>
- array (
- 'match' => '0D38 0D4D 0D2E',
- 'replace' => 'E077',
- ),
- 115 =>
- array (
- 'match' => '0D39 0D4D 0D32',
- 'replace' => 'E078',
- ),
- 116 =>
- array (
- 'match' => '0D39 0D4D 0D33',
- 'replace' => 'E078',
- ),
- 117 =>
- array (
- 'match' => '0D34 0D4D 0D24',
- 'replace' => 'E079',
- ),
- 118 =>
- array (
- 'match' => '0D34 0D4D 0D15',
- 'replace' => 'E07A',
- ),
- 119 =>
- array (
- 'match' => '0D34 0D4D 0D2E',
- 'replace' => 'E07C',
- ),
- 120 =>
- array (
- 'match' => 'E006 0D4D 0D31',
- 'replace' => 'E07D',
- ),
- 121 =>
- array (
- 'match' => '0D28 0D4D 0D30',
- 'replace' => 'E07D',
- ),
- 122 =>
- array (
- 'match' => '0D28 0D4D 0D31',
- 'replace' => 'E07D',
- ),
- 123 =>
- array (
- 'match' => '0D34 0D4D E023',
- 'replace' => 'E07B',
- ),
- 124 =>
- array (
- 'match' => '0D2F 0D4D E023',
- 'replace' => 'E05B',
- ),
- 125 =>
- array (
- 'match' => '0D2F 0D4D E012',
- 'replace' => 'E059',
- ),
- 126 =>
- array (
- 'match' => 'E010 0D4D 0D2E',
- 'replace' => 'E03D',
- ),
- 127 =>
- array (
- 'match' => '2019 0D31',
- 'replace' => 'E00E',
- ),
- 128 =>
- array (
- 'match' => '2019 0D31',
- 'replace' => 'E00E',
- ),
- 129 =>
- array (
- 'match' => '2019 0D2F',
- 'replace' => 'E00D',
- ),
- 130 =>
- array (
- 'match' => '2019 0D35',
- 'replace' => 'E00F',
- ),
- 131 =>
- array (
- 'match' => '0D4D 0D31 ((0D15|0D16|0D17|0D18|0D19|0D1A|0D1B|0D1C|0D1D|0D1E|0D1F|0D20|0D21|0D22|0D23|0D24|0D25|0D26|0D27|0D28|0D2A|0D2B|0D2C|0D2D|0D2E|0D2F|0D30|0D31|0D32|0D33|0D34|0D35|0D36|0D37|0D38|0D39))',
- 'replace' => 'E00E \\1',
- ),
- 132 =>
- array (
- 'match' => '0D4D 0D30 ((0D15|0D16|0D17|0D18|0D19|0D1A|0D1B|0D1C|0D1D|0D1E|0D1F|0D20|0D21|0D22|0D23|0D24|0D25|0D26|0D27|0D28|0D2A|0D2B|0D2C|0D2D|0D2E|0D2F|0D30|0D31|0D32|0D33|0D34|0D35|0D36|0D37|0D38|0D39))',
- 'replace' => 'E00E \\1',
- ),
- 133 =>
- array (
- 'match' => '0D4D 0D31 ((E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E051|E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D))',
- 'replace' => 'E00E \\1',
- ),
- 134 =>
- array (
- 'match' => '0D4D 0D30 ((E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E051|E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D))',
- 'replace' => 'E00E \\1',
- ),
- 135 =>
- array (
- 'match' => '0D4D 0D31 ((0020|25CC))',
- 'replace' => 'E00E \\1',
- ),
- 136 =>
- array (
- 'match' => '0D4D 0D30 ((0020|25CC))',
- 'replace' => 'E00E \\1',
- ),
- 137 =>
- array (
- 'match' => '((0D15|0D16|0D17|0D18|0D19|0D1A|0D1B|0D1C|0D1D|0D1E|0D1F|0D20|0D21|0D22|0D23|0D24|0D25|0D26|0D27|0D28|0D2A|0D2B|0D2C|0D2D|0D2E|0D2F|0D30|0D31|0D32|0D33|0D34|0D35|0D36|0D37|0D38|0D39)) 0D4D 0D2F',
- 'replace' => '\\1 E00D',
- ),
- 138 =>
- array (
- 'match' => '((0D15|0D16|0D17|0D18|0D19|0D1A|0D1B|0D1C|0D1D|0D1E|0D1F|0D20|0D21|0D22|0D23|0D24|0D25|0D26|0D27|0D28|0D2A|0D2B|0D2C|0D2D|0D2E|0D2F|0D30|0D31|0D32|0D33|0D34|0D35|0D36|0D37|0D38|0D39)) 2018 0D2F',
- 'replace' => '\\1 E00D',
- ),
- 139 =>
- array (
- 'match' => '((E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E051|E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D)) 0D4D 0D2F',
- 'replace' => '\\1 E00D',
- ),
- 140 =>
- array (
- 'match' => '((E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E051|E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D)) 2018 0D2F',
- 'replace' => '\\1 E00D',
- ),
- 141 =>
- array (
- 'match' => '((0020|25CC)) 0D4D 0D2F',
- 'replace' => '\\1 E00D',
- ),
- 142 =>
- array (
- 'match' => '((0020|25CC)) 2018 0D2F',
- 'replace' => '\\1 E00D',
- ),
- 143 =>
- array (
- 'match' => '((0D15|0D16|0D17|0D18|0D19|0D1A|0D1B|0D1C|0D1D|0D1E|0D1F|0D20|0D21|0D22|0D23|0D24|0D25|0D26|0D27|0D28|0D2A|0D2B|0D2C|0D2D|0D2E|0D2F|0D30|0D31|0D32|0D33|0D34|0D35|0D36|0D37|0D38|0D39)) 0D4D 0D35',
- 'replace' => '\\1 E00F',
- ),
- 144 =>
- array (
- 'match' => '((0D15|0D16|0D17|0D18|0D19|0D1A|0D1B|0D1C|0D1D|0D1E|0D1F|0D20|0D21|0D22|0D23|0D24|0D25|0D26|0D27|0D28|0D2A|0D2B|0D2C|0D2D|0D2E|0D2F|0D30|0D31|0D32|0D33|0D34|0D35|0D36|0D37|0D38|0D39)) 2018 0D35',
- 'replace' => '\\1 E00F',
- ),
- 145 =>
- array (
- 'match' => '((E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E051|E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D)) 0D4D 0D35',
- 'replace' => '\\1 E00F',
- ),
- 146 =>
- array (
- 'match' => '((E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E051|E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E07B|E07C|E07D)) 2018 0D35',
- 'replace' => '\\1 E00F',
- ),
- 147 =>
- array (
- 'match' => '((0020|25CC)) 0D4D 0D35',
- 'replace' => '\\1 E00F',
- ),
- 148 =>
- array (
- 'match' => '((0020|25CC)) 2018 0D35',
- 'replace' => '\\1 E00F',
- ),
- 149 =>
- array (
- 'match' => '0D28 0D4D',
- 'replace' => 'E006',
- ),
- 150 =>
- array (
- 'match' => '0D28 007E',
- 'replace' => 'E006',
- ),
- 151 =>
- array (
- 'match' => '0D23 0D4D',
- 'replace' => 'E005',
- ),
- 152 =>
- array (
- 'match' => '0D23 007E',
- 'replace' => 'E005',
- ),
- 153 =>
- array (
- 'match' => '0D32 0D4D',
- 'replace' => 'E008',
- ),
- 154 =>
- array (
- 'match' => '0D32 007E',
- 'replace' => 'E008',
- ),
- 155 =>
- array (
- 'match' => '0D33 0D4D',
- 'replace' => 'E009',
- ),
- 156 =>
- array (
- 'match' => '0D33 007E',
- 'replace' => 'E009',
- ),
- 157 =>
- array (
- 'match' => '0D31 0D4D',
- 'replace' => 'E007',
- ),
- 158 =>
- array (
- 'match' => '0D31 007E',
- 'replace' => 'E007',
- ),
- 159 =>
- array (
- 'match' => '0D30 0D4D',
- 'replace' => 'E007',
- ),
- 160 =>
- array (
- 'match' => '0D30 007E',
- 'replace' => 'E007',
- ),
- 161 =>
- array (
- 'match' => '(E00E) E005',
- 'replace' => '\\1 E005 E00E',
- ),
- 162 =>
- array (
- 'match' => '(E00E) E006',
- 'replace' => '\\1 E006 E00E',
- ),
- 163 =>
- array (
- 'match' => '(E00E) E007',
- 'replace' => '\\1 E007 E00E',
- ),
- 164 =>
- array (
- 'match' => '(E00E) E008',
- 'replace' => '\\1 E008 E00E',
- ),
- 165 =>
- array (
- 'match' => '(E00E) E009',
- 'replace' => '\\1 E009 E00E',
- ),
- 166 =>
- array (
- 'match' => 'E00E E005 (E00E)',
- 'replace' => 'E005 \\1',
- ),
- 167 =>
- array (
- 'match' => 'E00E E006 (E00E)',
- 'replace' => 'E006 \\1',
- ),
- 168 =>
- array (
- 'match' => 'E00E E007 (E00E)',
- 'replace' => 'E007 \\1',
- ),
- 169 =>
- array (
- 'match' => 'E00E E008 (E00E)',
- 'replace' => 'E008 \\1',
- ),
- 170 =>
- array (
- 'match' => 'E00E E009 (E00E)',
- 'replace' => 'E009 \\1',
- ),
- 171 =>
- array (
- 'match' => '(E00E (0D15|0D16|0D17|0D18|0D19|0D1A|0D1B|0D1C|0D1D|0D1E|0D1F|0D20|0D21|0D22|0D23|0D24|0D25|0D26|0D27|0D28|0D2A|0D2B|0D2C|0D2D|0D2E|0D2F|0D30|0D31|0D32|0D33|0D34|0D35|0D36|0D37|0D38|0D39)) 0D4D ((0D15|0D16|0D17|0D18|0D19|0D1A|0D1B|0D1C|0D1D|0D1E|0D1F|0D20|0D21|0D22|0D23|0D24|0D25|0D26|0D27|0D28|0D2A|0D2B|0D2C|0D2D|0D2E|0D2F|0D30|0D31|0D32|0D33|0D34|0D35|0D36|0D37|0D38|0D39))',
- 'replace' => '\\1 0D4D E00E \\3',
- ),
- 172 =>
- array (
- 'match' => 'E00E 0D15 (0D4D E00E)',
- 'replace' => '0D15 \\1',
- ),
- 173 =>
- array (
- 'match' => 'E00E 0D16 (0D4D E00E)',
- 'replace' => '0D16 \\1',
- ),
- 174 =>
- array (
- 'match' => 'E00E 0D17 (0D4D E00E)',
- 'replace' => '0D17 \\1',
- ),
- 175 =>
- array (
- 'match' => 'E00E 0D18 (0D4D E00E)',
- 'replace' => '0D18 \\1',
- ),
- 176 =>
- array (
- 'match' => 'E00E 0D19 (0D4D E00E)',
- 'replace' => '0D19 \\1',
- ),
- 177 =>
- array (
- 'match' => 'E00E 0D1A (0D4D E00E)',
- 'replace' => '0D1A \\1',
- ),
- 178 =>
- array (
- 'match' => 'E00E 0D1B (0D4D E00E)',
- 'replace' => '0D1B \\1',
- ),
- 179 =>
- array (
- 'match' => 'E00E 0D1C (0D4D E00E)',
- 'replace' => '0D1C \\1',
- ),
- 180 =>
- array (
- 'match' => 'E00E 0D1D (0D4D E00E)',
- 'replace' => '0D1D \\1',
- ),
- 181 =>
- array (
- 'match' => 'E00E 0D1E (0D4D E00E)',
- 'replace' => '0D1E \\1',
- ),
- 182 =>
- array (
- 'match' => 'E00E 0D1F (0D4D E00E)',
- 'replace' => '0D1F \\1',
- ),
- 183 =>
- array (
- 'match' => 'E00E 0D20 (0D4D E00E)',
- 'replace' => '0D20 \\1',
- ),
- 184 =>
- array (
- 'match' => 'E00E 0D21 (0D4D E00E)',
- 'replace' => '0D21 \\1',
- ),
- 185 =>
- array (
- 'match' => 'E00E 0D22 (0D4D E00E)',
- 'replace' => '0D22 \\1',
- ),
- 186 =>
- array (
- 'match' => 'E00E 0D23 (0D4D E00E)',
- 'replace' => '0D23 \\1',
- ),
- 187 =>
- array (
- 'match' => 'E00E 0D24 (0D4D E00E)',
- 'replace' => '0D24 \\1',
- ),
- 188 =>
- array (
- 'match' => 'E00E 0D25 (0D4D E00E)',
- 'replace' => '0D25 \\1',
- ),
- 189 =>
- array (
- 'match' => 'E00E 0D26 (0D4D E00E)',
- 'replace' => '0D26 \\1',
- ),
- 190 =>
- array (
- 'match' => 'E00E 0D27 (0D4D E00E)',
- 'replace' => '0D27 \\1',
- ),
- 191 =>
- array (
- 'match' => 'E00E 0D28 (0D4D E00E)',
- 'replace' => '0D28 \\1',
- ),
- 192 =>
- array (
- 'match' => 'E00E 0D2A (0D4D E00E)',
- 'replace' => '0D2A \\1',
- ),
- 193 =>
- array (
- 'match' => 'E00E 0D2B (0D4D E00E)',
- 'replace' => '0D2B \\1',
- ),
- 194 =>
- array (
- 'match' => 'E00E 0D2C (0D4D E00E)',
- 'replace' => '0D2C \\1',
- ),
- 195 =>
- array (
- 'match' => 'E00E 0D2D (0D4D E00E)',
- 'replace' => '0D2D \\1',
- ),
- 196 =>
- array (
- 'match' => 'E00E 0D2E (0D4D E00E)',
- 'replace' => '0D2E \\1',
- ),
- 197 =>
- array (
- 'match' => 'E00E 0D2F (0D4D E00E)',
- 'replace' => '0D2F \\1',
- ),
- 198 =>
- array (
- 'match' => 'E00E 0D30 (0D4D E00E)',
- 'replace' => '0D30 \\1',
- ),
- 199 =>
- array (
- 'match' => 'E00E 0D31 (0D4D E00E)',
- 'replace' => '0D31 \\1',
- ),
- 200 =>
- array (
- 'match' => 'E00E 0D32 (0D4D E00E)',
- 'replace' => '0D32 \\1',
- ),
- 201 =>
- array (
- 'match' => 'E00E 0D33 (0D4D E00E)',
- 'replace' => '0D33 \\1',
- ),
- 202 =>
- array (
- 'match' => 'E00E 0D34 (0D4D E00E)',
- 'replace' => '0D34 \\1',
- ),
- 203 =>
- array (
- 'match' => 'E00E 0D35 (0D4D E00E)',
- 'replace' => '0D35 \\1',
- ),
- 204 =>
- array (
- 'match' => 'E00E 0D36 (0D4D E00E)',
- 'replace' => '0D36 \\1',
- ),
- 205 =>
- array (
- 'match' => 'E00E 0D37 (0D4D E00E)',
- 'replace' => '0D37 \\1',
- ),
- 206 =>
- array (
- 'match' => 'E00E 0D38 (0D4D E00E)',
- 'replace' => '0D38 \\1',
- ),
- 207 =>
- array (
- 'match' => 'E00E 0D39 (0D4D E00E)',
- 'replace' => '0D39 \\1',
- ),
- 208 =>
- array (
- 'match' => '(0D46) E005',
- 'replace' => '\\1 E005 0D46',
- ),
- 209 =>
- array (
- 'match' => '(0D46) E006',
- 'replace' => '\\1 E006 0D46',
- ),
- 210 =>
- array (
- 'match' => '(0D46) E007',
- 'replace' => '\\1 E007 0D46',
- ),
- 211 =>
- array (
- 'match' => '(0D46) E008',
- 'replace' => '\\1 E008 0D46',
- ),
- 212 =>
- array (
- 'match' => '(0D46) E009',
- 'replace' => '\\1 E009 0D46',
- ),
- 213 =>
- array (
- 'match' => '(0D47) E005',
- 'replace' => '\\1 E005 0D47',
- ),
- 214 =>
- array (
- 'match' => '(0D47) E006',
- 'replace' => '\\1 E006 0D47',
- ),
- 215 =>
- array (
- 'match' => '(0D47) E007',
- 'replace' => '\\1 E007 0D47',
- ),
- 216 =>
- array (
- 'match' => '(0D47) E008',
- 'replace' => '\\1 E008 0D47',
- ),
- 217 =>
- array (
- 'match' => '(0D47) E009',
- 'replace' => '\\1 E009 0D47',
- ),
- 218 =>
- array (
- 'match' => '(0D48) E005',
- 'replace' => '\\1 E005 0D48',
- ),
- 219 =>
- array (
- 'match' => '(0D48) E006',
- 'replace' => '\\1 E006 0D48',
- ),
- 220 =>
- array (
- 'match' => '(0D48) E007',
- 'replace' => '\\1 E007 0D48',
- ),
- 221 =>
- array (
- 'match' => '(0D48) E008',
- 'replace' => '\\1 E008 0D48',
- ),
- 222 =>
- array (
- 'match' => '(0D48) E009',
- 'replace' => '\\1 E009 0D48',
- ),
- 223 =>
- array (
- 'match' => '0D46 E005',
- 'replace' => 'E005',
- ),
- 224 =>
- array (
- 'match' => '0D46 E006',
- 'replace' => 'E006',
- ),
- 225 =>
- array (
- 'match' => '0D46 E007',
- 'replace' => 'E007',
- ),
- 226 =>
- array (
- 'match' => '0D46 E008',
- 'replace' => 'E008',
- ),
- 227 =>
- array (
- 'match' => '0D46 E009',
- 'replace' => 'E009',
- ),
- 228 =>
- array (
- 'match' => '0D47 E005',
- 'replace' => 'E005',
- ),
- 229 =>
- array (
- 'match' => '0D47 E006',
- 'replace' => 'E006',
- ),
- 230 =>
- array (
- 'match' => '0D47 E007',
- 'replace' => 'E007',
- ),
- 231 =>
- array (
- 'match' => '0D47 E008',
- 'replace' => 'E008',
- ),
- 232 =>
- array (
- 'match' => '0D47 E009',
- 'replace' => 'E009',
- ),
- 233 =>
- array (
- 'match' => '0D48 E005',
- 'replace' => 'E005',
- ),
- 234 =>
- array (
- 'match' => '0D48 E006',
- 'replace' => 'E006',
- ),
- 235 =>
- array (
- 'match' => '0D48 E007',
- 'replace' => 'E007',
- ),
- 236 =>
- array (
- 'match' => '0D48 E008',
- 'replace' => 'E008',
- ),
- 237 =>
- array (
- 'match' => '0D48 E009',
- 'replace' => 'E009',
- ),
- 238 =>
- array (
- 'match' => '(0D46 (0D15|0D16|0D17|0D18|0D19|0D1A|0D1B|0D1C|0D1D|0D1E|0D1F|0D20|0D21|0D22|0D23|0D24|0D25|0D26|0D27|0D28|0D2A|0D2B|0D2C|0D2D|0D2E|0D2F|0D30|0D31|0D32|0D33|0D34|0D35|0D36|0D37|0D38|0D39)) 0D4D',
- 'replace' => '\\1 0D4D 0D46',
- ),
- 239 =>
- array (
- 'match' => '(0D47 (0D15|0D16|0D17|0D18|0D19|0D1A|0D1B|0D1C|0D1D|0D1E|0D1F|0D20|0D21|0D22|0D23|0D24|0D25|0D26|0D27|0D28|0D2A|0D2B|0D2C|0D2D|0D2E|0D2F|0D30|0D31|0D32|0D33|0D34|0D35|0D36|0D37|0D38|0D39)) 0D4D',
- 'replace' => '\\1 0D4D 0D47',
- ),
- 240 =>
- array (
- 'match' => '(0D48 (0D15|0D16|0D17|0D18|0D19|0D1A|0D1B|0D1C|0D1D|0D1E|0D1F|0D20|0D21|0D22|0D23|0D24|0D25|0D26|0D27|0D28|0D2A|0D2B|0D2C|0D2D|0D2E|0D2F|0D30|0D31|0D32|0D33|0D34|0D35|0D36|0D37|0D38|0D39)) 0D4D',
- 'replace' => '\\1 0D4D 0D48',
- ),
- 241 =>
- array (
- 'match' => '0D46 0D15 (0D4D)',
- 'replace' => '0D15 \\1',
- ),
- 242 =>
- array (
- 'match' => '0D46 0D16 (0D4D)',
- 'replace' => '0D16 \\1',
- ),
- 243 =>
- array (
- 'match' => '0D46 0D17 (0D4D)',
- 'replace' => '0D17 \\1',
- ),
- 244 =>
- array (
- 'match' => '0D46 0D18 (0D4D)',
- 'replace' => '0D18 \\1',
- ),
- 245 =>
- array (
- 'match' => '0D46 0D19 (0D4D)',
- 'replace' => '0D19 \\1',
- ),
- 246 =>
- array (
- 'match' => '0D46 0D1A (0D4D)',
- 'replace' => '0D1A \\1',
- ),
- 247 =>
- array (
- 'match' => '0D46 0D1B (0D4D)',
- 'replace' => '0D1B \\1',
- ),
- 248 =>
- array (
- 'match' => '0D46 0D1C (0D4D)',
- 'replace' => '0D1C \\1',
- ),
- 249 =>
- array (
- 'match' => '0D46 0D1D (0D4D)',
- 'replace' => '0D1D \\1',
- ),
- 250 =>
- array (
- 'match' => '0D46 0D1E (0D4D)',
- 'replace' => '0D1E \\1',
- ),
- 251 =>
- array (
- 'match' => '0D46 0D1F (0D4D)',
- 'replace' => '0D1F \\1',
- ),
- 252 =>
- array (
- 'match' => '0D46 0D20 (0D4D)',
- 'replace' => '0D20 \\1',
- ),
- 253 =>
- array (
- 'match' => '0D46 0D21 (0D4D)',
- 'replace' => '0D21 \\1',
- ),
- 254 =>
- array (
- 'match' => '0D46 0D22 (0D4D)',
- 'replace' => '0D22 \\1',
- ),
- 255 =>
- array (
- 'match' => '0D46 0D23 (0D4D)',
- 'replace' => '0D23 \\1',
- ),
- 256 =>
- array (
- 'match' => '0D46 0D24 (0D4D)',
- 'replace' => '0D24 \\1',
- ),
- 257 =>
- array (
- 'match' => '0D46 0D25 (0D4D)',
- 'replace' => '0D25 \\1',
- ),
- 258 =>
- array (
- 'match' => '0D46 0D26 (0D4D)',
- 'replace' => '0D26 \\1',
- ),
- 259 =>
- array (
- 'match' => '0D46 0D27 (0D4D)',
- 'replace' => '0D27 \\1',
- ),
- 260 =>
- array (
- 'match' => '0D46 0D28 (0D4D)',
- 'replace' => '0D28 \\1',
- ),
- 261 =>
- array (
- 'match' => '0D46 0D2A (0D4D)',
- 'replace' => '0D2A \\1',
- ),
- 262 =>
- array (
- 'match' => '0D46 0D2B (0D4D)',
- 'replace' => '0D2B \\1',
- ),
- 263 =>
- array (
- 'match' => '0D46 0D2C (0D4D)',
- 'replace' => '0D2C \\1',
- ),
- 264 =>
- array (
- 'match' => '0D46 0D2D (0D4D)',
- 'replace' => '0D2D \\1',
- ),
- 265 =>
- array (
- 'match' => '0D46 0D2E (0D4D)',
- 'replace' => '0D2E \\1',
- ),
- 266 =>
- array (
- 'match' => '0D46 0D2F (0D4D)',
- 'replace' => '0D2F \\1',
- ),
- 267 =>
- array (
- 'match' => '0D46 0D30 (0D4D)',
- 'replace' => '0D30 \\1',
- ),
- 268 =>
- array (
- 'match' => '0D46 0D31 (0D4D)',
- 'replace' => '0D31 \\1',
- ),
- 269 =>
- array (
- 'match' => '0D46 0D32 (0D4D)',
- 'replace' => '0D32 \\1',
- ),
- 270 =>
- array (
- 'match' => '0D46 0D33 (0D4D)',
- 'replace' => '0D33 \\1',
- ),
- 271 =>
- array (
- 'match' => '0D46 0D34 (0D4D)',
- 'replace' => '0D34 \\1',
- ),
- 272 =>
- array (
- 'match' => '0D46 0D35 (0D4D)',
- 'replace' => '0D35 \\1',
- ),
- 273 =>
- array (
- 'match' => '0D46 0D36 (0D4D)',
- 'replace' => '0D36 \\1',
- ),
- 274 =>
- array (
- 'match' => '0D46 0D37 (0D4D)',
- 'replace' => '0D37 \\1',
- ),
- 275 =>
- array (
- 'match' => '0D46 0D38 (0D4D)',
- 'replace' => '0D38 \\1',
- ),
- 276 =>
- array (
- 'match' => '0D46 0D39 (0D4D)',
- 'replace' => '0D39 \\1',
- ),
- 277 =>
- array (
- 'match' => '0D47 0D15 (0D4D)',
- 'replace' => '0D15 \\1',
- ),
- 278 =>
- array (
- 'match' => '0D47 0D16 (0D4D)',
- 'replace' => '0D16 \\1',
- ),
- 279 =>
- array (
- 'match' => '0D47 0D17 (0D4D)',
- 'replace' => '0D17 \\1',
- ),
- 280 =>
- array (
- 'match' => '0D47 0D18 (0D4D)',
- 'replace' => '0D18 \\1',
- ),
- 281 =>
- array (
- 'match' => '0D47 0D19 (0D4D)',
- 'replace' => '0D19 \\1',
- ),
- 282 =>
- array (
- 'match' => '0D47 0D1A (0D4D)',
- 'replace' => '0D1A \\1',
- ),
- 283 =>
- array (
- 'match' => '0D47 0D1B (0D4D)',
- 'replace' => '0D1B \\1',
- ),
- 284 =>
- array (
- 'match' => '0D47 0D1C (0D4D)',
- 'replace' => '0D1C \\1',
- ),
- 285 =>
- array (
- 'match' => '0D47 0D1D (0D4D)',
- 'replace' => '0D1D \\1',
- ),
- 286 =>
- array (
- 'match' => '0D47 0D1E (0D4D)',
- 'replace' => '0D1E \\1',
- ),
- 287 =>
- array (
- 'match' => '0D47 0D1F (0D4D)',
- 'replace' => '0D1F \\1',
- ),
- 288 =>
- array (
- 'match' => '0D47 0D20 (0D4D)',
- 'replace' => '0D20 \\1',
- ),
- 289 =>
- array (
- 'match' => '0D47 0D21 (0D4D)',
- 'replace' => '0D21 \\1',
- ),
- 290 =>
- array (
- 'match' => '0D47 0D22 (0D4D)',
- 'replace' => '0D22 \\1',
- ),
- 291 =>
- array (
- 'match' => '0D47 0D23 (0D4D)',
- 'replace' => '0D23 \\1',
- ),
- 292 =>
- array (
- 'match' => '0D47 0D24 (0D4D)',
- 'replace' => '0D24 \\1',
- ),
- 293 =>
- array (
- 'match' => '0D47 0D25 (0D4D)',
- 'replace' => '0D25 \\1',
- ),
- 294 =>
- array (
- 'match' => '0D47 0D26 (0D4D)',
- 'replace' => '0D26 \\1',
- ),
- 295 =>
- array (
- 'match' => '0D47 0D27 (0D4D)',
- 'replace' => '0D27 \\1',
- ),
- 296 =>
- array (
- 'match' => '0D47 0D28 (0D4D)',
- 'replace' => '0D28 \\1',
- ),
- 297 =>
- array (
- 'match' => '0D47 0D2A (0D4D)',
- 'replace' => '0D2A \\1',
- ),
- 298 =>
- array (
- 'match' => '0D47 0D2B (0D4D)',
- 'replace' => '0D2B \\1',
- ),
- 299 =>
- array (
- 'match' => '0D47 0D2C (0D4D)',
- 'replace' => '0D2C \\1',
- ),
- 300 =>
- array (
- 'match' => '0D47 0D2D (0D4D)',
- 'replace' => '0D2D \\1',
- ),
- 301 =>
- array (
- 'match' => '0D47 0D2E (0D4D)',
- 'replace' => '0D2E \\1',
- ),
- 302 =>
- array (
- 'match' => '0D47 0D2F (0D4D)',
- 'replace' => '0D2F \\1',
- ),
- 303 =>
- array (
- 'match' => '0D47 0D30 (0D4D)',
- 'replace' => '0D30 \\1',
- ),
- 304 =>
- array (
- 'match' => '0D47 0D31 (0D4D)',
- 'replace' => '0D31 \\1',
- ),
- 305 =>
- array (
- 'match' => '0D47 0D32 (0D4D)',
- 'replace' => '0D32 \\1',
- ),
- 306 =>
- array (
- 'match' => '0D47 0D33 (0D4D)',
- 'replace' => '0D33 \\1',
- ),
- 307 =>
- array (
- 'match' => '0D47 0D34 (0D4D)',
- 'replace' => '0D34 \\1',
- ),
- 308 =>
- array (
- 'match' => '0D47 0D35 (0D4D)',
- 'replace' => '0D35 \\1',
- ),
- 309 =>
- array (
- 'match' => '0D47 0D36 (0D4D)',
- 'replace' => '0D36 \\1',
- ),
- 310 =>
- array (
- 'match' => '0D47 0D37 (0D4D)',
- 'replace' => '0D37 \\1',
- ),
- 311 =>
- array (
- 'match' => '0D47 0D38 (0D4D)',
- 'replace' => '0D38 \\1',
- ),
- 312 =>
- array (
- 'match' => '0D47 0D39 (0D4D)',
- 'replace' => '0D39 \\1',
- ),
- 313 =>
- array (
- 'match' => '0D48 0D15 (0D4D)',
- 'replace' => '0D15 \\1',
- ),
- 314 =>
- array (
- 'match' => '0D48 0D16 (0D4D)',
- 'replace' => '0D16 \\1',
- ),
- 315 =>
- array (
- 'match' => '0D48 0D17 (0D4D)',
- 'replace' => '0D17 \\1',
- ),
- 316 =>
- array (
- 'match' => '0D48 0D18 (0D4D)',
- 'replace' => '0D18 \\1',
- ),
- 317 =>
- array (
- 'match' => '0D48 0D19 (0D4D)',
- 'replace' => '0D19 \\1',
- ),
- 318 =>
- array (
- 'match' => '0D48 0D1A (0D4D)',
- 'replace' => '0D1A \\1',
- ),
- 319 =>
- array (
- 'match' => '0D48 0D1B (0D4D)',
- 'replace' => '0D1B \\1',
- ),
- 320 =>
- array (
- 'match' => '0D48 0D1C (0D4D)',
- 'replace' => '0D1C \\1',
- ),
- 321 =>
- array (
- 'match' => '0D48 0D1D (0D4D)',
- 'replace' => '0D1D \\1',
- ),
- 322 =>
- array (
- 'match' => '0D48 0D1E (0D4D)',
- 'replace' => '0D1E \\1',
- ),
- 323 =>
- array (
- 'match' => '0D48 0D1F (0D4D)',
- 'replace' => '0D1F \\1',
- ),
- 324 =>
- array (
- 'match' => '0D48 0D20 (0D4D)',
- 'replace' => '0D20 \\1',
- ),
- 325 =>
- array (
- 'match' => '0D48 0D21 (0D4D)',
- 'replace' => '0D21 \\1',
- ),
- 326 =>
- array (
- 'match' => '0D48 0D22 (0D4D)',
- 'replace' => '0D22 \\1',
- ),
- 327 =>
- array (
- 'match' => '0D48 0D23 (0D4D)',
- 'replace' => '0D23 \\1',
- ),
- 328 =>
- array (
- 'match' => '0D48 0D24 (0D4D)',
- 'replace' => '0D24 \\1',
- ),
- 329 =>
- array (
- 'match' => '0D48 0D25 (0D4D)',
- 'replace' => '0D25 \\1',
- ),
- 330 =>
- array (
- 'match' => '0D48 0D26 (0D4D)',
- 'replace' => '0D26 \\1',
- ),
- 331 =>
- array (
- 'match' => '0D48 0D27 (0D4D)',
- 'replace' => '0D27 \\1',
- ),
- 332 =>
- array (
- 'match' => '0D48 0D28 (0D4D)',
- 'replace' => '0D28 \\1',
- ),
- 333 =>
- array (
- 'match' => '0D48 0D2A (0D4D)',
- 'replace' => '0D2A \\1',
- ),
- 334 =>
- array (
- 'match' => '0D48 0D2B (0D4D)',
- 'replace' => '0D2B \\1',
- ),
- 335 =>
- array (
- 'match' => '0D48 0D2C (0D4D)',
- 'replace' => '0D2C \\1',
- ),
- 336 =>
- array (
- 'match' => '0D48 0D2D (0D4D)',
- 'replace' => '0D2D \\1',
- ),
- 337 =>
- array (
- 'match' => '0D48 0D2E (0D4D)',
- 'replace' => '0D2E \\1',
- ),
- 338 =>
- array (
- 'match' => '0D48 0D2F (0D4D)',
- 'replace' => '0D2F \\1',
- ),
- 339 =>
- array (
- 'match' => '0D48 0D30 (0D4D)',
- 'replace' => '0D30 \\1',
- ),
- 340 =>
- array (
- 'match' => '0D48 0D31 (0D4D)',
- 'replace' => '0D31 \\1',
- ),
- 341 =>
- array (
- 'match' => '0D48 0D32 (0D4D)',
- 'replace' => '0D32 \\1',
- ),
- 342 =>
- array (
- 'match' => '0D48 0D33 (0D4D)',
- 'replace' => '0D33 \\1',
- ),
- 343 =>
- array (
- 'match' => '0D48 0D34 (0D4D)',
- 'replace' => '0D34 \\1',
- ),
- 344 =>
- array (
- 'match' => '0D48 0D35 (0D4D)',
- 'replace' => '0D35 \\1',
- ),
- 345 =>
- array (
- 'match' => '0D48 0D36 (0D4D)',
- 'replace' => '0D36 \\1',
- ),
- 346 =>
- array (
- 'match' => '0D48 0D37 (0D4D)',
- 'replace' => '0D37 \\1',
- ),
- 347 =>
- array (
- 'match' => '0D48 0D38 (0D4D)',
- 'replace' => '0D38 \\1',
- ),
- 348 =>
- array (
- 'match' => '0D48 0D39 (0D4D)',
- 'replace' => '0D39 \\1',
- ),
- 349 =>
- array (
- 'match' => '0D41 0D4D',
- 'replace' => 'E003',
- ),
- 350 =>
- array (
- 'match' => '007E',
- 'replace' => '0D4D',
- ),
- 351 =>
- array (
- 'match' => '2018',
- 'replace' => '0D4D',
- ),
- 352 =>
- array (
- 'match' => '2019',
- 'replace' => '0D4D',
- ),
-);
-?>
\ No newline at end of file
diff --git a/public/mpdf/includes/ind_or_1_001.volt.php b/public/mpdf/includes/ind_or_1_001.volt.php
deleted file mode 100644
index b490e2b..0000000
--- a/public/mpdf/includes/ind_or_1_001.volt.php
+++ /dev/null
@@ -1,2149 +0,0 @@
-
- array (
- 'match' => '0B4D 200C',
- 'replace' => '2018',
- ),
- 1 =>
- array (
- 'match' => '0B15 0B4D 0B37',
- 'replace' => 'E003',
- ),
- 2 =>
- array (
- 'match' => '0B1C 0B4D 0B1E',
- 'replace' => 'E004',
- ),
- 3 =>
- array (
- 'match' => '((0B15|0B16|0B17|0B18|0B19|0B1A|0B1B|0B1C|0B1D|0B1E|0B1F|0B20|0B21|0B22|0B23|0B24|0B25|0B26|0B27|0B28|0B2A|0B2B|0B2C|0B2D|0B2E|0B2F|0B30|0B32|0B33|0B35|0B36|0B37|0B38|0B39|0B71|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037)) 0B30 0B4D',
- 'replace' => '\\1 E069',
- ),
- 4 =>
- array (
- 'match' => '((0B01|0B3F|0B56|E06B|E041|E064|E06D|E070|E089|E08C)) 0B30 0B4D',
- 'replace' => '\\1 E069',
- ),
- 5 =>
- array (
- 'match' => '((0B3E|0B40|E044|0B57|E068|E074|E08B|E08F)) 0B30 0B4D',
- 'replace' => '\\1 E069',
- ),
- 6 =>
- array (
- 'match' => '(0B3C) 0B30 0B4D',
- 'replace' => '\\1 E069',
- ),
- 7 =>
- array (
- 'match' => '(25CC) 0B30 0B4D',
- 'replace' => '\\1 E069',
- ),
- 8 =>
- array (
- 'match' => '((0B15|0B19|0B1A|0B1B|0B1C|0B1D|0B1E|0B20|0B21|0B22|0B24|0B26|0B28|0B2C|0B2D|0B32|0B33|0B35|0B39|25CC)) E069',
- 'replace' => '\\1 E06B',
- ),
- 9 =>
- array (
- 'match' => '((0B15|0B19|0B1A|0B1B|0B1C|0B1D|0B1E|0B20|0B21|0B22|0B24|0B26|0B28|0B2C|0B2D|0B32|0B33|0B35|0B39|25CC) 0B3C) E069',
- 'replace' => '\\1 E06B',
- ),
- 10 =>
- array (
- 'match' => '0B38 0B4D 0B24 0B4D 0B30',
- 'replace' => 'E01B',
- ),
- 11 =>
- array (
- 'match' => '0B28 0B4D 0B24 0B4D 0B30',
- 'replace' => 'E01D',
- ),
- 12 =>
- array (
- 'match' => '0B28 0B4D 0B24 0B4D 0B30',
- 'replace' => 'E01C',
- ),
- 13 =>
- array (
- 'match' => '0B56 E069',
- 'replace' => 'E070',
- ),
- 14 =>
- array (
- 'match' => '0B57 E069',
- 'replace' => 'E074',
- ),
- 15 =>
- array (
- 'match' => '0B3F E069',
- 'replace' => 'E06D',
- ),
- 16 =>
- array (
- 'match' => '0B40 E069',
- 'replace' => 'E14D',
- ),
- 17 =>
- array (
- 'match' => '0B24 0B4D 0B17 0B4D 0B27',
- 'replace' => 'E036',
- ),
- 18 =>
- array (
- 'match' => '0B24 0B4D 0B38 0B4D 0B28',
- 'replace' => 'E030',
- ),
- 19 =>
- array (
- 'match' => '0B19 0B4D 0B15',
- 'replace' => 'E005',
- ),
- 20 =>
- array (
- 'match' => '0B19 0B4D 0B16',
- 'replace' => 'E006',
- ),
- 21 =>
- array (
- 'match' => '0B19 0B4D 0B17',
- 'replace' => 'E007',
- ),
- 22 =>
- array (
- 'match' => '0B19 0B4D 0B18',
- 'replace' => 'E008',
- ),
- 23 =>
- array (
- 'match' => '0B1A 0B4D 0B1A',
- 'replace' => 'E009',
- ),
- 24 =>
- array (
- 'match' => '0B1F 0B4D 0B1F',
- 'replace' => 'E00A',
- ),
- 25 =>
- array (
- 'match' => '0B24 0B4D 0B24',
- 'replace' => 'E00B',
- ),
- 26 =>
- array (
- 'match' => '0B26 0B4D 0B27',
- 'replace' => 'E00C',
- ),
- 27 =>
- array (
- 'match' => '0B26 0B4D 0B26',
- 'replace' => 'E00D',
- ),
- 28 =>
- array (
- 'match' => '0B23 0B4D 0B23',
- 'replace' => 'E00F',
- ),
- 29 =>
- array (
- 'match' => '0B1E 0B4D 0B1A',
- 'replace' => 'E011',
- ),
- 30 =>
- array (
- 'match' => '0B1E 0B4D 0B1D',
- 'replace' => 'E012',
- ),
- 31 =>
- array (
- 'match' => '0B1E 0B4D 0B1C',
- 'replace' => 'E013',
- ),
- 32 =>
- array (
- 'match' => '0B26 0B4D 0B2D',
- 'replace' => 'E014',
- ),
- 33 =>
- array (
- 'match' => '0B27 0B4D 0B27',
- 'replace' => 'E015',
- ),
- 34 =>
- array (
- 'match' => '0B2C 0B4D 0B26',
- 'replace' => 'E016',
- ),
- 35 =>
- array (
- 'match' => '0B28 0B4D 0B26',
- 'replace' => 'E017',
- ),
- 36 =>
- array (
- 'match' => '0B28 0B4D 0B27',
- 'replace' => 'E018',
- ),
- 37 =>
- array (
- 'match' => '0B2E 0B4D 0B2B',
- 'replace' => 'E019',
- ),
- 38 =>
- array (
- 'match' => '0B2E 0B4D 0B2A',
- 'replace' => 'E01A',
- ),
- 39 =>
- array (
- 'match' => '0B37 0B4D 0B23',
- 'replace' => 'E010',
- ),
- 40 =>
- array (
- 'match' => '0B39 0B4D 0B28',
- 'replace' => 'E01E',
- ),
- 41 =>
- array (
- 'match' => '0B39 0B4D 0B35',
- 'replace' => 'E01F',
- ),
- 42 =>
- array (
- 'match' => '0B39 0B4D 0B2E',
- 'replace' => 'E020',
- ),
- 43 =>
- array (
- 'match' => '0B1A 0B4D 0B1B',
- 'replace' => 'E021',
- ),
- 44 =>
- array (
- 'match' => '0B1E 0B4D 0B1B',
- 'replace' => 'E023',
- ),
- 45 =>
- array (
- 'match' => '0B2E 0B4D 0B2D',
- 'replace' => 'E024',
- ),
- 46 =>
- array (
- 'match' => '0B28 0B4D 0B24',
- 'replace' => 'E025',
- ),
- 47 =>
- array (
- 'match' => '0B38 0B4D 0B24',
- 'replace' => 'E026',
- ),
- 48 =>
- array (
- 'match' => '0B2A 0B4D 0B24',
- 'replace' => 'E027',
- ),
- 49 =>
- array (
- 'match' => '0B15 0B4D 0B24',
- 'replace' => 'E028',
- ),
- 50 =>
- array (
- 'match' => '0B23 0B4D 0B21',
- 'replace' => 'E029',
- ),
- 51 =>
- array (
- 'match' => '0B24 0B4D 0B15',
- 'replace' => 'E02A',
- ),
- 52 =>
- array (
- 'match' => '0B24 0B4D 0B38',
- 'replace' => 'E02B',
- ),
- 53 =>
- array (
- 'match' => '0B24 0B4D 0B2A',
- 'replace' => 'E02C',
- ),
- 54 =>
- array (
- 'match' => '0B23 0B4D 0B22',
- 'replace' => 'E031',
- ),
- 55 =>
- array (
- 'match' => '0B36 0B4D 0B1B',
- 'replace' => 'E032',
- ),
- 56 =>
- array (
- 'match' => '0B24 0B4D 0B28',
- 'replace' => 'E033',
- ),
- 57 =>
- array (
- 'match' => '0B24 0B4D 0B2E',
- 'replace' => 'E034',
- ),
- 58 =>
- array (
- 'match' => '0B17 0B4D 0B27',
- 'replace' => 'E035',
- ),
- 59 =>
- array (
- 'match' => '0B24 0B4D 0B2B',
- 'replace' => 'E037',
- ),
- 60 =>
- array (
- 'match' => '0B2E 0B4D 0B2E',
- 'replace' => 'E14A',
- ),
- 61 =>
- array (
- 'match' => '0B21 0B3C',
- 'replace' => '0B5C',
- ),
- 62 =>
- array (
- 'match' => '0B22 0B3C',
- 'replace' => '0B5D',
- ),
- 63 =>
- array (
- 'match' => '((0B15|0B16|0B17|0B18|0B19|0B1A|0B1B|0B1C|0B1D|0B1E|0B1F|0B20|0B21|0B22|0B23|0B24|0B25|0B26|0B27|0B28|0B2A|0B2B|0B2C|0B2D|0B2E|0B2F|0B30|0B32|0B33|0B35|0B36|0B37|0B38|0B39|0B71|E003|E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037)) 0B4D',
- 'replace' => '\\1 2019',
- ),
- 64 =>
- array (
- 'match' => '((0B01|0B3F|0B56|E06B|E041|E064|E06D|E070|E089|E08C)) 0B4D',
- 'replace' => '\\1 2019',
- ),
- 65 =>
- array (
- 'match' => '(E069) 0B4D',
- 'replace' => '\\1 2019',
- ),
- 66 =>
- array (
- 'match' => '((0B41|E045|0B42|0B43|E053|E056|E059|0B3C)) 0B4D',
- 'replace' => '\\1 2019',
- ),
- 67 =>
- array (
- 'match' => '(200D) 0B4D',
- 'replace' => '\\1 2019',
- ),
- 68 =>
- array (
- 'match' => '(25CC) 0B4D',
- 'replace' => '\\1 2019',
- ),
- 69 =>
- array (
- 'match' => '(0020) 0B4D',
- 'replace' => '\\1 2019',
- ),
- 70 =>
- array (
- 'match' => '200D 2019',
- 'replace' => '2019',
- ),
- 71 =>
- array (
- 'match' => '2019 0B30',
- 'replace' => 'E075',
- ),
- 72 =>
- array (
- 'match' => '2019 0B5F',
- 'replace' => 'E077',
- ),
- 73 =>
- array (
- 'match' => '2019 0B35',
- 'replace' => 'E078',
- ),
- 74 =>
- array (
- 'match' => '2019 0B32',
- 'replace' => 'E110',
- ),
- 75 =>
- array (
- 'match' => '2019 0B33',
- 'replace' => 'E111',
- ),
- 76 =>
- array (
- 'match' => '2019 0B2E',
- 'replace' => 'E11C',
- ),
- 77 =>
- array (
- 'match' => '2019 0B15',
- 'replace' => 'E0F6',
- ),
- 78 =>
- array (
- 'match' => '2019 0B16',
- 'replace' => 'E0F7',
- ),
- 79 =>
- array (
- 'match' => '2019 0B17',
- 'replace' => 'E0F8',
- ),
- 80 =>
- array (
- 'match' => '2019 0B18',
- 'replace' => 'E0F9',
- ),
- 81 =>
- array (
- 'match' => '2019 0B19',
- 'replace' => 'E0FA',
- ),
- 82 =>
- array (
- 'match' => '2019 0B1A',
- 'replace' => 'E0FB',
- ),
- 83 =>
- array (
- 'match' => '2019 0B1B',
- 'replace' => 'E0FC',
- ),
- 84 =>
- array (
- 'match' => '2019 0B1C',
- 'replace' => 'E0FD',
- ),
- 85 =>
- array (
- 'match' => '2019 0B1D',
- 'replace' => 'E0FE',
- ),
- 86 =>
- array (
- 'match' => '2019 0B1E',
- 'replace' => 'E0FF',
- ),
- 87 =>
- array (
- 'match' => '2019 0B1F',
- 'replace' => 'E100',
- ),
- 88 =>
- array (
- 'match' => '2019 0B20',
- 'replace' => 'E101',
- ),
- 89 =>
- array (
- 'match' => '2019 0B21',
- 'replace' => 'E102',
- ),
- 90 =>
- array (
- 'match' => '2019 0B22',
- 'replace' => 'E103',
- ),
- 91 =>
- array (
- 'match' => '2019 0B23',
- 'replace' => 'E104',
- ),
- 92 =>
- array (
- 'match' => '2019 0B24',
- 'replace' => 'E105',
- ),
- 93 =>
- array (
- 'match' => '2019 0B25',
- 'replace' => 'E106',
- ),
- 94 =>
- array (
- 'match' => '2019 0B26',
- 'replace' => 'E107',
- ),
- 95 =>
- array (
- 'match' => '2019 0B27',
- 'replace' => 'E108',
- ),
- 96 =>
- array (
- 'match' => '2019 0B28',
- 'replace' => 'E109',
- ),
- 97 =>
- array (
- 'match' => '2019 0B2A',
- 'replace' => 'E10A',
- ),
- 98 =>
- array (
- 'match' => '2019 0B2B',
- 'replace' => 'E10B',
- ),
- 99 =>
- array (
- 'match' => '2019 0B2C',
- 'replace' => 'E10C',
- ),
- 100 =>
- array (
- 'match' => '2019 0B2D',
- 'replace' => 'E10D',
- ),
- 101 =>
- array (
- 'match' => '2019 0B2E',
- 'replace' => 'E10E',
- ),
- 102 =>
- array (
- 'match' => '2019 0B2F',
- 'replace' => 'E10F',
- ),
- 103 =>
- array (
- 'match' => '2019 0B32',
- 'replace' => 'E110',
- ),
- 104 =>
- array (
- 'match' => '2019 0B33',
- 'replace' => 'E111',
- ),
- 105 =>
- array (
- 'match' => '2019 0B35',
- 'replace' => 'E112',
- ),
- 106 =>
- array (
- 'match' => '2019 0B36',
- 'replace' => 'E113',
- ),
- 107 =>
- array (
- 'match' => '2019 0B37',
- 'replace' => 'E114',
- ),
- 108 =>
- array (
- 'match' => '2019 0B38',
- 'replace' => 'E115',
- ),
- 109 =>
- array (
- 'match' => '2019 0B39',
- 'replace' => 'E116',
- ),
- 110 =>
- array (
- 'match' => '2019 E003',
- 'replace' => 'E119',
- ),
- 111 =>
- array (
- 'match' => '2019 E004',
- 'replace' => 'E11A',
- ),
- 112 =>
- array (
- 'match' => '2019 0B35',
- 'replace' => 'E078',
- ),
- 113 =>
- array (
- 'match' => '2019 0B71',
- 'replace' => 'E078',
- ),
- 114 =>
- array (
- 'match' => '0B15 ((E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E090 \\1',
- ),
- 115 =>
- array (
- 'match' => '0B16 ((E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E091 \\1',
- ),
- 116 =>
- array (
- 'match' => '0B17 ((E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E092 \\1',
- ),
- 117 =>
- array (
- 'match' => '0B18 ((E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E093 \\1',
- ),
- 118 =>
- array (
- 'match' => '0B19 ((E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E094 \\1',
- ),
- 119 =>
- array (
- 'match' => '0B1A ((E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E095 \\1',
- ),
- 120 =>
- array (
- 'match' => '0B1B ((E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E096 \\1',
- ),
- 121 =>
- array (
- 'match' => '0B1C ((E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E097 \\1',
- ),
- 122 =>
- array (
- 'match' => '0B1D ((E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E098 \\1',
- ),
- 123 =>
- array (
- 'match' => '0B1E ((E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E099 \\1',
- ),
- 124 =>
- array (
- 'match' => '0B1F ((E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E09A \\1',
- ),
- 125 =>
- array (
- 'match' => '0B20 ((E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E09B \\1',
- ),
- 126 =>
- array (
- 'match' => '0B21 ((E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E09C \\1',
- ),
- 127 =>
- array (
- 'match' => '0B22 ((E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E09D \\1',
- ),
- 128 =>
- array (
- 'match' => '0B23 ((E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E09E \\1',
- ),
- 129 =>
- array (
- 'match' => '0B24 ((E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E09F \\1',
- ),
- 130 =>
- array (
- 'match' => '0B25 ((E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0A0 \\1',
- ),
- 131 =>
- array (
- 'match' => '0B26 ((E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0A1 \\1',
- ),
- 132 =>
- array (
- 'match' => '0B27 ((E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0A2 \\1',
- ),
- 133 =>
- array (
- 'match' => '0B28 ((E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0A3 \\1',
- ),
- 134 =>
- array (
- 'match' => '0B2A ((E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0A4 \\1',
- ),
- 135 =>
- array (
- 'match' => '0B2B ((E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0A5 \\1',
- ),
- 136 =>
- array (
- 'match' => '0B2C ((E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0A6 \\1',
- ),
- 137 =>
- array (
- 'match' => '0B2D ((E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0A7 \\1',
- ),
- 138 =>
- array (
- 'match' => '0B2E ((E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0A8 \\1',
- ),
- 139 =>
- array (
- 'match' => '0B2F ((E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0A9 \\1',
- ),
- 140 =>
- array (
- 'match' => '0B32 ((E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0AA \\1',
- ),
- 141 =>
- array (
- 'match' => '0B33 ((E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0AB \\1',
- ),
- 142 =>
- array (
- 'match' => '0B35 ((E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0AC \\1',
- ),
- 143 =>
- array (
- 'match' => '0B36 ((E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0AD \\1',
- ),
- 144 =>
- array (
- 'match' => '0B37 ((E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0AE \\1',
- ),
- 145 =>
- array (
- 'match' => '0B38 ((E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0AF \\1',
- ),
- 146 =>
- array (
- 'match' => '0B39 ((E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0B0 \\1',
- ),
- 147 =>
- array (
- 'match' => 'E003 ((E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0B1 \\1',
- ),
- 148 =>
- array (
- 'match' => 'E004 ((E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0B2 \\1',
- ),
- 149 =>
- array (
- 'match' => '0B15 ((0B01|0B3F|0B56|E06B|E041|E064|E06D|E070|E089|E08C) (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E090 \\1',
- ),
- 150 =>
- array (
- 'match' => '0B16 ((0B01|0B3F|0B56|E06B|E041|E064|E06D|E070|E089|E08C) (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E091 \\1',
- ),
- 151 =>
- array (
- 'match' => '0B17 ((0B01|0B3F|0B56|E06B|E041|E064|E06D|E070|E089|E08C) (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E092 \\1',
- ),
- 152 =>
- array (
- 'match' => '0B18 ((0B01|0B3F|0B56|E06B|E041|E064|E06D|E070|E089|E08C) (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E093 \\1',
- ),
- 153 =>
- array (
- 'match' => '0B19 ((0B01|0B3F|0B56|E06B|E041|E064|E06D|E070|E089|E08C) (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E094 \\1',
- ),
- 154 =>
- array (
- 'match' => '0B1A ((0B01|0B3F|0B56|E06B|E041|E064|E06D|E070|E089|E08C) (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E095 \\1',
- ),
- 155 =>
- array (
- 'match' => '0B1B ((0B01|0B3F|0B56|E06B|E041|E064|E06D|E070|E089|E08C) (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E096 \\1',
- ),
- 156 =>
- array (
- 'match' => '0B1C ((0B01|0B3F|0B56|E06B|E041|E064|E06D|E070|E089|E08C) (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E097 \\1',
- ),
- 157 =>
- array (
- 'match' => '0B1D ((0B01|0B3F|0B56|E06B|E041|E064|E06D|E070|E089|E08C) (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E098 \\1',
- ),
- 158 =>
- array (
- 'match' => '0B1E ((0B01|0B3F|0B56|E06B|E041|E064|E06D|E070|E089|E08C) (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E099 \\1',
- ),
- 159 =>
- array (
- 'match' => '0B1F ((0B01|0B3F|0B56|E06B|E041|E064|E06D|E070|E089|E08C) (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E09A \\1',
- ),
- 160 =>
- array (
- 'match' => '0B20 ((0B01|0B3F|0B56|E06B|E041|E064|E06D|E070|E089|E08C) (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E09B \\1',
- ),
- 161 =>
- array (
- 'match' => '0B21 ((0B01|0B3F|0B56|E06B|E041|E064|E06D|E070|E089|E08C) (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E09C \\1',
- ),
- 162 =>
- array (
- 'match' => '0B22 ((0B01|0B3F|0B56|E06B|E041|E064|E06D|E070|E089|E08C) (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E09D \\1',
- ),
- 163 =>
- array (
- 'match' => '0B23 ((0B01|0B3F|0B56|E06B|E041|E064|E06D|E070|E089|E08C) (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E09E \\1',
- ),
- 164 =>
- array (
- 'match' => '0B24 ((0B01|0B3F|0B56|E06B|E041|E064|E06D|E070|E089|E08C) (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E09F \\1',
- ),
- 165 =>
- array (
- 'match' => '0B25 ((0B01|0B3F|0B56|E06B|E041|E064|E06D|E070|E089|E08C) (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0A0 \\1',
- ),
- 166 =>
- array (
- 'match' => '0B26 ((0B01|0B3F|0B56|E06B|E041|E064|E06D|E070|E089|E08C) (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0A1 \\1',
- ),
- 167 =>
- array (
- 'match' => '0B27 ((0B01|0B3F|0B56|E06B|E041|E064|E06D|E070|E089|E08C) (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0A2 \\1',
- ),
- 168 =>
- array (
- 'match' => '0B28 ((0B01|0B3F|0B56|E06B|E041|E064|E06D|E070|E089|E08C) (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0A3 \\1',
- ),
- 169 =>
- array (
- 'match' => '0B2A ((0B01|0B3F|0B56|E06B|E041|E064|E06D|E070|E089|E08C) (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0A4 \\1',
- ),
- 170 =>
- array (
- 'match' => '0B2B ((0B01|0B3F|0B56|E06B|E041|E064|E06D|E070|E089|E08C) (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0A5 \\1',
- ),
- 171 =>
- array (
- 'match' => '0B2C ((0B01|0B3F|0B56|E06B|E041|E064|E06D|E070|E089|E08C) (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0A6 \\1',
- ),
- 172 =>
- array (
- 'match' => '0B2D ((0B01|0B3F|0B56|E06B|E041|E064|E06D|E070|E089|E08C) (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0A7 \\1',
- ),
- 173 =>
- array (
- 'match' => '0B2E ((0B01|0B3F|0B56|E06B|E041|E064|E06D|E070|E089|E08C) (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0A8 \\1',
- ),
- 174 =>
- array (
- 'match' => '0B2F ((0B01|0B3F|0B56|E06B|E041|E064|E06D|E070|E089|E08C) (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0A9 \\1',
- ),
- 175 =>
- array (
- 'match' => '0B32 ((0B01|0B3F|0B56|E06B|E041|E064|E06D|E070|E089|E08C) (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0AA \\1',
- ),
- 176 =>
- array (
- 'match' => '0B33 ((0B01|0B3F|0B56|E06B|E041|E064|E06D|E070|E089|E08C) (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0AB \\1',
- ),
- 177 =>
- array (
- 'match' => '0B35 ((0B01|0B3F|0B56|E06B|E041|E064|E06D|E070|E089|E08C) (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0AC \\1',
- ),
- 178 =>
- array (
- 'match' => '0B36 ((0B01|0B3F|0B56|E06B|E041|E064|E06D|E070|E089|E08C) (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0AD \\1',
- ),
- 179 =>
- array (
- 'match' => '0B37 ((0B01|0B3F|0B56|E06B|E041|E064|E06D|E070|E089|E08C) (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0AE \\1',
- ),
- 180 =>
- array (
- 'match' => '0B38 ((0B01|0B3F|0B56|E06B|E041|E064|E06D|E070|E089|E08C) (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0AF \\1',
- ),
- 181 =>
- array (
- 'match' => '0B39 ((0B01|0B3F|0B56|E06B|E041|E064|E06D|E070|E089|E08C) (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0B0 \\1',
- ),
- 182 =>
- array (
- 'match' => 'E003 ((0B01|0B3F|0B56|E06B|E041|E064|E06D|E070|E089|E08C) (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0B1 \\1',
- ),
- 183 =>
- array (
- 'match' => 'E004 ((0B01|0B3F|0B56|E06B|E041|E064|E06D|E070|E089|E08C) (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0B2 \\1',
- ),
- 184 =>
- array (
- 'match' => '0B15 (0B3C (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E090 \\1',
- ),
- 185 =>
- array (
- 'match' => '0B16 (0B3C (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E091 \\1',
- ),
- 186 =>
- array (
- 'match' => '0B17 (0B3C (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E092 \\1',
- ),
- 187 =>
- array (
- 'match' => '0B18 (0B3C (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E093 \\1',
- ),
- 188 =>
- array (
- 'match' => '0B19 (0B3C (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E094 \\1',
- ),
- 189 =>
- array (
- 'match' => '0B1A (0B3C (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E095 \\1',
- ),
- 190 =>
- array (
- 'match' => '0B1B (0B3C (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E096 \\1',
- ),
- 191 =>
- array (
- 'match' => '0B1C (0B3C (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E097 \\1',
- ),
- 192 =>
- array (
- 'match' => '0B1D (0B3C (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E098 \\1',
- ),
- 193 =>
- array (
- 'match' => '0B1E (0B3C (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E099 \\1',
- ),
- 194 =>
- array (
- 'match' => '0B1F (0B3C (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E09A \\1',
- ),
- 195 =>
- array (
- 'match' => '0B20 (0B3C (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E09B \\1',
- ),
- 196 =>
- array (
- 'match' => '0B21 (0B3C (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E09C \\1',
- ),
- 197 =>
- array (
- 'match' => '0B22 (0B3C (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E09D \\1',
- ),
- 198 =>
- array (
- 'match' => '0B23 (0B3C (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E09E \\1',
- ),
- 199 =>
- array (
- 'match' => '0B24 (0B3C (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E09F \\1',
- ),
- 200 =>
- array (
- 'match' => '0B25 (0B3C (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0A0 \\1',
- ),
- 201 =>
- array (
- 'match' => '0B26 (0B3C (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0A1 \\1',
- ),
- 202 =>
- array (
- 'match' => '0B27 (0B3C (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0A2 \\1',
- ),
- 203 =>
- array (
- 'match' => '0B28 (0B3C (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0A3 \\1',
- ),
- 204 =>
- array (
- 'match' => '0B2A (0B3C (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0A4 \\1',
- ),
- 205 =>
- array (
- 'match' => '0B2B (0B3C (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0A5 \\1',
- ),
- 206 =>
- array (
- 'match' => '0B2C (0B3C (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0A6 \\1',
- ),
- 207 =>
- array (
- 'match' => '0B2D (0B3C (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0A7 \\1',
- ),
- 208 =>
- array (
- 'match' => '0B2E (0B3C (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0A8 \\1',
- ),
- 209 =>
- array (
- 'match' => '0B2F (0B3C (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0A9 \\1',
- ),
- 210 =>
- array (
- 'match' => '0B32 (0B3C (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0AA \\1',
- ),
- 211 =>
- array (
- 'match' => '0B33 (0B3C (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0AB \\1',
- ),
- 212 =>
- array (
- 'match' => '0B35 (0B3C (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0AC \\1',
- ),
- 213 =>
- array (
- 'match' => '0B36 (0B3C (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0AD \\1',
- ),
- 214 =>
- array (
- 'match' => '0B37 (0B3C (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0AE \\1',
- ),
- 215 =>
- array (
- 'match' => '0B38 (0B3C (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0AF \\1',
- ),
- 216 =>
- array (
- 'match' => '0B39 (0B3C (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0B0 \\1',
- ),
- 217 =>
- array (
- 'match' => 'E003 (0B3C (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0B1 \\1',
- ),
- 218 =>
- array (
- 'match' => 'E004 (0B3C (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0B2 \\1',
- ),
- 219 =>
- array (
- 'match' => '0B15 (E069 (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E090 \\1',
- ),
- 220 =>
- array (
- 'match' => '0B16 (E069 (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E091 \\1',
- ),
- 221 =>
- array (
- 'match' => '0B17 (E069 (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E092 \\1',
- ),
- 222 =>
- array (
- 'match' => '0B18 (E069 (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E093 \\1',
- ),
- 223 =>
- array (
- 'match' => '0B19 (E069 (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E094 \\1',
- ),
- 224 =>
- array (
- 'match' => '0B1A (E069 (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E095 \\1',
- ),
- 225 =>
- array (
- 'match' => '0B1B (E069 (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E096 \\1',
- ),
- 226 =>
- array (
- 'match' => '0B1C (E069 (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E097 \\1',
- ),
- 227 =>
- array (
- 'match' => '0B1D (E069 (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E098 \\1',
- ),
- 228 =>
- array (
- 'match' => '0B1E (E069 (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E099 \\1',
- ),
- 229 =>
- array (
- 'match' => '0B1F (E069 (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E09A \\1',
- ),
- 230 =>
- array (
- 'match' => '0B20 (E069 (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E09B \\1',
- ),
- 231 =>
- array (
- 'match' => '0B21 (E069 (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E09C \\1',
- ),
- 232 =>
- array (
- 'match' => '0B22 (E069 (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E09D \\1',
- ),
- 233 =>
- array (
- 'match' => '0B23 (E069 (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E09E \\1',
- ),
- 234 =>
- array (
- 'match' => '0B24 (E069 (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E09F \\1',
- ),
- 235 =>
- array (
- 'match' => '0B25 (E069 (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0A0 \\1',
- ),
- 236 =>
- array (
- 'match' => '0B26 (E069 (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0A1 \\1',
- ),
- 237 =>
- array (
- 'match' => '0B27 (E069 (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0A2 \\1',
- ),
- 238 =>
- array (
- 'match' => '0B28 (E069 (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0A3 \\1',
- ),
- 239 =>
- array (
- 'match' => '0B2A (E069 (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0A4 \\1',
- ),
- 240 =>
- array (
- 'match' => '0B2B (E069 (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0A5 \\1',
- ),
- 241 =>
- array (
- 'match' => '0B2C (E069 (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0A6 \\1',
- ),
- 242 =>
- array (
- 'match' => '0B2D (E069 (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0A7 \\1',
- ),
- 243 =>
- array (
- 'match' => '0B2E (E069 (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0A8 \\1',
- ),
- 244 =>
- array (
- 'match' => '0B2F (E069 (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0A9 \\1',
- ),
- 245 =>
- array (
- 'match' => '0B32 (E069 (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0AA \\1',
- ),
- 246 =>
- array (
- 'match' => '0B33 (E069 (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0AB \\1',
- ),
- 247 =>
- array (
- 'match' => '0B35 (E069 (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0AC \\1',
- ),
- 248 =>
- array (
- 'match' => '0B36 (E069 (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0AD \\1',
- ),
- 249 =>
- array (
- 'match' => '0B37 (E069 (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0AE \\1',
- ),
- 250 =>
- array (
- 'match' => '0B38 (E069 (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0AF \\1',
- ),
- 251 =>
- array (
- 'match' => '0B39 (E069 (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0B0 \\1',
- ),
- 252 =>
- array (
- 'match' => 'E003 (E069 (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0B1 \\1',
- ),
- 253 =>
- array (
- 'match' => 'E004 (E069 (E07B|E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E11E|E11F|E120|E121|E122|E11B|E11C))',
- 'replace' => 'E0B2 \\1',
- ),
- 254 =>
- array (
- 'match' => '0B25 0B3F',
- 'replace' => 'E02D',
- ),
- 255 =>
- array (
- 'match' => '0B27 0B3F',
- 'replace' => 'E02E',
- ),
- 256 =>
- array (
- 'match' => '0B16 0B3F',
- 'replace' => 'E02F',
- ),
- 257 =>
- array (
- 'match' => '(0B3C) 0B4D',
- 'replace' => '\\1 E063',
- ),
- 258 =>
- array (
- 'match' => '(0B3C) E075',
- 'replace' => '\\1 E076',
- ),
- 259 =>
- array (
- 'match' => '2018',
- 'replace' => '0B4D',
- ),
- 260 =>
- array (
- 'match' => '2019',
- 'replace' => '0B4D',
- ),
- 261 =>
- array (
- 'match' => '((0B16|0B17|0B18|0B1F|0B23|0B25|0B27|0B2A|0B2B|0B2E|0B2F|0B37|0B38)) 0B01',
- 'replace' => '\\1 E039',
- ),
- 262 =>
- array (
- 'match' => '((E003|E006|E007|E008|E019|E01A|E00F|E010|E015|E01B|E024|E026|E027|E029|E14A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E034|E035|E036|E037)) 0B01',
- 'replace' => '\\1 E039',
- ),
- 263 =>
- array (
- 'match' => '0B3F 0B01',
- 'replace' => 'E041',
- ),
- 264 =>
- array (
- 'match' => 'E03F 0B01',
- 'replace' => 'E041',
- ),
- 265 =>
- array (
- 'match' => 'E040 0B01',
- 'replace' => 'E042',
- ),
- 266 =>
- array (
- 'match' => '0B40 0B01',
- 'replace' => 'E044',
- ),
- 267 =>
- array (
- 'match' => '0B57 0B01',
- 'replace' => 'E068',
- ),
- 268 =>
- array (
- 'match' => '0B56 0B01',
- 'replace' => 'E064',
- ),
- 269 =>
- array (
- 'match' => 'E05D 0B01',
- 'replace' => 'E064',
- ),
- 270 =>
- array (
- 'match' => 'E05E 0B01',
- 'replace' => 'E065',
- ),
- 271 =>
- array (
- 'match' => 'E05F 0B01',
- 'replace' => 'E066',
- ),
- 272 =>
- array (
- 'match' => 'E060 0B01',
- 'replace' => 'E067',
- ),
- 273 =>
- array (
- 'match' => 'E06D 0B01',
- 'replace' => 'E089',
- ),
- 274 =>
- array (
- 'match' => 'E06E 0B01',
- 'replace' => 'E08A',
- ),
- 275 =>
- array (
- 'match' => 'E070 0B01',
- 'replace' => 'E08C',
- ),
- 276 =>
- array (
- 'match' => 'E071 0B01',
- 'replace' => 'E08D',
- ),
- 277 =>
- array (
- 'match' => 'E072 0B01',
- 'replace' => 'E08E',
- ),
- 278 =>
- array (
- 'match' => 'E074 0B01',
- 'replace' => 'E08F',
- ),
- 279 =>
- array (
- 'match' => '((E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FC|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E07B|E084)) 0B3C',
- 'replace' => '\\1 E03C',
- ),
- 280 =>
- array (
- 'match' => '((E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FC|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E07B|E084)) 0B41',
- 'replace' => '\\1 E048',
- ),
- 281 =>
- array (
- 'match' => '((E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FC|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E07B|E084)) 0B42',
- 'replace' => '\\1 E04B',
- ),
- 282 =>
- array (
- 'match' => '((E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FC|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E07B|E084)) 0B43',
- 'replace' => '\\1 E04F',
- ),
- 283 =>
- array (
- 'match' => '((E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FC|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E07B|E084)) E053',
- 'replace' => '\\1 E054',
- ),
- 284 =>
- array (
- 'match' => '((E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FC|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E07B|E084)) E056',
- 'replace' => '\\1 E057',
- ),
- 285 =>
- array (
- 'match' => '((E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FC|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E07B|E084)) E059',
- 'replace' => '\\1 E05A',
- ),
- 286 =>
- array (
- 'match' => '((E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FC|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E07B|E084)) 0B4D',
- 'replace' => '\\1 E062',
- ),
- 287 =>
- array (
- 'match' => '((E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FC|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E07B|E084)) E075',
- 'replace' => '\\1 E076',
- ),
- 288 =>
- array (
- 'match' => '((E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FC|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E07B|E084)) E07B',
- 'replace' => '\\1 E07C',
- ),
- 289 =>
- array (
- 'match' => '((E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FC|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E07B|E084)) E07D',
- 'replace' => '\\1 E07F',
- ),
- 290 =>
- array (
- 'match' => '((E0F6|E0F7|E0F8|E0F9|E0FA|E0FB|E0FC|E0FD|E0FE|E0FF|E100|E101|E102|E103|E104|E105|E106|E107|E108|E109|E10A|E10B|E10C|E10D|E10E|E10F|E110|E111|E112|E113|E114|E115|E116|E117|E118|E119|E11A|E11B|E11C|E11D|E07B|E084)) E082',
- 'replace' => '\\1 E083',
- ),
- 291 =>
- array (
- 'match' => '((E00E|E00F|E010|E011|E012|E013|E01B|E01C|E01E|E01F|E020|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037)) 0B3C',
- 'replace' => '\\1 E03C',
- ),
- 292 =>
- array (
- 'match' => '((E00E|E00F|E010|E011|E012|E013|E01B|E01C|E01E|E01F|E020|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037)) 0B41',
- 'replace' => '\\1 E048',
- ),
- 293 =>
- array (
- 'match' => '((E00E|E00F|E010|E011|E012|E013|E01B|E01C|E01E|E01F|E020|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037)) 0B42',
- 'replace' => '\\1 E04B',
- ),
- 294 =>
- array (
- 'match' => '((E00E|E00F|E010|E011|E012|E013|E01B|E01C|E01E|E01F|E020|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037)) 0B43',
- 'replace' => '\\1 E04F',
- ),
- 295 =>
- array (
- 'match' => '((E00E|E00F|E010|E011|E012|E013|E01B|E01C|E01E|E01F|E020|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037)) E053',
- 'replace' => '\\1 E054',
- ),
- 296 =>
- array (
- 'match' => '((E00E|E00F|E010|E011|E012|E013|E01B|E01C|E01E|E01F|E020|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037)) E056',
- 'replace' => '\\1 E057',
- ),
- 297 =>
- array (
- 'match' => '((E00E|E00F|E010|E011|E012|E013|E01B|E01C|E01E|E01F|E020|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037)) E059',
- 'replace' => '\\1 E05A',
- ),
- 298 =>
- array (
- 'match' => '((E00E|E00F|E010|E011|E012|E013|E01B|E01C|E01E|E01F|E020|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037)) 0B4D',
- 'replace' => '\\1 E062',
- ),
- 299 =>
- array (
- 'match' => '((E00E|E00F|E010|E011|E012|E013|E01B|E01C|E01E|E01F|E020|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037)) E075',
- 'replace' => '\\1 E076',
- ),
- 300 =>
- array (
- 'match' => '((E00E|E00F|E010|E011|E012|E013|E01B|E01C|E01E|E01F|E020|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037)) E07B',
- 'replace' => '\\1 E07C',
- ),
- 301 =>
- array (
- 'match' => '((E00E|E00F|E010|E011|E012|E013|E01B|E01C|E01E|E01F|E020|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037)) E07D',
- 'replace' => '\\1 E07F',
- ),
- 302 =>
- array (
- 'match' => '((E00E|E00F|E010|E011|E012|E013|E01B|E01C|E01E|E01F|E020|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037)) E082',
- 'replace' => '\\1 E083',
- ),
- 303 =>
- array (
- 'match' => '((E00E|E00F|E010|E011|E012|E013|E01B|E01C|E01E|E01F|E020|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037) E069) 0B3C',
- 'replace' => '\\1 E03C',
- ),
- 304 =>
- array (
- 'match' => '((E00E|E00F|E010|E011|E012|E013|E01B|E01C|E01E|E01F|E020|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037) E069) 0B41',
- 'replace' => '\\1 E048',
- ),
- 305 =>
- array (
- 'match' => '((E00E|E00F|E010|E011|E012|E013|E01B|E01C|E01E|E01F|E020|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037) E069) 0B42',
- 'replace' => '\\1 E04B',
- ),
- 306 =>
- array (
- 'match' => '((E00E|E00F|E010|E011|E012|E013|E01B|E01C|E01E|E01F|E020|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037) E069) 0B43',
- 'replace' => '\\1 E04F',
- ),
- 307 =>
- array (
- 'match' => '((E00E|E00F|E010|E011|E012|E013|E01B|E01C|E01E|E01F|E020|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037) E069) E053',
- 'replace' => '\\1 E054',
- ),
- 308 =>
- array (
- 'match' => '((E00E|E00F|E010|E011|E012|E013|E01B|E01C|E01E|E01F|E020|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037) E069) E056',
- 'replace' => '\\1 E057',
- ),
- 309 =>
- array (
- 'match' => '((E00E|E00F|E010|E011|E012|E013|E01B|E01C|E01E|E01F|E020|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037) E069) E059',
- 'replace' => '\\1 E05A',
- ),
- 310 =>
- array (
- 'match' => '((E00E|E00F|E010|E011|E012|E013|E01B|E01C|E01E|E01F|E020|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037) E069) 0B4D',
- 'replace' => '\\1 E062',
- ),
- 311 =>
- array (
- 'match' => '((E00E|E00F|E010|E011|E012|E013|E01B|E01C|E01E|E01F|E020|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037) E069) E075',
- 'replace' => '\\1 E076',
- ),
- 312 =>
- array (
- 'match' => '((E00E|E00F|E010|E011|E012|E013|E01B|E01C|E01E|E01F|E020|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037) E069) E07B',
- 'replace' => '\\1 E07C',
- ),
- 313 =>
- array (
- 'match' => '((E00E|E00F|E010|E011|E012|E013|E01B|E01C|E01E|E01F|E020|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037) E069) E07D',
- 'replace' => '\\1 E07F',
- ),
- 314 =>
- array (
- 'match' => '((E00E|E00F|E010|E011|E012|E013|E01B|E01C|E01E|E01F|E020|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037) E069) E082',
- 'replace' => '\\1 E083',
- ),
- 315 =>
- array (
- 'match' => '((E00E|E00F|E010|E011|E012|E013|E01B|E01C|E01E|E01F|E020|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037) E069 0B01) 0B3C',
- 'replace' => '\\1 E03C',
- ),
- 316 =>
- array (
- 'match' => '((E00E|E00F|E010|E011|E012|E013|E01B|E01C|E01E|E01F|E020|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037) E069 0B01) 0B41',
- 'replace' => '\\1 E048',
- ),
- 317 =>
- array (
- 'match' => '((E00E|E00F|E010|E011|E012|E013|E01B|E01C|E01E|E01F|E020|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037) E069 0B01) 0B42',
- 'replace' => '\\1 E04B',
- ),
- 318 =>
- array (
- 'match' => '((E00E|E00F|E010|E011|E012|E013|E01B|E01C|E01E|E01F|E020|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037) E069 0B01) 0B43',
- 'replace' => '\\1 E04F',
- ),
- 319 =>
- array (
- 'match' => '((E00E|E00F|E010|E011|E012|E013|E01B|E01C|E01E|E01F|E020|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037) E069 0B01) E053',
- 'replace' => '\\1 E054',
- ),
- 320 =>
- array (
- 'match' => '((E00E|E00F|E010|E011|E012|E013|E01B|E01C|E01E|E01F|E020|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037) E069 0B01) E056',
- 'replace' => '\\1 E057',
- ),
- 321 =>
- array (
- 'match' => '((E00E|E00F|E010|E011|E012|E013|E01B|E01C|E01E|E01F|E020|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037) E069 0B01) E059',
- 'replace' => '\\1 E05A',
- ),
- 322 =>
- array (
- 'match' => '((E00E|E00F|E010|E011|E012|E013|E01B|E01C|E01E|E01F|E020|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037) E069 0B01) 0B4D',
- 'replace' => '\\1 E062',
- ),
- 323 =>
- array (
- 'match' => '((E00E|E00F|E010|E011|E012|E013|E01B|E01C|E01E|E01F|E020|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037) E069 0B01) E075',
- 'replace' => '\\1 E076',
- ),
- 324 =>
- array (
- 'match' => '((E00E|E00F|E010|E011|E012|E013|E01B|E01C|E01E|E01F|E020|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037) E069 0B01) E07B',
- 'replace' => '\\1 E07C',
- ),
- 325 =>
- array (
- 'match' => '((E00E|E00F|E010|E011|E012|E013|E01B|E01C|E01E|E01F|E020|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037) E069 0B01) E07D',
- 'replace' => '\\1 E07F',
- ),
- 326 =>
- array (
- 'match' => '((E00E|E00F|E010|E011|E012|E013|E01B|E01C|E01E|E01F|E020|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037) E069 0B01) E082',
- 'replace' => '\\1 E083',
- ),
- 327 =>
- array (
- 'match' => '(E02B) 0B3C',
- 'replace' => '\\1 E03C',
- ),
- 328 =>
- array (
- 'match' => '(E02B) 0B41',
- 'replace' => '\\1 E048',
- ),
- 329 =>
- array (
- 'match' => '(E02B) 0B42',
- 'replace' => '\\1 E04B',
- ),
- 330 =>
- array (
- 'match' => '(E02B) 0B43',
- 'replace' => '\\1 E04F',
- ),
- 331 =>
- array (
- 'match' => '(E02B) E053',
- 'replace' => '\\1 E054',
- ),
- 332 =>
- array (
- 'match' => '(E02B) E056',
- 'replace' => '\\1 E057',
- ),
- 333 =>
- array (
- 'match' => '(E02B) E059',
- 'replace' => '\\1 E05A',
- ),
- 334 =>
- array (
- 'match' => '(E02B) 0B4D',
- 'replace' => '\\1 E062',
- ),
- 335 =>
- array (
- 'match' => '(E02B) E075',
- 'replace' => '\\1 E076',
- ),
- 336 =>
- array (
- 'match' => '(E02B) E07B',
- 'replace' => '\\1 E07C',
- ),
- 337 =>
- array (
- 'match' => '(E02B) E07D',
- 'replace' => '\\1 E07F',
- ),
- 338 =>
- array (
- 'match' => '(E02B) E082',
- 'replace' => '\\1 E083',
- ),
- 339 =>
- array (
- 'match' => '(E02C) 0B3C',
- 'replace' => '\\1 E03C',
- ),
- 340 =>
- array (
- 'match' => '(E02C) 0B41',
- 'replace' => '\\1 E048',
- ),
- 341 =>
- array (
- 'match' => '(E02C) 0B42',
- 'replace' => '\\1 E04B',
- ),
- 342 =>
- array (
- 'match' => '(E02C) 0B43',
- 'replace' => '\\1 E04F',
- ),
- 343 =>
- array (
- 'match' => '(E02C) E053',
- 'replace' => '\\1 E054',
- ),
- 344 =>
- array (
- 'match' => '(E02C) E056',
- 'replace' => '\\1 E057',
- ),
- 345 =>
- array (
- 'match' => '(E02C) E059',
- 'replace' => '\\1 E05A',
- ),
- 346 =>
- array (
- 'match' => '(E02C) 0B4D',
- 'replace' => '\\1 E062',
- ),
- 347 =>
- array (
- 'match' => '(E02C) E075',
- 'replace' => '\\1 E076',
- ),
- 348 =>
- array (
- 'match' => '(E02C) E07B',
- 'replace' => '\\1 E07C',
- ),
- 349 =>
- array (
- 'match' => '(E02C) E07D',
- 'replace' => '\\1 E07F',
- ),
- 350 =>
- array (
- 'match' => '(E02C) E082',
- 'replace' => '\\1 E083',
- ),
- 351 =>
- array (
- 'match' => '(E06B) 0B3C',
- 'replace' => '\\1 E03C',
- ),
- 352 =>
- array (
- 'match' => '(E06B) 0B41',
- 'replace' => '\\1 E048',
- ),
- 353 =>
- array (
- 'match' => '(E06B) 0B42',
- 'replace' => '\\1 E04B',
- ),
- 354 =>
- array (
- 'match' => '(E06B) 0B43',
- 'replace' => '\\1 E04F',
- ),
- 355 =>
- array (
- 'match' => '(E06B) E053',
- 'replace' => '\\1 E054',
- ),
- 356 =>
- array (
- 'match' => '(E06B) E056',
- 'replace' => '\\1 E057',
- ),
- 357 =>
- array (
- 'match' => '(E06B) E059',
- 'replace' => '\\1 E05A',
- ),
- 358 =>
- array (
- 'match' => '(E06B) 0B4D',
- 'replace' => '\\1 E062',
- ),
- 359 =>
- array (
- 'match' => '(E06B) E075',
- 'replace' => '\\1 E076',
- ),
- 360 =>
- array (
- 'match' => '(E06B) E07B',
- 'replace' => '\\1 E07C',
- ),
- 361 =>
- array (
- 'match' => '(E06B) E07D',
- 'replace' => '\\1 E07F',
- ),
- 362 =>
- array (
- 'match' => '(E06B) E082',
- 'replace' => '\\1 E083',
- ),
- 363 =>
- array (
- 'match' => '(0B3C) 0B3C',
- 'replace' => '\\1 E03C',
- ),
- 364 =>
- array (
- 'match' => '(0B3C) 0B41',
- 'replace' => '\\1 E048',
- ),
- 365 =>
- array (
- 'match' => '(0B3C) 0B42',
- 'replace' => '\\1 E04B',
- ),
- 366 =>
- array (
- 'match' => '(0B3C) 0B43',
- 'replace' => '\\1 E04F',
- ),
- 367 =>
- array (
- 'match' => '(0B3C) E053',
- 'replace' => '\\1 E054',
- ),
- 368 =>
- array (
- 'match' => '(0B3C) E056',
- 'replace' => '\\1 E057',
- ),
- 369 =>
- array (
- 'match' => '(0B3C) E059',
- 'replace' => '\\1 E05A',
- ),
- 370 =>
- array (
- 'match' => '(0B3C) 0B4D',
- 'replace' => '\\1 E062',
- ),
- 371 =>
- array (
- 'match' => '(0B3C) E075',
- 'replace' => '\\1 E076',
- ),
- 372 =>
- array (
- 'match' => '(0B3C) E07B',
- 'replace' => '\\1 E07C',
- ),
- 373 =>
- array (
- 'match' => '(0B3C) E07D',
- 'replace' => '\\1 E07F',
- ),
- 374 =>
- array (
- 'match' => '(0B3C) E082',
- 'replace' => '\\1 E083',
- ),
- 375 =>
- array (
- 'match' => '(E075) 0B3C',
- 'replace' => '\\1 E03C',
- ),
- 376 =>
- array (
- 'match' => '(E075) 0B41',
- 'replace' => '\\1 E048',
- ),
- 377 =>
- array (
- 'match' => '(E075) 0B42',
- 'replace' => '\\1 E04B',
- ),
- 378 =>
- array (
- 'match' => '(E075) 0B43',
- 'replace' => '\\1 E04F',
- ),
- 379 =>
- array (
- 'match' => '(E075) E053',
- 'replace' => '\\1 E054',
- ),
- 380 =>
- array (
- 'match' => '(E075) E056',
- 'replace' => '\\1 E057',
- ),
- 381 =>
- array (
- 'match' => '(E075) E059',
- 'replace' => '\\1 E05A',
- ),
- 382 =>
- array (
- 'match' => '(E075) 0B4D',
- 'replace' => '\\1 E062',
- ),
- 383 =>
- array (
- 'match' => '(E075) E075',
- 'replace' => '\\1 E076',
- ),
- 384 =>
- array (
- 'match' => '(E075) E07B',
- 'replace' => '\\1 E07C',
- ),
- 385 =>
- array (
- 'match' => '(E075) E07D',
- 'replace' => '\\1 E07F',
- ),
- 386 =>
- array (
- 'match' => '(E075) E082',
- 'replace' => '\\1 E083',
- ),
- 387 =>
- array (
- 'match' => '(E075) 0B41',
- 'replace' => '\\1 E048',
- ),
- 388 =>
- array (
- 'match' => '(E075) 0B42',
- 'replace' => '\\1 E04B',
- ),
- 389 =>
- array (
- 'match' => '(E075) 0B43',
- 'replace' => '\\1 E04F',
- ),
- 390 =>
- array (
- 'match' => '(E075) E053',
- 'replace' => '\\1 E054',
- ),
- 391 =>
- array (
- 'match' => '(E075) E056',
- 'replace' => '\\1 E057',
- ),
- 392 =>
- array (
- 'match' => '(E075) E059',
- 'replace' => '\\1 E05A',
- ),
- 393 =>
- array (
- 'match' => 'E14D 0B01',
- 'replace' => 'E08B',
- ),
- 394 =>
- array (
- 'match' => 'E14D E038',
- 'replace' => 'E08B',
- ),
- 395 =>
- array (
- 'match' => 'E14D E039',
- 'replace' => 'E08B',
- ),
- 396 =>
- array (
- 'match' => 'E14D E149',
- 'replace' => 'E08B',
- ),
- 397 =>
- array (
- 'match' => '((E00E|E00F|E010|E011|E012|E013|E01B|E01C|E01E|E01F|E020|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037)) E0FD',
- 'replace' => '\\1 E11E',
- ),
- 398 =>
- array (
- 'match' => '((E00E|E00F|E010|E011|E012|E013|E01B|E01C|E01E|E01F|E020|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037)) E109',
- 'replace' => '\\1 E121',
- ),
- 399 =>
- array (
- 'match' => '((E00E|E00F|E010|E011|E012|E013|E01B|E01C|E01E|E01F|E020|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037)) E110',
- 'replace' => '\\1 E11F',
- ),
- 400 =>
- array (
- 'match' => '((E00E|E00F|E010|E011|E012|E013|E01B|E01C|E01E|E01F|E020|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037)) E111',
- 'replace' => '\\1 E120',
- ),
- 401 =>
- array (
- 'match' => '((E00E|E00F|E010|E011|E012|E013|E01B|E01C|E01E|E01F|E020|E023|E024|E025|E026|E027|E028|E029|E02A|E02B|E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037)) E11C',
- 'replace' => '\\1 E122',
- ),
- 402 =>
- array (
- 'match' => '(E076) 0B41',
- 'replace' => '\\1 E048',
- ),
- 403 =>
- array (
- 'match' => '(E076) 0B42',
- 'replace' => '\\1 E04B',
- ),
- 404 =>
- array (
- 'match' => '(E076) 0B43',
- 'replace' => '\\1 E04F',
- ),
- 405 =>
- array (
- 'match' => '(E076) E053',
- 'replace' => '\\1 E054',
- ),
- 406 =>
- array (
- 'match' => '(E076) E056',
- 'replace' => '\\1 E057',
- ),
- 407 =>
- array (
- 'match' => '(E076) E059',
- 'replace' => '\\1 E05A',
- ),
- 408 =>
- array (
- 'match' => '(E076) 0B4D',
- 'replace' => '\\1 E062',
- ),
- 409 =>
- array (
- 'match' => '(E090) E10E',
- 'replace' => '\\1 E11C',
- ),
- 410 =>
- array (
- 'match' => '(E0B1) E10E',
- 'replace' => '\\1 E11C',
- ),
- 411 =>
- array (
- 'match' => '(E09F) E10E',
- 'replace' => '\\1 E11C',
- ),
- 412 =>
- array (
- 'match' => '(E092) E10E',
- 'replace' => '\\1 E11C',
- ),
- 413 =>
- array (
- 'match' => '(E0A8) E10E',
- 'replace' => '\\1 E11C',
- ),
- 414 =>
- array (
- 'match' => '(E0A3) E106',
- 'replace' => '\\1 E0FC',
- ),
- 415 =>
- array (
- 'match' => '(E0AF) E106',
- 'replace' => '\\1 E0FC',
- ),
- 416 =>
- array (
- 'match' => '((0B16|0B17|0B18|0B1F|0B23|0B25|0B27|0B2A|0B2B|0B2E|0B2F|0B37|0B38)) 0B01',
- 'replace' => '\\1 E039',
- ),
- 417 =>
- array (
- 'match' => '(0B10) 0B01',
- 'replace' => '\\1 E149',
- ),
- 418 =>
- array (
- 'match' => '(0B14) 0B01',
- 'replace' => '\\1 E149',
- ),
- 419 =>
- array (
- 'match' => '(E069) 0B01',
- 'replace' => '\\1 E149',
- ),
- 420 =>
- array (
- 'match' => '(E06A) 0B01',
- 'replace' => '\\1 E149',
- ),
- 421 =>
- array (
- 'match' => '(E06B) 0B01',
- 'replace' => '\\1 E149',
- ),
- 422 =>
- array (
- 'match' => '(E06C) 0B01',
- 'replace' => '\\1 E149',
- ),
- 423 =>
- array (
- 'match' => '0B21 0B4D (E035)',
- 'replace' => 'E12F \\1',
- ),
- 424 =>
- array (
- 'match' => ' (E035)',
- 'replace' => ' \\1',
- ),
- 425 =>
- array (
- 'match' => ' (E035)',
- 'replace' => ' \\1',
- ),
- 426 =>
- array (
- 'match' => ' (E035)',
- 'replace' => ' \\1',
- ),
- 427 =>
- array (
- 'match' => ' (E035)',
- 'replace' => ' \\1',
- ),
- 428 =>
- array (
- 'match' => ' (E035)',
- 'replace' => ' \\1',
- ),
-);
-?>
\ No newline at end of file
diff --git a/public/mpdf/includes/ind_pa_1_001.volt.php b/public/mpdf/includes/ind_pa_1_001.volt.php
deleted file mode 100644
index 34f81a6..0000000
--- a/public/mpdf/includes/ind_pa_1_001.volt.php
+++ /dev/null
@@ -1,1444 +0,0 @@
-
- array (
- 'match' => '0A4D 200C',
- 'replace' => 'E055',
- ),
- 1 =>
- array (
- 'match' => '0A4D 200D',
- 'replace' => 'E057',
- ),
- 2 =>
- array (
- 'match' => '((0A15|0A16|0A17|0A18|0A19|0A1A|0A1B|0A1C|0A1D|0A1E|0A1F|0A20|0A21|0A22|0A23|0A24|0A25|0A26|0A27|0A28|0A2A|0A2B|0A2C|0A2D|0A2E|0A2F|0A30|0A32|0A33|0A35|0A36|0A38|0A39|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E051|E052|E053|E054|0A59|0A5A|0A5B|0A5C|0A5E)) 0A4D',
- 'replace' => '\\1 E056',
- ),
- 3 =>
- array (
- 'match' => '(200D) 0A4D',
- 'replace' => '\\1 E056',
- ),
- 4 =>
- array (
- 'match' => '(0020) 0A4D',
- 'replace' => '\\1 E056',
- ),
- 5 =>
- array (
- 'match' => '(25CC) 0A4D',
- 'replace' => '\\1 E056',
- ),
- 6 =>
- array (
- 'match' => '200D E056',
- 'replace' => 'E056',
- ),
- 7 =>
- array (
- 'match' => '0A05 0A3C',
- 'replace' => 'E02A',
- ),
- 8 =>
- array (
- 'match' => '0A06 0A3C',
- 'replace' => 'E02B',
- ),
- 9 =>
- array (
- 'match' => '0A07 0A3C',
- 'replace' => 'E02C',
- ),
- 10 =>
- array (
- 'match' => '0A08 0A3C',
- 'replace' => 'E02D',
- ),
- 11 =>
- array (
- 'match' => '0A09 0A3C',
- 'replace' => 'E02E',
- ),
- 12 =>
- array (
- 'match' => '0A0A 0A3C',
- 'replace' => 'E02F',
- ),
- 13 =>
- array (
- 'match' => '0A0F 0A3C',
- 'replace' => 'E030',
- ),
- 14 =>
- array (
- 'match' => '0A10 0A3C',
- 'replace' => 'E031',
- ),
- 15 =>
- array (
- 'match' => '0A13 0A3C',
- 'replace' => 'E032',
- ),
- 16 =>
- array (
- 'match' => '0A14 0A3C',
- 'replace' => 'E033',
- ),
- 17 =>
- array (
- 'match' => '0A15 0A3C',
- 'replace' => 'E034',
- ),
- 18 =>
- array (
- 'match' => '0A16 0A3C',
- 'replace' => 'E035',
- ),
- 19 =>
- array (
- 'match' => '0A17 0A3C',
- 'replace' => 'E036',
- ),
- 20 =>
- array (
- 'match' => '0A18 0A3C',
- 'replace' => 'E037',
- ),
- 21 =>
- array (
- 'match' => '0A19 0A3C',
- 'replace' => 'E038',
- ),
- 22 =>
- array (
- 'match' => '0A1A 0A3C',
- 'replace' => 'E039',
- ),
- 23 =>
- array (
- 'match' => '0A1B 0A3C',
- 'replace' => 'E03A',
- ),
- 24 =>
- array (
- 'match' => '0A1C 0A3C',
- 'replace' => 'E03B',
- ),
- 25 =>
- array (
- 'match' => '0A1D 0A3C',
- 'replace' => 'E03C',
- ),
- 26 =>
- array (
- 'match' => '0A1E 0A3C',
- 'replace' => 'E03D',
- ),
- 27 =>
- array (
- 'match' => '0A1F 0A3C',
- 'replace' => 'E03E',
- ),
- 28 =>
- array (
- 'match' => '0A20 0A3C',
- 'replace' => 'E03F',
- ),
- 29 =>
- array (
- 'match' => '0A21 0A3C',
- 'replace' => 'E040',
- ),
- 30 =>
- array (
- 'match' => '0A22 0A3C',
- 'replace' => 'E041',
- ),
- 31 =>
- array (
- 'match' => '0A23 0A3C',
- 'replace' => 'E042',
- ),
- 32 =>
- array (
- 'match' => '0A24 0A3C',
- 'replace' => 'E043',
- ),
- 33 =>
- array (
- 'match' => '0A25 0A3C',
- 'replace' => 'E044',
- ),
- 34 =>
- array (
- 'match' => '0A26 0A3C',
- 'replace' => 'E045',
- ),
- 35 =>
- array (
- 'match' => '0A27 0A3C',
- 'replace' => 'E046',
- ),
- 36 =>
- array (
- 'match' => '0A28 0A3C',
- 'replace' => 'E047',
- ),
- 37 =>
- array (
- 'match' => '0A2A 0A3C',
- 'replace' => 'E048',
- ),
- 38 =>
- array (
- 'match' => '0A2B 0A3C',
- 'replace' => 'E049',
- ),
- 39 =>
- array (
- 'match' => '0A2C 0A3C',
- 'replace' => 'E04A',
- ),
- 40 =>
- array (
- 'match' => '0A2D 0A3C',
- 'replace' => 'E04B',
- ),
- 41 =>
- array (
- 'match' => '0A2E 0A3C',
- 'replace' => 'E04C',
- ),
- 42 =>
- array (
- 'match' => '0A2F 0A3C',
- 'replace' => 'E04D',
- ),
- 43 =>
- array (
- 'match' => '0A30 0A3C',
- 'replace' => 'E04E',
- ),
- 44 =>
- array (
- 'match' => '0A32 0A3C',
- 'replace' => 'E04F',
- ),
- 45 =>
- array (
- 'match' => '0A33 0A3C',
- 'replace' => 'E050',
- ),
- 46 =>
- array (
- 'match' => '0A35 0A3C',
- 'replace' => 'E051',
- ),
- 47 =>
- array (
- 'match' => '0A36 0A3C',
- 'replace' => 'E052',
- ),
- 48 =>
- array (
- 'match' => '0A38 0A3C',
- 'replace' => 'E053',
- ),
- 49 =>
- array (
- 'match' => '0A39 0A3C',
- 'replace' => 'E054',
- ),
- 50 =>
- array (
- 'match' => 'E056 0A15',
- 'replace' => 'E07B',
- ),
- 51 =>
- array (
- 'match' => 'E056 0A16',
- 'replace' => 'E07C',
- ),
- 52 =>
- array (
- 'match' => 'E056 0A17',
- 'replace' => 'E07D',
- ),
- 53 =>
- array (
- 'match' => 'E056 0A18',
- 'replace' => 'E07E',
- ),
- 54 =>
- array (
- 'match' => 'E056 0A19',
- 'replace' => 'E07F',
- ),
- 55 =>
- array (
- 'match' => 'E056 0A1A',
- 'replace' => 'E080',
- ),
- 56 =>
- array (
- 'match' => 'E056 0A1B',
- 'replace' => 'E081',
- ),
- 57 =>
- array (
- 'match' => 'E056 0A1C',
- 'replace' => 'E082',
- ),
- 58 =>
- array (
- 'match' => 'E056 0A1D',
- 'replace' => 'E083',
- ),
- 59 =>
- array (
- 'match' => 'E056 0A1E',
- 'replace' => 'E084',
- ),
- 60 =>
- array (
- 'match' => 'E056 0A1F',
- 'replace' => 'E085',
- ),
- 61 =>
- array (
- 'match' => 'E056 0A20',
- 'replace' => 'E086',
- ),
- 62 =>
- array (
- 'match' => 'E056 0A21',
- 'replace' => 'E087',
- ),
- 63 =>
- array (
- 'match' => 'E056 0A22',
- 'replace' => 'E088',
- ),
- 64 =>
- array (
- 'match' => 'E056 0A23',
- 'replace' => 'E089',
- ),
- 65 =>
- array (
- 'match' => 'E056 0A24',
- 'replace' => 'E08A',
- ),
- 66 =>
- array (
- 'match' => 'E056 0A25',
- 'replace' => 'E08B',
- ),
- 67 =>
- array (
- 'match' => 'E056 0A26',
- 'replace' => 'E08C',
- ),
- 68 =>
- array (
- 'match' => 'E056 0A27',
- 'replace' => 'E08D',
- ),
- 69 =>
- array (
- 'match' => 'E056 0A28',
- 'replace' => 'E08E',
- ),
- 70 =>
- array (
- 'match' => 'E056 0A2A',
- 'replace' => 'E08F',
- ),
- 71 =>
- array (
- 'match' => 'E056 0A2B',
- 'replace' => 'E090',
- ),
- 72 =>
- array (
- 'match' => 'E056 0A2C',
- 'replace' => 'E091',
- ),
- 73 =>
- array (
- 'match' => 'E056 0A2D',
- 'replace' => 'E092',
- ),
- 74 =>
- array (
- 'match' => 'E056 0A2E',
- 'replace' => 'E093',
- ),
- 75 =>
- array (
- 'match' => 'E056 0A2F',
- 'replace' => 'E094',
- ),
- 76 =>
- array (
- 'match' => 'E056 0A30',
- 'replace' => 'E095',
- ),
- 77 =>
- array (
- 'match' => 'E056 0A32',
- 'replace' => 'E096',
- ),
- 78 =>
- array (
- 'match' => 'E056 0A35',
- 'replace' => 'E097',
- ),
- 79 =>
- array (
- 'match' => 'E056 0A36',
- 'replace' => 'E098',
- ),
- 80 =>
- array (
- 'match' => 'E056 0A38',
- 'replace' => 'E099',
- ),
- 81 =>
- array (
- 'match' => 'E056 0A39',
- 'replace' => 'E09A',
- ),
- 82 =>
- array (
- 'match' => 'E056 0A59',
- 'replace' => 'E09B',
- ),
- 83 =>
- array (
- 'match' => 'E056 0A5A',
- 'replace' => 'E09C',
- ),
- 84 =>
- array (
- 'match' => 'E056 0A5B',
- 'replace' => 'E09D',
- ),
- 85 =>
- array (
- 'match' => 'E056 0A5C',
- 'replace' => 'E09E',
- ),
- 86 =>
- array (
- 'match' => 'E056 0A5E',
- 'replace' => 'E09F',
- ),
- 87 =>
- array (
- 'match' => 'E056 0A33',
- 'replace' => 'E0BB',
- ),
- 88 =>
- array (
- 'match' => 'E07B ((E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F))',
- 'replace' => '0A4D 0A15 \\1',
- ),
- 89 =>
- array (
- 'match' => 'E07C ((E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F))',
- 'replace' => '0A4D 0A16 \\1',
- ),
- 90 =>
- array (
- 'match' => 'E07D ((E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F))',
- 'replace' => '0A4D 0A17 \\1',
- ),
- 91 =>
- array (
- 'match' => 'E07E ((E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F))',
- 'replace' => '0A4D 0A18 \\1',
- ),
- 92 =>
- array (
- 'match' => 'E07F ((E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F))',
- 'replace' => '0A4D 0A19 \\1',
- ),
- 93 =>
- array (
- 'match' => 'E080 ((E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F))',
- 'replace' => '0A4D 0A1A \\1',
- ),
- 94 =>
- array (
- 'match' => 'E081 ((E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F))',
- 'replace' => '0A4D 0A1B \\1',
- ),
- 95 =>
- array (
- 'match' => 'E082 ((E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F))',
- 'replace' => '0A4D 0A1C \\1',
- ),
- 96 =>
- array (
- 'match' => 'E083 ((E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F))',
- 'replace' => '0A4D 0A1D \\1',
- ),
- 97 =>
- array (
- 'match' => 'E084 ((E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F))',
- 'replace' => '0A4D 0A1E \\1',
- ),
- 98 =>
- array (
- 'match' => 'E085 ((E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F))',
- 'replace' => '0A4D 0A1F \\1',
- ),
- 99 =>
- array (
- 'match' => 'E086 ((E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F))',
- 'replace' => '0A4D 0A20 \\1',
- ),
- 100 =>
- array (
- 'match' => 'E087 ((E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F))',
- 'replace' => '0A4D 0A21 \\1',
- ),
- 101 =>
- array (
- 'match' => 'E088 ((E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F))',
- 'replace' => '0A4D 0A22 \\1',
- ),
- 102 =>
- array (
- 'match' => 'E089 ((E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F))',
- 'replace' => '0A4D 0A23 \\1',
- ),
- 103 =>
- array (
- 'match' => 'E08A ((E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F))',
- 'replace' => '0A4D 0A24 \\1',
- ),
- 104 =>
- array (
- 'match' => 'E08B ((E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F))',
- 'replace' => '0A4D 0A25 \\1',
- ),
- 105 =>
- array (
- 'match' => 'E08C ((E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F))',
- 'replace' => '0A4D 0A26 \\1',
- ),
- 106 =>
- array (
- 'match' => 'E08D ((E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F))',
- 'replace' => '0A4D 0A27 \\1',
- ),
- 107 =>
- array (
- 'match' => 'E08E ((E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F))',
- 'replace' => '0A4D 0A28 \\1',
- ),
- 108 =>
- array (
- 'match' => 'E08F ((E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F))',
- 'replace' => '0A4D 0A2A \\1',
- ),
- 109 =>
- array (
- 'match' => 'E090 ((E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F))',
- 'replace' => '0A4D 0A2B \\1',
- ),
- 110 =>
- array (
- 'match' => 'E091 ((E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F))',
- 'replace' => '0A4D 0A2C \\1',
- ),
- 111 =>
- array (
- 'match' => 'E092 ((E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F))',
- 'replace' => '0A4D 0A2D \\1',
- ),
- 112 =>
- array (
- 'match' => 'E093 ((E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F))',
- 'replace' => '0A4D 0A2E \\1',
- ),
- 113 =>
- array (
- 'match' => 'E094 ((E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F))',
- 'replace' => '0A4D 0A2F \\1',
- ),
- 114 =>
- array (
- 'match' => 'E095 ((E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F))',
- 'replace' => '0A4D 0A30 \\1',
- ),
- 115 =>
- array (
- 'match' => 'E096 ((E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F))',
- 'replace' => '0A4D 0A32 \\1',
- ),
- 116 =>
- array (
- 'match' => 'E097 ((E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F))',
- 'replace' => '0A4D 0A35 \\1',
- ),
- 117 =>
- array (
- 'match' => 'E098 ((E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F))',
- 'replace' => '0A4D 0A36 \\1',
- ),
- 118 =>
- array (
- 'match' => 'E099 ((E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F))',
- 'replace' => '0A4D 0A38 \\1',
- ),
- 119 =>
- array (
- 'match' => 'E09A ((E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F))',
- 'replace' => '0A4D 0A39 \\1',
- ),
- 120 =>
- array (
- 'match' => 'E09B ((E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F))',
- 'replace' => '0A4D 0A59 \\1',
- ),
- 121 =>
- array (
- 'match' => 'E09C ((E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F))',
- 'replace' => '0A4D 0A5A \\1',
- ),
- 122 =>
- array (
- 'match' => 'E09D ((E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F))',
- 'replace' => '0A4D 0A5B \\1',
- ),
- 123 =>
- array (
- 'match' => 'E09E ((E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F))',
- 'replace' => '0A4D 0A5C \\1',
- ),
- 124 =>
- array (
- 'match' => 'E09F ((E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F))',
- 'replace' => '0A4D 0A5E \\1',
- ),
- 125 =>
- array (
- 'match' => '(0A3F (0A15|0A16|0A17|0A18|0A19|0A1A|0A1B|0A1C|0A1D|0A1E|0A1F|0A20|0A21|0A22|0A23|0A24|0A25|0A26|0A27|0A28|0A2A|0A2B|0A2C|0A2D|0A2E|0A2F|0A30|0A32|0A33|0A35|0A36|0A38|0A39|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E051|E052|E053|E054|0A59|0A5A|0A5B|0A5C|0A5E)) 0A4D',
- 'replace' => '\\1 0A4D 0A3F',
- ),
- 126 =>
- array (
- 'match' => '0A3F 0A15 (0A4D 0A3F)',
- 'replace' => '0A15 \\1',
- ),
- 127 =>
- array (
- 'match' => '0A3F 0A16 (0A4D 0A3F)',
- 'replace' => '0A16 \\1',
- ),
- 128 =>
- array (
- 'match' => '0A3F 0A17 (0A4D 0A3F)',
- 'replace' => '0A17 \\1',
- ),
- 129 =>
- array (
- 'match' => '0A3F 0A18 (0A4D 0A3F)',
- 'replace' => '0A18 \\1',
- ),
- 130 =>
- array (
- 'match' => '0A3F 0A19 (0A4D 0A3F)',
- 'replace' => '0A19 \\1',
- ),
- 131 =>
- array (
- 'match' => '0A3F 0A1A (0A4D 0A3F)',
- 'replace' => '0A1A \\1',
- ),
- 132 =>
- array (
- 'match' => '0A3F 0A1B (0A4D 0A3F)',
- 'replace' => '0A1B \\1',
- ),
- 133 =>
- array (
- 'match' => '0A3F 0A1C (0A4D 0A3F)',
- 'replace' => '0A1C \\1',
- ),
- 134 =>
- array (
- 'match' => '0A3F 0A1D (0A4D 0A3F)',
- 'replace' => '0A1D \\1',
- ),
- 135 =>
- array (
- 'match' => '0A3F 0A1E (0A4D 0A3F)',
- 'replace' => '0A1E \\1',
- ),
- 136 =>
- array (
- 'match' => '0A3F 0A1F (0A4D 0A3F)',
- 'replace' => '0A1F \\1',
- ),
- 137 =>
- array (
- 'match' => '0A3F 0A20 (0A4D 0A3F)',
- 'replace' => '0A20 \\1',
- ),
- 138 =>
- array (
- 'match' => '0A3F 0A21 (0A4D 0A3F)',
- 'replace' => '0A21 \\1',
- ),
- 139 =>
- array (
- 'match' => '0A3F 0A22 (0A4D 0A3F)',
- 'replace' => '0A22 \\1',
- ),
- 140 =>
- array (
- 'match' => '0A3F 0A23 (0A4D 0A3F)',
- 'replace' => '0A23 \\1',
- ),
- 141 =>
- array (
- 'match' => '0A3F 0A24 (0A4D 0A3F)',
- 'replace' => '0A24 \\1',
- ),
- 142 =>
- array (
- 'match' => '0A3F 0A25 (0A4D 0A3F)',
- 'replace' => '0A25 \\1',
- ),
- 143 =>
- array (
- 'match' => '0A3F 0A26 (0A4D 0A3F)',
- 'replace' => '0A26 \\1',
- ),
- 144 =>
- array (
- 'match' => '0A3F 0A27 (0A4D 0A3F)',
- 'replace' => '0A27 \\1',
- ),
- 145 =>
- array (
- 'match' => '0A3F 0A28 (0A4D 0A3F)',
- 'replace' => '0A28 \\1',
- ),
- 146 =>
- array (
- 'match' => '0A3F 0A2A (0A4D 0A3F)',
- 'replace' => '0A2A \\1',
- ),
- 147 =>
- array (
- 'match' => '0A3F 0A2B (0A4D 0A3F)',
- 'replace' => '0A2B \\1',
- ),
- 148 =>
- array (
- 'match' => '0A3F 0A2C (0A4D 0A3F)',
- 'replace' => '0A2C \\1',
- ),
- 149 =>
- array (
- 'match' => '0A3F 0A2D (0A4D 0A3F)',
- 'replace' => '0A2D \\1',
- ),
- 150 =>
- array (
- 'match' => '0A3F 0A2E (0A4D 0A3F)',
- 'replace' => '0A2E \\1',
- ),
- 151 =>
- array (
- 'match' => '0A3F 0A2F (0A4D 0A3F)',
- 'replace' => '0A2F \\1',
- ),
- 152 =>
- array (
- 'match' => '0A3F 0A30 (0A4D 0A3F)',
- 'replace' => '0A30 \\1',
- ),
- 153 =>
- array (
- 'match' => '0A3F 0A32 (0A4D 0A3F)',
- 'replace' => '0A32 \\1',
- ),
- 154 =>
- array (
- 'match' => '0A3F 0A33 (0A4D 0A3F)',
- 'replace' => '0A33 \\1',
- ),
- 155 =>
- array (
- 'match' => '0A3F 0A35 (0A4D 0A3F)',
- 'replace' => '0A35 \\1',
- ),
- 156 =>
- array (
- 'match' => '0A3F 0A36 (0A4D 0A3F)',
- 'replace' => '0A36 \\1',
- ),
- 157 =>
- array (
- 'match' => '0A3F 0A38 (0A4D 0A3F)',
- 'replace' => '0A38 \\1',
- ),
- 158 =>
- array (
- 'match' => '0A3F 0A39 (0A4D 0A3F)',
- 'replace' => '0A39 \\1',
- ),
- 159 =>
- array (
- 'match' => '0A3F E034 (0A4D 0A3F)',
- 'replace' => 'E034 \\1',
- ),
- 160 =>
- array (
- 'match' => '0A3F E035 (0A4D 0A3F)',
- 'replace' => 'E035 \\1',
- ),
- 161 =>
- array (
- 'match' => '0A3F E036 (0A4D 0A3F)',
- 'replace' => 'E036 \\1',
- ),
- 162 =>
- array (
- 'match' => '0A3F E037 (0A4D 0A3F)',
- 'replace' => 'E037 \\1',
- ),
- 163 =>
- array (
- 'match' => '0A3F E038 (0A4D 0A3F)',
- 'replace' => 'E038 \\1',
- ),
- 164 =>
- array (
- 'match' => '0A3F E039 (0A4D 0A3F)',
- 'replace' => 'E039 \\1',
- ),
- 165 =>
- array (
- 'match' => '0A3F E03A (0A4D 0A3F)',
- 'replace' => 'E03A \\1',
- ),
- 166 =>
- array (
- 'match' => '0A3F E03B (0A4D 0A3F)',
- 'replace' => 'E03B \\1',
- ),
- 167 =>
- array (
- 'match' => '0A3F E03C (0A4D 0A3F)',
- 'replace' => 'E03C \\1',
- ),
- 168 =>
- array (
- 'match' => '0A3F E03D (0A4D 0A3F)',
- 'replace' => 'E03D \\1',
- ),
- 169 =>
- array (
- 'match' => '0A3F E03E (0A4D 0A3F)',
- 'replace' => 'E03E \\1',
- ),
- 170 =>
- array (
- 'match' => '0A3F E03F (0A4D 0A3F)',
- 'replace' => 'E03F \\1',
- ),
- 171 =>
- array (
- 'match' => '0A3F E040 (0A4D 0A3F)',
- 'replace' => 'E040 \\1',
- ),
- 172 =>
- array (
- 'match' => '0A3F E041 (0A4D 0A3F)',
- 'replace' => 'E041 \\1',
- ),
- 173 =>
- array (
- 'match' => '0A3F E042 (0A4D 0A3F)',
- 'replace' => 'E042 \\1',
- ),
- 174 =>
- array (
- 'match' => '0A3F E043 (0A4D 0A3F)',
- 'replace' => 'E043 \\1',
- ),
- 175 =>
- array (
- 'match' => '0A3F E044 (0A4D 0A3F)',
- 'replace' => 'E044 \\1',
- ),
- 176 =>
- array (
- 'match' => '0A3F E045 (0A4D 0A3F)',
- 'replace' => 'E045 \\1',
- ),
- 177 =>
- array (
- 'match' => '0A3F E046 (0A4D 0A3F)',
- 'replace' => 'E046 \\1',
- ),
- 178 =>
- array (
- 'match' => '0A3F E047 (0A4D 0A3F)',
- 'replace' => 'E047 \\1',
- ),
- 179 =>
- array (
- 'match' => '0A3F E048 (0A4D 0A3F)',
- 'replace' => 'E048 \\1',
- ),
- 180 =>
- array (
- 'match' => '0A3F E049 (0A4D 0A3F)',
- 'replace' => 'E049 \\1',
- ),
- 181 =>
- array (
- 'match' => '0A3F E04A (0A4D 0A3F)',
- 'replace' => 'E04A \\1',
- ),
- 182 =>
- array (
- 'match' => '0A3F E04B (0A4D 0A3F)',
- 'replace' => 'E04B \\1',
- ),
- 183 =>
- array (
- 'match' => '0A3F E04C (0A4D 0A3F)',
- 'replace' => 'E04C \\1',
- ),
- 184 =>
- array (
- 'match' => '0A3F E04D (0A4D 0A3F)',
- 'replace' => 'E04D \\1',
- ),
- 185 =>
- array (
- 'match' => '0A3F E04E (0A4D 0A3F)',
- 'replace' => 'E04E \\1',
- ),
- 186 =>
- array (
- 'match' => '0A3F E04F (0A4D 0A3F)',
- 'replace' => 'E04F \\1',
- ),
- 187 =>
- array (
- 'match' => '0A3F E050 (0A4D 0A3F)',
- 'replace' => 'E050 \\1',
- ),
- 188 =>
- array (
- 'match' => '0A3F E051 (0A4D 0A3F)',
- 'replace' => 'E051 \\1',
- ),
- 189 =>
- array (
- 'match' => '0A3F E052 (0A4D 0A3F)',
- 'replace' => 'E052 \\1',
- ),
- 190 =>
- array (
- 'match' => '0A3F E053 (0A4D 0A3F)',
- 'replace' => 'E053 \\1',
- ),
- 191 =>
- array (
- 'match' => '0A3F E054 (0A4D 0A3F)',
- 'replace' => 'E054 \\1',
- ),
- 192 =>
- array (
- 'match' => '0A3F 0A59 (0A4D 0A3F)',
- 'replace' => '0A59 \\1',
- ),
- 193 =>
- array (
- 'match' => '0A3F 0A5A (0A4D 0A3F)',
- 'replace' => '0A5A \\1',
- ),
- 194 =>
- array (
- 'match' => '0A3F 0A5B (0A4D 0A3F)',
- 'replace' => '0A5B \\1',
- ),
- 195 =>
- array (
- 'match' => '0A3F 0A5C (0A4D 0A3F)',
- 'replace' => '0A5C \\1',
- ),
- 196 =>
- array (
- 'match' => '0A3F 0A5E (0A4D 0A3F)',
- 'replace' => '0A5E \\1',
- ),
- 197 =>
- array (
- 'match' => 'E055',
- 'replace' => '0A4D',
- ),
- 198 =>
- array (
- 'match' => 'E056',
- 'replace' => '0A4D',
- ),
- 199 =>
- array (
- 'match' => 'E057',
- 'replace' => '0A4D',
- ),
- 200 =>
- array (
- 'match' => '0A15 0A4D',
- 'replace' => 'E004',
- ),
- 201 =>
- array (
- 'match' => '0A16 0A4D',
- 'replace' => 'E005',
- ),
- 202 =>
- array (
- 'match' => '0A17 0A4D',
- 'replace' => 'E006',
- ),
- 203 =>
- array (
- 'match' => '0A18 0A4D',
- 'replace' => 'E007',
- ),
- 204 =>
- array (
- 'match' => '0A19 0A4D',
- 'replace' => 'E008',
- ),
- 205 =>
- array (
- 'match' => '0A1A 0A4D',
- 'replace' => 'E009',
- ),
- 206 =>
- array (
- 'match' => '0A1B 0A4D',
- 'replace' => 'E00A',
- ),
- 207 =>
- array (
- 'match' => '0A1C 0A4D',
- 'replace' => 'E00B',
- ),
- 208 =>
- array (
- 'match' => '0A1D 0A4D',
- 'replace' => 'E00C',
- ),
- 209 =>
- array (
- 'match' => '0A1E 0A4D',
- 'replace' => 'E00D',
- ),
- 210 =>
- array (
- 'match' => '0A1F 0A4D',
- 'replace' => 'E00E',
- ),
- 211 =>
- array (
- 'match' => '0A20 0A4D',
- 'replace' => 'E00F',
- ),
- 212 =>
- array (
- 'match' => '0A21 0A4D',
- 'replace' => 'E010',
- ),
- 213 =>
- array (
- 'match' => '0A22 0A4D',
- 'replace' => 'E011',
- ),
- 214 =>
- array (
- 'match' => '0A23 0A4D',
- 'replace' => 'E012',
- ),
- 215 =>
- array (
- 'match' => '0A24 0A4D',
- 'replace' => 'E013',
- ),
- 216 =>
- array (
- 'match' => '0A25 0A4D',
- 'replace' => 'E014',
- ),
- 217 =>
- array (
- 'match' => '0A26 0A4D',
- 'replace' => 'E015',
- ),
- 218 =>
- array (
- 'match' => '0A27 0A4D',
- 'replace' => 'E016',
- ),
- 219 =>
- array (
- 'match' => '0A28 0A4D',
- 'replace' => 'E017',
- ),
- 220 =>
- array (
- 'match' => '0A2A 0A4D',
- 'replace' => 'E018',
- ),
- 221 =>
- array (
- 'match' => '0A2B 0A4D',
- 'replace' => 'E019',
- ),
- 222 =>
- array (
- 'match' => '0A2C 0A4D',
- 'replace' => 'E01A',
- ),
- 223 =>
- array (
- 'match' => '0A2D 0A4D',
- 'replace' => 'E01B',
- ),
- 224 =>
- array (
- 'match' => '0A2E 0A4D',
- 'replace' => 'E01C',
- ),
- 225 =>
- array (
- 'match' => '0A2F 0A4D',
- 'replace' => 'E01D',
- ),
- 226 =>
- array (
- 'match' => '0A30 0A4D',
- 'replace' => 'E01E',
- ),
- 227 =>
- array (
- 'match' => '0A32 0A4D',
- 'replace' => 'E01F',
- ),
- 228 =>
- array (
- 'match' => '0A33 0A4D',
- 'replace' => 'E020',
- ),
- 229 =>
- array (
- 'match' => '0A35 0A4D',
- 'replace' => 'E021',
- ),
- 230 =>
- array (
- 'match' => '0A36 0A4D',
- 'replace' => 'E022',
- ),
- 231 =>
- array (
- 'match' => '0A38 0A4D',
- 'replace' => 'E023',
- ),
- 232 =>
- array (
- 'match' => '0A39 0A4D',
- 'replace' => 'E024',
- ),
- 233 =>
- array (
- 'match' => '0A59 0A4D',
- 'replace' => 'E025',
- ),
- 234 =>
- array (
- 'match' => '0A5A 0A4D',
- 'replace' => 'E026',
- ),
- 235 =>
- array (
- 'match' => '0A5B 0A4D',
- 'replace' => 'E027',
- ),
- 236 =>
- array (
- 'match' => '0A5C 0A4D',
- 'replace' => 'E028',
- ),
- 237 =>
- array (
- 'match' => '0A5E 0A4D',
- 'replace' => 'E029',
- ),
- 238 =>
- array (
- 'match' => '((E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0BB)) 0A41',
- 'replace' => '\\1 E002',
- ),
- 239 =>
- array (
- 'match' => '((E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0BB)) 0A42',
- 'replace' => '\\1 E003',
- ),
- 240 =>
- array (
- 'match' => '0A2F 0A4D',
- 'replace' => 'E0A0',
- ),
- 241 =>
- array (
- 'match' => '0A09 0A02',
- 'replace' => 'E0A1',
- ),
- 242 =>
- array (
- 'match' => '0A09 0A70',
- 'replace' => 'E0A1',
- ),
- 243 =>
- array (
- 'match' => '0A0A 0A02',
- 'replace' => 'E0A2',
- ),
- 244 =>
- array (
- 'match' => '0A0A 0A70',
- 'replace' => 'E0A2',
- ),
- 245 =>
- array (
- 'match' => '0A13 0A02',
- 'replace' => 'E0A3',
- ),
- 246 =>
- array (
- 'match' => '0A13 0A70',
- 'replace' => 'E0A3',
- ),
- 247 =>
- array (
- 'match' => '0A05 0A02',
- 'replace' => 'E0B4',
- ),
- 248 =>
- array (
- 'match' => '0A05 0A70',
- 'replace' => 'E0B4',
- ),
- 249 =>
- array (
- 'match' => '0A06 0A02',
- 'replace' => 'E0B5',
- ),
- 250 =>
- array (
- 'match' => '0A06 0A70',
- 'replace' => 'E0B5',
- ),
- 251 =>
- array (
- 'match' => '0A07 0A02',
- 'replace' => 'E0B6',
- ),
- 252 =>
- array (
- 'match' => '0A07 0A70',
- 'replace' => 'E0B6',
- ),
- 253 =>
- array (
- 'match' => '0A08 0A02',
- 'replace' => 'E0B7',
- ),
- 254 =>
- array (
- 'match' => '0A08 0A70',
- 'replace' => 'E0B7',
- ),
- 255 =>
- array (
- 'match' => '0A0F 0A02',
- 'replace' => 'E0B8',
- ),
- 256 =>
- array (
- 'match' => '0A0F 0A70',
- 'replace' => 'E0B8',
- ),
- 257 =>
- array (
- 'match' => '0A10 0A02',
- 'replace' => 'E0B9',
- ),
- 258 =>
- array (
- 'match' => '0A10 0A70',
- 'replace' => 'E0B9',
- ),
- 259 =>
- array (
- 'match' => '0A14 0A02',
- 'replace' => 'E0BA',
- ),
- 260 =>
- array (
- 'match' => '0A14 0A70',
- 'replace' => 'E0BA',
- ),
- 261 =>
- array (
- 'match' => '((0A15|0A16|0A17|0A18|0A19|0A1A|0A1B|0A1C|0A1D|0A1E|0A1F|0A20|0A21|0A22|0A23|0A24|0A25|0A26|0A27|0A28|0A2A|0A2B|0A2C|0A2D|0A2E|0A2F|0A30|0A32|0A33|0A35|0A36|0A38|0A39|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E|E04F|E050|E051|E052|E053|E054|0A59|0A5A|0A5B|0A5C|0A5E)) 0A02',
- 'replace' => '\\1 0A70',
- ),
- 262 =>
- array (
- 'match' => '((E004|E005|E006|E007|E008|E009|E00A|E00B|E00C|E00D|E00E|E00F|E010|E011|E012|E013|E014|E015|E016|E017|E018|E019|E01A|E01B|E01C|E01D|E01E|E01F|E020|E021|E022|E023|E024|E025|E026|E027|E028|E029|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071|E072|E073|E074|E075|E076|E077|E078|E079|E07A|E02A|E02C)) 0A02',
- 'replace' => '\\1 0A70',
- ),
- 263 =>
- array (
- 'match' => '((E07B|E07C|E07D|E07E|E07F|E080|E081|E082|E083|E084|E085|E086|E087|E088|E089|E08A|E08B|E08C|E08D|E08E|E08F|E090|E091|E092|E093|E094|E095|E096|E097|E098|E099|E09A|E09B|E09C|E09D|E09E|E09F|E0BB)) 0A02',
- 'replace' => '\\1 0A70',
- ),
- 264 =>
- array (
- 'match' => '(0A41) 0A02',
- 'replace' => '\\1 0A70',
- ),
- 265 =>
- array (
- 'match' => '(0A42) 0A02',
- 'replace' => '\\1 0A70',
- ),
- 266 =>
- array (
- 'match' => '(E002) 0A02',
- 'replace' => '\\1 0A70',
- ),
- 267 =>
- array (
- 'match' => '(E003) 0A02',
- 'replace' => '\\1 0A70',
- ),
- 268 =>
- array (
- 'match' => '0A3E 0A02',
- 'replace' => 'E0A8',
- ),
- 269 =>
- array (
- 'match' => '0A3E 0A70',
- 'replace' => 'E0A8',
- ),
- 270 =>
- array (
- 'match' => '0A40 0A02',
- 'replace' => 'E0A9',
- ),
- 271 =>
- array (
- 'match' => '0A40 0A70',
- 'replace' => 'E0A9',
- ),
- 272 =>
- array (
- 'match' => '0A47 0A02',
- 'replace' => 'E0AA',
- ),
- 273 =>
- array (
- 'match' => '0A47 0A70',
- 'replace' => 'E0AA',
- ),
- 274 =>
- array (
- 'match' => '0A48 0A02',
- 'replace' => 'E0AB',
- ),
- 275 =>
- array (
- 'match' => '0A48 0A70',
- 'replace' => 'E0AB',
- ),
- 276 =>
- array (
- 'match' => '0A4B 0A02',
- 'replace' => 'E0AC',
- ),
- 277 =>
- array (
- 'match' => '0A4B 0A70',
- 'replace' => 'E0AC',
- ),
- 278 =>
- array (
- 'match' => '0A4C 0A02',
- 'replace' => 'E0AD',
- ),
- 279 =>
- array (
- 'match' => '0A4C 0A70',
- 'replace' => 'E0AD',
- ),
- 280 =>
- array (
- 'match' => '0A3E 0A01',
- 'replace' => 'E0AE',
- ),
- 281 =>
- array (
- 'match' => '0A40 0A01',
- 'replace' => 'E0AF',
- ),
- 282 =>
- array (
- 'match' => '0A47 0A01',
- 'replace' => 'E0B0',
- ),
- 283 =>
- array (
- 'match' => '0A48 0A01',
- 'replace' => 'E0B1',
- ),
- 284 =>
- array (
- 'match' => '0A4B 0A01',
- 'replace' => 'E0B2',
- ),
- 285 =>
- array (
- 'match' => '0A4C 0A01',
- 'replace' => 'E0B3',
- ),
- 286 =>
- array (
- 'match' => '((0A08|0A0F|0A10|0A13|0A14|E0B6|E0B7|E0B8|E0B9|E0BA)) 0A01',
- 'replace' => '\\1 E0A5',
- ),
- 287 =>
- array (
- 'match' => '((E0A8|E0A9|E0AA|E0AB|E0AC|E0AD)) 0A01',
- 'replace' => '\\1 E0A5',
- ),
-);
-?>
\ No newline at end of file
diff --git a/public/mpdf/includes/ind_ta_1_001.volt.php b/public/mpdf/includes/ind_ta_1_001.volt.php
deleted file mode 100644
index 9f53413..0000000
--- a/public/mpdf/includes/ind_ta_1_001.volt.php
+++ /dev/null
@@ -1,394 +0,0 @@
-
- array (
- 'match' => '0BCD 200D',
- 'replace' => '014B',
- ),
- 1 =>
- array (
- 'match' => '0BCD 200C',
- 'replace' => 'E002',
- ),
- 2 =>
- array (
- 'match' => '200D 0BCD',
- 'replace' => '014A',
- ),
- 3 =>
- array (
- 'match' => '0B95 0BCD 0BB7',
- 'replace' => 'E005',
- ),
- 4 =>
- array (
- 'match' => '0BB8 0BCD 0BB0 0BC0',
- 'replace' => 'E04B',
- ),
- 5 =>
- array (
- 'match' => '0B93 0BAE 0BCD',
- 'replace' => 'E04C',
- ),
- 6 =>
- array (
- 'match' => '(0BB8) 0BC1',
- 'replace' => '\\1 E00C',
- ),
- 7 =>
- array (
- 'match' => '(0BB8) 0BC2',
- 'replace' => '\\1 E00D',
- ),
- 8 =>
- array (
- 'match' => '0B95 0BC2',
- 'replace' => 'E00F',
- ),
- 9 =>
- array (
- 'match' => '0B9C 0BC1',
- 'replace' => 'E014',
- ),
- 10 =>
- array (
- 'match' => '0B9C 0BC2',
- 'replace' => 'E015',
- ),
- 11 =>
- array (
- 'match' => '0B9F 0BBF',
- 'replace' => 'E018',
- ),
- 12 =>
- array (
- 'match' => '0BB2 0BBF',
- 'replace' => 'E033',
- ),
- 13 =>
- array (
- 'match' => '0BB7 0BBF',
- 'replace' => 'E03F',
- ),
- 14 =>
- array (
- 'match' => '0BB7 0BC1',
- 'replace' => 'E041',
- ),
- 15 =>
- array (
- 'match' => '0BB7 0BC2',
- 'replace' => 'E042',
- ),
- 16 =>
- array (
- 'match' => '0BB8 0BBF',
- 'replace' => 'E043',
- ),
- 17 =>
- array (
- 'match' => '0BB9 0BC1',
- 'replace' => 'E045',
- ),
- 18 =>
- array (
- 'match' => '0BB9 0BC2',
- 'replace' => 'E046',
- ),
- 19 =>
- array (
- 'match' => 'E005 0BBF',
- 'replace' => 'E047',
- ),
- 20 =>
- array (
- 'match' => 'E005 0BC1',
- 'replace' => 'E049',
- ),
- 21 =>
- array (
- 'match' => 'E005 0BC2',
- 'replace' => 'E04A',
- ),
- 22 =>
- array (
- 'match' => '((0BAA|0BAF|0B99|0BB5)) 0BC0',
- 'replace' => '\\1 E00B',
- ),
- 23 =>
- array (
- 'match' => '((0BAE|0B9A|0BB9|0B9C|0BB4|0BB1)) 0BBF',
- 'replace' => '\\1 E006',
- ),
- 24 =>
- array (
- 'match' => '((0BB0|0BB3|0BA3|0BA9)) 0BBF',
- 'replace' => '\\1 E007',
- ),
- 25 =>
- array (
- 'match' => '((0B95|0BA4)) 0BBF',
- 'replace' => '\\1 E008',
- ),
- 26 =>
- array (
- 'match' => '((0BAA|0BAF|0B99|0BB5)) 0BBF',
- 'replace' => '\\1 E009',
- ),
- 27 =>
- array (
- 'match' => '((0BA8|0B9E)) 0BBF',
- 'replace' => '\\1 E00A',
- ),
- 28 =>
- array (
- 'match' => '0BA3 200C 0BC8',
- 'replace' => 'E01F',
- ),
- 29 =>
- array (
- 'match' => '0BA9 200C 0BC8',
- 'replace' => 'E027',
- ),
- 30 =>
- array (
- 'match' => '0BB2 200C 0BC8',
- 'replace' => 'E037',
- ),
- 31 =>
- array (
- 'match' => '0BB3 200C 0BC8',
- 'replace' => 'E03A',
- ),
- 32 =>
- array (
- 'match' => '0B9F 0BC0',
- 'replace' => 'E019',
- ),
- 33 =>
- array (
- 'match' => '0BB2 0BC0',
- 'replace' => 'E034',
- ),
- 34 =>
- array (
- 'match' => '0BB7 0BC0',
- 'replace' => 'E040',
- ),
- 35 =>
- array (
- 'match' => '0BB8 0BC0',
- 'replace' => 'E044',
- ),
- 36 =>
- array (
- 'match' => 'E005 0BC0',
- 'replace' => 'E048',
- ),
- 37 =>
- array (
- 'match' => '0B95 0BC1',
- 'replace' => 'E00E',
- ),
- 38 =>
- array (
- 'match' => '0B99 0BC1',
- 'replace' => 'E010',
- ),
- 39 =>
- array (
- 'match' => '0B99 0BC2',
- 'replace' => 'E011',
- ),
- 40 =>
- array (
- 'match' => '0B9A 0BC1',
- 'replace' => 'E012',
- ),
- 41 =>
- array (
- 'match' => '0B9A 0BC2',
- 'replace' => 'E013',
- ),
- 42 =>
- array (
- 'match' => '0B9E 0BC1',
- 'replace' => 'E016',
- ),
- 43 =>
- array (
- 'match' => '0B9E 0BC2',
- 'replace' => 'E017',
- ),
- 44 =>
- array (
- 'match' => '0B9F 0BC1',
- 'replace' => 'E01A',
- ),
- 45 =>
- array (
- 'match' => '0B9F 0BC2',
- 'replace' => 'E01B',
- ),
- 46 =>
- array (
- 'match' => '0BA3 200C 0BBE',
- 'replace' => 'E01C',
- ),
- 47 =>
- array (
- 'match' => '0BA3 0BC1',
- 'replace' => 'E01D',
- ),
- 48 =>
- array (
- 'match' => '0BA3 0BC2',
- 'replace' => 'E01E',
- ),
- 49 =>
- array (
- 'match' => '0BA4 0BC1',
- 'replace' => 'E020',
- ),
- 50 =>
- array (
- 'match' => '0BA4 0BC2',
- 'replace' => 'E021',
- ),
- 51 =>
- array (
- 'match' => '0BA8 0BC1',
- 'replace' => 'E022',
- ),
- 52 =>
- array (
- 'match' => '0BA8 0BC2',
- 'replace' => 'E023',
- ),
- 53 =>
- array (
- 'match' => '0BA9 200C 0BBE',
- 'replace' => 'E024',
- ),
- 54 =>
- array (
- 'match' => '0BA9 0BC1',
- 'replace' => 'E025',
- ),
- 55 =>
- array (
- 'match' => '0BA9 0BC2',
- 'replace' => 'E026',
- ),
- 56 =>
- array (
- 'match' => '0BAA 0BC1',
- 'replace' => 'E028',
- ),
- 57 =>
- array (
- 'match' => '0BAA 0BC2',
- 'replace' => 'E029',
- ),
- 58 =>
- array (
- 'match' => '0BAE 0BC1',
- 'replace' => 'E02A',
- ),
- 59 =>
- array (
- 'match' => '0BAE 0BC2',
- 'replace' => 'E02B',
- ),
- 60 =>
- array (
- 'match' => '0BAF 0BC1',
- 'replace' => 'E02C',
- ),
- 61 =>
- array (
- 'match' => '0BAF 0BC2',
- 'replace' => 'E02D',
- ),
- 62 =>
- array (
- 'match' => '0BB0 0BC1',
- 'replace' => 'E02E',
- ),
- 63 =>
- array (
- 'match' => '0BB0 0BC2',
- 'replace' => 'E02F',
- ),
- 64 =>
- array (
- 'match' => '0BB1 200C 0BBE',
- 'replace' => 'E030',
- ),
- 65 =>
- array (
- 'match' => '0BB1 0BC1',
- 'replace' => 'E031',
- ),
- 66 =>
- array (
- 'match' => '0BB1 0BC2',
- 'replace' => 'E032',
- ),
- 67 =>
- array (
- 'match' => '0BB2 0BC1',
- 'replace' => 'E035',
- ),
- 68 =>
- array (
- 'match' => '0BB2 0BC2',
- 'replace' => 'E036',
- ),
- 69 =>
- array (
- 'match' => '0BB3 0BC1',
- 'replace' => 'E038',
- ),
- 70 =>
- array (
- 'match' => '0BB3 0BC2',
- 'replace' => 'E039',
- ),
- 71 =>
- array (
- 'match' => '0BB4 0BC1',
- 'replace' => 'E03B',
- ),
- 72 =>
- array (
- 'match' => '0BB4 0BC2',
- 'replace' => 'E03C',
- ),
- 73 =>
- array (
- 'match' => '0BB5 0BC1',
- 'replace' => 'E03D',
- ),
- 74 =>
- array (
- 'match' => '0BB5 0BC2',
- 'replace' => 'E03E',
- ),
- 75 =>
- array (
- 'match' => '014B',
- 'replace' => '0BCD',
- ),
- 76 =>
- array (
- 'match' => 'E002',
- 'replace' => '0BCD',
- ),
- 77 =>
- array (
- 'match' => '014A',
- 'replace' => '0BCD',
- ),
-);
-?>
\ No newline at end of file
diff --git a/public/mpdf/includes/ind_te_1_001.volt.php b/public/mpdf/includes/ind_te_1_001.volt.php
deleted file mode 100644
index 1cf96cc..0000000
--- a/public/mpdf/includes/ind_te_1_001.volt.php
+++ /dev/null
@@ -1,1489 +0,0 @@
-
- array (
- 'match' => '0C4D 0C30 ((0C15|0C16|0C17|0C18|0C19|0C1A|0C1B|0C1C|0C1D|0C1E|0C1F|0C20|0C21|0C22|0C23|0C24|0C25|0C26|0C27|0C28|0C2A|0C2B|0C2C|0C2D|0C2E|0C2F|0C30|0C31|0C32|0C33|0C35|0C36|0C37|0C38|0C39))',
- 'replace' => 'E046 \\1',
- ),
- 1 =>
- array (
- 'match' => '0C4D 200D',
- 'replace' => '00C9',
- ),
- 2 =>
- array (
- 'match' => '0C4D 200C',
- 'replace' => '00D0',
- ),
- 3 =>
- array (
- 'match' => '200D 0C4D',
- 'replace' => '00D1',
- ),
- 4 =>
- array (
- 'match' => '((0C15|0C16|0C17|0C18|0C19|0C1A|0C1B|0C1C|0C1D|0C1E|0C1F|0C20|0C21|0C22|0C23|0C24|0C25|0C26|0C27|0C28|0C2A|0C2B|0C2C|0C2D|0C2E|0C2F|0C30|0C31|0C32|0C33|0C35|0C36|0C37|0C38|0C39)) 0C4D',
- 'replace' => '\\1 00D1',
- ),
- 5 =>
- array (
- 'match' => '((0C3E|0C3F|0C40|0C46|0C47|0C56|0C4A|0C4B|0C4C)) 0C4D',
- 'replace' => '\\1 00D1',
- ),
- 6 =>
- array (
- 'match' => '((0C41|0C42|0C43|0C44)) 0C4D',
- 'replace' => '\\1 00D1',
- ),
- 7 =>
- array (
- 'match' => '(0020) 0C4D',
- 'replace' => '\\1 00D1',
- ),
- 8 =>
- array (
- 'match' => '(25CC) 0C4D',
- 'replace' => '\\1 00D1',
- ),
- 9 =>
- array (
- 'match' => '0C15 00D1 0C37',
- 'replace' => 'E078',
- ),
- 10 =>
- array (
- 'match' => '0C36 00D1 0C1C',
- 'replace' => 'E079',
- ),
- 11 =>
- array (
- 'match' => '00D1 0C15',
- 'replace' => 'E02C',
- ),
- 12 =>
- array (
- 'match' => '00D1 0C16',
- 'replace' => 'E02D',
- ),
- 13 =>
- array (
- 'match' => '00D1 0C17',
- 'replace' => 'E02E',
- ),
- 14 =>
- array (
- 'match' => '00D1 0C18',
- 'replace' => 'E02F',
- ),
- 15 =>
- array (
- 'match' => '00D1 0C19',
- 'replace' => 'E030',
- ),
- 16 =>
- array (
- 'match' => '00D1 0C1A',
- 'replace' => 'E031',
- ),
- 17 =>
- array (
- 'match' => '00D1 0C1B',
- 'replace' => 'E032',
- ),
- 18 =>
- array (
- 'match' => '00D1 0C1C',
- 'replace' => 'E033',
- ),
- 19 =>
- array (
- 'match' => '00D1 0C1D',
- 'replace' => 'E034',
- ),
- 20 =>
- array (
- 'match' => '00D1 0C1E',
- 'replace' => 'E035',
- ),
- 21 =>
- array (
- 'match' => '00D1 0C1F',
- 'replace' => 'E036',
- ),
- 22 =>
- array (
- 'match' => '00D1 0C20',
- 'replace' => 'E037',
- ),
- 23 =>
- array (
- 'match' => '00D1 0C21',
- 'replace' => 'E038',
- ),
- 24 =>
- array (
- 'match' => '00D1 0C22',
- 'replace' => 'E039',
- ),
- 25 =>
- array (
- 'match' => '00D1 0C23',
- 'replace' => 'E03A',
- ),
- 26 =>
- array (
- 'match' => '00D1 0C24',
- 'replace' => 'E03B',
- ),
- 27 =>
- array (
- 'match' => '00D1 0C25',
- 'replace' => 'E03C',
- ),
- 28 =>
- array (
- 'match' => '00D1 0C26',
- 'replace' => 'E03D',
- ),
- 29 =>
- array (
- 'match' => '00D1 0C27',
- 'replace' => 'E03E',
- ),
- 30 =>
- array (
- 'match' => '00D1 0C28',
- 'replace' => 'E03F',
- ),
- 31 =>
- array (
- 'match' => '00D1 0C2A',
- 'replace' => 'E040',
- ),
- 32 =>
- array (
- 'match' => '00D1 0C2B',
- 'replace' => 'E041',
- ),
- 33 =>
- array (
- 'match' => '00D1 0C2C',
- 'replace' => 'E042',
- ),
- 34 =>
- array (
- 'match' => '00D1 0C2D',
- 'replace' => 'E043',
- ),
- 35 =>
- array (
- 'match' => '00D1 0C2E',
- 'replace' => 'E044',
- ),
- 36 =>
- array (
- 'match' => '00D1 0C2F',
- 'replace' => 'E045',
- ),
- 37 =>
- array (
- 'match' => '00D1 0C30',
- 'replace' => 'E046',
- ),
- 38 =>
- array (
- 'match' => '00D1 0C31',
- 'replace' => 'E047',
- ),
- 39 =>
- array (
- 'match' => '00D1 0C32',
- 'replace' => 'E048',
- ),
- 40 =>
- array (
- 'match' => '00D1 0C33',
- 'replace' => 'E049',
- ),
- 41 =>
- array (
- 'match' => '00D1 0C35',
- 'replace' => 'E04A',
- ),
- 42 =>
- array (
- 'match' => '00D1 0C36',
- 'replace' => 'E04B',
- ),
- 43 =>
- array (
- 'match' => '00D1 0C37',
- 'replace' => 'E04C',
- ),
- 44 =>
- array (
- 'match' => '00D1 0C38',
- 'replace' => 'E04D',
- ),
- 45 =>
- array (
- 'match' => '00D1 0C39',
- 'replace' => 'E04E',
- ),
- 46 =>
- array (
- 'match' => '((E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E)) E02C',
- 'replace' => '\\1 E04F',
- ),
- 47 =>
- array (
- 'match' => '((E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E)) E02D',
- 'replace' => '\\1 E050',
- ),
- 48 =>
- array (
- 'match' => '((E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E)) E02E',
- 'replace' => '\\1 E051',
- ),
- 49 =>
- array (
- 'match' => '((E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E)) E02F',
- 'replace' => '\\1 E052',
- ),
- 50 =>
- array (
- 'match' => '((E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E)) E030',
- 'replace' => '\\1 E053',
- ),
- 51 =>
- array (
- 'match' => '((E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E)) E031',
- 'replace' => '\\1 E054',
- ),
- 52 =>
- array (
- 'match' => '((E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E)) E032',
- 'replace' => '\\1 E055',
- ),
- 53 =>
- array (
- 'match' => '((E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E)) E033',
- 'replace' => '\\1 E056',
- ),
- 54 =>
- array (
- 'match' => '((E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E)) E034',
- 'replace' => '\\1 E057',
- ),
- 55 =>
- array (
- 'match' => '((E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E)) E035',
- 'replace' => '\\1 E058',
- ),
- 56 =>
- array (
- 'match' => '((E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E)) E036',
- 'replace' => '\\1 E059',
- ),
- 57 =>
- array (
- 'match' => '((E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E)) E037',
- 'replace' => '\\1 E05A',
- ),
- 58 =>
- array (
- 'match' => '((E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E)) E038',
- 'replace' => '\\1 E05B',
- ),
- 59 =>
- array (
- 'match' => '((E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E)) E039',
- 'replace' => '\\1 E05C',
- ),
- 60 =>
- array (
- 'match' => '((E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E)) E03A',
- 'replace' => '\\1 E05D',
- ),
- 61 =>
- array (
- 'match' => '((E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E)) E03B',
- 'replace' => '\\1 E05E',
- ),
- 62 =>
- array (
- 'match' => '((E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E)) E03C',
- 'replace' => '\\1 E05F',
- ),
- 63 =>
- array (
- 'match' => '((E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E)) E03D',
- 'replace' => '\\1 E060',
- ),
- 64 =>
- array (
- 'match' => '((E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E)) E03E',
- 'replace' => '\\1 E061',
- ),
- 65 =>
- array (
- 'match' => '((E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E)) E03F',
- 'replace' => '\\1 E062',
- ),
- 66 =>
- array (
- 'match' => '((E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E)) E040',
- 'replace' => '\\1 E063',
- ),
- 67 =>
- array (
- 'match' => '((E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E)) E041',
- 'replace' => '\\1 E064',
- ),
- 68 =>
- array (
- 'match' => '((E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E)) E042',
- 'replace' => '\\1 E065',
- ),
- 69 =>
- array (
- 'match' => '((E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E)) E043',
- 'replace' => '\\1 E066',
- ),
- 70 =>
- array (
- 'match' => '((E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E)) E044',
- 'replace' => '\\1 E067',
- ),
- 71 =>
- array (
- 'match' => '((E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E)) E045',
- 'replace' => '\\1 E068',
- ),
- 72 =>
- array (
- 'match' => '((E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E)) E046',
- 'replace' => '\\1 E069',
- ),
- 73 =>
- array (
- 'match' => '((E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E)) E047',
- 'replace' => '\\1 E06A',
- ),
- 74 =>
- array (
- 'match' => '((E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E)) E048',
- 'replace' => '\\1 E06B',
- ),
- 75 =>
- array (
- 'match' => '((E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E)) E049',
- 'replace' => '\\1 E06C',
- ),
- 76 =>
- array (
- 'match' => '((E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E)) E04A',
- 'replace' => '\\1 E06D',
- ),
- 77 =>
- array (
- 'match' => '((E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E)) E04B',
- 'replace' => '\\1 E06E',
- ),
- 78 =>
- array (
- 'match' => '((E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E)) E04C',
- 'replace' => '\\1 E06F',
- ),
- 79 =>
- array (
- 'match' => '((E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E)) E04D',
- 'replace' => '\\1 E070',
- ),
- 80 =>
- array (
- 'match' => '((E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E)) E04E',
- 'replace' => '\\1 E071',
- ),
- 81 =>
- array (
- 'match' => '((E04F|E050|E051|E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071)) E02C',
- 'replace' => '\\1 E072',
- ),
- 82 =>
- array (
- 'match' => '((E04F|E050|E051|E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071)) E03F',
- 'replace' => '\\1 E073',
- ),
- 83 =>
- array (
- 'match' => '((E04F|E050|E051|E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071)) E044',
- 'replace' => '\\1 E074',
- ),
- 84 =>
- array (
- 'match' => '((E04F|E050|E051|E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071)) E045',
- 'replace' => '\\1 E075',
- ),
- 85 =>
- array (
- 'match' => '((E04F|E050|E051|E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071)) E04A',
- 'replace' => '\\1 E076',
- ),
- 86 =>
- array (
- 'match' => '((E04F|E050|E051|E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071)) E046',
- 'replace' => '\\1 E077',
- ),
- 87 =>
- array (
- 'match' => '00C9',
- 'replace' => '0C4D',
- ),
- 88 =>
- array (
- 'match' => '00D0',
- 'replace' => '0C4D',
- ),
- 89 =>
- array (
- 'match' => '00D1',
- 'replace' => '0C4D',
- ),
- 90 =>
- array (
- 'match' => '0C2A ((0C3E|0C4A|0C4B|0C4C))',
- 'replace' => 'E028 \\1',
- ),
- 91 =>
- array (
- 'match' => '0C2B ((0C3E|0C4A|0C4B|0C4C))',
- 'replace' => 'E029 \\1',
- ),
- 92 =>
- array (
- 'match' => '0C37 ((0C3E|0C4A|0C4B|0C4C))',
- 'replace' => 'E02A \\1',
- ),
- 93 =>
- array (
- 'match' => '0C38 ((0C3E|0C4A|0C4B|0C4C))',
- 'replace' => 'E02B \\1',
- ),
- 94 =>
- array (
- 'match' => 'E07B ((0C3E|0C4A|0C4B|0C4C))',
- 'replace' => 'E0B2 \\1',
- ),
- 95 =>
- array (
- 'match' => '((E028|E029|E02A|E02B)) 0C4A',
- 'replace' => '\\1 E009',
- ),
- 96 =>
- array (
- 'match' => '((E028|E029|E02A|E02B)) 0C4B',
- 'replace' => '\\1 E00A',
- ),
- 97 =>
- array (
- 'match' => '((E028|E029|E02A|E02B)) 0C4C',
- 'replace' => '\\1 E00B',
- ),
- 98 =>
- array (
- 'match' => '0C15 0C41',
- 'replace' => 'E07F',
- ),
- 99 =>
- array (
- 'match' => '0C15 0C42',
- 'replace' => 'E080',
- ),
- 100 =>
- array (
- 'match' => '0C16 0C3F',
- 'replace' => 'E081',
- ),
- 101 =>
- array (
- 'match' => '0C16 0C40',
- 'replace' => 'E082',
- ),
- 102 =>
- array (
- 'match' => '0C18 0C4A',
- 'replace' => 'E083',
- ),
- 103 =>
- array (
- 'match' => '0C18 0C4B',
- 'replace' => 'E084',
- ),
- 104 =>
- array (
- 'match' => '0C19 0C41',
- 'replace' => 'E085',
- ),
- 105 =>
- array (
- 'match' => '0C19 0C42',
- 'replace' => 'E086',
- ),
- 106 =>
- array (
- 'match' => '0C1A 0C3F',
- 'replace' => 'E087',
- ),
- 107 =>
- array (
- 'match' => '0C1A 0C40',
- 'replace' => 'E088',
- ),
- 108 =>
- array (
- 'match' => '0C1B 0C3F',
- 'replace' => 'E089',
- ),
- 109 =>
- array (
- 'match' => '0C1B 0C40',
- 'replace' => 'E08A',
- ),
- 110 =>
- array (
- 'match' => '0C1C 0C3F',
- 'replace' => 'E08B',
- ),
- 111 =>
- array (
- 'match' => '0C1C 0C40',
- 'replace' => 'E08C',
- ),
- 112 =>
- array (
- 'match' => '0C1C 0C41',
- 'replace' => 'E08D',
- ),
- 113 =>
- array (
- 'match' => '0C1C 0C42',
- 'replace' => 'E08E',
- ),
- 114 =>
- array (
- 'match' => '0C1D 0C4A',
- 'replace' => 'E08F',
- ),
- 115 =>
- array (
- 'match' => '0C1D 0C4B',
- 'replace' => 'E090',
- ),
- 116 =>
- array (
- 'match' => '0C24 0C3F',
- 'replace' => 'E091',
- ),
- 117 =>
- array (
- 'match' => '0C24 0C40',
- 'replace' => 'E092',
- ),
- 118 =>
- array (
- 'match' => '0C28 0C3F',
- 'replace' => 'E093',
- ),
- 119 =>
- array (
- 'match' => '0C28 0C40',
- 'replace' => 'E094',
- ),
- 120 =>
- array (
- 'match' => '0C2C 0C3F',
- 'replace' => 'E095',
- ),
- 121 =>
- array (
- 'match' => '0C2C 0C40',
- 'replace' => 'E096',
- ),
- 122 =>
- array (
- 'match' => '0C2D 0C3F',
- 'replace' => 'E097',
- ),
- 123 =>
- array (
- 'match' => '0C2D 0C40',
- 'replace' => 'E098',
- ),
- 124 =>
- array (
- 'match' => '0C2E 0C3F',
- 'replace' => 'E099',
- ),
- 125 =>
- array (
- 'match' => '0C2E 0C40',
- 'replace' => 'E09A',
- ),
- 126 =>
- array (
- 'match' => '0C2E 0C4A',
- 'replace' => 'E09B',
- ),
- 127 =>
- array (
- 'match' => '0C2E 0C4B',
- 'replace' => 'E09C',
- ),
- 128 =>
- array (
- 'match' => '0C2F 0C3F',
- 'replace' => 'E09D',
- ),
- 129 =>
- array (
- 'match' => '0C2F 0C40',
- 'replace' => 'E09E',
- ),
- 130 =>
- array (
- 'match' => '0C2F 0C4A',
- 'replace' => 'E09F',
- ),
- 131 =>
- array (
- 'match' => '0C2F 0C4B',
- 'replace' => 'E0A0',
- ),
- 132 =>
- array (
- 'match' => '0C32 0C3F',
- 'replace' => 'E0A1',
- ),
- 133 =>
- array (
- 'match' => '0C32 0C40',
- 'replace' => 'E0A2',
- ),
- 134 =>
- array (
- 'match' => '0C33 0C3F',
- 'replace' => 'E0A3',
- ),
- 135 =>
- array (
- 'match' => '0C33 0C40',
- 'replace' => 'E0A4',
- ),
- 136 =>
- array (
- 'match' => '0C35 0C3F',
- 'replace' => 'E0A5',
- ),
- 137 =>
- array (
- 'match' => '0C35 0C40',
- 'replace' => 'E0A6',
- ),
- 138 =>
- array (
- 'match' => '0C36 0C41',
- 'replace' => 'E0A7',
- ),
- 139 =>
- array (
- 'match' => '0C36 0C42',
- 'replace' => 'E0A8',
- ),
- 140 =>
- array (
- 'match' => '0C36 0C3F',
- 'replace' => 'E0A9',
- ),
- 141 =>
- array (
- 'match' => '0C36 0C40',
- 'replace' => 'E0AA',
- ),
- 142 =>
- array (
- 'match' => '0C39 0C3E',
- 'replace' => 'E0AB',
- ),
- 143 =>
- array (
- 'match' => '0C39 0C41',
- 'replace' => 'E0AC',
- ),
- 144 =>
- array (
- 'match' => '0C39 0C42',
- 'replace' => 'E0AD',
- ),
- 145 =>
- array (
- 'match' => 'E078 0C41',
- 'replace' => 'E0AE',
- ),
- 146 =>
- array (
- 'match' => 'E078 0C42',
- 'replace' => 'E0AF',
- ),
- 147 =>
- array (
- 'match' => 'E07A 0C48',
- 'replace' => 'E0B0',
- ),
- 148 =>
- array (
- 'match' => 'E07B 0C48',
- 'replace' => 'E0B1',
- ),
- 149 =>
- array (
- 'match' => 'E07A 0C3F',
- 'replace' => 'E0DA',
- ),
- 150 =>
- array (
- 'match' => 'E07A 0C40',
- 'replace' => 'E0DB',
- ),
- 151 =>
- array (
- 'match' => 'E07B 0C3F',
- 'replace' => 'E0DC',
- ),
- 152 =>
- array (
- 'match' => 'E07B 0C40',
- 'replace' => 'E0DD',
- ),
- 153 =>
- array (
- 'match' => '0C15 ((0C3E|0C3F|0C40|0C46|0C47|0C56|0C4A|0C4B|0C4C))',
- 'replace' => 'E00D \\1',
- ),
- 154 =>
- array (
- 'match' => '0C17 ((0C3E|0C3F|0C40|0C46|0C47|0C56|0C4A|0C4B|0C4C))',
- 'replace' => 'E00E \\1',
- ),
- 155 =>
- array (
- 'match' => '0C18 ((0C3E|0C3F|0C40|0C46|0C47|0C56|0C4A|0C4B|0C4C))',
- 'replace' => 'E00F \\1',
- ),
- 156 =>
- array (
- 'match' => '0C1A ((0C3E|0C3F|0C40|0C46|0C47|0C56|0C4A|0C4B|0C4C))',
- 'replace' => 'E010 \\1',
- ),
- 157 =>
- array (
- 'match' => '0C1B ((0C3E|0C3F|0C40|0C46|0C47|0C56|0C4A|0C4B|0C4C))',
- 'replace' => 'E011 \\1',
- ),
- 158 =>
- array (
- 'match' => '0C1C ((0C3E|0C3F|0C40|0C46|0C47|0C56|0C4A|0C4B|0C4C))',
- 'replace' => 'E012 \\1',
- ),
- 159 =>
- array (
- 'match' => '0C1D ((0C3E|0C3F|0C40|0C46|0C47|0C56|0C4A|0C4B|0C4C))',
- 'replace' => 'E013 \\1',
- ),
- 160 =>
- array (
- 'match' => '0C20 ((0C3E|0C3F|0C40|0C46|0C47|0C56|0C4A|0C4B|0C4C))',
- 'replace' => 'E014 \\1',
- ),
- 161 =>
- array (
- 'match' => '0C21 ((0C3E|0C3F|0C40|0C46|0C47|0C56|0C4A|0C4B|0C4C))',
- 'replace' => 'E015 \\1',
- ),
- 162 =>
- array (
- 'match' => '0C22 ((0C3E|0C3F|0C40|0C46|0C47|0C56|0C4A|0C4B|0C4C))',
- 'replace' => 'E016 \\1',
- ),
- 163 =>
- array (
- 'match' => '0C24 ((0C3E|0C3F|0C40|0C46|0C47|0C56|0C4A|0C4B|0C4C))',
- 'replace' => 'E017 \\1',
- ),
- 164 =>
- array (
- 'match' => '0C25 ((0C3E|0C3F|0C40|0C46|0C47|0C56|0C4A|0C4B|0C4C))',
- 'replace' => 'E018 \\1',
- ),
- 165 =>
- array (
- 'match' => '0C26 ((0C3E|0C3F|0C40|0C46|0C47|0C56|0C4A|0C4B|0C4C))',
- 'replace' => 'E019 \\1',
- ),
- 166 =>
- array (
- 'match' => '0C27 ((0C3E|0C3F|0C40|0C46|0C47|0C56|0C4A|0C4B|0C4C))',
- 'replace' => 'E01A \\1',
- ),
- 167 =>
- array (
- 'match' => '0C28 ((0C3E|0C3F|0C40|0C46|0C47|0C56|0C4A|0C4B|0C4C))',
- 'replace' => 'E01B \\1',
- ),
- 168 =>
- array (
- 'match' => '0C2A ((0C3E|0C3F|0C40|0C46|0C47|0C56|0C4A|0C4B|0C4C))',
- 'replace' => 'E01C \\1',
- ),
- 169 =>
- array (
- 'match' => '0C2B ((0C3E|0C3F|0C40|0C46|0C47|0C56|0C4A|0C4B|0C4C))',
- 'replace' => 'E01D \\1',
- ),
- 170 =>
- array (
- 'match' => '0C2D ((0C3E|0C3F|0C40|0C46|0C47|0C56|0C4A|0C4B|0C4C))',
- 'replace' => 'E01E \\1',
- ),
- 171 =>
- array (
- 'match' => '0C2E ((0C3E|0C3F|0C40|0C46|0C47|0C56|0C4A|0C4B|0C4C))',
- 'replace' => 'E01F \\1',
- ),
- 172 =>
- array (
- 'match' => '0C2F ((0C3E|0C3F|0C40|0C46|0C47|0C56|0C4A|0C4B|0C4C))',
- 'replace' => 'E020 \\1',
- ),
- 173 =>
- array (
- 'match' => '0C30 ((0C3E|0C3F|0C40|0C46|0C47|0C56|0C4A|0C4B|0C4C))',
- 'replace' => 'E021 \\1',
- ),
- 174 =>
- array (
- 'match' => '0C33 ((0C3E|0C3F|0C40|0C46|0C47|0C56|0C4A|0C4B|0C4C))',
- 'replace' => 'E022 \\1',
- ),
- 175 =>
- array (
- 'match' => '0C35 ((0C3E|0C3F|0C40|0C46|0C47|0C56|0C4A|0C4B|0C4C))',
- 'replace' => 'E023 \\1',
- ),
- 176 =>
- array (
- 'match' => '0C36 ((0C3E|0C3F|0C40|0C46|0C47|0C56|0C4A|0C4B|0C4C))',
- 'replace' => 'E024 \\1',
- ),
- 177 =>
- array (
- 'match' => '0C37 ((0C3E|0C3F|0C40|0C46|0C47|0C56|0C4A|0C4B|0C4C))',
- 'replace' => 'E025 \\1',
- ),
- 178 =>
- array (
- 'match' => '0C38 ((0C3E|0C3F|0C40|0C46|0C47|0C56|0C4A|0C4B|0C4C))',
- 'replace' => 'E026 \\1',
- ),
- 179 =>
- array (
- 'match' => '0C39 ((0C3E|0C3F|0C40|0C46|0C47|0C56|0C4A|0C4B|0C4C))',
- 'replace' => 'E027 \\1',
- ),
- 180 =>
- array (
- 'match' => 'E078 ((0C3E|0C3F|0C40|0C46|0C47|0C56|0C4A|0C4B|0C4C))',
- 'replace' => 'E07C \\1',
- ),
- 181 =>
- array (
- 'match' => 'E07A ((0C3E|0C3F|0C40|0C46|0C47|0C56|0C4A|0C4B|0C4C))',
- 'replace' => 'E07D \\1',
- ),
- 182 =>
- array (
- 'match' => 'E07B ((0C3E|0C3F|0C40|0C46|0C47|0C56|0C4A|0C4B|0C4C))',
- 'replace' => 'E07E \\1',
- ),
- 183 =>
- array (
- 'match' => '0C15 (0C3E)',
- 'replace' => 'E00D \\1',
- ),
- 184 =>
- array (
- 'match' => '0C17 (0C3E)',
- 'replace' => 'E00E \\1',
- ),
- 185 =>
- array (
- 'match' => '0C18 (0C3E)',
- 'replace' => 'E00F \\1',
- ),
- 186 =>
- array (
- 'match' => '0C1A (0C3E)',
- 'replace' => 'E010 \\1',
- ),
- 187 =>
- array (
- 'match' => '0C1B (0C3E)',
- 'replace' => 'E011 \\1',
- ),
- 188 =>
- array (
- 'match' => '0C1C (0C3E)',
- 'replace' => 'E012 \\1',
- ),
- 189 =>
- array (
- 'match' => '0C1D (0C3E)',
- 'replace' => 'E013 \\1',
- ),
- 190 =>
- array (
- 'match' => '0C20 (0C3E)',
- 'replace' => 'E014 \\1',
- ),
- 191 =>
- array (
- 'match' => '0C21 (0C3E)',
- 'replace' => 'E015 \\1',
- ),
- 192 =>
- array (
- 'match' => '0C22 (0C3E)',
- 'replace' => 'E016 \\1',
- ),
- 193 =>
- array (
- 'match' => '0C24 (0C3E)',
- 'replace' => 'E017 \\1',
- ),
- 194 =>
- array (
- 'match' => '0C25 (0C3E)',
- 'replace' => 'E018 \\1',
- ),
- 195 =>
- array (
- 'match' => '0C26 (0C3E)',
- 'replace' => 'E019 \\1',
- ),
- 196 =>
- array (
- 'match' => '0C27 (0C3E)',
- 'replace' => 'E01A \\1',
- ),
- 197 =>
- array (
- 'match' => '0C28 (0C3E)',
- 'replace' => 'E01B \\1',
- ),
- 198 =>
- array (
- 'match' => '0C2A (0C3E)',
- 'replace' => 'E01C \\1',
- ),
- 199 =>
- array (
- 'match' => '0C2B (0C3E)',
- 'replace' => 'E01D \\1',
- ),
- 200 =>
- array (
- 'match' => '0C2D (0C3E)',
- 'replace' => 'E01E \\1',
- ),
- 201 =>
- array (
- 'match' => '0C2E (0C3E)',
- 'replace' => 'E01F \\1',
- ),
- 202 =>
- array (
- 'match' => '0C2F (0C3E)',
- 'replace' => 'E020 \\1',
- ),
- 203 =>
- array (
- 'match' => '0C30 (0C3E)',
- 'replace' => 'E021 \\1',
- ),
- 204 =>
- array (
- 'match' => '0C33 (0C3E)',
- 'replace' => 'E022 \\1',
- ),
- 205 =>
- array (
- 'match' => '0C35 (0C3E)',
- 'replace' => 'E023 \\1',
- ),
- 206 =>
- array (
- 'match' => '0C36 (0C3E)',
- 'replace' => 'E024 \\1',
- ),
- 207 =>
- array (
- 'match' => '0C37 (0C3E)',
- 'replace' => 'E025 \\1',
- ),
- 208 =>
- array (
- 'match' => '0C38 (0C3E)',
- 'replace' => 'E026 \\1',
- ),
- 209 =>
- array (
- 'match' => '0C39 (0C3E)',
- 'replace' => 'E027 \\1',
- ),
- 210 =>
- array (
- 'match' => 'E078 (0C3E)',
- 'replace' => 'E07C \\1',
- ),
- 211 =>
- array (
- 'match' => 'E07A (0C3E)',
- 'replace' => 'E07D \\1',
- ),
- 212 =>
- array (
- 'match' => 'E07B (0C3E)',
- 'replace' => 'E07E \\1',
- ),
- 213 =>
- array (
- 'match' => '0C15 (0C4C)',
- 'replace' => 'E00D \\1',
- ),
- 214 =>
- array (
- 'match' => '0C17 (0C4C)',
- 'replace' => 'E00E \\1',
- ),
- 215 =>
- array (
- 'match' => '0C18 (0C4C)',
- 'replace' => 'E00F \\1',
- ),
- 216 =>
- array (
- 'match' => '0C1A (0C4C)',
- 'replace' => 'E010 \\1',
- ),
- 217 =>
- array (
- 'match' => '0C1B (0C4C)',
- 'replace' => 'E011 \\1',
- ),
- 218 =>
- array (
- 'match' => '0C1C (0C4C)',
- 'replace' => 'E012 \\1',
- ),
- 219 =>
- array (
- 'match' => '0C1D (0C4C)',
- 'replace' => 'E013 \\1',
- ),
- 220 =>
- array (
- 'match' => '0C20 (0C4C)',
- 'replace' => 'E014 \\1',
- ),
- 221 =>
- array (
- 'match' => '0C21 (0C4C)',
- 'replace' => 'E015 \\1',
- ),
- 222 =>
- array (
- 'match' => '0C22 (0C4C)',
- 'replace' => 'E016 \\1',
- ),
- 223 =>
- array (
- 'match' => '0C24 (0C4C)',
- 'replace' => 'E017 \\1',
- ),
- 224 =>
- array (
- 'match' => '0C25 (0C4C)',
- 'replace' => 'E018 \\1',
- ),
- 225 =>
- array (
- 'match' => '0C26 (0C4C)',
- 'replace' => 'E019 \\1',
- ),
- 226 =>
- array (
- 'match' => '0C27 (0C4C)',
- 'replace' => 'E01A \\1',
- ),
- 227 =>
- array (
- 'match' => '0C28 (0C4C)',
- 'replace' => 'E01B \\1',
- ),
- 228 =>
- array (
- 'match' => '0C2A (0C4C)',
- 'replace' => 'E01C \\1',
- ),
- 229 =>
- array (
- 'match' => '0C2B (0C4C)',
- 'replace' => 'E01D \\1',
- ),
- 230 =>
- array (
- 'match' => '0C2D (0C4C)',
- 'replace' => 'E01E \\1',
- ),
- 231 =>
- array (
- 'match' => '0C2E (0C4C)',
- 'replace' => 'E01F \\1',
- ),
- 232 =>
- array (
- 'match' => '0C2F (0C4C)',
- 'replace' => 'E020 \\1',
- ),
- 233 =>
- array (
- 'match' => '0C30 (0C4C)',
- 'replace' => 'E021 \\1',
- ),
- 234 =>
- array (
- 'match' => '0C33 (0C4C)',
- 'replace' => 'E022 \\1',
- ),
- 235 =>
- array (
- 'match' => '0C35 (0C4C)',
- 'replace' => 'E023 \\1',
- ),
- 236 =>
- array (
- 'match' => '0C36 (0C4C)',
- 'replace' => 'E024 \\1',
- ),
- 237 =>
- array (
- 'match' => '0C37 (0C4C)',
- 'replace' => 'E025 \\1',
- ),
- 238 =>
- array (
- 'match' => '0C38 (0C4C)',
- 'replace' => 'E026 \\1',
- ),
- 239 =>
- array (
- 'match' => '0C39 (0C4C)',
- 'replace' => 'E027 \\1',
- ),
- 240 =>
- array (
- 'match' => 'E078 (0C4C)',
- 'replace' => 'E07C \\1',
- ),
- 241 =>
- array (
- 'match' => 'E07A (0C4C)',
- 'replace' => 'E07D \\1',
- ),
- 242 =>
- array (
- 'match' => 'E07B (0C4C)',
- 'replace' => 'E07E \\1',
- ),
- 243 =>
- array (
- 'match' => '0C15 (0C4D)',
- 'replace' => 'E00D \\1',
- ),
- 244 =>
- array (
- 'match' => '0C17 (0C4D)',
- 'replace' => 'E00E \\1',
- ),
- 245 =>
- array (
- 'match' => '0C18 (0C4D)',
- 'replace' => 'E00F \\1',
- ),
- 246 =>
- array (
- 'match' => '0C1A (0C4D)',
- 'replace' => 'E010 \\1',
- ),
- 247 =>
- array (
- 'match' => '0C1B (0C4D)',
- 'replace' => 'E011 \\1',
- ),
- 248 =>
- array (
- 'match' => '0C1C (0C4D)',
- 'replace' => 'E012 \\1',
- ),
- 249 =>
- array (
- 'match' => '0C1D (0C4D)',
- 'replace' => 'E013 \\1',
- ),
- 250 =>
- array (
- 'match' => '0C20 (0C4D)',
- 'replace' => 'E014 \\1',
- ),
- 251 =>
- array (
- 'match' => '0C21 (0C4D)',
- 'replace' => 'E015 \\1',
- ),
- 252 =>
- array (
- 'match' => '0C22 (0C4D)',
- 'replace' => 'E016 \\1',
- ),
- 253 =>
- array (
- 'match' => '0C24 (0C4D)',
- 'replace' => 'E017 \\1',
- ),
- 254 =>
- array (
- 'match' => '0C25 (0C4D)',
- 'replace' => 'E018 \\1',
- ),
- 255 =>
- array (
- 'match' => '0C26 (0C4D)',
- 'replace' => 'E019 \\1',
- ),
- 256 =>
- array (
- 'match' => '0C27 (0C4D)',
- 'replace' => 'E01A \\1',
- ),
- 257 =>
- array (
- 'match' => '0C28 (0C4D)',
- 'replace' => 'E01B \\1',
- ),
- 258 =>
- array (
- 'match' => '0C2A (0C4D)',
- 'replace' => 'E01C \\1',
- ),
- 259 =>
- array (
- 'match' => '0C2B (0C4D)',
- 'replace' => 'E01D \\1',
- ),
- 260 =>
- array (
- 'match' => '0C2D (0C4D)',
- 'replace' => 'E01E \\1',
- ),
- 261 =>
- array (
- 'match' => '0C2E (0C4D)',
- 'replace' => 'E01F \\1',
- ),
- 262 =>
- array (
- 'match' => '0C2F (0C4D)',
- 'replace' => 'E020 \\1',
- ),
- 263 =>
- array (
- 'match' => '0C30 (0C4D)',
- 'replace' => 'E021 \\1',
- ),
- 264 =>
- array (
- 'match' => '0C33 (0C4D)',
- 'replace' => 'E022 \\1',
- ),
- 265 =>
- array (
- 'match' => '0C35 (0C4D)',
- 'replace' => 'E023 \\1',
- ),
- 266 =>
- array (
- 'match' => '0C36 (0C4D)',
- 'replace' => 'E024 \\1',
- ),
- 267 =>
- array (
- 'match' => '0C37 (0C4D)',
- 'replace' => 'E025 \\1',
- ),
- 268 =>
- array (
- 'match' => '0C38 (0C4D)',
- 'replace' => 'E026 \\1',
- ),
- 269 =>
- array (
- 'match' => '0C39 (0C4D)',
- 'replace' => 'E027 \\1',
- ),
- 270 =>
- array (
- 'match' => 'E078 (0C4D)',
- 'replace' => 'E07C \\1',
- ),
- 271 =>
- array (
- 'match' => 'E07A (0C4D)',
- 'replace' => 'E07D \\1',
- ),
- 272 =>
- array (
- 'match' => 'E07B (0C4D)',
- 'replace' => 'E07E \\1',
- ),
- 273 =>
- array (
- 'match' => 'E00F (0C3E)',
- 'replace' => '0C18 \\1',
- ),
- 274 =>
- array (
- 'match' => 'E013 (0C3E)',
- 'replace' => '0C1D \\1',
- ),
- 275 =>
- array (
- 'match' => 'E01F (0C3E)',
- 'replace' => '0C2E \\1',
- ),
- 276 =>
- array (
- 'match' => 'E020 (0C3E)',
- 'replace' => '0C2F \\1',
- ),
- 277 =>
- array (
- 'match' => 'E027 (0C3E)',
- 'replace' => '0C39 \\1',
- ),
- 278 =>
- array (
- 'match' => 'E00F (0C4C)',
- 'replace' => '0C18 \\1',
- ),
- 279 =>
- array (
- 'match' => 'E013 (0C4C)',
- 'replace' => '0C1D \\1',
- ),
- 280 =>
- array (
- 'match' => 'E01F (0C4C)',
- 'replace' => '0C2E \\1',
- ),
- 281 =>
- array (
- 'match' => 'E020 (0C4C)',
- 'replace' => '0C2F \\1',
- ),
- 282 =>
- array (
- 'match' => 'E027 (0C4C)',
- 'replace' => '0C39 \\1',
- ),
- 283 =>
- array (
- 'match' => '((E00F|0C1F|E01C|E01D|E025|E026|E027)) 0C46',
- 'replace' => '\\1 E007',
- ),
- 284 =>
- array (
- 'match' => '((E00F|0C1F|E01C|E01D|E025|E026|E027)) 0C47',
- 'replace' => '\\1 E008',
- ),
- 285 =>
- array (
- 'match' => '((0C16|0C18|0C1F|0C2C|E01E|0C2E|0C2F|0C32|0C1D)) 0C3E',
- 'replace' => '\\1 E002',
- ),
- 286 =>
- array (
- 'match' => '((0C19|0C1C)) 0C3E',
- 'replace' => '\\1 E003',
- ),
- 287 =>
- array (
- 'match' => '((0C1E|E022)) 0C3E',
- 'replace' => '\\1 E004',
- ),
- 288 =>
- array (
- 'match' => '((E02C|E02D|E02E|E02F|E030|E031|E032|E033|E034|E035|E036|E037|E038|E039|E03A|E03B|E03C|E03D|E03E|E03F|E040|E041|E042|E043|E044|E045|E046|E047|E048|E049|E04A|E04B|E04C|E04D|E04E)) 0C56',
- 'replace' => '\\1 E00C',
- ),
- 289 =>
- array (
- 'match' => '((E04F|E050|E051|E052|E053|E054|E055|E056|E057|E058|E059|E05A|E05B|E05C|E05D|E05E|E05F|E060|E061|E062|E063|E064|E065|E066|E067|E068|E069|E06A|E06B|E06C|E06D|E06E|E06F|E070|E071)) 0C56',
- 'replace' => '\\1 E00C',
- ),
- 290 =>
- array (
- 'match' => '(0C33) 0C41',
- 'replace' => '\\1 E005',
- ),
- 291 =>
- array (
- 'match' => '(0C33) 0C42',
- 'replace' => '\\1 E0DE',
- ),
- 292 =>
- array (
- 'match' => '((0C2A|0C2B|0C35)) 0C41',
- 'replace' => '\\1 E006',
- ),
- 293 =>
- array (
- 'match' => '((0C2A|0C2B|0C35)) 0C42',
- 'replace' => '\\1 E0DF',
- ),
- 294 =>
- array (
- 'match' => 'E046 (E07C 0C46 0C56)',
- 'replace' => 'E077 \\1',
- ),
- 295 =>
- array (
- 'match' => 'E046 ((0C15|E00D|0C16|0C17|E00E|0C18|E00F|0C19|0C1A|E010|0C1B|E011|0C1C|E012|0C1D|E013|0C1E|0C1F|0C20|E014|0C21|E015|0C22|E016|0C23|0C24|E017|0C25|E018|0C26|E019|0C27|E01A|0C28|E01B|0C2A|E01C|0C2B|E01D|0C2C|0C2D|E01E|0C2E|E01F|0C2F|E020|0C30|E021|0C32|0C33|E022|0C35|E023|0C36|E024|0C37|E025|0C38|E026|0C39|E027|E078|E07C|E079) 0C46 0C56)',
- 'replace' => 'E069 \\1',
- ),
- 296 =>
- array (
- 'match' => '0C4D',
- 'replace' => 'E0E0',
- ),
-);
-?>
\ No newline at end of file
diff --git a/public/mpdf/includes/no_image.jpg b/public/mpdf/includes/no_image.jpg
deleted file mode 100644
index a690485..0000000
Binary files a/public/mpdf/includes/no_image.jpg and /dev/null differ
diff --git a/public/mpdf/includes/out.php b/public/mpdf/includes/out.php
deleted file mode 100644
index 9d742a8..0000000
--- a/public/mpdf/includes/out.php
+++ /dev/null
@@ -1,58 +0,0 @@
-Error('Some data has already been output to browser, can\'t send PDF file');
- header('Content-Transfer-Encoding: binary');
- header('Cache-Control: public, must-revalidate, max-age=0');
- header('Pragma: public');
- header('Expires: Sat, 26 Jul 1997 05:00:00 GMT');
- header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT');
- header('Content-Type: application/force-download');
- header('Content-Type: application/octet-stream', false);
- header('Content-Type: application/download', false);
- header('Content-Type: application/pdf', false);
- header('Content-disposition: attachment; filename="'.$name.'"');
- }
- $filesize = filesize($path.$tempfilename);
- if (!isset($_SERVER['HTTP_ACCEPT_ENCODING']) OR empty($_SERVER['HTTP_ACCEPT_ENCODING'])) {
- // don't use length if server using compression
- header('Content-Length: '.$filesize);
- }
- $fd=fopen($path.$tempfilename,'rb'); // mPDF 5.3.85
- fpassthru($fd);
- fclose($fd);
- unlink($path.$tempfilename);
- // ====================== DELETE OLD FILES - Housekeeping =========================================
- // Clear any files in directory that are >24 hrs old
- $interval = 86400;
- if ($handle = opendir(dirname($path.'dummy'))) {
- while (false !== ($file = readdir($handle))) {
- if (((filemtime($path.$file)+$interval) < time()) && ($file != "..") && ($file != ".") && substr($file, -3)=='pdf') {
- unlink($path.$file);
- }
- }
- closedir($handle);
- }
- exit;
- }
-?>
\ No newline at end of file
diff --git a/public/mpdf/includes/subs_core.php b/public/mpdf/includes/subs_core.php
deleted file mode 100644
index 326a3f4..0000000
--- a/public/mpdf/includes/subs_core.php
+++ /dev/null
@@ -1,454 +0,0 @@
- 160,
-161 => 161,
-162 => 162,
-163 => 163,
-164 => 164,
-165 => 165,
-166 => 166,
-167 => 167,
-168 => 168,
-169 => 169,
-170 => 170,
-171 => 171,
-172 => 172,
-173 => 173,
-174 => 174,
-175 => 175,
-176 => 176,
-177 => 177,
-178 => 178,
-179 => 179,
-180 => 180,
-181 => 181,
-182 => 182,
-183 => 183,
-184 => 184,
-185 => 185,
-186 => 186,
-187 => 187,
-188 => 188,
-189 => 189,
-190 => 190,
-191 => 191,
-192 => 192,
-193 => 193,
-194 => 194,
-195 => 195,
-196 => 196,
-197 => 197,
-198 => 198,
-199 => 199,
-200 => 200,
-201 => 201,
-202 => 202,
-203 => 203,
-204 => 204,
-205 => 205,
-206 => 206,
-207 => 207,
-208 => 208,
-209 => 209,
-210 => 210,
-211 => 211,
-212 => 212,
-213 => 213,
-214 => 214,
-215 => 215,
-216 => 216,
-217 => 217,
-218 => 218,
-219 => 219,
-220 => 220,
-221 => 221,
-222 => 222,
-223 => 223,
-224 => 224,
-225 => 225,
-226 => 226,
-227 => 227,
-228 => 228,
-229 => 229,
-230 => 230,
-231 => 231,
-232 => 232,
-233 => 233,
-234 => 234,
-235 => 235,
-236 => 236,
-237 => 237,
-238 => 238,
-239 => 239,
-240 => 240,
-241 => 241,
-242 => 242,
-243 => 243,
-244 => 244,
-245 => 245,
-246 => 246,
-247 => 247,
-248 => 248,
-249 => 249,
-250 => 250,
-251 => 251,
-252 => 252,
-253 => 253,
-254 => 254,
-255 => 255,
-338 => 140,
-339 => 156,
-352 => 138,
-353 => 154,
-376 => 159,
-381 => 142,
-382 => 158,
-402 => 131,
-710 => 136,
-732 => 152,
-8211 => 150,
-8212 => 151,
-8216 => 145,
-8217 => 146,
-8218 => 130,
-8220 => 147,
-8221 => 148,
-8222 => 132,
-8224 => 134,
-8225 => 135,
-8226 => 149,
-8230 => 133,
-8240 => 137,
-8249 => 139,
-8250 => 155,
-8364 => 128,
-8482 => 153
-);
-
-$zarr = array(
-8594 => 213,
-8596 => 214,
-8597 => 215,
-9312 => 172,
-9313 => 173,
-9314 => 174,
-9315 => 175,
-9316 => 176,
-9317 => 177,
-9318 => 178,
-9319 => 179,
-9320 => 180,
-9321 => 181,
-9632 => 110,
-9650 => 115,
-9660 => 116,
-9670 => 117,
-9679 => 108,
-9687 => 119,
-9733 => 72,
-9742 => 37,
-9755 => 42,
-9758 => 43,
-9824 => 171,
-9827 => 168,
-9829 => 170,
-9830 => 169,
-9985 => 33,
-9986 => 34,
-9987 => 35,
-9988 => 36,
-9990 => 38,
-9991 => 39,
-9992 => 40,
-9993 => 41,
-9996 => 44,
-9997 => 45,
-9998 => 46,
-9999 => 47,
-10000 => 48,
-10001 => 49,
-10002 => 50,
-10003 => 51,
-10004 => 52,
-10005 => 53,
-10006 => 54,
-10007 => 55,
-10008 => 56,
-10009 => 57,
-10010 => 58,
-10011 => 59,
-10012 => 60,
-10013 => 61,
-10014 => 62,
-10015 => 63,
-10016 => 64,
-10017 => 65,
-10018 => 66,
-10019 => 67,
-10020 => 68,
-10021 => 69,
-10022 => 70,
-10023 => 71,
-10025 => 73,
-10026 => 74,
-10027 => 75,
-10028 => 76,
-10029 => 77,
-10030 => 78,
-10031 => 79,
-10032 => 80,
-10033 => 81,
-10034 => 82,
-10035 => 83,
-10036 => 84,
-10037 => 85,
-10038 => 86,
-10039 => 87,
-10040 => 88,
-10041 => 89,
-10042 => 90,
-10043 => 91,
-10044 => 92,
-10045 => 93,
-10046 => 94,
-10047 => 95,
-10048 => 96,
-10049 => 97,
-10050 => 98,
-10051 => 99,
-10052 => 100,
-10053 => 101,
-10054 => 102,
-10055 => 103,
-10056 => 104,
-10057 => 105,
-10058 => 106,
-10059 => 107,
-10061 => 109,
-10063 => 111,
-10064 => 112,
-10065 => 113,
-10066 => 114,
-10070 => 118,
-10072 => 120,
-10073 => 121,
-10074 => 122,
-10075 => 123,
-10076 => 124,
-10077 => 125,
-10078 => 126,
-10081 => 161,
-10082 => 162,
-10083 => 163,
-10084 => 164,
-10085 => 165,
-10086 => 166,
-10087 => 167,
-10102 => 182,
-10103 => 183,
-10104 => 184,
-10105 => 185,
-10106 => 186,
-10107 => 187,
-10108 => 188,
-10109 => 189,
-10110 => 190,
-10111 => 191,
-10112 => 192,
-10113 => 193,
-10114 => 194,
-10115 => 195,
-10116 => 196,
-10117 => 197,
-10118 => 198,
-10119 => 199,
-10120 => 200,
-10121 => 201,
-10122 => 202,
-10123 => 203,
-10124 => 204,
-10125 => 205,
-10126 => 206,
-10127 => 207,
-10128 => 208,
-10129 => 209,
-10130 => 210,
-10131 => 211,
-10132 => 212,
-10136 => 216,
-10137 => 217,
-10138 => 218,
-10139 => 219,
-10140 => 220,
-10141 => 221,
-10142 => 222,
-10143 => 223,
-10144 => 224,
-10145 => 225,
-10146 => 226,
-10147 => 227,
-10148 => 228,
-10149 => 229,
-10150 => 230,
-10151 => 231,
-10152 => 232,
-10153 => 233,
-10154 => 234,
-10155 => 235,
-10156 => 236,
-10157 => 237,
-10158 => 238,
-10159 => 239,
-10161 => 241,
-10162 => 242,
-10163 => 243,
-10164 => 244,
-10165 => 245,
-10166 => 246,
-10167 => 247,
-10168 => 248,
-10169 => 249,
-10170 => 250,
-10171 => 251,
-10172 => 252,
-10173 => 253,
-10174 => 254
-);
-
-$sarr = array(
-169 => 227,
-172 => 216,
-174 => 226,
-176 => 176,
-177 => 177,
-181 => 109,
-215 => 180,
-247 => 184,
-402 => 166,
-913 => 65,
-914 => 66,
-915 => 71,
-916 => 68,
-917 => 69,
-918 => 90,
-919 => 72,
-920 => 81,
-921 => 73,
-922 => 75,
-923 => 76,
-924 => 77,
-925 => 78,
-926 => 88,
-927 => 79,
-928 => 80,
-929 => 82,
-931 => 83,
-932 => 84,
-933 => 85,
-934 => 70,
-935 => 67,
-936 => 89,
-937 => 87,
-945 => 97,
-946 => 98,
-947 => 103,
-948 => 100,
-949 => 101,
-950 => 122,
-951 => 104,
-952 => 113,
-953 => 105,
-954 => 107,
-955 => 108,
-956 => 109,
-957 => 110,
-958 => 120,
-959 => 111,
-960 => 112,
-961 => 114,
-962 => 86,
-963 => 115,
-964 => 116,
-965 => 117,
-966 => 102,
-967 => 99,
-968 => 121,
-969 => 119,
-977 => 74,
-978 => 161,
-981 => 106,
-982 => 118,
-8226 => 183,
-8230 => 188,
-8242 => 162,
-8243 => 178,
-8260 => 164,
-8465 => 193,
-8472 => 195,
-8476 => 194,
-8482 => 228,
-8486 => 87,
-8501 => 192,
-8592 => 172,
-8593 => 173,
-8594 => 174,
-8595 => 175,
-8596 => 171,
-8629 => 191,
-8656 => 220,
-8657 => 221,
-8658 => 222,
-8659 => 223,
-8660 => 219,
-8704 => 34,
-8706 => 182,
-8707 => 36,
-8709 => 198,
-8710 => 68,
-8711 => 209,
-8712 => 206,
-8713 => 207,
-8715 => 39,
-8719 => 213,
-8721 => 229,
-8722 => 45,
-8725 => 164,
-8727 => 42,
-8730 => 214,
-8733 => 181,
-8734 => 165,
-8736 => 208,
-8743 => 217,
-8744 => 218,
-8745 => 199,
-8746 => 200,
-8747 => 242,
-8756 => 92,
-8764 => 126,
-8773 => 64,
-8776 => 187,
-8800 => 185,
-8801 => 186,
-8804 => 163,
-8805 => 179,
-8834 => 204,
-8835 => 201,
-8836 => 203,
-8838 => 205,
-8839 => 202,
-8853 => 197,
-8855 => 196,
-8869 => 94,
-8901 => 215,
-8992 => 243,
-8993 => 245,
-9001 => 225,
-9002 => 241,
-9674 => 224,
-9824 => 170,
-9827 => 167,
-9829 => 169,
-9830 => 168
-);
-
-?>
\ No newline at end of file
diff --git a/public/mpdf/includes/subs_win-1252.php b/public/mpdf/includes/subs_win-1252.php
deleted file mode 100644
index 6658ff7..0000000
--- a/public/mpdf/includes/subs_win-1252.php
+++ /dev/null
@@ -1,308 +0,0 @@
- '65 ',
- 914 => '66 ',
- 915 => '71 ',
- 916 => '68 ',
- 917 => '69 ',
- 918 => '90 ',
- 919 => '72 ',
- 920 => '81 ',
- 921 => '73 ',
- 922 => '75 ',
- 923 => '76 ',
- 924 => '77 ',
- 925 => '78 ',
- 926 => '88 ',
- 927 => '79 ',
- 928 => '80 ',
- 929 => '82 ',
- 931 => '83 ',
- 932 => '84 ',
- 933 => '85 ',
- 934 => '70 ',
- 935 => '67 ',
- 936 => '89 ',
- 937 => '87 ',
- 945 => '97 ',
- 946 => '98 ',
- 947 => '103 ',
- 948 => '100 ',
- 949 => '101 ',
- 950 => '122 ',
- 951 => '104 ',
- 952 => '113 ',
- 953 => '105 ',
- 954 => '107 ',
- 955 => '108 ',
- 956 => '109 ',
- 957 => '110 ',
- 958 => '120 ',
- 959 => '111 ',
- 960 => '112 ',
- 961 => '114 ',
- 962 => '86 ',
- 963 => '115 ',
- 964 => '116 ',
- 965 => '117 ',
- 966 => '102 ',
- 967 => '99 ',
- 968 => '121 ',
- 969 => '119 ',
- 977 => '74 ',
- 978 => '161 ',
- 981 => '106 ',
- 982 => '118 ',
- 8242 => '162 ',
- 8243 => '178 ',
- 8260 => '164 ',
- 8465 => '193 ',
- 8472 => '195 ',
- 8476 => '194 ',
- 8486 => '87 ',
- 8501 => '192 ',
- 8592 => '172 ',
- 8593 => '173 ',
- 8594 => '174 ',
- 8595 => '175 ',
- 8596 => '171 ',
- 8597 => '215 ',
- 8629 => '191 ',
- 8656 => '220 ',
- 8657 => '221 ',
- 8658 => '222 ',
- 8659 => '223 ',
- 8660 => '219 ',
- 8704 => '34 ',
- 8706 => '182 ',
- 8707 => '36 ',
- 8709 => '198 ',
- 8710 => '68 ',
- 8711 => '209 ',
- 8712 => '206 ',
- 8713 => '207 ',
- 8715 => '39 ',
- 8719 => '213 ',
- 8721 => '229 ',
- 8722 => '45 ',
- 8725 => '164 ',
- 8727 => '42 ',
- 8730 => '214 ',
- 8733 => '181 ',
- 8734 => '165 ',
- 8736 => '208 ',
- 8743 => '217 ',
- 8744 => '218 ',
- 8745 => '199 ',
- 8746 => '200 ',
- 8747 => '242 ',
- 8756 => '92 ',
- 8764 => '126 ',
- 8773 => '64 ',
- 8776 => '187 ',
- 8800 => '185 ',
- 8801 => '186 ',
- 8804 => '163 ',
- 8805 => '179 ',
- 8834 => '204 ',
- 8835 => '201 ',
- 8836 => '203 ',
- 8838 => '205 ',
- 8839 => '202 ',
- 8853 => '197 ',
- 8855 => '196 ',
- 8869 => '94 ',
- 8901 => '215 ',
- 8992 => '243 ',
- 8993 => '245 ',
- 9001 => '225 ',
- 9002 => '241 ',
- 9312 => '172 ',
- 9313 => '173 ',
- 9314 => '174 ',
- 9315 => '175 ',
- 9316 => '176 ',
- 9317 => '177 ',
- 9318 => '178 ',
- 9319 => '179 ',
- 9320 => '180 ',
- 9321 => '181 ',
- 9632 => '110 ',
- 9650 => '115 ',
- 9660 => '116 ',
- 9670 => '117 ',
- 9674 => '224 ',
- 9679 => '108 ',
- 9687 => '119 ',
- 9733 => '72 ',
- 9742 => '37 ',
- 9755 => '42 ',
- 9758 => '43 ',
- 9824 => '170 ',
- 9827 => '167 ',
- 9829 => '169 ',
- 9830 => '168 ',
- 9985 => '33 ',
- 9986 => '34 ',
- 9987 => '35 ',
- 9988 => '36 ',
- 9990 => '38 ',
- 9991 => '39 ',
- 9992 => '40 ',
- 9993 => '41 ',
- 9996 => '44 ',
- 9997 => '45 ',
- 9998 => '46 ',
- 9999 => '47 ',
- 10000 => '48 ',
- 10001 => '49 ',
- 10002 => '50 ',
- 10003 => '51 ',
- 10004 => '52 ',
- 10005 => '53 ',
- 10006 => '54 ',
- 10007 => '55 ',
- 10008 => '56 ',
- 10009 => '57 ',
- 10010 => '58 ',
- 10011 => '59 ',
- 10012 => '60 ',
- 10013 => '61 ',
- 10014 => '62 ',
- 10015 => '63 ',
- 10016 => '64 ',
- 10017 => '65 ',
- 10018 => '66 ',
- 10019 => '67 ',
- 10020 => '68 ',
- 10021 => '69 ',
- 10022 => '70 ',
- 10023 => '71 ',
- 10025 => '73 ',
- 10026 => '74 ',
- 10027 => '75 ',
- 10028 => '76 ',
- 10029 => '77 ',
- 10030 => '78 ',
- 10031 => '79 ',
- 10032 => '80 ',
- 10033 => '81 ',
- 10034 => '82 ',
- 10035 => '83 ',
- 10036 => '84 ',
- 10037 => '85 ',
- 10038 => '86 ',
- 10039 => '87 ',
- 10040 => '88 ',
- 10041 => '89 ',
- 10042 => '90 ',
- 10043 => '91 ',
- 10044 => '92 ',
- 10045 => '93 ',
- 10046 => '94 ',
- 10047 => '95 ',
- 10048 => '96 ',
- 10049 => '97 ',
- 10050 => '98 ',
- 10051 => '99 ',
- 10052 => '100 ',
- 10053 => '101 ',
- 10054 => '102 ',
- 10055 => '103 ',
- 10056 => '104 ',
- 10057 => '105 ',
- 10058 => '106 ',
- 10059 => '107 ',
- 10061 => '109 ',
- 10063 => '111 ',
- 10064 => '112 ',
- 10065 => '113 ',
- 10066 => '114 ',
- 10070 => '118 ',
- 10072 => '120 ',
- 10073 => '121 ',
- 10074 => '122 ',
- 10075 => '123 ',
- 10076 => '124 ',
- 10077 => '125 ',
- 10078 => '126 ',
- 10081 => '161 ',
- 10082 => '162 ',
- 10083 => '163 ',
- 10084 => '164 ',
- 10085 => '165 ',
- 10086 => '166 ',
- 10087 => '167 ',
- 10102 => '182 ',
- 10103 => '183 ',
- 10104 => '184 ',
- 10105 => '185 ',
- 10106 => '186 ',
- 10107 => '187 ',
- 10108 => '188 ',
- 10109 => '189 ',
- 10110 => '190 ',
- 10111 => '191 ',
- 10112 => '192 ',
- 10113 => '193 ',
- 10114 => '194 ',
- 10115 => '195 ',
- 10116 => '196 ',
- 10117 => '197 ',
- 10118 => '198 ',
- 10119 => '199 ',
- 10120 => '200 ',
- 10121 => '201 ',
- 10122 => '202 ',
- 10123 => '203 ',
- 10124 => '204 ',
- 10125 => '205 ',
- 10126 => '206 ',
- 10127 => '207 ',
- 10128 => '208 ',
- 10129 => '209 ',
- 10130 => '210 ',
- 10131 => '211 ',
- 10132 => '212 ',
- 10136 => '216 ',
- 10137 => '217 ',
- 10138 => '218 ',
- 10139 => '219 ',
- 10140 => '220 ',
- 10141 => '221 ',
- 10142 => '222 ',
- 10143 => '223 ',
- 10144 => '224 ',
- 10145 => '225 ',
- 10146 => '226 ',
- 10147 => '227 ',
- 10148 => '228 ',
- 10149 => '229 ',
- 10150 => '230 ',
- 10151 => '231 ',
- 10152 => '232 ',
- 10153 => '233 ',
- 10154 => '234 ',
- 10155 => '235 ',
- 10156 => '236 ',
- 10157 => '237 ',
- 10158 => '238 ',
- 10159 => '239 ',
- 10161 => '241 ',
- 10162 => '242 ',
- 10163 => '243 ',
- 10164 => '244 ',
- 10165 => '245 ',
- 10166 => '246 ',
- 10167 => '247 ',
- 10168 => '248 ',
- 10169 => '249 ',
- 10170 => '250 ',
- 10171 => '251 ',
- 10172 => '252 ',
- 10173 => '253 ',
- 10174 => '254 ',
-);
-
-?>
\ No newline at end of file
diff --git a/public/mpdf/includes/upperCase.php b/public/mpdf/includes/upperCase.php
deleted file mode 100644
index 020f426..0000000
--- a/public/mpdf/includes/upperCase.php
+++ /dev/null
@@ -1,975 +0,0 @@
-upperCase=array (
- 97 => 65,
- 98 => 66,
- 99 => 67,
- 100 => 68,
- 101 => 69,
- 102 => 70,
- 103 => 71,
- 104 => 72,
- 105 => 73,
- 106 => 74,
- 107 => 75,
- 108 => 76,
- 109 => 77,
- 110 => 78,
- 111 => 79,
- 112 => 80,
- 113 => 81,
- 114 => 82,
- 115 => 83,
- 116 => 84,
- 117 => 85,
- 118 => 86,
- 119 => 87,
- 120 => 88,
- 121 => 89,
- 122 => 90,
- 181 => 924,
- 224 => 192,
- 225 => 193,
- 226 => 194,
- 227 => 195,
- 228 => 196,
- 229 => 197,
- 230 => 198,
- 231 => 199,
- 232 => 200,
- 233 => 201,
- 234 => 202,
- 235 => 203,
- 236 => 204,
- 237 => 205,
- 238 => 206,
- 239 => 207,
- 240 => 208,
- 241 => 209,
- 242 => 210,
- 243 => 211,
- 244 => 212,
- 245 => 213,
- 246 => 214,
- 248 => 216,
- 249 => 217,
- 250 => 218,
- 251 => 219,
- 252 => 220,
- 253 => 221,
- 254 => 222,
- 255 => 376,
- 257 => 256,
- 259 => 258,
- 261 => 260,
- 263 => 262,
- 265 => 264,
- 267 => 266,
- 269 => 268,
- 271 => 270,
- 273 => 272,
- 275 => 274,
- 277 => 276,
- 279 => 278,
- 281 => 280,
- 283 => 282,
- 285 => 284,
- 287 => 286,
- 289 => 288,
- 291 => 290,
- 293 => 292,
- 295 => 294,
- 297 => 296,
- 299 => 298,
- 301 => 300,
- 303 => 302,
- 305 => 73,
- 307 => 306,
- 309 => 308,
- 311 => 310,
- 314 => 313,
- 316 => 315,
- 318 => 317,
- 320 => 319,
- 322 => 321,
- 324 => 323,
- 326 => 325,
- 328 => 327,
- 331 => 330,
- 333 => 332,
- 335 => 334,
- 337 => 336,
- 339 => 338,
- 341 => 340,
- 343 => 342,
- 345 => 344,
- 347 => 346,
- 349 => 348,
- 351 => 350,
- 353 => 352,
- 355 => 354,
- 357 => 356,
- 359 => 358,
- 361 => 360,
- 363 => 362,
- 365 => 364,
- 367 => 366,
- 369 => 368,
- 371 => 370,
- 373 => 372,
- 375 => 374,
- 378 => 377,
- 380 => 379,
- 382 => 381,
- 383 => 83,
- 384 => 579,
- 387 => 386,
- 389 => 388,
- 392 => 391,
- 396 => 395,
- 402 => 401,
- 405 => 502,
- 409 => 408,
- 410 => 573,
- 414 => 544,
- 417 => 416,
- 419 => 418,
- 421 => 420,
- 424 => 423,
- 429 => 428,
- 432 => 431,
- 436 => 435,
- 438 => 437,
- 441 => 440,
- 445 => 444,
- 447 => 503,
- 453 => 452,
- 454 => 452,
- 456 => 455,
- 457 => 455,
- 459 => 458,
- 460 => 458,
- 462 => 461,
- 464 => 463,
- 466 => 465,
- 468 => 467,
- 470 => 469,
- 472 => 471,
- 474 => 473,
- 476 => 475,
- 477 => 398,
- 479 => 478,
- 481 => 480,
- 483 => 482,
- 485 => 484,
- 487 => 486,
- 489 => 488,
- 491 => 490,
- 493 => 492,
- 495 => 494,
- 498 => 497,
- 499 => 497,
- 501 => 500,
- 505 => 504,
- 507 => 506,
- 509 => 508,
- 511 => 510,
- 513 => 512,
- 515 => 514,
- 517 => 516,
- 519 => 518,
- 521 => 520,
- 523 => 522,
- 525 => 524,
- 527 => 526,
- 529 => 528,
- 531 => 530,
- 533 => 532,
- 535 => 534,
- 537 => 536,
- 539 => 538,
- 541 => 540,
- 543 => 542,
- 547 => 546,
- 549 => 548,
- 551 => 550,
- 553 => 552,
- 555 => 554,
- 557 => 556,
- 559 => 558,
- 561 => 560,
- 563 => 562,
- 572 => 571,
- 575 => 11390,
- 576 => 11391,
- 578 => 577,
- 583 => 582,
- 585 => 584,
- 587 => 586,
- 589 => 588,
- 591 => 590,
- 592 => 11375,
- 593 => 11373,
- 594 => 11376,
- 595 => 385,
- 596 => 390,
- 598 => 393,
- 599 => 394,
- 601 => 399,
- 603 => 400,
- 608 => 403,
- 611 => 404,
- 616 => 407,
- 617 => 406,
- 619 => 11362,
- 623 => 412,
- 625 => 11374,
- 626 => 413,
- 629 => 415,
- 637 => 11364,
- 640 => 422,
- 643 => 425,
- 648 => 430,
- 649 => 580,
- 650 => 433,
- 651 => 434,
- 652 => 581,
- 658 => 439,
- 837 => 921,
- 881 => 880,
- 883 => 882,
- 887 => 886,
- 891 => 1021,
- 892 => 1022,
- 893 => 1023,
- 940 => 902,
- 941 => 904,
- 942 => 905,
- 943 => 906,
- 945 => 913,
- 946 => 914,
- 947 => 915,
- 948 => 916,
- 949 => 917,
- 950 => 918,
- 951 => 919,
- 952 => 920,
- 953 => 921,
- 954 => 922,
- 955 => 923,
- 956 => 924,
- 957 => 925,
- 958 => 926,
- 959 => 927,
- 960 => 928,
- 961 => 929,
- 962 => 931,
- 963 => 931,
- 964 => 932,
- 965 => 933,
- 966 => 934,
- 967 => 935,
- 968 => 936,
- 969 => 937,
- 970 => 938,
- 971 => 939,
- 972 => 908,
- 973 => 910,
- 974 => 911,
- 976 => 914,
- 977 => 920,
- 981 => 934,
- 982 => 928,
- 983 => 975,
- 985 => 984,
- 987 => 986,
- 989 => 988,
- 991 => 990,
- 993 => 992,
- 995 => 994,
- 997 => 996,
- 999 => 998,
- 1001 => 1000,
- 1003 => 1002,
- 1005 => 1004,
- 1007 => 1006,
- 1008 => 922,
- 1009 => 929,
- 1010 => 1017,
- 1013 => 917,
- 1016 => 1015,
- 1019 => 1018,
- 1072 => 1040,
- 1073 => 1041,
- 1074 => 1042,
- 1075 => 1043,
- 1076 => 1044,
- 1077 => 1045,
- 1078 => 1046,
- 1079 => 1047,
- 1080 => 1048,
- 1081 => 1049,
- 1082 => 1050,
- 1083 => 1051,
- 1084 => 1052,
- 1085 => 1053,
- 1086 => 1054,
- 1087 => 1055,
- 1088 => 1056,
- 1089 => 1057,
- 1090 => 1058,
- 1091 => 1059,
- 1092 => 1060,
- 1093 => 1061,
- 1094 => 1062,
- 1095 => 1063,
- 1096 => 1064,
- 1097 => 1065,
- 1098 => 1066,
- 1099 => 1067,
- 1100 => 1068,
- 1101 => 1069,
- 1102 => 1070,
- 1103 => 1071,
- 1104 => 1024,
- 1105 => 1025,
- 1106 => 1026,
- 1107 => 1027,
- 1108 => 1028,
- 1109 => 1029,
- 1110 => 1030,
- 1111 => 1031,
- 1112 => 1032,
- 1113 => 1033,
- 1114 => 1034,
- 1115 => 1035,
- 1116 => 1036,
- 1117 => 1037,
- 1118 => 1038,
- 1119 => 1039,
- 1121 => 1120,
- 1123 => 1122,
- 1125 => 1124,
- 1127 => 1126,
- 1129 => 1128,
- 1131 => 1130,
- 1133 => 1132,
- 1135 => 1134,
- 1137 => 1136,
- 1139 => 1138,
- 1141 => 1140,
- 1143 => 1142,
- 1145 => 1144,
- 1147 => 1146,
- 1149 => 1148,
- 1151 => 1150,
- 1153 => 1152,
- 1163 => 1162,
- 1165 => 1164,
- 1167 => 1166,
- 1169 => 1168,
- 1171 => 1170,
- 1173 => 1172,
- 1175 => 1174,
- 1177 => 1176,
- 1179 => 1178,
- 1181 => 1180,
- 1183 => 1182,
- 1185 => 1184,
- 1187 => 1186,
- 1189 => 1188,
- 1191 => 1190,
- 1193 => 1192,
- 1195 => 1194,
- 1197 => 1196,
- 1199 => 1198,
- 1201 => 1200,
- 1203 => 1202,
- 1205 => 1204,
- 1207 => 1206,
- 1209 => 1208,
- 1211 => 1210,
- 1213 => 1212,
- 1215 => 1214,
- 1218 => 1217,
- 1220 => 1219,
- 1222 => 1221,
- 1224 => 1223,
- 1226 => 1225,
- 1228 => 1227,
- 1230 => 1229,
- 1231 => 1216,
- 1233 => 1232,
- 1235 => 1234,
- 1237 => 1236,
- 1239 => 1238,
- 1241 => 1240,
- 1243 => 1242,
- 1245 => 1244,
- 1247 => 1246,
- 1249 => 1248,
- 1251 => 1250,
- 1253 => 1252,
- 1255 => 1254,
- 1257 => 1256,
- 1259 => 1258,
- 1261 => 1260,
- 1263 => 1262,
- 1265 => 1264,
- 1267 => 1266,
- 1269 => 1268,
- 1271 => 1270,
- 1273 => 1272,
- 1275 => 1274,
- 1277 => 1276,
- 1279 => 1278,
- 1281 => 1280,
- 1283 => 1282,
- 1285 => 1284,
- 1287 => 1286,
- 1289 => 1288,
- 1291 => 1290,
- 1293 => 1292,
- 1295 => 1294,
- 1297 => 1296,
- 1299 => 1298,
- 1301 => 1300,
- 1303 => 1302,
- 1305 => 1304,
- 1307 => 1306,
- 1309 => 1308,
- 1311 => 1310,
- 1313 => 1312,
- 1315 => 1314,
- 1317 => 1316,
- 1377 => 1329,
- 1378 => 1330,
- 1379 => 1331,
- 1380 => 1332,
- 1381 => 1333,
- 1382 => 1334,
- 1383 => 1335,
- 1384 => 1336,
- 1385 => 1337,
- 1386 => 1338,
- 1387 => 1339,
- 1388 => 1340,
- 1389 => 1341,
- 1390 => 1342,
- 1391 => 1343,
- 1392 => 1344,
- 1393 => 1345,
- 1394 => 1346,
- 1395 => 1347,
- 1396 => 1348,
- 1397 => 1349,
- 1398 => 1350,
- 1399 => 1351,
- 1400 => 1352,
- 1401 => 1353,
- 1402 => 1354,
- 1403 => 1355,
- 1404 => 1356,
- 1405 => 1357,
- 1406 => 1358,
- 1407 => 1359,
- 1408 => 1360,
- 1409 => 1361,
- 1410 => 1362,
- 1411 => 1363,
- 1412 => 1364,
- 1413 => 1365,
- 1414 => 1366,
- 7545 => 42877,
- 7549 => 11363,
- 7681 => 7680,
- 7683 => 7682,
- 7685 => 7684,
- 7687 => 7686,
- 7689 => 7688,
- 7691 => 7690,
- 7693 => 7692,
- 7695 => 7694,
- 7697 => 7696,
- 7699 => 7698,
- 7701 => 7700,
- 7703 => 7702,
- 7705 => 7704,
- 7707 => 7706,
- 7709 => 7708,
- 7711 => 7710,
- 7713 => 7712,
- 7715 => 7714,
- 7717 => 7716,
- 7719 => 7718,
- 7721 => 7720,
- 7723 => 7722,
- 7725 => 7724,
- 7727 => 7726,
- 7729 => 7728,
- 7731 => 7730,
- 7733 => 7732,
- 7735 => 7734,
- 7737 => 7736,
- 7739 => 7738,
- 7741 => 7740,
- 7743 => 7742,
- 7745 => 7744,
- 7747 => 7746,
- 7749 => 7748,
- 7751 => 7750,
- 7753 => 7752,
- 7755 => 7754,
- 7757 => 7756,
- 7759 => 7758,
- 7761 => 7760,
- 7763 => 7762,
- 7765 => 7764,
- 7767 => 7766,
- 7769 => 7768,
- 7771 => 7770,
- 7773 => 7772,
- 7775 => 7774,
- 7777 => 7776,
- 7779 => 7778,
- 7781 => 7780,
- 7783 => 7782,
- 7785 => 7784,
- 7787 => 7786,
- 7789 => 7788,
- 7791 => 7790,
- 7793 => 7792,
- 7795 => 7794,
- 7797 => 7796,
- 7799 => 7798,
- 7801 => 7800,
- 7803 => 7802,
- 7805 => 7804,
- 7807 => 7806,
- 7809 => 7808,
- 7811 => 7810,
- 7813 => 7812,
- 7815 => 7814,
- 7817 => 7816,
- 7819 => 7818,
- 7821 => 7820,
- 7823 => 7822,
- 7825 => 7824,
- 7827 => 7826,
- 7829 => 7828,
- 7835 => 7776,
- 7841 => 7840,
- 7843 => 7842,
- 7845 => 7844,
- 7847 => 7846,
- 7849 => 7848,
- 7851 => 7850,
- 7853 => 7852,
- 7855 => 7854,
- 7857 => 7856,
- 7859 => 7858,
- 7861 => 7860,
- 7863 => 7862,
- 7865 => 7864,
- 7867 => 7866,
- 7869 => 7868,
- 7871 => 7870,
- 7873 => 7872,
- 7875 => 7874,
- 7877 => 7876,
- 7879 => 7878,
- 7881 => 7880,
- 7883 => 7882,
- 7885 => 7884,
- 7887 => 7886,
- 7889 => 7888,
- 7891 => 7890,
- 7893 => 7892,
- 7895 => 7894,
- 7897 => 7896,
- 7899 => 7898,
- 7901 => 7900,
- 7903 => 7902,
- 7905 => 7904,
- 7907 => 7906,
- 7909 => 7908,
- 7911 => 7910,
- 7913 => 7912,
- 7915 => 7914,
- 7917 => 7916,
- 7919 => 7918,
- 7921 => 7920,
- 7923 => 7922,
- 7925 => 7924,
- 7927 => 7926,
- 7929 => 7928,
- 7931 => 7930,
- 7933 => 7932,
- 7935 => 7934,
- 7936 => 7944,
- 7937 => 7945,
- 7938 => 7946,
- 7939 => 7947,
- 7940 => 7948,
- 7941 => 7949,
- 7942 => 7950,
- 7943 => 7951,
- 7952 => 7960,
- 7953 => 7961,
- 7954 => 7962,
- 7955 => 7963,
- 7956 => 7964,
- 7957 => 7965,
- 7968 => 7976,
- 7969 => 7977,
- 7970 => 7978,
- 7971 => 7979,
- 7972 => 7980,
- 7973 => 7981,
- 7974 => 7982,
- 7975 => 7983,
- 7984 => 7992,
- 7985 => 7993,
- 7986 => 7994,
- 7987 => 7995,
- 7988 => 7996,
- 7989 => 7997,
- 7990 => 7998,
- 7991 => 7999,
- 8000 => 8008,
- 8001 => 8009,
- 8002 => 8010,
- 8003 => 8011,
- 8004 => 8012,
- 8005 => 8013,
- 8017 => 8025,
- 8019 => 8027,
- 8021 => 8029,
- 8023 => 8031,
- 8032 => 8040,
- 8033 => 8041,
- 8034 => 8042,
- 8035 => 8043,
- 8036 => 8044,
- 8037 => 8045,
- 8038 => 8046,
- 8039 => 8047,
- 8048 => 8122,
- 8049 => 8123,
- 8050 => 8136,
- 8051 => 8137,
- 8052 => 8138,
- 8053 => 8139,
- 8054 => 8154,
- 8055 => 8155,
- 8056 => 8184,
- 8057 => 8185,
- 8058 => 8170,
- 8059 => 8171,
- 8060 => 8186,
- 8061 => 8187,
- 8064 => 8072,
- 8065 => 8073,
- 8066 => 8074,
- 8067 => 8075,
- 8068 => 8076,
- 8069 => 8077,
- 8070 => 8078,
- 8071 => 8079,
- 8080 => 8088,
- 8081 => 8089,
- 8082 => 8090,
- 8083 => 8091,
- 8084 => 8092,
- 8085 => 8093,
- 8086 => 8094,
- 8087 => 8095,
- 8096 => 8104,
- 8097 => 8105,
- 8098 => 8106,
- 8099 => 8107,
- 8100 => 8108,
- 8101 => 8109,
- 8102 => 8110,
- 8103 => 8111,
- 8112 => 8120,
- 8113 => 8121,
- 8115 => 8124,
- 8126 => 921,
- 8131 => 8140,
- 8144 => 8152,
- 8145 => 8153,
- 8160 => 8168,
- 8161 => 8169,
- 8165 => 8172,
- 8179 => 8188,
- 8526 => 8498,
- 8560 => 8544,
- 8561 => 8545,
- 8562 => 8546,
- 8563 => 8547,
- 8564 => 8548,
- 8565 => 8549,
- 8566 => 8550,
- 8567 => 8551,
- 8568 => 8552,
- 8569 => 8553,
- 8570 => 8554,
- 8571 => 8555,
- 8572 => 8556,
- 8573 => 8557,
- 8574 => 8558,
- 8575 => 8559,
- 8580 => 8579,
- 9424 => 9398,
- 9425 => 9399,
- 9426 => 9400,
- 9427 => 9401,
- 9428 => 9402,
- 9429 => 9403,
- 9430 => 9404,
- 9431 => 9405,
- 9432 => 9406,
- 9433 => 9407,
- 9434 => 9408,
- 9435 => 9409,
- 9436 => 9410,
- 9437 => 9411,
- 9438 => 9412,
- 9439 => 9413,
- 9440 => 9414,
- 9441 => 9415,
- 9442 => 9416,
- 9443 => 9417,
- 9444 => 9418,
- 9445 => 9419,
- 9446 => 9420,
- 9447 => 9421,
- 9448 => 9422,
- 9449 => 9423,
- 11312 => 11264,
- 11313 => 11265,
- 11314 => 11266,
- 11315 => 11267,
- 11316 => 11268,
- 11317 => 11269,
- 11318 => 11270,
- 11319 => 11271,
- 11320 => 11272,
- 11321 => 11273,
- 11322 => 11274,
- 11323 => 11275,
- 11324 => 11276,
- 11325 => 11277,
- 11326 => 11278,
- 11327 => 11279,
- 11328 => 11280,
- 11329 => 11281,
- 11330 => 11282,
- 11331 => 11283,
- 11332 => 11284,
- 11333 => 11285,
- 11334 => 11286,
- 11335 => 11287,
- 11336 => 11288,
- 11337 => 11289,
- 11338 => 11290,
- 11339 => 11291,
- 11340 => 11292,
- 11341 => 11293,
- 11342 => 11294,
- 11343 => 11295,
- 11344 => 11296,
- 11345 => 11297,
- 11346 => 11298,
- 11347 => 11299,
- 11348 => 11300,
- 11349 => 11301,
- 11350 => 11302,
- 11351 => 11303,
- 11352 => 11304,
- 11353 => 11305,
- 11354 => 11306,
- 11355 => 11307,
- 11356 => 11308,
- 11357 => 11309,
- 11358 => 11310,
- 11361 => 11360,
- 11365 => 570,
- 11366 => 574,
- 11368 => 11367,
- 11370 => 11369,
- 11372 => 11371,
- 11379 => 11378,
- 11382 => 11381,
- 11393 => 11392,
- 11395 => 11394,
- 11397 => 11396,
- 11399 => 11398,
- 11401 => 11400,
- 11403 => 11402,
- 11405 => 11404,
- 11407 => 11406,
- 11409 => 11408,
- 11411 => 11410,
- 11413 => 11412,
- 11415 => 11414,
- 11417 => 11416,
- 11419 => 11418,
- 11421 => 11420,
- 11423 => 11422,
- 11425 => 11424,
- 11427 => 11426,
- 11429 => 11428,
- 11431 => 11430,
- 11433 => 11432,
- 11435 => 11434,
- 11437 => 11436,
- 11439 => 11438,
- 11441 => 11440,
- 11443 => 11442,
- 11445 => 11444,
- 11447 => 11446,
- 11449 => 11448,
- 11451 => 11450,
- 11453 => 11452,
- 11455 => 11454,
- 11457 => 11456,
- 11459 => 11458,
- 11461 => 11460,
- 11463 => 11462,
- 11465 => 11464,
- 11467 => 11466,
- 11469 => 11468,
- 11471 => 11470,
- 11473 => 11472,
- 11475 => 11474,
- 11477 => 11476,
- 11479 => 11478,
- 11481 => 11480,
- 11483 => 11482,
- 11485 => 11484,
- 11487 => 11486,
- 11489 => 11488,
- 11491 => 11490,
- 11500 => 11499,
- 11502 => 11501,
- 11520 => 4256,
- 11521 => 4257,
- 11522 => 4258,
- 11523 => 4259,
- 11524 => 4260,
- 11525 => 4261,
- 11526 => 4262,
- 11527 => 4263,
- 11528 => 4264,
- 11529 => 4265,
- 11530 => 4266,
- 11531 => 4267,
- 11532 => 4268,
- 11533 => 4269,
- 11534 => 4270,
- 11535 => 4271,
- 11536 => 4272,
- 11537 => 4273,
- 11538 => 4274,
- 11539 => 4275,
- 11540 => 4276,
- 11541 => 4277,
- 11542 => 4278,
- 11543 => 4279,
- 11544 => 4280,
- 11545 => 4281,
- 11546 => 4282,
- 11547 => 4283,
- 11548 => 4284,
- 11549 => 4285,
- 11550 => 4286,
- 11551 => 4287,
- 11552 => 4288,
- 11553 => 4289,
- 11554 => 4290,
- 11555 => 4291,
- 11556 => 4292,
- 11557 => 4293,
- 42561 => 42560,
- 42563 => 42562,
- 42565 => 42564,
- 42567 => 42566,
- 42569 => 42568,
- 42571 => 42570,
- 42573 => 42572,
- 42575 => 42574,
- 42577 => 42576,
- 42579 => 42578,
- 42581 => 42580,
- 42583 => 42582,
- 42585 => 42584,
- 42587 => 42586,
- 42589 => 42588,
- 42591 => 42590,
- 42595 => 42594,
- 42597 => 42596,
- 42599 => 42598,
- 42601 => 42600,
- 42603 => 42602,
- 42605 => 42604,
- 42625 => 42624,
- 42627 => 42626,
- 42629 => 42628,
- 42631 => 42630,
- 42633 => 42632,
- 42635 => 42634,
- 42637 => 42636,
- 42639 => 42638,
- 42641 => 42640,
- 42643 => 42642,
- 42645 => 42644,
- 42647 => 42646,
- 42787 => 42786,
- 42789 => 42788,
- 42791 => 42790,
- 42793 => 42792,
- 42795 => 42794,
- 42797 => 42796,
- 42799 => 42798,
- 42803 => 42802,
- 42805 => 42804,
- 42807 => 42806,
- 42809 => 42808,
- 42811 => 42810,
- 42813 => 42812,
- 42815 => 42814,
- 42817 => 42816,
- 42819 => 42818,
- 42821 => 42820,
- 42823 => 42822,
- 42825 => 42824,
- 42827 => 42826,
- 42829 => 42828,
- 42831 => 42830,
- 42833 => 42832,
- 42835 => 42834,
- 42837 => 42836,
- 42839 => 42838,
- 42841 => 42840,
- 42843 => 42842,
- 42845 => 42844,
- 42847 => 42846,
- 42849 => 42848,
- 42851 => 42850,
- 42853 => 42852,
- 42855 => 42854,
- 42857 => 42856,
- 42859 => 42858,
- 42861 => 42860,
- 42863 => 42862,
- 42874 => 42873,
- 42876 => 42875,
- 42879 => 42878,
- 42881 => 42880,
- 42883 => 42882,
- 42885 => 42884,
- 42887 => 42886,
- 42892 => 42891,
-);
-?>
\ No newline at end of file
diff --git a/public/mpdf/mpdf.css b/public/mpdf/mpdf.css
deleted file mode 100644
index b46d0d6..0000000
--- a/public/mpdf/mpdf.css
+++ /dev/null
@@ -1,20 +0,0 @@
-/*
- This is a secondary default stylesheet for mPDF
- It will only parse element-level CSS here
- Remove the comment marks below and edit as required
-*/
-
-
-
-/*
- These values used to be the default prior to mPDF 4.2
- Altered to make appearance closer to that of browsers
- Uncomment these lines to return to behaviour prior to v4.2
-*/
-
-
-/*
-img { margin: 0.83em 0; vertical-align: bottom; }
-table { margin: 0.5em; }
-textarea { vertical-align: top; }
-*/
diff --git a/public/mpdf/mpdf.php b/public/mpdf/mpdf.php
deleted file mode 100644
index d8352fc..0000000
--- a/public/mpdf/mpdf.php
+++ /dev/null
@@ -1,32839 +0,0 @@
- *
-// License: GPL *
-// *
-// Changes: See changelog.txt *
-// ******************************************************************************
-
-
-define('mPDF_VERSION','5.4');
-
-//Scale factor
-define('_MPDFK', (72/25.4)); // Will only use mm
-
-/*-- HTML-CSS --*/
-define('AUTOFONT_CJK',1);
-define('AUTOFONT_THAIVIET',2);
-define('AUTOFONT_RTL',4);
-define('AUTOFONT_INDIC',8);
-define('AUTOFONT_ALL',15);
-
-define('_BORDER_ALL',15);
-define('_BORDER_TOP',8);
-define('_BORDER_RIGHT',4);
-define('_BORDER_BOTTOM',2);
-define('_BORDER_LEFT',1);
-/*-- END HTML-CSS --*/
-
-if (!defined('_MPDF_PATH')) define('_MPDF_PATH', dirname(preg_replace('/\\\\/','/',__FILE__)) . '/');
-if (!defined('_MPDF_URI')) define('_MPDF_URI',_MPDF_PATH);
-
-require_once(_MPDF_PATH.'includes/functions.php');
-require_once(_MPDF_PATH.'config_cp.php');
-
-if (!defined('_JPGRAPH_PATH')) define("_JPGRAPH_PATH", _MPDF_PATH.'jpgraph/');
-
-if (!defined('_MPDF_TEMP_PATH')) define("_MPDF_TEMP_PATH", _MPDF_PATH.'tmp/');
-
-if (!defined('_MPDF_TTFONTPATH')) { define('_MPDF_TTFONTPATH',_MPDF_PATH.'ttfonts/'); }
-if (!defined('_MPDF_TTFONTDATAPATH')) { define('_MPDF_TTFONTDATAPATH',_MPDF_PATH.'ttfontdata/'); }
-
-$errorlevel=error_reporting();
-$errorlevel=error_reporting($errorlevel & ~E_NOTICE);
-
-//error_reporting(E_ALL);
-
-// mPDF 5.3.76
-if(function_exists("date_default_timezone_set")) {
- if (ini_get("date.timezone")=="") { date_default_timezone_set("Europe/London"); }
-}
-if (!function_exists("mb_strlen")) { die("Error - mPDF requires mb_string functions. Ensure that PHP is compiled with php_mbstring.dll enabled."); }
-
-if (!defined('PHP_VERSION_ID')) {
- $version = explode('.', PHP_VERSION);
- define('PHP_VERSION_ID', ($version[0] * 10000 + $version[1] * 100 + $version[2]));
-}
-// mPDF 5.3.79 Machine dependent number of bytes used to pack "double" into binary (used in cacheTables)
-$test = pack("d", 134455.474557333333666);
-define("_DSIZE", strlen($test));
-
-class mPDF
-{
-
-///////////////////////////////
-// EXTERNAL (PUBLIC) VARIABLES
-// Define these in config.php
-///////////////////////////////
-var $cacheTables; // mPDF 5.3.79
-var $bookmarkStyles; // mPDF 5.3.39
-var $useActiveForms;
-
-var $repackageTTF;
-var $allowCJKorphans;
-var $allowCJKoverflow;
-var $CJKleading;
-var $CJKfollowing;
-var $CJKoverflow;
-
-var $useKerning;
-var $restrictColorSpace;
-var $bleedMargin;
-var $crossMarkMargin;
-var $cropMarkMargin;
-var $cropMarkLength;
-var $nonPrintMargin;
-
-var $PDFX;
-var $PDFXauto;
-
-var $PDFA;
-var $PDFAauto;
-var $ICCProfile;
-
-var $printers_info;
-var $iterationCounter;
-var $smCapsScale;
-var $smCapsStretch;
-
-var $backupSubsFont;
-var $backupSIPFont;
-var $debugfonts;
-var $useAdobeCJK;
-var $percentSubset;
-var $maxTTFFilesize;
-var $BMPonly;
-
-var $tableMinSizePriority;
-
-var $dpi;
-var $watermarkImgAlphaBlend;
-var $watermarkImgBehind;
-var $justifyB4br;
-var $packTableData;
-var $pgsIns;
-var $simpleTables;
-var $enableImports;
-
-var $debug;
-var $showStats;
-var $setAutoTopMargin;
-var $setAutoBottomMargin;
-var $autoMarginPadding;
-var $collapseBlockMargins;
-var $falseBoldWeight;
-var $normalLineheight;
-var $progressBar;
-var $incrementFPR1;
-var $incrementFPR2;
-var $incrementFPR3;
-var $incrementFPR4;
-
-var $hyphenate;
-var $hyphenateTables;
-var $SHYlang;
-var $SHYleftmin;
-var $SHYrightmin;
-var $SHYcharmin;
-var $SHYcharmax;
-var $SHYlanguages;
-// PageNumber Conditional Text
-var $pagenumPrefix;
-var $pagenumSuffix;
-var $nbpgPrefix;
-var $nbpgSuffix;
-var $showImageErrors;
-var $allow_output_buffering;
-var $autoPadding;
-var $useGraphs;
-var $autoFontGroupSize;
-var $tabSpaces;
-var $useLang;
-var $restoreBlockPagebreaks;
-var $watermarkTextAlpha;
-var $watermarkImageAlpha;
-var $watermark_size;
-var $watermark_pos;
-var $annotSize;
-var $annotMargin;
-var $annotOpacity;
-var $title2annots;
-var $keepColumns;
-var $keep_table_proportions;
-var $ignore_table_widths;
-var $ignore_table_percents;
-var $list_align_style;
-var $list_number_suffix;
-var $useSubstitutions;
-var $CSSselectMedia;
-
-var $forcePortraitHeaders;
-var $forcePortraitMargins;
-var $displayDefaultOrientation;
-var $ignore_invalid_utf8;
-var $allowedCSStags;
-var $onlyCoreFonts;
-var $allow_charset_conversion;
-
-var $jSWord;
-var $jSmaxChar;
-var $jSmaxCharLast;
-var $jSmaxWordLast;
-
-var $orphansAllowed;
-var $max_colH_correction;
-
-
-var $table_error_report;
-var $table_error_report_param;
-var $biDirectional;
-var $text_input_as_HTML;
-var $anchor2Bookmark;
-var $list_indent_first_level;
-var $shrink_tables_to_fit;
-
-var $allow_html_optional_endtags;
-
-var $img_dpi;
-
-var $defaultheaderfontsize;
-var $defaultheaderfontstyle;
-var $defaultheaderline;
-var $defaultfooterfontsize;
-var $defaultfooterfontstyle;
-var $defaultfooterline;
-var $header_line_spacing;
-var $footer_line_spacing;
-
-var $pregUHCchars;
-var $pregSJISchars;
-var $pregCJKchars;
-var $pregASCIIchars1;
-var $pregASCIIchars2;
-var $pregASCIIchars3;
-var $pregVIETchars;
-var $pregVIETPluschars;
-
-var $pregRTLchars;
-var $pregHEBchars;
-var $pregARABICchars;
-var $pregNonARABICchars;
-// INDIC
-var $pregHIchars;
-var $pregBNchars;
-var $pregPAchars;
-var $pregGUchars;
-var $pregORchars;
-var $pregTAchars;
-var $pregTEchars;
-var $pregKNchars;
-var $pregMLchars;
-var $pregSHchars;
-var $pregINDextra;
-
-var $mirrorMargins;
-var $default_lineheight_correction;
-var $watermarkText;
-var $watermarkImage;
-var $showWatermarkText;
-var $showWatermarkImage;
-
-var $fontsizes;
-
-// Aliases for backward compatability
-var $UnvalidatedText; // alias = $watermarkText
-var $TopicIsUnvalidated; // alias = $showWatermarkText
-var $useOddEven; // alias = $mirrorMargins
-var $useSubstitutionsMB; // alias = $useSubstitutions
-
-
-
-//////////////////////
-// CLASS OBJECTS
-//////////////////////
-// mPDF 5.3.89
-var $grad;
-var $bmp;
-var $wmf;
-var $tocontents;
-var $form;
-var $directw;
-
-//////////////////////
-// INTERNAL VARIABLES
-//////////////////////
-
-var $textshadow; // mPDF 5.3.A2
-
-var $colsums; // mPDF 5.3.92
-// mPDF 5.3.61
-var $spanborder;
-var $spanborddet;
-
-var $visibility; // mPDF 5.3.41
-
-var $useRC128encryption;
-var $uniqid;
-
-var $kerning;
-var $fixedlSpacing;
-var $minwSpacing;
-var $lSpacingCSS;
-var $wSpacingCSS;
-
-var $listDir;
-var $spotColorIDs;
-var $SVGcolors;
-var $spotColors;
-var $defTextColor;
-var $defDrawColor;
-var $defFillColor;
-
-var $tableBackgrounds;
-var $inlineDisplayOff;
-var $kt_y00;
-var $kt_p00;
-var $upperCase;
-var $checkSIP;
-var $checkSMP;
-var $checkCJK;
-var $tableCJK;
-
-var $watermarkImgAlpha;
-var $PDFAXwarnings;
-var $MetadataRoot;
-var $OutputIntentRoot;
-var $InfoRoot;
-var $current_filename;
-var $parsers;
-var $current_parser;
-var $_obj_stack;
-var $_don_obj_stack;
-var $_current_obj_id;
-var $tpls;
-var $tpl;
-var $tplprefix;
-var $_res;
-
-var $pdf_version;
-var $noImageFile;
-var $lastblockbottommargin;
-var $baselineC;
-var $subPos;
-var $subArrMB;
-var $ReqFontStyle;
-var $tableClipPath ;
-var $forceExactLineheight;
-var $listOcc;
-
-var $fullImageHeight;
-var $inFixedPosBlock; // Internal flag for position:fixed block
-var $fixedPosBlock; // Buffer string for position:fixed block
-var $fixedPosBlockDepth;
-var $fixedPosBlockBBox;
-var $fixedPosBlockSave;
-var $maxPosL;
-var $maxPosR;
-
-var $loaded;
-
-var $extraFontSubsets;
-var $docTemplateStart; // Internal flag for page (page no. -1) that docTemplate starts on
-var $time0;
-
-// Classes
-var $indic;
-var $barcode;
-
-var $SHYpatterns;
-var $loadedSHYpatterns;
-var $loadedSHYdictionary;
-var $SHYdictionary;
-var $SHYdictionaryWords;
-
-var $spanbgcolorarray;
-var $default_font;
-var $list_lineheight;
-var $headerbuffer;
-var $lastblocklevelchange;
-var $nestedtablejustfinished;
-var $linebreakjustfinished;
-var $cell_border_dominance_L;
-var $cell_border_dominance_R;
-var $cell_border_dominance_T;
-var $cell_border_dominance_B;
-var $tbCSSlvl;
-var $listCSSlvl;
-var $table_keep_together;
-var $plainCell_properties;
-var $inherit_lineheight;
-var $listitemtype;
-var $shrin_k1;
-var $outerfilled;
-
-var $blockContext;
-var $floatDivs;
-
-var $tablecascadeCSS;
-var $listcascadeCSS;
-
-var $patterns;
-var $pageBackgrounds;
-
-var $bodyBackgroundGradient;
-var $bodyBackgroundImage;
-var $bodyBackgroundColor;
-
-var $writingHTMLheader; // internal flag - used both for writing HTMLHeaders/Footers and FixedPos block
-var $writingHTMLfooter;
-var $autoFontGroups;
-var $angle;
-
-var $gradients;
-
-var $kwt_Reference;
-var $kwt_BMoutlines;
-var $kwt_toc;
-
-var $tbrot_Reference;
-var $tbrot_BMoutlines;
-var $tbrot_toc;
-
-var $col_Reference;
-var $col_BMoutlines;
-var $col_toc;
-
-var $currentGraphId;
-var $graphs;
-
-var $floatbuffer;
-var $floatmargins;
-
-var $bullet;
-var $bulletarray;
-
-var $rtlAsArabicFarsi; // DEPRACATED
-
-var $currentLang;
-var $default_lang;
-var $default_available_fonts;
-var $pageTemplate;
-var $docTemplate;
-var $docTemplateContinue;
-
-var $arabGlyphs;
-var $arabHex;
-var $persianGlyphs;
-var $persianHex;
-var $arabVowels;
-var $arabPrevLink;
-var $arabNextLink;
-
-
-var $formobjects; // array of Form Objects for WMF
-var $InlineProperties;
-var $InlineAnnots;
-var $ktAnnots;
-var $tbrot_Annots;
-var $kwt_Annots;
-var $columnAnnots;
-var $columnForms;
-
-var $PageAnnots;
-
-var $pageDim; // Keep track of page wxh for orientation changes - set in _beginpage, used in _putannots
-
-var $breakpoints;
-
-var $tableLevel;
-var $tbctr;
-var $innermostTableLevel;
-var $saveTableCounter;
-var $cellBorderBuffer;
-
-var $saveHTMLFooter_height;
-var $saveHTMLFooterE_height;
-
-var $firstPageBoxHeader;
-var $firstPageBoxHeaderEven;
-var $firstPageBoxFooter;
-var $firstPageBoxFooterEven;
-
-var $page_box;
-var $show_marks; // crop or cross marks
-
-var $basepathIsLocal;
-
-var $use_kwt;
-var $kwt;
-var $kwt_height;
-var $kwt_y0;
-var $kwt_x0;
-var $kwt_buffer;
-var $kwt_Links;
-var $kwt_moved;
-var $kwt_saved;
-
-var $PageNumSubstitutions;
-
-var $table_borders_separate;
-var $base_table_properties;
-var $borderstyles;
-
-var $listjustfinished;
-var $blockjustfinished;
-
-var $orig_bMargin;
-var $orig_tMargin;
-var $orig_lMargin;
-var $orig_rMargin;
-var $orig_hMargin;
-var $orig_fMargin;
-
-var $pageheaders;
-var $pagefooters;
-
-var $pageHTMLheaders;
-var $pageHTMLfooters;
-
-var $saveHTMLHeader;
-var $saveHTMLFooter;
-
-var $HTMLheaderPageLinks;
-var $HTMLheaderPageAnnots;
-var $HTMLheaderPageForms;
-
-// See config_fonts.php for these next 5 values
-var $available_unifonts;
-var $sans_fonts;
-var $serif_fonts;
-var $mono_fonts;
-var $defaultSubsFont;
-
-// List of ALL available CJK fonts (incl. styles) (Adobe add-ons) hw removed
-var $available_CJK_fonts;
-
-var $cascadeCSS;
-
-var $HTMLHeader;
-var $HTMLFooter;
-var $HTMLHeaderE;
-var $HTMLFooterE;
-var $bufferoutput;
-
-var $showdefaultpagenos; // DEPRACATED -left for backward compatability
-
-
-// CJK fonts
-var $Big5_widths;
-var $GB_widths;
-var $SJIS_widths;
-var $UHC_widths;
-
-// SetProtection
-var $encrypted; //whether document is protected
-var $Uvalue; //U entry in pdf document
-var $Ovalue; //O entry in pdf document
-var $Pvalue; //P entry in pdf document
-var $enc_obj_id; //encryption object id
-var $last_rc4_key; //last RC4 key encrypted (cached for optimisation)
-var $last_rc4_key_c; //last RC4 computed key
-var $encryption_key;
-var $padding; //used for encryption
-
-
-// Bookmark
-var $BMoutlines;
-var $OutlineRoot;
-// INDEX
-var $ColActive;
-var $Reference;
-var $CurrCol;
-var $NbCol;
-var $y0; //Top ordinate of columns
-var $ColL;
-var $ColWidth;
-var $ColGap;
-// COLUMNS
-var $ColR;
-var $ChangeColumn;
-var $columnbuffer;
-var $ColDetails;
-var $columnLinks;
-var $colvAlign;
-// Substitutions
-var $substitute; // Array of substitution strings e.g. 112
-var $entsearch; // Array of HTML entities (>ASCII 127) to substitute
-var $entsubstitute; // Array of substitution decimal unicode for the Hi entities
-
-
-// Default values if no style sheet offered (cf. http://www.w3.org/TR/CSS21/sample.html)
-var $defaultCSS;
-
-var $linemaxfontsize;
-var $lineheight_correction;
-var $lastoptionaltag; // Save current block item which HTML specifies optionsl endtag
-var $pageoutput;
-var $charset_in;
-var $blk;
-var $blklvl;
-var $ColumnAdjust;
-var $ws; // Word spacing
-var $HREF;
-var $pgwidth;
-var $fontlist;
-var $oldx;
-var $oldy;
-var $B;
-var $U; //underlining flag
-var $S; // SmallCaps flag
-var $I;
-
-var $tdbegin;
-var $table;
-var $cell;
-var $col;
-var $row;
-
-var $divbegin;
-var $divalign;
-var $divwidth;
-var $divheight;
-var $divrevert;
-var $spanbgcolor;
-
-var $spanlvl;
-var $listlvl;
-var $listnum;
-var $listtype;
-var $listoccur;
-var $listlist;
-var $listitem;
-
-var $pjustfinished;
-var $ignorefollowingspaces;
-var $SUP;
-var $SUB;
-var $SMALL;
-var $BIG;
-var $toupper;
-var $tolower;
-var $capitalize;
-var $dash_on;
-var $dotted_on;
-var $strike;
-
-var $CSS;
-var $textbuffer;
-var $currentfontstyle;
-var $currentfontfamily;
-var $currentfontsize;
-var $colorarray;
-var $bgcolorarray;
-var $internallink;
-var $enabledtags;
-
-var $lineheight;
-var $basepath;
-var $outlineparam;
-var $outline_on;
-
-var $specialcontent;
-var $selectoption;
-var $objectbuffer;
-
-// Table Rotation
-var $table_rotate;
-var $tbrot_maxw;
-var $tbrot_maxh;
-var $tablebuffer;
-var $tbrot_align;
-var $tbrot_Links;
-
-var $divbuffer; // Buffer used when keeping DIV on one page
-var $keep_block_together; // Keep a Block from page-break-inside: avoid
-var $ktLinks; // Keep-together Block links array
-var $ktBlock; // Keep-together Block array
-var $ktForms;
-var $ktReference;
-var $ktBMoutlines;
-var $_kttoc;
-
-var $tbrot_y0;
-var $tbrot_x0;
-var $tbrot_w;
-var $tbrot_h;
-
-var $mb_enc;
-var $directionality;
-
-var $extgstates; // Used for alpha channel - Transparency (Watermark)
-var $mgl;
-var $mgt;
-var $mgr;
-var $mgb;
-
-var $tts;
-var $ttz;
-var $tta;
-
-var $headerDetails;
-var $footerDetails;
-
-// Best to alter the below variables using default stylesheet above
-var $page_break_after_avoid;
-var $margin_bottom_collapse;
-var $list_indent;
-var $list_align;
-var $list_margin_bottom;
-var $default_font_size; // in pts
-var $original_default_font_size; // used to save default sizes when using table default
-var $original_default_font;
-var $watermark_font;
-var $defaultAlign;
-
-// TABLE
-var $defaultTableAlign;
-var $tablethead;
-var $thead_font_weight;
-var $thead_font_style;
-var $thead_font_smCaps;
-var $thead_valign_default;
-var $thead_textalign_default;
-var $tabletfoot;
-var $tfoot_font_weight;
-var $tfoot_font_style;
-var $tfoot_font_smCaps;
-var $tfoot_valign_default;
-var $tfoot_textalign_default;
-
-var $trow_text_rotate;
-
-var $cellPaddingL;
-var $cellPaddingR;
-var $cellPaddingT;
-var $cellPaddingB;
-var $table_lineheight;
-var $table_border_attr_set;
-var $table_border_css_set;
-
-var $shrin_k; // factor with which to shrink tables - used internally - do not change
-var $shrink_this_table_to_fit; // 0 or false to disable; value (if set) gives maximum factor to reduce fontsize
-var $MarginCorrection; // corrects for OddEven Margins
-var $margin_footer;
-var $margin_header;
-
-var $tabletheadjustfinished;
-var $usingCoreFont;
-var $charspacing;
-
-//Private properties FROM FPDF
-var $DisplayPreferences;
-var $outlines;
-var $flowingBlockAttr;
-var $page; //current page number
-var $n; //current object number
-var $offsets; //array of object offsets
-var $buffer; //buffer holding in-memory PDF
-var $pages; //array containing pages
-var $state; //current document state
-var $compress; //compression flag
-var $DefOrientation; //default orientation
-var $CurOrientation; //current orientation
-var $OrientationChanges; //array indicating orientation changes
-var $k; //scale factor (number of points in user unit)
-var $fwPt;
-var $fhPt; //dimensions of page format in points
-var $fw;
-var $fh; //dimensions of page format in user unit
-var $wPt;
-var $hPt; //current dimensions of page in points
-var $w;
-var $h; //current dimensions of page in user unit
-var $lMargin; //left margin
-var $tMargin; //top margin
-var $rMargin; //right margin
-var $bMargin; //page break margin
-var $cMarginL; //cell margin Left
-var $cMarginR; //cell margin Right
-var $cMarginT; //cell margin Left
-var $cMarginB; //cell margin Right
-var $DeflMargin; //Default left margin
-var $DefrMargin; //Default right margin
-var $x;
-var $y; //current position in user unit for cell positioning
-var $lasth; //height of last cell printed
-var $LineWidth; //line width in user unit
-var $CoreFonts; //array of standard font names
-var $fonts; //array of used fonts
-var $FontFiles; //array of font files
-var $images; //array of used images
-var $PageLinks; //array of links in pages
-var $links; //array of internal links
-var $FontFamily; //current font family
-var $FontStyle; //current font style
-var $CurrentFont; //current font info
-var $FontSizePt; //current font size in points
-var $FontSize; //current font size in user unit
-var $DrawColor; //commands for drawing color
-var $FillColor; //commands for filling color
-var $TextColor; //commands for text color
-var $ColorFlag; //indicates whether fill and text colors are different
-var $autoPageBreak; //automatic page breaking
-var $PageBreakTrigger; //threshold used to trigger page breaks
-var $InFooter; //flag set when processing footer
-var $InHTMLFooter;
-
-var $processingFooter; //flag set when processing footer - added for columns
-var $processingHeader; //flag set when processing header - added for columns
-var $ZoomMode; //zoom display mode
-var $LayoutMode; //layout display mode
-var $title; //title
-var $subject; //subject
-var $author; //author
-var $keywords; //keywords
-var $creator; //creator
-
-var $aliasNbPg; //alias for total number of pages
-var $aliasNbPgGp; //alias for total number of pages in page group
-var $aliasNbPgHex;
-var $aliasNbPgGpHex;
-
-var $ispre;
-
-var $outerblocktags;
-var $innerblocktags;
-
-
-// **********************************
-// **********************************
-// **********************************
-// **********************************
-// **********************************
-// **********************************
-// **********************************
-// **********************************
-// **********************************
-
-function mPDF($mode='',$format='A4',$default_font_size=0,$default_font='',$mgl=15,$mgr=15,$mgt=16,$mgb=16,$mgh=9,$mgf=9, $orientation='P') {
-
- // mPDF 5.3.89 5.3.99
-/*-- BACKGROUNDS --*/
- if (!class_exists('grad', false)) { include(_MPDF_PATH.'classes/grad.php'); }
- if (empty($this->grad)) { $this->grad = new grad($this); }
-/*-- END BACKGROUNDS --*/
-/*-- FORMS --*/
- if (!class_exists('form', false)) { include(_MPDF_PATH.'classes/form.php'); }
- if (empty($this->form)) { $this->form = new form($this); }
-/*-- END FORMS --*/
-
- $this->time0 = microtime(true);
- //Some checks
- $this->_dochecks();
-
- // Set up Aliases for backwards compatability
- $this->UnvalidatedText =& $this->watermarkText;
- $this->TopicIsUnvalidated =& $this->showWatermarkText;
- $this->AliasNbPg =& $this->aliasNbPg;
- $this->AliasNbPgGp =& $this->aliasNbPgGp;
- $this->BiDirectional =& $this->biDirectional;
- $this->Anchor2Bookmark =& $this->anchor2Bookmark;
- $this->KeepColumns =& $this->keepColumns;
- $this->useOddEven =& $this->mirrorMargins;
- $this->useSubstitutionsMB =& $this->useSubstitutions;
-
- $this->visibility='visible'; // mPDF 5.3.41
-
- //Initialization of properties
- $this->spotColors=array();
- $this->spotColorIDs = array();
- $this->tableBackgrounds = array();
-
- $this->kt_y00 = '';
- $this->kt_p00 = '';
- $this->iterationCounter = false;
- $this->BMPonly = array();
- $this->page=0;
- $this->n=2;
- $this->buffer='';
- $this->objectbuffer = array();
- $this->pages=array();
- $this->OrientationChanges=array();
- $this->state=0;
- $this->fonts=array();
- $this->FontFiles=array();
- $this->images=array();
- $this->links=array();
- $this->InFooter=false;
- $this->processingFooter=false;
- $this->processingHeader=false;
- $this->lasth=0;
- $this->FontFamily='';
- $this->FontStyle='';
- $this->FontSizePt=9;
- $this->U=false;
- // Small Caps
- $this->upperCase = array();
- $this->S = false;
- $this->smCapsScale = 1;
- $this->smCapsStretch = 100;
-
- $this->defTextColor = $this->TextColor = $this->SetTColor($this->ConvertColor(0),true);
- $this->defDrawColor = $this->DrawColor = $this->SetDColor($this->ConvertColor(0),true);
- $this->defFillColor = $this->FillColor = $this->SetFColor($this->ConvertColor(255),true);
-
- //SVG color names array
- //http://www.w3schools.com/css/css_colornames.asp
- $this->SVGcolors = array('antiquewhite'=>'#FAEBD7','aqua'=>'#00FFFF','aquamarine'=>'#7FFFD4','beige'=>'#F5F5DC','black'=>'#000000',
-'blue'=>'#0000FF','brown'=>'#A52A2A','cadetblue'=>'#5F9EA0','chocolate'=>'#D2691E','cornflowerblue'=>'#6495ED','crimson'=>'#DC143C',
-'darkblue'=>'#00008B','darkgoldenrod'=>'#B8860B','darkgreen'=>'#006400','darkmagenta'=>'#8B008B','darkorange'=>'#FF8C00',
-'darkred'=>'#8B0000','darkseagreen'=>'#8FBC8F','darkslategray'=>'#2F4F4F','darkviolet'=>'#9400D3','deepskyblue'=>'#00BFFF',
-'dodgerblue'=>'#1E90FF','firebrick'=>'#B22222','forestgreen'=>'#228B22','fuchsia'=>'#FF00FF','gainsboro'=>'#DCDCDC','gold'=>'#FFD700',
-'gray'=>'#808080','green'=>'#008000','greenyellow'=>'#ADFF2F','hotpink'=>'#FF69B4','indigo'=>'#4B0082','khaki'=>'#F0E68C',
-'lavenderblush'=>'#FFF0F5','lemonchiffon'=>'#FFFACD','lightcoral'=>'#F08080','lightgoldenrodyellow'=>'#FAFAD2','lightgreen'=>'#90EE90',
-'lightsalmon'=>'#FFA07A','lightskyblue'=>'#87CEFA','lightslategray'=>'#778899','lightyellow'=>'#FFFFE0','lime'=>'#00FF00','limegreen'=>'#32CD32',
-'magenta'=>'#FF00FF','maroon'=>'#800000','mediumaquamarine'=>'#66CDAA','mediumorchid'=>'#BA55D3','mediumseagreen'=>'#3CB371',
-'mediumspringgreen'=>'#00FA9A','mediumvioletred'=>'#C71585','midnightblue'=>'#191970','mintcream'=>'#F5FFFA','moccasin'=>'#FFE4B5','navy'=>'#000080',
-'olive'=>'#808000','orange'=>'#FFA500','orchid'=>'#DA70D6','palegreen'=>'#98FB98',
-'palevioletred'=>'#D87093','peachpuff'=>'#FFDAB9','pink'=>'#FFC0CB','powderblue'=>'#B0E0E6','purple'=>'#800080',
-'red'=>'#FF0000','royalblue'=>'#4169E1','salmon'=>'#FA8072','seagreen'=>'#2E8B57','sienna'=>'#A0522D','silver'=>'#C0C0C0','skyblue'=>'#87CEEB',
-'slategray'=>'#708090','springgreen'=>'#00FF7F','steelblue'=>'#4682B4','tan'=>'#D2B48C','teal'=>'#008080','thistle'=>'#D8BFD8','turquoise'=>'#40E0D0',
-'violetred'=>'#D02090','white'=>'#FFFFFF','yellow'=>'#FFFF00',
-'aliceblue'=>'#f0f8ff', 'azure'=>'#f0ffff', 'bisque'=>'#ffe4c4', 'blanchedalmond'=>'#ffebcd', 'blueviolet'=>'#8a2be2', 'burlywood'=>'#deb887',
-'chartreuse'=>'#7fff00', 'coral'=>'#ff7f50', 'cornsilk'=>'#fff8dc', 'cyan'=>'#00ffff', 'darkcyan'=>'#008b8b', 'darkgray'=>'#a9a9a9',
-'darkgrey'=>'#a9a9a9', 'darkkhaki'=>'#bdb76b', 'darkolivegreen'=>'#556b2f', 'darkorchid'=>'#9932cc', 'darksalmon'=>'#e9967a',
-'darkslateblue'=>'#483d8b', 'darkslategrey'=>'#2f4f4f', 'darkturquoise'=>'#00ced1', 'deeppink'=>'#ff1493', 'dimgray'=>'#696969',
-'dimgrey'=>'#696969', 'floralwhite'=>'#fffaf0', 'ghostwhite'=>'#f8f8ff', 'goldenrod'=>'#daa520', 'grey'=>'#808080', 'honeydew'=>'#f0fff0',
-'indianred'=>'#cd5c5c', 'ivory'=>'#fffff0', 'lavender'=>'#e6e6fa', 'lawngreen'=>'#7cfc00', 'lightblue'=>'#add8e6', 'lightcyan'=>'#e0ffff',
-'lightgray'=>'#d3d3d3', 'lightgrey'=>'#d3d3d3', 'lightpink'=>'#ffb6c1', 'lightseagreen'=>'#20b2aa', 'lightslategrey'=>'#778899',
-'lightsteelblue'=>'#b0c4de', 'linen'=>'#faf0e6', 'mediumblue'=>'#0000cd', 'mediumpurple'=>'#9370db', 'mediumslateblue'=>'#7b68ee',
-'mediumturquoise'=>'#48d1cc', 'mistyrose'=>'#ffe4e1', 'navajowhite'=>'#ffdead', 'oldlace'=>'#fdf5e6', 'olivedrab'=>'#6b8e23', 'orangered'=>'#ff4500',
-'palegoldenrod'=>'#eee8aa', 'paleturquoise'=>'#afeeee', 'papayawhip'=>'#ffefd5', 'peru'=>'#cd853f', 'plum'=>'#dda0dd', 'rosybrown'=>'#bc8f8f',
-'saddlebrown'=>'#8b4513', 'sandybrown'=>'#f4a460', 'seashell'=>'#fff5ee', 'slateblue'=>'#6a5acd', 'slategrey'=>'#708090', 'snow'=>'#fffafa',
-'tomato'=>'#ff6347', 'violet'=>'#ee82ee', 'wheat'=>'#f5deb3', 'whitesmoke'=>'#f5f5f5', 'yellowgreen'=>'#9acd32');
-
- $this->ColorFlag=false;
- $this->extgstates = array();
-
- $this->mb_enc='windows-1252';
- $this->directionality='ltr';
- $this->defaultAlign = 'L';
- $this->defaultTableAlign = 'L';
-
- $this->fixedPosBlockSave = array();
- $this->extraFontSubsets = 0;
-
- $this->SHYpatterns = array();
- $this->loadedSHYdictionary = false;
- $this->SHYdictionary = array();
- $this->SHYdictionaryWords = array();
- $this->blockContext = 1;
- $this->floatDivs = array();
- $this->DisplayPreferences='';
-
- $this->tablecascadeCSS = array();
- $this->listcascadeCSS = array();
-
- $this->patterns = array(); // Tiling patterns used for backgrounds
- $this->pageBackgrounds = array();
- $this->writingHTMLheader = false; // internal flag - used both for writing HTMLHeaders/Footers and FixedPos block
- $this->writingHTMLfooter = false; // internal flag - used both for writing HTMLHeaders/Footers and FixedPos block
- $this->gradients = array();
-
- $this->kwt_Reference = array();
- $this->kwt_BMoutlines = array();
- $this->kwt_toc = array();
-
- $this->tbrot_Reference = array();
- $this->tbrot_BMoutlines = array();
- $this->tbrot_toc = array();
-
- $this->col_Reference = array();
- $this->col_BMoutlines = array();
- $this->col_toc = array();
- $this->graphs = array();
-
- $this->pgsIns = array();
- $this->PDFAXwarnings = array();
- $this->inlineDisplayOff = false;
- $this->kerning = false;
- $this->lSpacingCSS = '';
- $this->wSpacingCSS = '';
- $this->fixedlSpacing = false;
- $this->minwSpacing = 0;
-
-
- $this->baselineC = 0.35; // Baseline for text
- $this->noImageFile = str_replace("\\","/",dirname(__FILE__)) . '/includes/no_image.jpg';
- $this->subPos = 0;
- $this->forceExactLineheight = false;
- $this->listOcc = 0;
- $this->normalLineheight = 1.3;
- // These are intended as configuration variables, and should be set in config.php - which will override these values;
- // set here as failsafe as will cause an error if not defined
- $this->incrementFPR1 = 10;
- $this->incrementFPR2 = 10;
- $this->incrementFPR3 = 10;
- $this->incrementFPR4 = 10;
-
- $this->fullImageHeight = false;
- $this->floatbuffer = array();
- $this->floatmargins = array();
- $this->autoFontGroups = 0;
- $this->formobjects=array(); // array of Form Objects for WMF
- $this->InlineProperties=array();
- $this->InlineAnnots=array();
- $this->ktAnnots=array();
- $this->tbrot_Annots=array();
- $this->kwt_Annots=array();
- $this->columnAnnots=array();
- $this->pageDim=array();
- $this->breakpoints = array(); // used in columnbuffer
- $this->tableLevel=0;
- $this->tbctr=array(); // counter for nested tables at each level
- $this->page_box = array();
- $this->show_marks = ''; // crop or cross marks
- $this->kwt = false;
- $this->kwt_height = 0;
- $this->kwt_y0 = 0;
- $this->kwt_x0 = 0;
- $this->kwt_buffer = array();
- $this->kwt_Links = array();
- $this->kwt_moved = false;
- $this->kwt_saved = false;
- $this->PageNumSubstitutions = array();
- $this->base_table_properties=array();
- $this->borderstyles = array('inset','groove','outset','ridge','dotted','dashed','solid','double');
- $this->tbrot_align = 'C';
- $this->pageheaders=array();
- $this->pagefooters=array();
-
- $this->pageHTMLheaders=array();
- $this->pageHTMLfooters=array();
- $this->HTMLheaderPageLinks = array();
- $this->HTMLheaderPageAnnots = array();
-
- $this->ktForms = array();
- $this->HTMLheaderPageForms = array();
- $this->columnForms = array();
- $this->tbrotForms = array();
- $this->useRC128encryption = false;
- $this->uniqid = '';
-
- $this->cascadeCSS = array();
- $this->bufferoutput = false;
- $this->encrypted=false; //whether document is protected
- $this->BMoutlines=array();
- $this->ColActive=0; //Flag indicating that columns are on (the index is being processed)
- $this->Reference=array(); //Array containing the references
- $this->CurrCol=0; //Current column number
- $this->ColL = array(0); // Array of Left pos of columns - absolute - needs Margin correction for Odd-Even
- $this->ColR = array(0); // Array of Right pos of columns - absolute pos - needs Margin correction for Odd-Even
- $this->ChangeColumn = 0;
- $this->columnbuffer = array();
- $this->ColDetails = array(); // Keeps track of some column details
- $this->columnLinks = array(); // Cross references PageLinks
- $this->substitute = array(); // Array of substitution strings e.g. 112
- $this->entsearch = array(); // Array of HTML entities (>ASCII 127) to substitute
- $this->entsubstitute = array(); // Array of substitution decimal unicode for the Hi entities
- $this->lastoptionaltag = '';
- $this->charset_in = '';
- $this->blk = array();
- $this->blklvl = 0;
- $this->tts = false;
- $this->ttz = false;
- $this->tta = false;
- $this->ispre=false;
-
- $this->checkSIP = false;
- $this->checkSMP = false;
- $this->checkCJK = false;
- $this->tableCJK = false;
-
- $this->headerDetails=array();
- $this->footerDetails=array();
- $this->page_break_after_avoid = false;
- $this->margin_bottom_collapse = false;
- $this->tablethead = 0;
- $this->tabletfoot = 0;
- $this->table_border_attr_set = 0;
- $this->table_border_css_set = 0;
- $this->shrin_k = 1.0;
- $this->shrink_this_table_to_fit = 0;
- $this->MarginCorrection = 0;
-
- $this->tabletheadjustfinished = false;
- $this->usingCoreFont = false;
- $this->charspacing=0;
-
- $this->outlines=array();
- $this->autoPageBreak = true;
-
- require(_MPDF_PATH.'config.php'); // config data
-
- $this->_setPageSize($format, $orientation);
- $this->DefOrientation=$orientation;
-
- $this->margin_header=$mgh;
- $this->margin_footer=$mgf;
-
- $bmargin=$mgb;
-
- $this->DeflMargin = $mgl;
- $this->DefrMargin = $mgr;
-
- $this->orig_tMargin = $mgt;
- $this->orig_bMargin = $bmargin;
- $this->orig_lMargin = $this->DeflMargin;
- $this->orig_rMargin = $this->DefrMargin;
- $this->orig_hMargin = $this->margin_header;
- $this->orig_fMargin = $this->margin_footer;
-
- if ($this->setAutoTopMargin=='pad') { $mgt += $this->margin_header; }
- if ($this->setAutoBottomMargin=='pad') { $mgb += $this->margin_footer; }
- $this->SetMargins($this->DeflMargin,$this->DefrMargin,$mgt); // sets l r t margin
- //Automatic page break
- $this->SetAutoPageBreak($this->autoPageBreak,$bmargin); // sets $this->bMargin & PageBreakTrigger
-
- $this->pgwidth = $this->w - $this->lMargin - $this->rMargin;
-
- //Interior cell margin (1 mm) ? not used
- $this->cMarginL = 1;
- $this->cMarginR = 1;
- //Line width (0.2 mm)
- $this->LineWidth=.567/_MPDFK;
-
- //To make the function Footer() work - replaces {nb} with page number
- $this->AliasNbPages();
- $this->AliasNbPageGroups();
-
- $this->aliasNbPgHex = '{nbHEXmarker}';
- $this->aliasNbPgGpHex = '{nbpgHEXmarker}';
-
- //Enable all tags as default
- $this->DisableTags();
- //Full width display mode
- $this->SetDisplayMode(100); // fullwidth? 'fullpage'
- //Compression
- $this->SetCompression(true);
- //Set default display preferences
- $this->SetDisplayPreferences('');
-
- // Font data
- require(_MPDF_PATH.'config_fonts.php');
- // Available fonts
- $this->available_unifonts = array();
- foreach ($this->fontdata AS $f => $fs) {
- if (isset($fs['R']) && $fs['R']) { $this->available_unifonts[] = $f; }
- if (isset($fs['B']) && $fs['B']) { $this->available_unifonts[] = $f.'B'; }
- if (isset($fs['I']) && $fs['I']) { $this->available_unifonts[] = $f.'I'; }
- if (isset($fs['BI']) && $fs['BI']) { $this->available_unifonts[] = $f.'BI'; }
- }
-
- $this->default_available_fonts = $this->available_unifonts;
-
- $optcore = false;
- $onlyCoreFonts = false;
- if (preg_match('/([\-+])aCJK/i',$mode, $m)) {
- preg_replace('/([\-+])aCJK/i','',$mode);
- if ($m[1]=='+') { $this->useAdobeCJK = true; }
- else { $this->useAdobeCJK = false; }
- }
-
- if (strlen($mode)==1) {
- if ($mode=='s') { $this->percentSubset = 100; $mode = ''; }
- else if ($mode=='c') { $onlyCoreFonts = true; $mode = ''; }
- }
- else if (substr($mode,-2)=='-s') {
- $this->percentSubset = 100;
- $mode = substr($mode,0,strlen($mode)-2);
- }
- else if (substr($mode,-2)=='-c') {
- $onlyCoreFonts = true;
- $mode = substr($mode,0,strlen($mode)-2);
- }
- else if (substr($mode,-2)=='-x') {
- $optcore = true;
- $mode = substr($mode,0,strlen($mode)-2);
- }
-
- // Autodetect if mode is a language_country string (en-GB or en_GB or en)
- if ((strlen($mode) == 5 && $mode != 'UTF-8') || strlen($mode) == 2) {
- list ($coreSuitable,$mpdf_pdf_unifonts) = GetLangOpts($mode, $this->useAdobeCJK);
- if ($coreSuitable && $optcore) { $onlyCoreFonts = true; }
- if ($mpdf_pdf_unifonts) {
- $this->RestrictUnicodeFonts($mpdf_pdf_unifonts);
- $this->default_available_fonts = $mpdf_pdf_unifonts;
- }
- $this->currentLang = $mode;
- $this->default_lang = $mode;
- }
-
- $this->onlyCoreFonts = $onlyCoreFonts;
-
- if ($this->onlyCoreFonts) {
- $this->setMBencoding('windows-1252'); // sets $this->mb_enc
- }
- else {
- $this->setMBencoding('UTF-8'); // sets $this->mb_enc
- }
- @mb_regex_encoding('UTF-8'); // mPDF 5.3.07 // required only for mb_ereg... and mb_split functions
-
-
- // Adobe CJK fonts
- $this->available_CJK_fonts = array('gb','big5','sjis','uhc','gbB','big5B','sjisB','uhcB','gbI','big5I','sjisI','uhcI',
- 'gbBI','big5BI','sjisBI','uhcBI');
-
-
- //Standard fonts
- $this->CoreFonts=array('ccourier'=>'Courier','ccourierB'=>'Courier-Bold','ccourierI'=>'Courier-Oblique','ccourierBI'=>'Courier-BoldOblique',
- 'chelvetica'=>'Helvetica','chelveticaB'=>'Helvetica-Bold','chelveticaI'=>'Helvetica-Oblique','chelveticaBI'=>'Helvetica-BoldOblique',
- 'ctimes'=>'Times-Roman','ctimesB'=>'Times-Bold','ctimesI'=>'Times-Italic','ctimesBI'=>'Times-BoldItalic',
- 'csymbol'=>'Symbol','czapfdingbats'=>'ZapfDingbats');
- $this->fontlist=array("ctimes","ccourier","chelvetica","csymbol","czapfdingbats");
-
- // Substitutions
- $this->setHiEntitySubstitutions();
-
- if ($this->onlyCoreFonts) {
- $this->useSubstitutions = true;
- $this->SetSubstitutions();
- }
- else { $this->useSubstitutions = false; }
-
-/*-- HTML-CSS --*/
- if (file_exists(_MPDF_PATH.'mpdf.css')) {
- $css = file_get_contents(_MPDF_PATH.'mpdf.css');
- $css2 = $this->ReadDefaultCSS($css);
- $this->defaultCSS = $this->array_merge_recursive_unique($this->defaultCSS,$css2);
- }
-/*-- END HTML-CSS --*/
-
- if ($default_font=='') {
- if ($this->onlyCoreFonts) {
- if (in_array(strtolower($this->defaultCSS['BODY']['FONT-FAMILY']),$this->mono_fonts)) { $default_font = 'ccourier'; }
- else if (in_array(strtolower($this->defaultCSS['BODY']['FONT-FAMILY']),$this->sans_fonts)) { $default_font = 'chelvetica'; }
- else { $default_font = 'ctimes'; }
- }
- else { $default_font = $this->defaultCSS['BODY']['FONT-FAMILY']; }
- }
- if (!$default_font_size) {
- $mmsize = $this->ConvertSize($this->defaultCSS['BODY']['FONT-SIZE']);
- $default_font_size = $mmsize*(_MPDFK);
- }
-
- if ($default_font) { $this->SetDefaultFont($default_font); }
- if ($default_font_size) { $this->SetDefaultFontSize($default_font_size); }
-
- $this->SetLineHeight(); // lineheight is in mm
-
- $this->SetFColor($this->ConvertColor(255));
- $this->HREF='';
- $this->oldy=-1;
- $this->B=0;
- $this->U=false;
- $this->S=false;
- $this->I=0;
-
- $this->listlvl=0;
- $this->listnum=0;
- $this->listtype='';
- $this->listoccur=array();
- $this->listlist=array();
- $this->listitem=array();
-
- $this->tdbegin=false;
- $this->table=array();
- $this->cell=array();
- $this->col=-1;
- $this->row=-1;
- $this->cellBorderBuffer = array();
-
- $this->divbegin=false;
- $this->divalign='';
- $this->divwidth=0;
- $this->divheight=0;
- $this->spanbgcolor=false;
- $this->divrevert=false;
- // mPDF 5.3.61
- $this->spanborder=false;
- $this->spanborddet=array();
-
- $this->blockjustfinished=false;
- $this->listjustfinished=false;
- $this->ignorefollowingspaces = true; //in order to eliminate exceeding left-side spaces
- $this->toupper=false;
- $this->tolower=false;
- $this->capitalize=false;
- $this->dash_on=false;
- $this->dotted_on=false;
- $this->SUP=false;
- $this->SUB=false;
- $this->strike=false;
- $this->textshadow=''; // mPDF 5.3.A2
-
- $this->currentfontfamily='';
- $this->currentfontsize='';
- $this->currentfontstyle='';
- $this->colorarray=array();
- $this->spanbgcolorarray=array();
- $this->textbuffer=array();
- $this->CSS=array();
- $this->internallink=array();
- $this->basepath = "";
-
- $this->SetBasePath('');
-
- $this->outlineparam = array();
- $this->outline_on = false;
-
- $this->specialcontent = '';
- $this->selectoption = array();
-
-/*-- IMPORTS --*/
-
- $this->tpls = array();
- $this->tpl = 0;
- $this->tplprefix = "/TPL";
- $this->res = array();
- if ($this->enableImports) {
- $this->SetImportUse();
- }
-/*-- END IMPORTS --*/
-
- if ($this->progressBar) { $this->StartProgressBarOutput($this->progressBar) ; } // *PROGRESS-BAR*
-}
-
-
-function _setPageSize($format, &$orientation) {
- //Page format
- if(is_string($format))
- {
- if ($format=='') { $format = 'A4'; }
- $pfo = 'P';
- if(preg_match('/([0-9a-zA-Z]*)-L/i',$format,$m)) { // e.g. A4-L = A4 landscape
- $format=$m[1];
- $pfo='L';
- }
- $format = $this->_getPageFormat($format);
- if (!$format) { $this->Error('Unknown page format: '.$format); }
- else { $orientation = $pfo; }
-
- $this->fwPt=$format[0];
- $this->fhPt=$format[1];
- }
- else
- {
- if (!$format[0] || !$format[1]) { $this->Error('Invalid page format: '.$format[0].' '.$format[1]); }
- $this->fwPt=$format[0]*_MPDFK;
- $this->fhPt=$format[1]*_MPDFK;
- }
- $this->fw=$this->fwPt/_MPDFK;
- $this->fh=$this->fhPt/_MPDFK;
- //Page orientation
- $orientation=strtolower($orientation);
- if($orientation=='p' or $orientation=='portrait')
- {
- $orientation='P';
- $this->wPt=$this->fwPt;
- $this->hPt=$this->fhPt;
- }
- elseif($orientation=='l' or $orientation=='landscape')
- {
- $orientation='L';
- $this->wPt=$this->fhPt;
- $this->hPt=$this->fwPt;
- }
- else $this->Error('Incorrect orientation: '.$orientation);
- $this->CurOrientation=$orientation;
-
- $this->w=$this->wPt/_MPDFK;
- $this->h=$this->hPt/_MPDFK;
-}
-
-function _getPageFormat($format) {
- switch (strtoupper($format)) {
- case '4A0': {$format = array(4767.87,6740.79); break;}
- case '2A0': {$format = array(3370.39,4767.87); break;}
- case 'A0': {$format = array(2383.94,3370.39); break;}
- case 'A1': {$format = array(1683.78,2383.94); break;}
- case 'A2': {$format = array(1190.55,1683.78); break;}
- case 'A3': {$format = array(841.89,1190.55); break;}
- case 'A4': default: {$format = array(595.28,841.89); break;}
- case 'A5': {$format = array(419.53,595.28); break;}
- case 'A6': {$format = array(297.64,419.53); break;}
- case 'A7': {$format = array(209.76,297.64); break;}
- case 'A8': {$format = array(147.40,209.76); break;}
- case 'A9': {$format = array(104.88,147.40); break;}
- case 'A10': {$format = array(73.70,104.88); break;}
- case 'B0': {$format = array(2834.65,4008.19); break;}
- case 'B1': {$format = array(2004.09,2834.65); break;}
- case 'B2': {$format = array(1417.32,2004.09); break;}
- case 'B3': {$format = array(1000.63,1417.32); break;}
- case 'B4': {$format = array(708.66,1000.63); break;}
- case 'B5': {$format = array(498.90,708.66); break;}
- case 'B6': {$format = array(354.33,498.90); break;}
- case 'B7': {$format = array(249.45,354.33); break;}
- case 'B8': {$format = array(175.75,249.45); break;}
- case 'B9': {$format = array(124.72,175.75); break;}
- case 'B10': {$format = array(87.87,124.72); break;}
- case 'C0': {$format = array(2599.37,3676.54); break;}
- case 'C1': {$format = array(1836.85,2599.37); break;}
- case 'C2': {$format = array(1298.27,1836.85); break;}
- case 'C3': {$format = array(918.43,1298.27); break;}
- case 'C4': {$format = array(649.13,918.43); break;}
- case 'C5': {$format = array(459.21,649.13); break;}
- case 'C6': {$format = array(323.15,459.21); break;}
- case 'C7': {$format = array(229.61,323.15); break;}
- case 'C8': {$format = array(161.57,229.61); break;}
- case 'C9': {$format = array(113.39,161.57); break;}
- case 'C10': {$format = array(79.37,113.39); break;}
- case 'RA0': {$format = array(2437.80,3458.27); break;}
- case 'RA1': {$format = array(1729.13,2437.80); break;}
- case 'RA2': {$format = array(1218.90,1729.13); break;}
- case 'RA3': {$format = array(864.57,1218.90); break;}
- case 'RA4': {$format = array(609.45,864.57); break;}
- case 'SRA0': {$format = array(2551.18,3628.35); break;}
- case 'SRA1': {$format = array(1814.17,2551.18); break;}
- case 'SRA2': {$format = array(1275.59,1814.17); break;}
- case 'SRA3': {$format = array(907.09,1275.59); break;}
- case 'SRA4': {$format = array(637.80,907.09); break;}
- case 'LETTER': {$format = array(612.00,792.00); break;}
- case 'LEGAL': {$format = array(612.00,1008.00); break;}
- case 'LEDGER': {$format = array(279.00,432.00); break;} // mPDF 5.3.38
- case 'TABLOID': {$format = array(279.00,432.00); break;} // mPDF 5.3.38
- case 'EXECUTIVE': {$format = array(521.86,756.00); break;}
- case 'FOLIO': {$format = array(612.00,936.00); break;}
- case 'B': {$format=array(362.83,561.26 ); break;} // 'B' format paperback size 128x198mm
- case 'A': {$format=array(314.65,504.57 ); break;} // 'A' format paperback size 111x178mm
- case 'DEMY': {$format=array(382.68,612.28 ); break;} // 'Demy' format paperback size 135x216mm
- case 'ROYAL': {$format=array(433.70,663.30 ); break;} // 'Royal' format paperback size 153x234mm
- default: $format = false;
- }
- return $format;
-}
-
-
-/*-- PROGRESS-BAR --*/
-function StartProgressBarOutput($mode=1) {
- // must be relative path, or URI (not a file system path)
- if (!defined('_MPDF_URI')) {
- $this->progressBar = false;
- if ($this->debug) { $this->Error("You need to define _MPDF_URI to use the progress bar!"); }
- else return false;
- }
- $this->progressBar = $mode;
- if ($this->progbar_altHTML) {
- echo $this->progbar_altHTML;
- }
- else {
- echo '
-
- mPDF File Progress
-
-
-
-
-
-
'.$this->progbar_heading.'
-
- ';
- if ($this->progressBar==2) { echo '
- Writing HTML code
-
-
-
-
- Autosizing elements
-
-
-
- Writing Tables
-
-
-
-
-
- '; }
- echo ' Writing PDF file
-
-
- ';
- if ($this->progressBar==2) { echo '
-
- Memory usage
-
- 0 '.ini_get("memory_limit").'
-
- Memory usage (peak)
-
- 0 '.ini_get("memory_limit").'
-
-
- '; }
- echo '
-
-
-
- ';
- }
- ob_flush();
- flush();
-}
-
-function UpdateProgressBar($el,$val,$txt='') {
- // $val should be a string - 5 = actual value, +15 = increment
-
- if ($this->progressBar<2) {
- if ($el>3) { return; }
- else if ($el ==1) { $el = 2; }
- }
- echo ''."\n";
- ob_flush();
- flush();
-}
-/*-- END PROGRESS-BAR --*/
-
-
-
-function RestrictUnicodeFonts($res) {
- // $res = array of (Unicode) fonts to restrict to: e.g. norasi|norasiB - language specific
- if (count($res)) { // Leave full list of available fonts if passed blank array
- $this->available_unifonts = $res;
- }
- else { $this->available_unifonts = $this->default_available_fonts; }
- if (count($this->available_unifonts) == 0) { $this->available_unifonts[] = $this->default_available_fonts[0]; }
- $this->available_unifonts = array_values($this->available_unifonts);
-}
-
-
-function setMBencoding($enc) {
- // mPDF 5.3.07
- if ($this->mb_enc != $enc) {
- $this->mb_enc = $enc;
- mb_internal_encoding($this->mb_enc);
- }
-}
-
-
-function SetMargins($left,$right,$top) {
- //Set left, top and right margins
- $this->lMargin=$left;
- $this->rMargin=$right;
- $this->tMargin=$top;
-}
-
-function ResetMargins() {
- //ReSet left, top margins
- if (($this->forcePortraitHeaders || $this->forcePortraitMargins) && $this->DefOrientation=='P' && $this->CurOrientation=='L') {
- if (($this->mirrorMargins) && (($this->page)%2==0)) { // EVEN
- $this->tMargin=$this->orig_rMargin;
- $this->bMargin=$this->orig_lMargin;
- }
- else { // ODD // OR NOT MIRRORING MARGINS/FOOTERS
- $this->tMargin=$this->orig_lMargin;
- $this->bMargin=$this->orig_rMargin;
- }
- $this->lMargin=$this->DeflMargin;
- $this->rMargin=$this->DefrMargin;
- $this->MarginCorrection = 0;
- $this->PageBreakTrigger=$this->h-$this->bMargin;
- }
- else if (($this->mirrorMargins) && (($this->page)%2==0)) { // EVEN
- $this->lMargin=$this->DefrMargin;
- $this->rMargin=$this->DeflMargin;
- $this->MarginCorrection = $this->DefrMargin-$this->DeflMargin;
-
- }
- else { // ODD // OR NOT MIRRORING MARGINS/FOOTERS
- $this->lMargin=$this->DeflMargin;
- $this->rMargin=$this->DefrMargin;
- if ($this->mirrorMargins) { $this->MarginCorrection = $this->DeflMargin-$this->DefrMargin; }
- }
- $this->x=$this->lMargin;
-
-}
-
-function SetLeftMargin($margin) {
- //Set left margin
- $this->lMargin=$margin;
- if($this->page>0 and $this->x<$margin) $this->x=$margin;
-}
-
-function SetTopMargin($margin) {
- //Set top margin
- $this->tMargin=$margin;
-}
-
-function SetRightMargin($margin) {
- //Set right margin
- $this->rMargin=$margin;
-}
-
-function SetAutoPageBreak($auto,$margin=0) {
- //Set auto page break mode and triggering margin
- $this->autoPageBreak=$auto;
- $this->bMargin=$margin;
- $this->PageBreakTrigger=$this->h-$margin;
-}
-
-function SetDisplayMode($zoom,$layout='continuous') {
- //Set display mode in viewer
- if($zoom=='fullpage' or $zoom=='fullwidth' or $zoom=='real' or $zoom=='default' or !is_string($zoom))
- $this->ZoomMode=$zoom;
- else
- $this->Error('Incorrect zoom display mode: '.$zoom);
- if($layout=='single' or $layout=='continuous' or $layout=='two' or $layout=='twoleft' or $layout=='tworight' or $layout=='default')
- $this->LayoutMode=$layout;
- else
- $this->Error('Incorrect layout display mode: '.$layout);
-}
-
-function SetCompression($compress) {
- //Set page compression
- if(function_exists('gzcompress')) $this->compress=$compress;
- else $this->compress=false;
-}
-
-function SetTitle($title) {
- //Title of document // Arrives as UTF-8
- $this->title = $title;
-}
-
-function SetSubject($subject) {
- //Subject of document
- $this->subject= $subject;
-}
-
-function SetAuthor($author) {
- //Author of document
- $this->author= $author;
-}
-
-function SetKeywords($keywords) {
- //Keywords of document
- $this->keywords= $keywords;
-}
-
-function SetCreator($creator) {
- //Creator of document
- $this->creator= $creator;
-}
-
-
-function SetAnchor2Bookmark($x) {
- $this->anchor2Bookmark = $x;
-}
-
-function AliasNbPages($alias='{nb}') {
- //Define an alias for total number of pages
- $this->aliasNbPg=$alias;
-}
-
-function AliasNbPageGroups($alias='{nbpg}') {
- //Define an alias for total number of pages in a group
- $this->aliasNbPgGp=$alias;
-}
-
-function SetAlpha($alpha, $bm='Normal', $return=false, $mode='B') {
-// alpha: real value from 0 (transparent) to 1 (opaque)
-// bm: blend mode, one of the following:
-// Normal, Multiply, Screen, Overlay, Darken, Lighten, ColorDodge, ColorBurn,
-// HardLight, SoftLight, Difference, Exclusion, Hue, Saturation, Color, Luminosity
-// set alpha for stroking (CA) and non-stroking (ca) operations
-// mode determines F (fill) S (stroke) B (both)
- if (($this->PDFA || $this->PDFX) && $alpha!=1) {
- if (($this->PDFA && !$this->PDFAauto) || ($this->PDFX && !$this->PDFXauto)) { $this->PDFAXwarnings[] = "Image opacity must be 100% (Opacity changed to 100%)"; }
- $alpha = 1;
- }
- $a = array('BM'=>'/'.$bm);
- if ($mode=='F' || $mode='B') $a['ca'] = $alpha;
- if ($mode=='S' || $mode='B') $a['CA'] = $alpha;
- $gs = $this->AddExtGState($a);
- if ($return) { return sprintf('/GS%d gs', $gs); }
- else { $this->_out(sprintf('/GS%d gs', $gs)); }
-}
-
-function AddExtGState($parms) {
- $n = count($this->extgstates);
- // check if graphics state already exists
- for ($i=1; $i<=$n; $i++) {
- if (count($this->extgstates[$i]['parms']) == count($parms)) {
- $same = true;
- foreach($this->extgstates[$i]['parms'] AS $k=>$v) {
- if (!isset($parms[$k]) || $parms[$k] != $v) { $same = false; break; }
- }
- if ($same) { return $i; }
- }
- }
- $n++;
- $this->extgstates[$n]['parms'] = $parms;
- return $n;
-}
-
-// mPDF 5.3.41
-function SetVisibility($v) {
- if (($this->PDFA || $this->PDFX) && $this->visibility!='visible') { $this->PDFAXwarnings[] = "Cannot set visibility to anything other than full when using PDFA or PDFX"; return ''; }
- else if (!$this->PDFA && !$this->PDFX) // mPDF 5.3.45
- $this->pdf_version='1.5';
- if($this->visibility!='visible') {
- $this->_out('EMC');
- $this->hasOC = true; // mPDF 5.3.45
- }
- if($v=='printonly')
- $this->_out('/OC /OC1 BDC');
- elseif($v=='screenonly')
- $this->_out('/OC /OC2 BDC');
- elseif($v=='hidden')
- $this->_out('/OC /OC3 BDC');
- elseif($v!='visible')
- $this->Error('Incorrect visibility: '.$v);
- $this->visibility=$v;
-}
-
-function Error($msg) {
- //Fatal error
- header('Content-Type: text/html; charset=utf-8');
- die('
mPDF error: '.$msg);
-}
-
-function Open() {
- //Begin document
- if($this->state==0) $this->_begindoc();
-}
-
-function Close() {
- if ($this->progressBar) { $this->UpdateProgressBar(2,'2','Closing last page'); } // *PROGRESS-BAR*
- //Terminate document
- if($this->state==3) return;
- if($this->page==0) $this->AddPage($this->CurOrientation);
- if (count($this->cellBorderBuffer)) { $this->printcellbuffer(); } // *TABLES*
- if ($this->tablebuffer) { $this->printtablebuffer(); } // *TABLES*
-/*-- COLUMNS --*/
-
- if ($this->ColActive) {
- $this->SetColumns(0);
- $this->ColActive = 0;
- if (count($this->columnbuffer)) { $this->printcolumnbuffer(); }
- }
-/*-- END COLUMNS --*/
- if (count($this->divbuffer)) { $this->printdivbuffer(); }
-
- // BODY Backgrounds
- $s = '';
-
- $s .= $this->PrintBodyBackgrounds();
-
- $s .= $this->PrintPageBackgrounds();
- $this->pages[$this->page] = preg_replace('/(___BACKGROUND___PATTERNS'.date('jY').')/', "\n".$s."\n".'\\1', $this->pages[$this->page]);
- $this->pageBackgrounds = array();
-
- // mPDF 5.3.41
- if($this->visibility!='visible')
- $this->SetVisibility('visible');
-
- if (!$this->tocontents || !$this->tocontents->TOCmark) { //Page footer
- $this->InFooter=true;
- $this->Footer();
- $this->InFooter=false;
- }
- if ($this->tocontents && ($this->tocontents->TOCmark || count($this->tocontents->m_TOC))) { $this->tocontents->insertTOC(); } // *TOC*
-
- //Close page
- $this->_endpage();
-
- //Close document
- $this->_enddoc();
-}
-
-/*-- BACKGROUNDS --*/
-function _resizeBackgroundImage($imw, $imh, $cw, $ch, $resize=0, $repx, $repy) {
- $cw = $cw*_MPDFK;
- $ch = $ch*_MPDFK;
- if (!$resize) { return array($imw, $imh, $repx, $repy); }
- if ($resize==1 && $imw > $cw) {
- $h = $imh * $cw/$imw;
- $repx = false;
- return array($cw, $h, $repx, $repy);
- }
- else if ($resize==2 && $imh > $ch) {
- $w = $imw * $ch/$imh;
- $repy = false;
- return array($w, $ch, $repx, $repy);
- }
- else if ($resize==3) {
- $w = $imw;
- $h = $imh;
- $saverepx = $repx;
- if ($w > $cw) {
- $h = $h * $cw/$w;
- $w = $cw;
- $repx = false;
- }
- if ($h > $ch) {
- $w = $w * $ch/$h;
- $h = $ch;
- $repy = false;
- $repx = $saverepx;
- }
- return array($w, $h, $repx, $repy);
- }
- else if ($resize==4) {
- $h = $imh * $cw/$imw;
- $repx = false;
- return array($cw, $h, $repx, $repy);
- }
- else if ($resize==5) {
- $w = $imw * $ch/$imh;
- $repy = false;
- return array($w, $ch, $repx, $repy);
- }
- else if ($resize==6) {
- $repx = false;
- $repy = false;
- return array($cw, $ch, $repx, $repy);
- }
- return array($imw, $imh, $repx, $repy);
-}
-
-
-function SetBackground(&$properties, &$maxwidth) {
- if (preg_match('/(-moz-)*(repeating-)*(linear|radial)-gradient/',$properties['BACKGROUND-IMAGE'])) {
- return array('gradient'=>$properties['BACKGROUND-IMAGE']);
- }
- else {
- $file = $properties['BACKGROUND-IMAGE'];
- $sizesarray = $this->Image($file,0,0,0,0,'','',false, false, false, false, true);
- if (isset($sizesarray['IMAGE_ID'])) {
- $image_id = $sizesarray['IMAGE_ID'];
- $orig_w = $sizesarray['WIDTH']*_MPDFK; // in user units i.e. mm
- $orig_h = $sizesarray['HEIGHT']*_MPDFK; // (using $this->img_dpi)
- if (isset($properties['BACKGROUND-IMAGE-RESOLUTION'])) {
- if (preg_match('/from-image/i', $properties['BACKGROUND-IMAGE-RESOLUTION']) && isset($sizesarray['set-dpi']) && $sizesarray['set-dpi']>0) {
- $orig_w *= $this->img_dpi / $sizesarray['set-dpi'];
- $orig_h *= $this->img_dpi / $sizesarray['set-dpi'];
- }
- else if (preg_match('/(\d+)dpi/i', $properties['BACKGROUND-IMAGE-RESOLUTION'], $m)) {
- $dpi = $m[1];
- if ($dpi > 0) {
- $orig_w *= $this->img_dpi / $dpi;
- $orig_h *= $this->img_dpi / $dpi;
- }
- }
- }
- $x_repeat = true;
- $y_repeat = true;
- if (isset($properties['BACKGROUND-REPEAT'])) {
- if ($properties['BACKGROUND-REPEAT']=='no-repeat' || $properties['BACKGROUND-REPEAT']=='repeat-x') { $y_repeat = false; }
- if ($properties['BACKGROUND-REPEAT']=='no-repeat' || $properties['BACKGROUND-REPEAT']=='repeat-y') { $x_repeat = false; }
- }
- $x_pos = 0;
- $y_pos = 0;
- if (isset($properties['BACKGROUND-POSITION'])) {
- $ppos = preg_split('/\s+/',$properties['BACKGROUND-POSITION']);
- $x_pos = $ppos[0];
- $y_pos = $ppos[1];
- if (!stristr($x_pos ,'%') ) { $x_pos = $this->ConvertSize($x_pos ,$maxwidth,$this->FontSize); }
- if (!stristr($y_pos ,'%') ) { $y_pos = $this->ConvertSize($y_pos ,$maxwidth,$this->FontSize); }
- }
- if (isset($properties['BACKGROUND-IMAGE-RESIZE'])) { $resize = $properties['BACKGROUND-IMAGE-RESIZE']; }
- else { $resize = 0; }
- if (isset($properties['BACKGROUND-IMAGE-OPACITY'])) { $opacity = $properties['BACKGROUND-IMAGE-OPACITY']; }
- else { $opacity = 1; }
- return array('image_id'=>$image_id, 'orig_w'=>$orig_w, 'orig_h'=>$orig_h, 'x_pos'=>$x_pos, 'y_pos'=>$y_pos, 'x_repeat'=>$x_repeat, 'y_repeat'=>$y_repeat, 'resize'=>$resize, 'opacity'=>$opacity, 'itype'=>$sizesarray['itype']);
- }
- }
- return false;
-}
-/*-- END BACKGROUNDS --*/
-
-function PrintBodyBackgrounds() {
- $s = '';
- $clx = 0;
- $cly = 0;
- $clw = $this->w;
- $clh = $this->h;
- // If using bleed and trim margins in paged media
- if ($this->pageDim[$this->page]['outer_width_LR'] || $this->pageDim[$this->page]['outer_width_TB']) {
- $clx = $this->pageDim[$this->page]['outer_width_LR'] - $this->pageDim[$this->page]['bleedMargin'];
- $cly = $this->pageDim[$this->page]['outer_width_TB'] - $this->pageDim[$this->page]['bleedMargin'];
- $clw = $this->w - 2*$clx;
- $clh = $this->h - 2*$cly;
- }
-
- if ($this->bodyBackgroundColor) {
- $s .= 'q ' .$this->SetFColor($this->bodyBackgroundColor, true)."\n";
- // mPDF 5.3.74
- if ($this->bodyBackgroundColor{0}==5) { // RGBa
- $s .= $this->SetAlpha(ord($this->bodyBackgroundColor{4})/100, 'Normal', true, 'F')."\n";
- }
- else if ($this->bodyBackgroundColor{0}==6) { // CMYKa
- $s .= $this->SetAlpha(ord($this->bodyBackgroundColor{5})/100, 'Normal', true, 'F')."\n";
- }
- $s .= sprintf('%.3F %.3F %.3F %.3F re f Q', ($clx*_MPDFK), ($cly*_MPDFK),$clw*_MPDFK,$clh*_MPDFK)."\n";
- }
-
-/*-- BACKGROUNDS --*/
- if ($this->bodyBackgroundGradient) {
- $g = $this->grad->parseBackgroundGradient($this->bodyBackgroundGradient);
- if ($g) {
- $s .= $this->grad->Gradient($clx, $cly, $clw, $clh, (isset($g['gradtype']) ? $g['gradtype'] : null), $g['stops'], $g['colorspace'], $g['coords'], $g['extend'], true);
- }
- }
- if ($this->bodyBackgroundImage) {
- if ( $this->bodyBackgroundImage['gradient'] && preg_match('/(-moz-)*(repeating-)*(linear|radial)-gradient/', $this->bodyBackgroundImage['gradient'])) {
- $g = $this->grad->parseMozGradient( $this->bodyBackgroundImage['gradient']);
- if ($g) {
- $s .= $this->grad->Gradient($clx, $cly, $clw, $clh, $g['type'], $g['stops'], $g['colorspace'], $g['coords'], $g['extend'], true);
- }
- }
- else if ($this->bodyBackgroundImage['image_id']) { // Background pattern
- $n = count($this->patterns)+1;
- // If using resize, uses TrimBox (not including the bleed)
- list($orig_w, $orig_h, $x_repeat, $y_repeat) = $this->_resizeBackgroundImage($this->bodyBackgroundImage['orig_w'], $this->bodyBackgroundImage['orig_h'], $clw, $clh, $this->bodyBackgroundImage['resize'], $this->bodyBackgroundImage['x_repeat'], $this->bodyBackgroundImage['y_repeat']);
-
- $this->patterns[$n] = array('x'=>$clx, 'y'=>$cly, 'w'=>$clw, 'h'=>$clh, 'pgh'=>$this->h, 'image_id'=>$this->bodyBackgroundImage['image_id'], 'orig_w'=>$orig_w, 'orig_h'=>$orig_h, 'x_pos'=>$this->bodyBackgroundImage['x_pos'], 'y_pos'=>$this->bodyBackgroundImage['y_pos'], 'x_repeat'=>$x_repeat, 'y_repeat'=>$y_repeat, 'itype'=>$this->bodyBackgroundImage['itype']);
- // mPDF 5.3.12
- if (($this->bodyBackgroundImage['opacity']>0 || $this->bodyBackgroundImage['opacity']==='0') && $this->bodyBackgroundImage['opacity']<1) { $opac = $this->SetAlpha($this->bodyBackgroundImage['opacity'],'Normal',true); }
- else { $opac = ''; }
- $s .= sprintf('q /Pattern cs /P%d scn %s %.3F %.3F %.3F %.3F re f Q', $n, $opac, ($clx*_MPDFK), ($cly*_MPDFK),$clw*_MPDFK, $clh*_MPDFK) ."\n";
- }
- }
-/*-- END BACKGROUNDS --*/
- return $s;
-}
-
-
-function PrintPageBackgrounds($adjustmenty=0) {
- $s = '';
-
- ksort($this->pageBackgrounds);
- foreach($this->pageBackgrounds AS $bl=>$pbs) {
- foreach ($pbs AS $pb) {
- // mPDF 5.3.A1
- if ((!isset($pb['image_id']) && !isset($pb['gradient'])) || isset($pb['shadowonly'])) { // Background colour or boxshadow
- // mPDF 5.3.42 VISIBILITY
- if($pb['visibility']!='visible') {
- if($pb['visibility']=='printonly')
- $s .= '/OC /OC1 BDC'."\n";
- else if($pb['visibility']=='screenonly')
- $s .= '/OC /OC2 BDC'."\n";
- else if($pb['visibility']=='hidden')
- $s .= '/OC /OC3 BDC'."\n";
- }
- // mPDF 5.3.A1
- // Box shadow
- if (isset($pb['shadow']) && $pb['shadow']) { $s .= $pb['shadow']."\n"; }
- if (isset($pb['clippath']) && $pb['clippath']) { $s .= $pb['clippath']."\n"; }
- $s .= 'q '.$this->SetFColor($pb['col'], true)."\n";
- // mPDF 5.3.74
- if ($pb['col']{0}==5) { // RGBa
- $s .= $this->SetAlpha(ord($pb['col']{4})/100, 'Normal', true, 'F')."\n";
- }
- else if ($pb['col']{0}==6) { // CMYKa
- $s .= $this->SetAlpha(ord($pb['col']{5})/100, 'Normal', true, 'F')."\n";
- }
- $s .= sprintf('%.3F %.3F %.3F %.3F re f Q',$pb['x']*_MPDFK,($this->h-$pb['y'])*_MPDFK,$pb['w']*_MPDFK,-$pb['h']*_MPDFK)."\n";
- if (isset($pb['clippath']) && $pb['clippath']) { $s .= 'Q'."\n"; }
- // mPDF 5.3.42
- if($pb['visibility']!='visible')
- $s .= 'EMC'."\n";
- }
- }
-/*-- BACKGROUNDS --*/
- foreach ($pbs AS $pb) {
- // mPDF 5.3.42 VISIBILITY
- if($pb['visibility']!='visible') {
- if($pb['visibility']=='printonly')
- $s .= '/OC /OC1 BDC'."\n";
- else if($pb['visibility']=='screenonly')
- $s .= '/OC /OC2 BDC'."\n";
- else if($pb['visibility']=='hidden')
- $s .= '/OC /OC3 BDC'."\n";
- }
- if (isset($pb['gradient']) && $pb['gradient']) {
- if (isset($pb['clippath']) && $pb['clippath']) { $s .= $pb['clippath']."\n"; }
- $s .= $this->grad->Gradient($pb['x'], $pb['y'], $pb['w'], $pb['h'], $pb['gradtype'], $pb['stops'], $pb['colorspace'], $pb['coords'], $pb['extend'], true);
- if (isset($pb['clippath']) && $pb['clippath']) { $s .= 'Q'."\n"; }
- }
- else if (isset($pb['image_id']) && $pb['image_id']) { // Background pattern
- $pb['y'] -= $adjustmenty;
- $pb['h'] += $adjustmenty;
- $n = count($this->patterns)+1;
- list($orig_w, $orig_h, $x_repeat, $y_repeat) = $this->_resizeBackgroundImage($pb['orig_w'], $pb['orig_h'], $pb['w'], $pb['h'], $pb['resize'], $pb['x_repeat'], $pb['y_repeat']);
- $this->patterns[$n] = array('x'=>$pb['x'], 'y'=>$pb['y'], 'w'=>$pb['w'], 'h'=>$pb['h'], 'pgh'=>$this->h, 'image_id'=>$pb['image_id'], 'orig_w'=>$orig_w, 'orig_h'=>$orig_h, 'x_pos'=>$pb['x_pos'], 'y_pos'=>$pb['y_pos'], 'x_repeat'=>$x_repeat, 'y_repeat'=>$y_repeat, 'itype'=>$pb['itype']);
- $x = $pb['x']*_MPDFK;
- $y = ($this->h - $pb['y'])*_MPDFK;
- $w = $pb['w']*_MPDFK;
- $h = -$pb['h']*_MPDFK;
- if (isset($pb['clippath']) && $pb['clippath']) { $s .= $pb['clippath']."\n"; }
- if ($this->writingHTMLfooter || $this->writingHTMLheader) {
- $iw = $pb['orig_w']/_MPDFK;
- $ih = $pb['orig_h']/_MPDFK;
- $w = $pb['w'];
- $h = $pb['h'];
- $x0 = $pb['x'];
- $y0 = $pb['y'];
-
- // Number to repeat
- if ($pb['x_repeat']) { $nx = ceil($w/$iw); }
- else { $nx = 1; }
- if ($pb['y_repeat']) { $ny = ceil($h/$ih); }
- else { $ny = 1; }
-
- $x_pos = $pb['x_pos'];
- if (stristr($x_pos ,'%') ) {
- $x_pos += 0;
- $x_pos /= 100;
- $x_pos = ($w * $x_pos) - ($iw * $x_pos);
- }
- $y_pos = $pb['y_pos'];
- if (stristr($y_pos ,'%') ) {
- $y_pos += 0;
- $y_pos /= 100;
- $y_pos = ($h * $y_pos) - ($ih * $y_pos);
- }
- if ($nx>1) {
- while($x_pos>0) { $x_pos -= $iw; }
- }
- if ($ny>1) {
- while($y_pos>0) { $y_pos -= $ih; }
- }
- for($xi=0;$xi<$nx;$xi++) {
- for($yi=0;$yi<$ny;$yi++) {
- $x = $x0 + $x_pos + ($iw*$xi);
- $y = $y0 + $y_pos + ($ih*$yi);
- if ($pb['opacity']>0 && $pb['opacity']<1) { $opac = $this->SetAlpha($pb['opacity'],'Normal',true); }
- else { $opac = ''; }
- $s .= sprintf("q %s %.3F 0 0 %.3F %.3F %.3F cm /I%d Do Q", $opac,$iw*_MPDFK,$ih*_MPDFK,$x*_MPDFK,($this->h-($y+$ih))*_MPDFK,$pb['image_id']) ."\n";
- }
- }
- }
- else {
- // mPDF 5.3.12
- if (($pb['opacity']>0 || $pb['opacity']==='0') && $pb['opacity']<1) { $opac = $this->SetAlpha($pb['opacity'],'Normal',true); }
- else { $opac = ''; }
- $s .= sprintf('q /Pattern cs /P%d scn %s %.3F %.3F %.3F %.3F re f Q', $n, $opac, $x, $y, $w, $h) ."\n";
- }
- if (isset($pb['clippath']) && $pb['clippath']) { $s .= 'Q'."\n"; }
- }
- // mPDF 5.3.42 VISIBILITY
- if($pb['visibility']!='visible')
- $s .= 'EMC'."\n";
-
- }
-/*-- END BACKGROUNDS --*/
- }
- return $s;
-}
-
-function PrintTableBackgrounds($adjustmenty=0) {
- $s = '';
-/*-- BACKGROUNDS --*/
- ksort($this->tableBackgrounds);
- foreach($this->tableBackgrounds AS $bl=>$pbs) {
- foreach ($pbs AS $pb) {
- if ((!isset($pb['gradient']) || !$pb['gradient']) && (!isset($pb['image_id']) || !$pb['image_id'])) {
- $s .= 'q '.$this->SetFColor($pb['col'], true)."\n"; // mPDF 5.3.68
- // mPDF 5.3.68
- // mPDF 5.3.74
- if ($pb['col']{0}==5) { // RGBa
- $s .= $this->SetAlpha(ord($pb['col']{4})/100, 'Normal', true, 'F')."\n";
- }
- else if ($pb['col']{0}==6) { // CMYKa
- $s .= $this->SetAlpha(ord($pb['col']{5})/100, 'Normal', true, 'F')."\n";
- }
- $s .= sprintf('%.3F %.3F %.3F %.3F re %s Q',$pb['x']*_MPDFK,($this->h-$pb['y'])*_MPDFK,$pb['w']*_MPDFK,-$pb['h']*_MPDFK,'f')."\n"; // mPDF 5.3.68
- }
- if (isset($pb['gradient']) && $pb['gradient']) {
- if (isset($pb['clippath']) && $pb['clippath']) { $s .= $pb['clippath']."\n"; }
- $s .= $this->grad->Gradient($pb['x'], $pb['y'], $pb['w'], $pb['h'], $pb['gradtype'], $pb['stops'], $pb['colorspace'], $pb['coords'], $pb['extend'], true);
- if (isset($pb['clippath']) && $pb['clippath']) { $s .= 'Q'."\n"; }
- }
- if (isset($pb['image_id']) && $pb['image_id']) { // Background pattern
- $pb['y'] -= $adjustmenty;
- $pb['h'] += $adjustmenty;
- $n = count($this->patterns)+1;
- list($orig_w, $orig_h, $x_repeat, $y_repeat) = $this->_resizeBackgroundImage($pb['orig_w'], $pb['orig_h'], $pb['w'], $pb['h'], $pb['resize'], $pb['x_repeat'], $pb['y_repeat']);
- $this->patterns[$n] = array('x'=>$pb['x'], 'y'=>$pb['y'], 'w'=>$pb['w'], 'h'=>$pb['h'], 'pgh'=>$this->h, 'image_id'=>$pb['image_id'], 'orig_w'=>$orig_w, 'orig_h'=>$orig_h, 'x_pos'=>$pb['x_pos'], 'y_pos'=>$pb['y_pos'], 'x_repeat'=>$x_repeat, 'y_repeat'=>$y_repeat, 'itype'=>$pb['itype']);
- $x = $pb['x']*_MPDFK;
- $y = ($this->h - $pb['y'])*_MPDFK;
- $w = $pb['w']*_MPDFK;
- $h = -$pb['h']*_MPDFK;
- if (isset($pb['clippath']) && $pb['clippath']) { $s .= $pb['clippath']."\n"; }
- if ($pb['opacity']>0 && $pb['opacity']<1) { $opac = $this->SetAlpha($pb['opacity'],'Normal',true); }
- else { $opac = ''; }
- $s .= sprintf('q /Pattern cs /P%d scn %s %.3F %.3F %.3F %.3F re f Q', $n, $opac, $x, $y, $w, $h) ."\n";
- if (isset($pb['clippath']) && $pb['clippath']) { $s .= 'Q'."\n"; }
- }
- }
- }
-/*-- END BACKGROUNDS --*/
- return $s;
-}
-
-
-// Depracated - can use AddPage for all
-function AddPages($orientation='',$condition='', $resetpagenum='', $pagenumstyle='', $suppress='',$mgl='',$mgr='',$mgt='',$mgb='',$mgh='',$mgf='',$ohname='',$ehname='',$ofname='',$efname='',$ohvalue=0,$ehvalue=0,$ofvalue=0,$efvalue=0,$pagesel='',$newformat='')
-{
- $this->AddPage($orientation,$condition,$resetpagenum, $pagenumstyle, $suppress,$mgl,$mgr,$mgt,$mgb,$mgh,$mgf, $ohname, $ehname, $ofname, $efname, $ohvalue, $ehvalue, $ofvalue, $efvalue,$pagesel,$newformat);
-}
-
-
-function AddPageByArray($a) {
- if (!is_array($a)) { $a = array(); }
- // mPDF 5.3.26
- $orientation = (isset($a['orientation']) ? $a['orientation'] : '');
- $condition = (isset($a['condition']) ? $a['condition'] : (isset($a['type']) ? $a['type'] : ''));
- $resetpagenum = (isset($a['resetpagenum']) ? $a['resetpagenum'] : '');
- $pagenumstyle = (isset($a['pagenumstyle']) ? $a['pagenumstyle'] : '');
- $suppress = (isset($a['suppress']) ? $a['suppress'] : '');
- $mgl = (isset($a['mgl']) ? $a['mgl'] : (isset($a['margin-left']) ? $a['margin-left'] : ''));
- $mgr = (isset($a['mgr']) ? $a['mgr'] : (isset($a['margin-right']) ? $a['margin-right'] : ''));
- $mgt = (isset($a['mgt']) ? $a['mgt'] : (isset($a['margin-top']) ? $a['margin-top'] : ''));
- $mgb = (isset($a['mgb']) ? $a['mgb'] : (isset($a['margin-bottom']) ? $a['margin-bottom'] : ''));
- $mgh = (isset($a['mgh']) ? $a['mgh'] : (isset($a['margin-header']) ? $a['margin-header'] : ''));
- $mgf = (isset($a['mgf']) ? $a['mgf'] : (isset($a['margin-footer']) ? $a['margin-footer'] : ''));
- $ohname = (isset($a['ohname']) ? $a['ohname'] : (isset($a['odd-header-name']) ? $a['odd-header-name'] : ''));
- $ehname = (isset($a['ehname']) ? $a['ehname'] : (isset($a['even-header-name']) ? $a['even-header-name'] : ''));
- $ofname = (isset($a['ofname']) ? $a['ofname'] : (isset($a['odd-footer-name']) ? $a['odd-footer-name'] : ''));
- $efname = (isset($a['efname']) ? $a['efname'] : (isset($a['even-footer-name']) ? $a['even-footer-name'] : ''));
- $ohvalue = (isset($a['ohvalue']) ? $a['ohvalue'] : (isset($a['odd-header-value']) ? $a['odd-header-value'] : 0));
- $ehvalue = (isset($a['ehvalue']) ? $a['ehvalue'] : (isset($a['even-header-value']) ? $a['even-header-value'] : 0));
- $ofvalue = (isset($a['ofvalue']) ? $a['ofvalue'] : (isset($a['odd-footer-value']) ? $a['odd-footer-value'] : 0));
- $efvalue = (isset($a['efvalue']) ? $a['efvalue'] : (isset($a['even-footer-value']) ? $a['even-footer-value'] : 0));
- $pagesel = (isset($a['pagesel']) ? $a['pagesel'] : (isset($a['pageselector']) ? $a['pageselector'] : ''));
- $newformat = (isset($a['newformat']) ? $a['newformat'] : (isset($a['sheet-size']) ? $a['sheet-size'] : ''));
-
- $this->AddPage($orientation,$condition,$resetpagenum, $pagenumstyle, $suppress,$mgl,$mgr,$mgt,$mgb,$mgh,$mgf, $ohname, $ehname, $ofname, $efname, $ohvalue, $ehvalue, $ofvalue, $efvalue,$pagesel,$newformat);
-
-}
-
-
-
-
-function AddPage($orientation='',$condition='', $resetpagenum='', $pagenumstyle='', $suppress='',$mgl='',$mgr='',$mgt='',$mgb='',$mgh='',$mgf='',$ohname='',$ehname='',$ofname='',$efname='',$ohvalue=0,$ehvalue=0,$ofvalue=0,$efvalue=0,$pagesel='',$newformat='')
-{
-/*-- CSS-FLOAT --*/
- // Float DIV
- // Cannot do with columns on, or if any change in page orientation/margins etc.
- // If next page already exists - i.e background /headers and footers already written
- if ($this->state > 0 && $this->page < count($this->pages)) {
- $bak_cml = $this->cMarginL;
- $bak_cmr = $this->cMarginR;
- $bak_dw = $this->divwidth;
- // Paint Div Border if necessary
- if ($this->blklvl > 0) {
- $save_tr = $this->table_rotate; // *TABLES*
- $this->table_rotate = 0; // *TABLES*
- if ($this->y == $this->blk[$this->blklvl]['y0']) { $this->blk[$this->blklvl]['startpage']++; }
- if (($this->y > $this->blk[$this->blklvl]['y0']) || $this->flowingBlockAttr['is_table'] ) { $toplvl = $this->blklvl; }
- else { $toplvl = $this->blklvl-1; }
- $sy = $this->y;
- for ($bl=1;$bl<=$toplvl;$bl++) {
- $this->PaintDivBB('pagebottom',0,$bl);
- }
- $this->y = $sy;
- $this->table_rotate = $save_tr; // *TABLES*
- }
- $s = $this->PrintPageBackgrounds();
-
- // Writes after the marker so not overwritten later by page background etc.
- $this->pages[$this->page] = preg_replace('/(___BACKGROUND___PATTERNS'.date('jY').')/', '\\1'."\n".$s."\n", $this->pages[$this->page]);
- $this->pageBackgrounds = array();
- $family=$this->FontFamily;
- $style=$this->FontStyle.($this->U ? 'U' : '').($this->S ? 'S' : '');
- $size=$this->FontSizePt;
- $lw=$this->LineWidth;
- $dc=$this->DrawColor;
- $fc=$this->FillColor;
- $tc=$this->TextColor;
- $cf=$this->ColorFlag;
-
- $this->printfloatbuffer();
-
- //Move to next page
- $this->page++;
- $this->ResetMargins();
- $this->SetAutoPageBreak($this->autoPageBreak,$this->bMargin);
- $this->x=$this->lMargin;
- $this->y=$this->tMargin;
- $this->FontFamily='';
- $this->_out('2 J');
- $this->LineWidth=$lw;
- $this->_out(sprintf('%.3F w',$lw*_MPDFK));
- if($family) $this->SetFont($family,$style,$size,true,true);
- $this->DrawColor=$dc;
- if($dc!=$this->defDrawColor) $this->_out($dc);
- $this->FillColor=$fc;
- if($fc!=$this->defFillColor) $this->_out($fc);
- $this->TextColor=$tc;
- $this->ColorFlag=$cf;
- for($bl=1;$bl<=$this->blklvl;$bl++) {
- $this->blk[$bl]['y0'] = $this->y;
- // Don't correct more than once for background DIV containing a Float
- if (!isset($this->blk[$bl]['marginCorrected'][$this->page])) { $this->blk[$bl]['x0'] += $this->MarginCorrection; }
- $this->blk[$bl]['marginCorrected'][$this->page] = true;
- }
- $this->cMarginL = $bak_cml;
- $this->cMarginR = $bak_cmr;
- $this->divwidth = $bak_dw;
- return '';
- }
-/*-- END CSS-FLOAT --*/
-
- //Start a new page
- if($this->state==0) $this->Open();
-
- $bak_cml = $this->cMarginL;
- $bak_cmr = $this->cMarginR;
- $bak_dw = $this->divwidth;
-
-
- $bak_lh = $this->lineheight;
-
- $orientation = substr(strtoupper($orientation),0,1);
- $condition = strtoupper($condition);
-
-
- if ($condition == 'NEXT-EVEN') { // always adds at least one new page to create an Even page
- if (!$this->mirrorMargins) { $condition = ''; }
- else {
- if ($pagesel) { $pbch = $pagesel; $pagesel = ''; } // *CSS-PAGE*
- else { $pbch = false; } // *CSS-PAGE*
- $this->AddPage($this->CurOrientation,'O');
- if ($pbch ) { $pagesel = $pbch; } // *CSS-PAGE*
- $condition = '';
- }
- }
- if ($condition == 'NEXT-ODD') { // always adds at least one new page to create an Odd page
- if (!$this->mirrorMargins) { $condition = ''; }
- else {
- if ($pagesel) { $pbch = $pagesel; $pagesel = ''; } // *CSS-PAGE*
- else { $pbch = false; } // *CSS-PAGE*
- $this->AddPage($this->CurOrientation,'E');
- if ($pbch ) { $pagesel = $pbch; } // *CSS-PAGE*
- $condition = '';
- }
- }
-
-
- if ($condition == 'E') { // only adds new page if needed to create an Even page
- if (!$this->mirrorMargins || ($this->page)%2==0) { return false; }
- }
- if ($condition == 'O') { // only adds new page if needed to create an Odd page
- if (!$this->mirrorMargins || ($this->page)%2==1) { return false; }
- }
-
- if ($resetpagenum || $pagenumstyle || $suppress) {
- $this->PageNumSubstitutions[] = array('from'=>($this->page+1), 'reset'=> $resetpagenum, 'type'=>$pagenumstyle, 'suppress'=>$suppress);
- }
-
-
- $save_tr = $this->table_rotate; // *TABLES*
- $this->table_rotate = 0; // *TABLES*
- $save_kwt = $this->kwt;
- $this->kwt = 0;
-
- // Paint Div Border if necessary
- //PAINTS BACKGROUND COLOUR OR BORDERS for DIV - DISABLED FOR COLUMNS (cf. AcceptPageBreak) AT PRESENT in ->PaintDivBB
- if (!$this->ColActive && $this->blklvl > 0) {
- if (isset($this->blk[$this->blklvl]['y0']) && $this->y == $this->blk[$this->blklvl]['y0']) {
- if (isset($this->blk[$this->blklvl]['startpage'])) { $this->blk[$this->blklvl]['startpage']++; }
- else { $this->blk[$this->blklvl]['startpage'] = 1; }
- }
- if ((isset($this->blk[$this->blklvl]['y0']) && $this->y > $this->blk[$this->blklvl]['y0']) || $this->flowingBlockAttr['is_table'] ) { $toplvl = $this->blklvl; }
- else { $toplvl = $this->blklvl-1; }
- $sy = $this->y;
- for ($bl=1;$bl<=$toplvl;$bl++) {
- $this->PaintDivBB('pagebottom',0,$bl);
- }
- $this->y = $sy;
- // RESET block y0 and x0 - see below
- }
-
- // BODY Backgrounds
- if ($this->page > 0) {
- $s = '';
- $s .= $this->PrintBodyBackgrounds();
-
- $s .= $this->PrintPageBackgrounds();
- $this->pages[$this->page] = preg_replace('/(___BACKGROUND___PATTERNS'.date('jY').')/', "\n".$s."\n".'\\1', $this->pages[$this->page]);
- $this->pageBackgrounds = array();
- }
-
- $save_kt = $this->keep_block_together;
- $this->keep_block_together = 0;
-
- $save_cols = false;
-/*-- COLUMNS --*/
- if ($this->ColActive) {
- $save_cols = true;
- $save_nbcol = $this->NbCol; // other values of gap and vAlign will not change by setting Columns off
- $this->SetColumns(0);
- }
-/*-- END COLUMNS --*/
-
- // mPDF 5.3.41
- $save_vis = $this->visibility;
- if($this->visibility!='visible')
- $this->SetVisibility('visible');
-
- $family=$this->FontFamily;
- $style=$this->FontStyle.($this->U ? 'U' : '').($this->S ? 'S' : '');
- $size=$this->FontSizePt;
- $this->ColumnAdjust = true; // enables column height adjustment for the page
- $lw=$this->LineWidth;
- $dc=$this->DrawColor;
- $fc=$this->FillColor;
- $tc=$this->TextColor;
- $cf=$this->ColorFlag;
- if($this->page>0)
- {
- //Page footer
- $this->InFooter=true;
-
- $this->Reset();
- $this->pageoutput[$this->page] = array();
-
- $this->Footer();
- //Close page
- $this->_endpage();
- }
-
-
- //Start new page
- $this->_beginpage($orientation,$mgl,$mgr,$mgt,$mgb,$mgh,$mgf,$ohname,$ehname,$ofname,$efname,$ohvalue,$ehvalue,$ofvalue,$efvalue,$pagesel,$newformat);
- if ($this->docTemplate) {
- $pagecount = $this->SetSourceFile($this->docTemplate);
- if (($this->page - $this->docTemplateStart) > $pagecount) {
- if ($this->docTemplateContinue) {
- $tplIdx = $this->ImportPage($pagecount);
- $this->UseTemplate($tplIdx);
- }
- }
- else {
- $tplIdx = $this->ImportPage(($this->page - $this->docTemplateStart));
- $this->UseTemplate($tplIdx);
- }
- }
- if ($this->pageTemplate) {
- $this->UseTemplate($this->pageTemplate);
- }
-
- // Tiling Patterns
- $this->_out('___PAGE___START'.date('jY'));
- $this->_out('___BACKGROUND___PATTERNS'.date('jY'));
- $this->_out('___HEADER___MARKER'.date('jY'));
- $this->pageBackgrounds = array();
-
- //Set line cap style to square
- $this->SetLineCap(2);
- //Set line width
- $this->LineWidth=$lw;
- $this->_out(sprintf('%.3F w',$lw*_MPDFK));
- //Set font
- if($family) $this->SetFont($family,$style,$size,true,true); // forces write
- //Set colors
- $this->DrawColor=$dc;
- if($dc!=$this->defDrawColor) $this->_out($dc);
- $this->FillColor=$fc;
- if($fc!=$this->defFillColor) $this->_out($fc);
- $this->TextColor=$tc;
- $this->ColorFlag=$cf;
-
- //Page header
- $this->Header();
-
- //Restore line width
- if($this->LineWidth!=$lw)
- {
- $this->LineWidth=$lw;
- $this->_out(sprintf('%.3F w',$lw*_MPDFK));
- }
- //Restore font
- if($family) $this->SetFont($family,$style,$size,true,true); // forces write
- //Restore colors
- if($this->DrawColor!=$dc)
- {
- $this->DrawColor=$dc;
- $this->_out($dc);
- }
- if($this->FillColor!=$fc)
- {
- $this->FillColor=$fc;
- $this->_out($fc);
- }
- $this->TextColor=$tc;
- $this->ColorFlag=$cf;
- $this->InFooter=false;
-
- // mPDF 5.3.41
- if($save_vis!='visible')
- $this->SetVisibility($save_vis);
-
-/*-- COLUMNS --*/
- if ($save_cols) {
- // Restore columns
- $this->SetColumns($save_nbcol,$this->colvAlign,$this->ColGap);
- }
- if ($this->ColActive) { $this->SetCol(0); }
-/*-- END COLUMNS --*/
-
-
- //RESET BLOCK BORDER TOP
- if (!$this->ColActive) {
- for($bl=1;$bl<=$this->blklvl;$bl++) {
- $this->blk[$bl]['y0'] = $this->y;
- if (isset($this->blk[$bl]['x0'])) { $this->blk[$bl]['x0'] += $this->MarginCorrection; }
- else { $this->blk[$bl]['x0'] = $this->MarginCorrection; }
- // Added mPDF 3.0 Float DIV
- $this->blk[$bl]['marginCorrected'][$this->page] = true;
- }
- }
-
-
- $this->table_rotate = $save_tr; // *TABLES*
- $this->kwt = $save_kwt;
-
- $this->keep_block_together = $save_kt ;
-
- $this->cMarginL = $bak_cml;
- $this->cMarginR = $bak_cmr;
- $this->divwidth = $bak_dw;
-
- $this->lineheight = $bak_lh;
-}
-
-
-function PageNo() {
- //Get current page number
- return $this->page;
-}
-
-function AddSpotColorsFromFile($file) {
- $colors = @file($file) or die("Cannot load spot colors file - ".$file);
- foreach($colors AS $sc) {
- list($name, $c, $m, $y, $k) = preg_split("/\t/",$sc);
- $c = intval($c);
- $m = intval($m);
- $y = intval($y);
- $k = intval($k);
- $this->AddSpotColor($name, $c, $m, $y, $k);
- }
-}
-
-function AddSpotColor($name, $c, $m, $y, $k) {
- $name = strtoupper(trim($name));
- if(!isset($this->spotColors[$name])) {
- $i=count($this->spotColors)+1;
- $this->spotColors[$name]=array('i'=>$i,'c'=>$c,'m'=>$m,'y'=>$y,'k'=>$k);
- $this->spotColorIDs[$i]=$name;
- }
-}
-
-function SetColor($col, $type='') {
- $out = '';
- // mPDF 5.3.74
- if ($col{0}==3 || $col{0}==5) { // RGB / RGBa
- $out = sprintf('%.3F %.3F %.3F rg',ord($col{1})/255,ord($col{2})/255,ord($col{3})/255);
- }
- else if ($col{0}==1) { // GRAYSCALE
- $out = sprintf('%.3F g',ord($col{1})/255);
- }
- else if ($col{0}==2) { // SPOT COLOR
- $out = sprintf('/CS%d cs %.3F scn',ord($col{1}),ord($col{2})/100);
- }
- else if ($col{0}==4 || $col{0}==6) { // CMYK / CMYKa
- $out = sprintf('%.3F %.3F %.3F %.3F k', ord($col{1})/100, ord($col{2})/100, ord($col{3})/100, ord($col{4})/100);
- }
- if ($type=='Draw') { $out = strtoupper($out); } // e.g. rg => RG
- else if ($type=='CodeOnly') { $out = preg_replace('/\s(rg|g|k)/','',$out); }
- return $out;
-}
-
-
-function SetDColor($col, $return=false) {
- $out = $this->SetColor($col, 'Draw');
- if ($return) { return $out; }
- if ($out=='') { return ''; }
- $this->DrawColor = $out;
- if($this->page>0 && ((isset($this->pageoutput[$this->page]['DrawColor']) && $this->pageoutput[$this->page]['DrawColor'] != $this->DrawColor) || !isset($this->pageoutput[$this->page]['DrawColor']) || $this->keep_block_together)) { $this->_out($this->DrawColor); }
- $this->pageoutput[$this->page]['DrawColor'] = $this->DrawColor;
-}
-
-function SetFColor($col, $return=false) {
- $out = $this->SetColor($col, 'Fill');
- if ($return) { return $out; }
- if ($out=='') { return ''; }
- $this->FillColor = $out;
- $this->ColorFlag = ($out != $this->TextColor);
- if($this->page>0 && ((isset($this->pageoutput[$this->page]['FillColor']) && $this->pageoutput[$this->page]['FillColor'] != $this->FillColor) || !isset($this->pageoutput[$this->page]['FillColor']) || $this->keep_block_together)) { $this->_out($this->FillColor); }
- $this->pageoutput[$this->page]['FillColor'] = $this->FillColor;
-}
-
-function SetTColor($col, $return=false) {
- $out = $this->SetColor($col, 'Text');
- if ($return) { return $out; }
- if ($out=='') { return ''; }
- $this->TextColor = $out;
- $this->ColorFlag = ($this->FillColor != $out);
-}
-
-
-function SetDrawColor($r,$g=-1,$b=-1,$col4=-1, $return=false) {
- //Set color for all stroking operations
- $col = array();
- if(($r==0 and $g==0 and $b==0 && $col4 == -1) or $g==-1) { $col = $this->ConvertColor($r); }
- else if ($col4 == -1) { $col = $this->ConvertColor('rgb('.$r.','.$g.','.$b.')'); }
- else { $col = $this->ConvertColor('cmyk('.$r.','.$g.','.$b.','.$col4.')'); }
- $out = $this->SetDColor($col, $return);
- return $out;
-}
-
-function SetFillColor($r,$g=-1,$b=-1,$col4=-1, $return=false) {
- //Set color for all filling operations
- $col = array();
- if(($r==0 and $g==0 and $b==0 && $col4 == -1) or $g==-1) { $col = $this->ConvertColor($r); }
- else if ($col4 == -1) { $col = $this->ConvertColor('rgb('.$r.','.$g.','.$b.')'); }
- else { $col = $this->ConvertColor('cmyk('.$r.','.$g.','.$b.','.$col4.')'); }
- $out = $this->SetFColor($col, $return);
- return $out;
-}
-
-function SetTextColor($r,$g=-1,$b=-1,$col4=-1, $return=false) {
- //Set color for text
- $col = array();
- if(($r==0 and $g==0 and $b==0 && $col4 == -1) or $g==-1) { $col = $this->ConvertColor($r); }
- else if ($col4 == -1) { $col = $this->ConvertColor('rgb('.$r.','.$g.','.$b.')'); }
- else { $col = $this->ConvertColor('cmyk('.$r.','.$g.','.$b.','.$col4.')'); }
- $out = $this->SetTColor($col, $return);
- return $out;
-}
-
-function _getCharWidth(&$cw, $u, $isdef=true) {
- if ($u==0) { $w = false; }
- else { $w = (ord($cw[$u*2]) << 8) + ord($cw[$u*2+1]); }
- if ($w == 65535) { return 0; }
- else if ($w) { return $w; }
- else if ($isdef) { return false; }
- else { return 0; }
-}
-
-function _charDefined(&$cw, $u) {
- if ($u==0) { return false; }
- $w = (ord($cw[$u*2]) << 8) + ord($cw[$u*2+1]);
- if ($w) { return true; }
- else { return false; }
-}
-
-// mPDF 5.3.04
-function GetCharWidthCore($c) {
- //Get width of a single character in the current Core font
- $c = (string)$c;
- $w = 0;
- // Soft Hyphens chr(173)
- if ($c == chr(173) && $this->FontFamily!='csymbol' && $this->FontFamily!='czapfdingbats') {
- return 0; // mPDF 5.3.07
- }
- else if ($this->S && isset($this->upperCase[ord($c)])) {
- $charw = $this->CurrentFont['cw'][chr($this->upperCase[ord($c)])];
- if ($charw!==false) {
- $charw = $charw*$this->smCapsScale * $this->smCapsStretch/100;
- $w+=$charw;
- }
- }
- else if (isset($this->CurrentFont['cw'][$c])) {
- $w += $this->CurrentFont['cw'][$c];
- }
- else if (isset($this->CurrentFont['cw'][ord($c)])) {
- $w += $this->CurrentFont['cw'][ord($c)];
- }
- $w *= ($this->FontSize/ 1000);
- if ($this->minwSpacing || $this->fixedlSpacing) {
- if ($c==' ') $nb_spaces = 1;
- else $nb_spaces = 0;
- $w += $this->fixedlSpacing + ($nb_spaces * $this->minwSpacing);
- }
- return ($w);
-}
-
-// mPDF 5.3.04
-function GetCharWidthNonCore($c, $addSubset=true) {
- //Get width of a single character in the current Non-Core font
- $c = (string)$c;
- $w = 0;
- $unicode = $this->UTF8StringToArray($c, $addSubset); // mPDF 5.3.06
- $char = $unicode[0];
-/*-- CJK-FONTS --*/
- if ($this->CurrentFont['type'] == 'Type0') { // CJK Adobe fonts
- if ($char == 173) { return 0; } // Soft Hyphens // mPDF 5.3.07
- elseif (isset($this->CurrentFont['cw'][$char])) { $w+=$this->CurrentFont['cw'][$char]; }
- elseif(isset($this->CurrentFont['MissingWidth'])) { $w += $this->CurrentFont['MissingWidth']; }
- else { $w += 500; }
- }
- else {
-/*-- END CJK-FONTS --*/
- if ($char == 173) { return 0; } // Soft Hyphens // mPDF 5.3.07
- else if ($this->S && isset($this->upperCase[$char])) {
- $charw = $this->_getCharWidth($this->CurrentFont['cw'],$this->upperCase[$char]);
- if ($charw!==false) {
- $charw = $charw*$this->smCapsScale * $this->smCapsStretch/100;
- $w+=$charw;
- }
- elseif(isset($this->CurrentFont['desc']['MissingWidth'])) { $w += $this->CurrentFont['desc']['MissingWidth']; }
- elseif(isset($this->CurrentFont['MissingWidth'])) { $w += $this->CurrentFont['MissingWidth']; }
- else { $w += 500; }
- }
- else {
- $charw = $this->_getCharWidth($this->CurrentFont['cw'],$char);
- if ($charw!==false) { $w+=$charw; }
- elseif(isset($this->CurrentFont['desc']['MissingWidth'])) { $w += $this->CurrentFont['desc']['MissingWidth']; }
- elseif(isset($this->CurrentFont['MissingWidth'])) { $w += $this->CurrentFont['MissingWidth']; }
- else { $w += 500; }
- }
- } // *CJK-FONTS*
- $w *= ($this->FontSize/ 1000);
- if ($this->minwSpacing || $this->fixedlSpacing) {
- if ($c==' ') $nb_spaces = 1;
- else $nb_spaces = 0;
- $w += $this->fixedlSpacing + ($nb_spaces * $this->minwSpacing);
- }
- return ($w);
-}
-
-
-// mPDF 5.3.04
-function GetCharWidth($c, $addSubset=true) {
- if (!$this->usingCoreFont) {
- return $this->GetCharWidthNonCore($c, $addSubset);
- }
- else {
- return $this->GetCharWidthCore($c);
- }
-}
-
-function GetStringWidth($s, $addSubset=true) {
- //Get width of a string in the current font
- $s = (string)$s;
- $cw = &$this->CurrentFont['cw'];
- $w = 0;
- $kerning = 0;
- $lastchar = 0;
- // mPDF 5.3.04
- $nb_carac = 0;
- $nb_spaces = 0;
- // mPDF ITERATION
- if ($this->iterationCounter) $s = preg_replace('/{iteration ([a-zA-Z0-9_]+)}/', '\\1', $s);
-
- if (!$this->usingCoreFont) {
- // mPDF 5.3.04
- $s = str_replace("\xc2\xad",'',$s );
- $unicode = $this->UTF8StringToArray($s, $addSubset);
- // mPDF 5.3.04
- if ($this->minwSpacing || $this->fixedlSpacing) {
- $nb_carac = count($unicode);
- $nb_spaces = mb_substr_count($s,' ', $this->mb_enc);
- }
-/*-- CJK-FONTS --*/
- if ($this->CurrentFont['type'] == 'Type0') { // CJK Adobe fonts
- foreach($unicode as $char) {
- if (isset($cw[$char])) { $w+=$cw[$char]; }
- elseif(isset($this->CurrentFont['MissingWidth'])) { $w += $this->CurrentFont['MissingWidth']; }
- else { $w += 500; }
- }
- }
- else {
-/*-- END CJK-FONTS --*/
- foreach($unicode as $char) {
- if ($this->S && isset($this->upperCase[$char])) {
- $charw = $this->_getCharWidth($cw,$this->upperCase[$char]);
- if ($charw!==false) {
- $charw = $charw*$this->smCapsScale * $this->smCapsStretch/100;
- $w+=$charw;
- }
- elseif(isset($this->CurrentFont['desc']['MissingWidth'])) { $w += $this->CurrentFont['desc']['MissingWidth']; }
- elseif(isset($this->CurrentFont['MissingWidth'])) { $w += $this->CurrentFont['MissingWidth']; }
- else { $w += 500; }
- }
- else {
- $charw = $this->_getCharWidth($cw,$char);
- if ($charw!==false) { $w+=$charw; }
- elseif(isset($this->CurrentFont['desc']['MissingWidth'])) { $w += $this->CurrentFont['desc']['MissingWidth']; }
- elseif(isset($this->CurrentFont['MissingWidth'])) { $w += $this->CurrentFont['MissingWidth']; }
- else { $w += 500; }
- if ($this->kerning && $this->useKerning && $lastchar) {
- if (isset($this->CurrentFont['kerninfo'][$lastchar][$char])) {
- $kerning += $this->CurrentFont['kerninfo'][$lastchar][$char];
- }
- }
- $lastchar = $char;
- }
- }
- } // *CJK-FONTS*
-
- }
- else {
- // mPDF 5.3.04
- if ($this->FontFamily!='csymbol' && $this->FontFamily!='czapfdingbats') {
- $s = str_replace(chr(173),'',$s );
- }
- $nb_carac = $l = strlen($s);
- // mPDF 5.3.04
- if ($this->minwSpacing || $this->fixedlSpacing) {
- $nb_spaces = substr_count($s,' ');
- }
- for($i=0; $i<$l; $i++) {
- if ($this->S && isset($this->upperCase[ord($s[$i])])) {
- $charw = $cw[chr($this->upperCase[ord($s[$i])])];
- if ($charw!==false) {
- $charw = $charw*$this->smCapsScale * $this->smCapsStretch/100;
- $w+=$charw;
- }
- }
- else if (isset($cw[$s[$i]])) {
- $w += $cw[$s[$i]];
- }
- else if (isset($cw[ord($s[$i])])) {
- $w += $cw[ord($s[$i])];
- }
- if ($this->kerning && $this->useKerning && $i>0) { // mPDF 5.3.04
- if (isset($this->CurrentFont['kerninfo'][$s[($i-1)]][$s[$i]])) {
- $kerning += $this->CurrentFont['kerninfo'][$s[($i-1)]][$s[$i]];
- }
- }
- }
- }
- unset($cw);
- if ($this->kerning && $this->useKerning) { $w += $kerning; }
- $w *= ($this->FontSize/ 1000);
- // mPDF 5.3.04
- $w += (($nb_carac + $nb_spaces) * $this->fixedlSpacing) + ($nb_spaces * $this->minwSpacing);
- return ($w);
-}
-
-function SetLineWidth($width) {
- //Set line width
- $this->LineWidth=$width;
- $lwout = (sprintf('%.3F w',$width*_MPDFK));
- if($this->page>0 && ((isset($this->pageoutput[$this->page]['LineWidth']) && $this->pageoutput[$this->page]['LineWidth'] != $lwout) || !isset($this->pageoutput[$this->page]['LineWidth']) || $this->keep_block_together)) {
- $this->_out($lwout);
- }
- $this->pageoutput[$this->page]['LineWidth'] = $lwout;
-}
-
-function Line($x1,$y1,$x2,$y2) {
- //Draw a line
- $this->_out(sprintf('%.3F %.3F m %.3F %.3F l S',$x1*_MPDFK,($this->h-$y1)*_MPDFK,$x2*_MPDFK,($this->h-$y2)*_MPDFK));
-}
-
-function Arrow($x1,$y1,$x2,$y2,$headsize=3,$fill='B',$angle=25) {
- //F == fill //S == stroke //B == stroke and fill
- // angle = splay of arrowhead - 1 - 89 degrees
- if($fill=='F') $fill='f';
- elseif($fill=='FD' or $fill=='DF' or $fill=='B') $fill='B';
- else $fill='S';
- $a = atan2(($y2-$y1),($x2-$x1));
- $b = $a + deg2rad($angle);
- $c = $a - deg2rad($angle);
- $x3 = $x2 - ($headsize* cos($b));
- $y3 = $this->h-($y2 - ($headsize* sin($b)));
- $x4 = $x2 - ($headsize* cos($c));
- $y4 = $this->h-($y2 - ($headsize* sin($c)));
-
- $x5 = $x3-($x3-$x4)/2; // mid point of base of arrowhead - to join arrow line to
- $y5 = $y3-($y3-$y4)/2;
-
- $s = '';
- $s.=sprintf('%.3F %.3F m %.3F %.3F l S',$x1*_MPDFK,($this->h-$y1)*_MPDFK,$x5*_MPDFK,$y5*_MPDFK);
- $this->_out($s);
-
- $s = '';
- $s.=sprintf('%.3F %.3F m %.3F %.3F l %.3F %.3F l %.3F %.3F l %.3F %.3F l ',$x5*_MPDFK,$y5*_MPDFK,$x3*_MPDFK,$y3*_MPDFK,$x2*_MPDFK,($this->h-$y2)*_MPDFK,$x4*_MPDFK,$y4*_MPDFK,$x5*_MPDFK,$y5*_MPDFK);
- $s.=$fill;
- $this->_out($s);
-}
-
-
-function Rect($x,$y,$w,$h,$style='') {
- //Draw a rectangle
- if($style=='F') $op='f';
- elseif($style=='FD' or $style=='DF') $op='B';
- else $op='S';
- $this->_out(sprintf('%.3F %.3F %.3F %.3F re %s',$x*_MPDFK,($this->h-$y)*_MPDFK,$w*_MPDFK,-$h*_MPDFK,$op));
-}
-
-function AddFont($family,$style='') {
- if(empty($family)) { return; }
- $family = strtolower($family);
- $style=strtoupper($style);
- $style=str_replace('U','',$style);
- if($style=='IB') $style='BI';
- $fontkey = $family.$style;
- // check if the font has been already added
- if(isset($this->fonts[$fontkey])) {
- return;
- }
-
-/*-- CJK-FONTS --*/
- if (in_array($family,$this->available_CJK_fonts)) {
- if (empty($this->Big5_widths)) { require(_MPDF_PATH . 'includes/CJKdata.php'); }
- $this->AddCJKFont($family); // don't need to add style
- return;
- }
-/*-- END CJK-FONTS --*/
-
- if ($this->usingCoreFont) { die("mPDF Error - problem with Font management"); }
-
- $stylekey = $style;
- if (!$style) { $stylekey = 'R'; }
-
- if (!isset($this->fontdata[$family][$stylekey]) || !$this->fontdata[$family][$stylekey]) {
- die('mPDF Error - Font is not supported - '.$family.' '.$style);
- }
-
- $name = '';
- $originalsize = 0;
- $sip = false;
- $smp = false;
- $haskerninfo = false;
- $BMPselected = false;
- @include(_MPDF_TTFONTDATAPATH.$fontkey.'.mtx.php');
-
- $ttffile = '';
- if (defined('_MPDF_SYSTEM_TTFONTS')) {
- $ttffile = _MPDF_SYSTEM_TTFONTS.$this->fontdata[$family][$stylekey];
- if (!file_exists($ttffile)) { $ttffile = ''; }
- }
- if (!$ttffile) {
- $ttffile = _MPDF_TTFONTPATH.$this->fontdata[$family][$stylekey];
- if (!file_exists($ttffile)) { die("mPDF Error - cannot find TTF TrueType font file - ".$ttffile); }
- }
- $ttfstat = stat($ttffile);
-
- if (isset($this->fontdata[$family]['TTCfontID'][$stylekey])) { $TTCfontID = $this->fontdata[$family]['TTCfontID'][$stylekey]; }
- else { $TTCfontID = 0; }
-
-
- $BMPonly = false;
- if (in_array($family,$this->BMPonly)) { $BMPonly = true; }
- $regenerate = false;
- if ($BMPonly && !$BMPselected) { $regenerate = true; }
- else if (!$BMPonly && $BMPselected) { $regenerate = true; }
- if ($this->useKerning && !$haskerninfo) { $regenerate = true; }
-
- if (!isset($name) || $originalsize != $ttfstat['size'] || $regenerate) {
- $mqr=$this->_getMQR();
- if ($mqr) { set_magic_quotes_runtime(0); }
- if (!class_exists('TTFontFile', false)) { include(_MPDF_PATH .'classes/ttfontsuni.php'); }
- $ttf = new TTFontFile();
- $ttf->getMetrics($ttffile, $TTCfontID, $this->debugfonts, $BMPonly, $this->useKerning);
- $cw = $ttf->charWidths;
- $kerninfo = $ttf->kerninfo;
- $haskerninfo = true;
- $name = preg_replace('/[ ()]/','',$ttf->fullName);
- $sip = $ttf->sipset;
- $smp = $ttf->smpset;
-
- $desc= array('Ascent'=>round($ttf->ascent),
- 'Descent'=>round($ttf->descent),
- 'CapHeight'=>round($ttf->capHeight),
- 'Flags'=>$ttf->flags,
- 'FontBBox'=>'['.round($ttf->bbox[0])." ".round($ttf->bbox[1])." ".round($ttf->bbox[2])." ".round($ttf->bbox[3]).']',
- 'ItalicAngle'=>$ttf->italicAngle,
- 'StemV'=>round($ttf->stemV),
- 'MissingWidth'=>round($ttf->defaultWidth));
- $panose = '';
- if (count($ttf->panose)) { $panose = $ttf->sFamilyClass.' '.$ttf->sFamilySubClass.' '.implode(' ',$ttf->panose); }
- $up = round($ttf->underlinePosition);
- $ut = round($ttf->underlineThickness);
- $originalsize = $ttfstat['size']+0;
- $type = 'TTF';
- //Generate metrics .php file
- $s='useKerning) {
- $s.='$kerninfo='.var_export($kerninfo,true).";\n";
- $s.='$haskerninfo=true;'."\n";
- }
- else $s.='$haskerninfo=false;'."\n";
- $s.="?>";
- if (is_writable(dirname(_MPDF_TTFONTDATAPATH.'x'))) {
- $fh = fopen(_MPDF_TTFONTDATAPATH.$fontkey.'.mtx.php',"w");
- fwrite($fh,$s,strlen($s));
- fclose($fh);
- $fh = fopen(_MPDF_TTFONTDATAPATH.$fontkey.'.cw.dat',"wb");
- fwrite($fh,$cw,strlen($cw));
- fclose($fh);
- @unlink(_MPDF_TTFONTDATAPATH.$fontkey.'.cgm');
- @unlink(_MPDF_TTFONTDATAPATH.$fontkey.'.z');
- @unlink(_MPDF_TTFONTDATAPATH.$fontkey.'.cw127.php');
- @unlink(_MPDF_TTFONTDATAPATH.$fontkey.'.cw');
- }
- else if ($this->debugfonts) { $this->Error('Cannot write to the font caching directory - '._MPDF_TTFONTDATAPATH); }
- unset($ttf);
- if ($mqr) { set_magic_quotes_runtime($mqr); }
- }
- else {
- $cw = @file_get_contents(_MPDF_TTFONTDATAPATH.$fontkey.'.cw.dat');
- }
-
- if (isset($this->fontdata[$family]['indic']) && $this->fontdata[$family]['indic']) { $indic = true; }
- else { $indic = false; }
- if (isset($this->fontdata[$family]['sip-ext']) && $this->fontdata[$family]['sip-ext']) { $sipext = $this->fontdata[$family]['sip-ext']; }
- else { $sipext = ''; }
-
-
- $i = count($this->fonts)+$this->extraFontSubsets+1;
- if ($sip || $smp) {
- $this->fonts[$fontkey] = array('i'=>$i, 'type'=>$type, 'name'=>$name, 'desc'=>$desc, 'panose'=>$panose, 'up'=>$up, 'ut'=>$ut, 'cw'=>$cw, 'ttffile'=>$ttffile, 'fontkey'=>$fontkey, 'subsets'=>array(0=>range(0,127)), 'subsetfontids'=>array($i), 'used'=>false, 'indic'=>$indic, 'sip'=>$sip, 'sipext'=>$sipext, 'smp'=>$smp, 'TTCfontID' => $TTCfontID);
- }
- else {
- // mPDF 5.3.31
- $ss = array();
- for ($s=32; $s<128; $s++) { $ss[$s] = $s; }
- $this->fonts[$fontkey] = array('i'=>$i, 'type'=>$type, 'name'=>$name, 'desc'=>$desc, 'panose'=>$panose, 'up'=>$up, 'ut'=>$ut, 'cw'=>$cw, 'ttffile'=>$ttffile, 'fontkey'=>$fontkey, 'subset'=>$ss, 'used'=>false, 'indic'=>$indic, 'sip'=>$sip, 'sipext'=>$sipext, 'smp'=>$smp, 'TTCfontID' => $TTCfontID);
- }
- if ($this->useKerning && $haskerninfo) { $this->fonts[$fontkey]['kerninfo'] = $kerninfo; }
- $this->FontFiles[$fontkey]=array('length1'=>$originalsize, 'type'=>"TTF", 'ttffile'=>$ttffile, 'sip'=>$sip, 'smp'=>$smp);
- unset($cw);
-}
-
-
-
-function SetFont($family,$style='',$size=0, $write=true, $forcewrite=false) {
- $family=strtolower($family);
- // mPDF 5.3.22
- if (!$this->onlyCoreFonts) {
- if ($family == 'sans' || $family == 'sans-serif') { $family = $this->sans_fonts[0]; }
- if ($family == 'serif') { $family = $this->serif_fonts[0]; }
- if ($family == 'mono' || $family == 'monospace') { $family = $this->mono_fonts[0]; }
- }
- // mPDF 5.3.22
- if (isset($this->fonttrans[$family]) && $this->fonttrans[$family]) { $family = $this->fonttrans[$family]; }
- if($family=='') {
- if ($this->FontFamily) { $family=$this->FontFamily; }
- else if ($this->default_font) { $family=$this->default_font; }
- else { $this->Error("No font or default font set!"); }
- }
- $this->ReqFontStyle = $style; // required or requested style - used later for artificial bold/italic
-
- if (($family == 'csymbol') || ($family == 'czapfdingbats') || ($family == 'ctimes') || ($family == 'ccourier') || ($family == 'chelvetica')) {
- if ($this->PDFA || $this->PDFX) {
- if ($family == 'csymbol' || $family == 'czapfdingbats') {
- $this->Error("Symbol and Zapfdingbats cannot be embedded in mPDF (required for PDFA1-b or PDFX/1-a).");
- }
- if ($family == 'ctimes' || $family == 'ccourier' || $family == 'chelvetica') {
- if (($this->PDFA && !$this->PDFAauto) || ($this->PDFX && !$this->PDFXauto)) { $this->PDFAXwarnings[] = "Core Adobe font ".ucfirst($family)." cannot be embedded in mPDF, which is required for PDFA1-b or PDFX/1-a. (Embedded font will be substituted.)"; }
- if ($family == 'chelvetica') { $family = 'sans'; }
- if ($family == 'ctimes') { $family = 'serif'; }
- if ($family == 'ccourier') { $family = 'mono'; }
- }
- $this->usingCoreFont = false;
- }
- else { $this->usingCoreFont = true; }
- if($family=='csymbol' || $family=='czapfdingbats') { $style=''; } // mPDF 5.3.05
- }
- else { $this->usingCoreFont = false; }
-
- // mPDF 5.3.05
- $this->U=false;
- $this->S=false;
- if ($style) {
- $style=strtoupper($style);
- if(strpos($style,'U')!==false) {
- $this->U=true;
- $style=str_replace('U','',$style);
- }
- if(strpos($style,'S')!==false) {
- $this->S=true;
- // Small Caps
- if (empty($this->upperCase)) { @include(_MPDF_PATH.'includes/upperCase.php'); } // mPDF 5.3.99
- $style=str_replace('S','',$style);
- }
- if ($style=='IB') $style='BI';
- }
- if ($size==0) $size=$this->FontSizePt;
-
- $fontkey=$family.$style;
-
- $stylekey = $style;
- if (!$stylekey) { $stylekey = "R"; }
-
- if (!$this->onlyCoreFonts && !$this->usingCoreFont) {
- // mPDF 5.3.05
- if(!isset($this->fonts[$fontkey]) || count($this->default_available_fonts) != count($this->available_unifonts) ) { // not already added
-/*-- CJK-FONTS --*/
- // CJK fonts
- if (in_array($fontkey,$this->available_CJK_fonts)) {
- if(!isset($this->fonts[$fontkey])) { // already added
- if (empty($this->Big5_widths)) { require(_MPDF_PATH . 'includes/CJKdata.php'); }
- $this->AddCJKFont($family); // don't need to add style
- }
- }
- // Test to see if requested font/style is available - or substitute
- else
-/*-- END CJK-FONTS --*/
- if (!in_array($fontkey,$this->available_unifonts)) {
- // If font[nostyle] exists - set it
- if (in_array($family,$this->available_unifonts)) {
- $style = '';
- }
-
- // Else if only one font available - set it (assumes if only one font available it will not have a style)
- else if (count($this->available_unifonts) == 1) {
- $family = $this->available_unifonts[0];
- $style = '';
- }
-
- else {
- $found = 0;
- // else substitute font of similar type
- if (in_array($family,$this->sans_fonts)) {
- $i = array_intersect($this->sans_fonts,$this->available_unifonts);
- if (count($i)) {
- $i = array_values($i);
- // with requested style if possible
- if (!in_array(($i[0].$style),$this->available_unifonts)) {
- $style = '';
- }
- $family = $i[0];
- $found = 1;
- }
- }
- else if (in_array($family,$this->serif_fonts)) {
- $i = array_intersect($this->serif_fonts,$this->available_unifonts);
- if (count($i)) {
- $i = array_values($i);
- // with requested style if possible
- if (!in_array(($i[0].$style),$this->available_unifonts)) {
- $style = '';
- }
- $family = $i[0];
- $found = 1;
- }
- }
- else if (in_array($family,$this->mono_fonts)) {
- $i = array_intersect($this->mono_fonts,$this->available_unifonts);
- if (count($i)) {
- $i = array_values($i);
- // with requested style if possible
- if (!in_array(($i[0].$style),$this->available_unifonts)) {
- $style = '';
- }
- $family = $i[0];
- $found = 1;
- }
- }
-
- if (!$found) {
- // set first available font
- $fs = $this->available_unifonts[0];
- preg_match('/^([a-z_0-9\-]+)([BI]{0,2})$/',$fs,$fas); // Allow "-"
- // with requested style if possible
- $ws = $fas[1].$style;
- if (in_array($ws,$this->available_unifonts)) {
- $family = $fas[1]; // leave $style as is
- }
- else if (in_array($fas[1],$this->available_unifonts)) {
- // or without style
- $family = $fas[1];
- $style = '';
- }
- else {
- // or with the style specified
- $family = $fas[1];
- $style = $fas[2];
- }
- }
- }
- $fontkey = $family.$style;
- }
- }
- // try to add font (if not already added)
- $this->AddFont($family, $style);
-
- //Test if font is already selected
- if($this->FontFamily == $family && $this->FontFamily == $this->currentfontfamily && $this->FontStyle == $style && $this->FontStyle == $this->currentfontstyle && $this->FontSizePt == $size && $this->FontSizePt == $this->currentfontsize && !$forcewrite) {
- return $family;
- }
-
- $fontkey = $family.$style;
-
- //Select it
- $this->FontFamily = $family;
- $this->FontStyle = $style;
- $this->FontSizePt = $size;
- $this->FontSize = $size / _MPDFK;
- $this->CurrentFont = &$this->fonts[$fontkey];
- if ($write) {
- $fontout = (sprintf('BT /F%d %.3F Tf ET', $this->CurrentFont['i'], $this->FontSizePt));
- if($this->page>0 && ((isset($this->pageoutput[$this->page]['Font']) && $this->pageoutput[$this->page]['Font'] != $fontout) || !isset($this->pageoutput[$this->page]['Font']) || $this->keep_block_together)) { $this->_out($fontout); }
- $this->pageoutput[$this->page]['Font'] = $fontout;
- }
-
-
-
- // Added - currentfont (lowercase) used in HTML2PDF
- $this->currentfontfamily=$family;
- $this->currentfontsize=$size;
- $this->currentfontstyle=$style.($this->U ? 'U' : '').($this->S ? 'S' : '');
- $this->setMBencoding('UTF-8');
- }
-
- else { // if using core fonts
-
-
- if ($this->PDFA || $this->PDFX) {
- $this->Error('Core Adobe fonts cannot be embedded in mPDF (required for PDFA1-b or PDFX/1-a) - cannot use option to use core fonts.');
- }
- $this->setMBencoding('windows-1252');
-
- //Test if font is already selected
- if(($this->FontFamily == $family) AND ($this->FontStyle == $style) AND ($this->FontSizePt == $size) && !$forcewrite) {
- return $family;
- }
-
- if (!isset($this->CoreFonts[$fontkey])) {
- if (in_array($family,$this->serif_fonts)) { $family = 'ctimes'; }
- else if (in_array($family,$this->mono_fonts)) { $family = 'ccourier'; }
- else { $family = 'chelvetica'; }
- $this->usingCoreFont = true;
- $fontkey = $family.$style;
- }
-
- if(!isset($this->fonts[$fontkey])) {
- // STANDARD CORE FONTS
- if (isset($this->CoreFonts[$fontkey])) {
- //Load metric file
- $file=$family;
- if($family=='ctimes' || $family=='chelvetica' || $family=='ccourier') { $file.=strtolower($style); }
- $file.='.php';
- include(_MPDF_PATH.'font/'.$file);
- if(!isset($cw)) { $this->Error('Could not include font metric file'); }
- $i=count($this->fonts)+$this->extraFontSubsets+1;
- $this->fonts[$fontkey]=array('i'=>$i,'type'=>'core','name'=>$this->CoreFonts[$fontkey],'desc'=>$desc,'up'=>$up,'ut'=>$ut,'cw'=>$cw);
- if ($this->useKerning) { $this->fonts[$fontkey]['kerninfo'] = $kerninfo; }
- }
- else {
- die('mPDF error - Font not defined');
- }
- }
- //Test if font is already selected
- if(($this->FontFamily == $family) AND ($this->FontStyle == $style) AND ($this->FontSizePt == $size) && !$forcewrite) {
- return $family;
- }
- //Select it
- $this->FontFamily=$family;
- $this->FontStyle=$style;
- $this->FontSizePt=$size;
- $this->FontSize=$size/_MPDFK;
- $this->CurrentFont=&$this->fonts[$fontkey];
- if ($write) {
- $fontout = (sprintf('BT /F%d %.3F Tf ET', $this->CurrentFont['i'], $this->FontSizePt));
- if($this->page>0 && ((isset($this->pageoutput[$this->page]['Font']) && $this->pageoutput[$this->page]['Font'] != $fontout) || !isset($this->pageoutput[$this->page]['Font']) || $this->keep_block_together)) { $this->_out($fontout); }
- $this->pageoutput[$this->page]['Font'] = $fontout;
- }
- // Added - currentfont (lowercase) used in HTML2PDF
- $this->currentfontfamily=$family;
- $this->currentfontsize=$size;
- $this->currentfontstyle=$style.($this->U ? 'U' : '').($this->S ? 'S' : '');
-
- }
-
- return $family;
-}
-
-function SetFontSize($size,$write=true) {
- //Set font size in points
- if($this->FontSizePt==$size) return;
- $this->FontSizePt=$size;
- $this->FontSize=$size/_MPDFK;
- $this->currentfontsize=$size;
- if ($write) {
- $fontout = (sprintf('BT /F%d %.3F Tf ET', $this->CurrentFont['i'], $this->FontSizePt));
- // Edited mPDF 3.0
- if($this->page>0 && ((isset($this->pageoutput[$this->page]['Font']) && $this->pageoutput[$this->page]['Font'] != $fontout) || !isset($this->pageoutput[$this->page]['Font']) || $this->keep_block_together)) { $this->_out($fontout); }
- $this->pageoutput[$this->page]['Font'] = $fontout;
- }
-}
-
-function AddLink() {
- //Create a new internal link
- $n=count($this->links)+1;
- $this->links[$n]=array(0,0);
- return $n;
-}
-
-function SetLink($link,$y=0,$page=-1) {
- //Set destination of internal link
- if($y==-1) $y=$this->y;
- if($page==-1) $page=$this->page;
- $this->links[$link]=array($page,$y);
-}
-
-function Link($x,$y,$w,$h,$link) {
- $l = array($x*_MPDFK,$this->hPt-$y*_MPDFK,$w*_MPDFK,$h*_MPDFK,$link);
- if ($this->keep_block_together) { // Save to array - don't write yet
- $this->ktLinks[$this->page][]= $l;
- return;
- }
- else if ($this->table_rotate) { // *TABLES*
- $this->tbrot_Links[$this->page][]= $l; // *TABLES*
- return; // *TABLES*
- } // *TABLES*
- else if ($this->kwt) {
- $this->kwt_Links[$this->page][]= $l;
- return;
- }
-
- if ($this->writingHTMLheader || $this->writingHTMLfooter) {
- $this->HTMLheaderPageLinks[]= $l;
- return;
- }
- //Put a link on the page
- $this->PageLinks[$this->page][]= $l;
- // Save cross-reference to Column buffer
- $ref = count($this->PageLinks[$this->page])-1; // *COLUMNS*
- $this->columnLinks[$this->CurrCol][INTVAL($this->x)][INTVAL($this->y)] = $ref; // *COLUMNS*
-
-}
-
-function Text($x,$y,$txt) {
- // Output a string
- // Called (internally) by Watermark and _tableWrite [rotated cells]
- // Expects input to be mb_encoded if necessary and RTL reversed
-
- // ARTIFICIAL BOLD AND ITALIC
- $s = 'q ';
- if ($this->falseBoldWeight && strpos($this->ReqFontStyle,"B") !== false && strpos($this->FontStyle,"B") === false) {
- $s .= '2 Tr 1 J 1 j ';
- $s .= sprintf('%.3F w ',($this->FontSize/130)*_MPDFK*$this->falseBoldWeight);
- $tc = strtoupper($this->TextColor); // change 0 0 0 rg to 0 0 0 RG
- if($this->FillColor!=$tc) { $s .= $tc.' '; } // stroke (outline) = same colour as text(fill)
- }
- if (strpos($this->ReqFontStyle,"I") !== false && strpos($this->FontStyle,"I") === false) {
- $aix = '1 0 0.261799 1 %.3F %.3F Tm';
- }
- else { $aix = '%.3F %.3F Td'; }
-
- if($this->ColorFlag) $s.=$this->TextColor.' ';
-
- $this->CurrentFont['used']= true;
- if ($this->CurrentFont['type']=='TTF' && ($this->CurrentFont['sip'] || $this->CurrentFont['smp'])) {
- $txt2 = str_replace(chr(194).chr(160),chr(32),$txt);
- $txt2 = $this->UTF8toSubset($txt2);
- $s.=sprintf('BT '.$aix.' %s Tj ET ',$x*_MPDFK,($this->h-$y)*_MPDFK,$txt2);
- }
- else if (!$this->usingCoreFont) { // mPDF 5.3.22
- $txt2 = str_replace(chr(194).chr(160),chr(32),$txt);
- $this->UTF8StringToArray($txt2); // this is just to add chars to subset list
- if ($this->kerning && $this->useKerning) { $s .= $this->_kern($txt2, '', $aix, $x, $y); }
- else {
- //Convert string to UTF-16BE without BOM
- $txt2= $this->UTF8ToUTF16BE($txt2, false);
- $s.=sprintf('BT '.$aix.' (%s) Tj ET ',$x*_MPDFK,($this->h-$y)*_MPDFK,$this->_escape($txt2));
- }
- }
- else {
- $txt2 = str_replace(chr(160),chr(32),$txt);
- if ($this->kerning && $this->useKerning) { $s .= $this->_kern($txt2, '', $aix, $x, $y); }
- else {
- $s.=sprintf('BT '.$aix.' (%s) Tj ET ',$x*_MPDFK,($this->h-$y)*_MPDFK,$this->_escape($txt2));
- }
- }
- if($this->U && $txt!='') {
- // mPDF 5.3.34
- $c = strtoupper($this->TextColor); // change 0 0 0 rg to 0 0 0 RG
- if($this->FillColor!=$c) { $s.= ' '.$c.' '; }
- if (isset($this->CurrentFont['up'])) { $up=$this->CurrentFont['up']; }
- else { $up = -100; }
- $adjusty = (-$up/1000* $this->FontSize);
- if (isset($this->CurrentFont['ut'])) { $ut=$this->CurrentFont['ut']/1000* $this->FontSize; }
- else { $ut = 60/1000* $this->FontSize; }
- $olw = $this->LineWidth;
- $s.=' '.(sprintf(' %.3F w',$ut*_MPDFK));
- $s.=' '.$this->_dounderline($x,$y + $adjusty,$txt);
- $s.=' '.(sprintf(' %.3F w',$olw*_MPDFK));
- if($this->FillColor!=$c) { $s.= ' '.$this->FillColor.' '; }
- }
- // STRIKETHROUGH // mPDF 5.3.54
- if($this->strike && $txt!='') {
- $c = strtoupper($this->TextColor); // change 0 0 0 rg to 0 0 0 RG
- if($this->FillColor!=$c) { $s.= ' '.$c.' '; }
- //Superscript and Subscript Y coordinate adjustment (now for striked-through texts)
- if (isset($this->CurrentFont['desc']['CapHeight'])) { $ch=$this->CurrentFont['desc']['CapHeight']; }
- else { $ch = 700; }
- $adjusty = (-$ch/1000* $this->FontSize) * 0.35;
- if (isset($this->CurrentFont['ut'])) { $ut=$this->CurrentFont['ut']/1000* $this->FontSize; }
- else { $ut = 60/1000* $this->FontSize; }
- $olw = $this->LineWidth;
- $s.=' '.(sprintf(' %.3F w',$ut*_MPDFK));
- $s.=' '.$this->_dounderline($x,$y+$adjusty,$txt);
- $s.=' '.(sprintf(' %.3F w',$olw*_MPDFK));
- if($this->FillColor!=$c) { $s.= ' '.$this->FillColor.' '; }
- }
- $s .= 'Q';
- $this->_out($s);
-}
-
-/*-- DIRECTW --*/
-function WriteText($x,$y,$txt) {
- // Output a string using Text() but does encoding and text reversing of RTL
- $txt = $this->purify_utf8_text($txt);
- if ($this->text_input_as_HTML) {
- $txt = $this->all_entities_to_utf8($txt);
- }
- if ($this->usingCoreFont) { $txt = mb_convert_encoding($txt,$this->mb_enc,'UTF-8'); } // mPDF 5.3.22
- // DIRECTIONALITY
- if (preg_match("/([".$this->pregRTLchars."])/u", $txt)) { $this->biDirectional = true; } // *RTL*
- $this->magic_reverse_dir($txt, true, $this->directionality); // *RTL*
- // Font-specific ligature substitution for Indic fonts
- if (isset($this->CurrentFont['indic']) && $this->CurrentFont['indic']) $this->ConvertIndic($txt); // *INDIC*
- $this->Text($x,$y,$txt);
-}
-
-function WriteCell($w,$h=0,$txt='',$border=0,$ln=0,$align='',$fill=0,$link='', $currentx=0) {
- //Output a cell using Cell() but does encoding and text reversing of RTL
- $txt = $this->purify_utf8_text($txt);
- if ($this->text_input_as_HTML) {
- $txt = $this->all_entities_to_utf8($txt);
- }
- if ($this->usingCoreFont) { $txt = mb_convert_encoding($txt,$this->mb_enc,'UTF-8'); } // mPDF 5.3.07 // mPDF 5.3.22
- // DIRECTIONALITY
- if (preg_match("/([".$this->pregRTLchars."])/u", $txt)) { $this->biDirectional = true; } // *RTL*
- $this->magic_reverse_dir($txt, true, $this->directionality); // *RTL*
- // Font-specific ligature substitution for Indic fonts
- if (isset($this->CurrentFont['indic']) && $this->CurrentFont['indic']) $this->ConvertIndic($txt); // *INDIC*
- $this->Cell($w,$h,$txt,$border,$ln,$align,$fill,$link, $currentx);
-}
-/*-- END DIRECTW --*/
-
-
-function ResetSpacing() {
- if ($this->ws != 0) { $this->_out('BT 0 Tw ET'); }
- $this->ws=0;
- if ($this->charspacing != 0) { $this->_out('BT 0 Tc ET'); }
- $this->charspacing=0;
-}
-
-
-function SetSpacing($cs,$ws) {
- if (intval($cs*1000)==0) { $cs = 0; }
- if ($cs) { $this->_out(sprintf('BT %.3F Tc ET',$cs)); }
- else if ($this->charspacing != 0) { $this->_out('BT 0 Tc ET'); }
- $this->charspacing=$cs;
- if (intval($ws*1000)==0) { $ws = 0; }
- if ($ws) { $this->_out(sprintf('BT %.3F Tw ET',$ws)); }
- else if ($this->ws != 0) { $this->_out('BT 0 Tw ET'); }
- $this->ws=$ws;
-}
-
-// WORD SPACING
-function GetJspacing($nc,$ns,$w,$inclCursive) {
- $ws = 0;
- $charspacing = 0;
- $ww = $this->jSWord;
- $ncx = $nc-1;
- if ($nc == 0) { return array(0,0); }
- else if ($nc==1) { $charspacing = $w; }
- // Only word spacing allowed / possible
- else if ($this->fixedlSpacing !== false || $inclCursive) {
- if ($ns) { $ws = $w / $ns; }
- }
- else if (!$ns) {
- $charspacing = $w / ($ncx );
- if (($this->jSmaxChar > 0) && ($charspacing > $this->jSmaxChar)) {
- $charspacing = $this->jSmaxChar;
- }
- }
- else if ($ns == ($ncx )) {
- $charspacing = $w / $ns;
- }
- else {
- if ($this->usingCoreFont) {
- $cs = ($w * (1 - $this->jSWord)) / ($ncx );
- if (($this->jSmaxChar > 0) && ($cs > $this->jSmaxChar)) {
- $cs = $this->jSmaxChar;
- $ww = 1 - (($cs * ($ncx ))/$w);
- }
- $charspacing = $cs;
- $ws = ($w * ($ww) ) / $ns;
- }
- else {
- $cs = ($w * (1 - $this->jSWord)) / ($ncx -$ns);
- if (($this->jSmaxChar > 0) && ($cs > $this->jSmaxChar)) {
- $cs = $this->jSmaxChar;
- $ww = 1 - (($cs * ($ncx -$ns))/$w);
- }
- $charspacing = $cs;
- $ws = (($w * ($ww) ) / $ns) - $charspacing;
- }
- }
- return array($charspacing,$ws);
-}
-
-function Cell($w,$h=0,$txt='',$border=0,$ln=0,$align='',$fill=0,$link='', $currentx=0, $lcpaddingL=0, $lcpaddingR=0, $valign='M', $spanfill=0, $abovefont=0, $belowfont=0, $exactWidth=false) { // mPDF 5.3.07
- //Output a cell
- // Expects input to be mb_encoded if necessary and RTL reversed
- // NON_BREAKING SPACE
- if ($this->usingCoreFont) {
- $txt = str_replace(chr(160),chr(32),$txt);
- }
- else {
- $txt = str_replace(chr(194).chr(160),chr(32),$txt);
- }
-
- $oldcolumn = $this->CurrCol;
- // Automatic page break
- // Allows PAGE-BREAK-AFTER = avoid to work
-
- if (!$this->tableLevel && (($this->y+$this->divheight>$this->PageBreakTrigger) || ($this->y+$h>$this->PageBreakTrigger) ||
- ($this->y+($h*2)>$this->PageBreakTrigger && $this->blk[$this->blklvl]['page_break_after_avoid'])) and !$this->InFooter and $this->AcceptPageBreak()) {
- $x=$this->x;//Current X position
-
-
- // WORD SPACING
- $ws=$this->ws;//Word Spacing
- $charspacing=$this->charspacing;//Character Spacing
- $this->ResetSpacing();
-
- $this->AddPage($this->CurOrientation);
- // Added to correct for OddEven Margins
- $x += $this->MarginCorrection;
- if ($currentx) {
- $currentx += $this->MarginCorrection;
- }
- $this->x=$x;
- // WORD SPACING
- $this->SetSpacing($charspacing,$ws);
- }
-
- // Test: to put line through centre of cell: $this->Line($this->x,$this->y+($h/2),$this->x+50,$this->y+($h/2));
-
-/*-- COLUMNS --*/
- // COLS
- // COLUMN CHANGE
- if ($this->CurrCol != $oldcolumn) {
- if ($currentx) {
- $currentx += $this->ChangeColumn * ($this->ColWidth+$this->ColGap);
- }
- $this->x += $this->ChangeColumn * ($this->ColWidth+$this->ColGap);
- }
-
- // COLUMNS Update/overwrite the lowest bottom of printing y value for a column
- if ($this->ColActive) {
- if ($h) { $this->ColDetails[$this->CurrCol]['bottom_margin'] = $this->y+$h; }
- else { $this->ColDetails[$this->CurrCol]['bottom_margin'] = $this->y+$this->divheight; }
- }
-/*-- END COLUMNS --*/
-
- // KEEP BLOCK TOGETHER Update/overwrite the lowest bottom of printing y value on first page
- if ($this->keep_block_together) {
- if ($h) { $this->ktBlock[$this->page]['bottom_margin'] = $this->y+$h; }
-// else { $this->ktBlock[$this->page]['bottom_margin'] = $this->y+$this->divheight; }
- }
-
- if($w==0) $w = $this->w-$this->rMargin-$this->x;
- $s='';
- if($fill==1 && $this->FillColor) {
- if((isset($this->pageoutput[$this->page]['FillColor']) && $this->pageoutput[$this->page]['FillColor'] != $this->FillColor) || !isset($this->pageoutput[$this->page]['FillColor']) || $this->keep_block_together) { $s .= $this->FillColor.' '; }
- $this->pageoutput[$this->page]['FillColor'] = $this->FillColor;
- }
-
-
- $boxtop = $this->y;
- $boxheight = $h;
- $boxbottom = $this->y+$h;
-
- if($txt!='') {
- // FONT SIZE - this determines the baseline caculation
- if ($this->linemaxfontsize && !$this->processingHeader) { $bfs = $this->linemaxfontsize; }
- else { $bfs = $this->FontSize; }
- //Calculate baseline Superscript and Subscript Y coordinate adjustment
- $bfx = $this->baselineC;
- $baseline = $bfx*$bfs;
- if($this->SUP) { $baseline += ($bfx-1.05)*$this->FontSize; }
- else if($this->SUB) { $baseline += ($bfx + 0.04)*$this->FontSize; }
- else if($this->bullet) { $baseline += ($bfx-0.7)*$this->FontSize; }
-
- // Vertical align (for Images)
- if ($abovefont || $belowfont) { // from flowing block - valign always M
- $va = $abovefont + (0.5*$bfs);
- }
- else if ($this->lineheight_correction) {
- if ($valign == 'T') { $va = (0.5 * $bfs * $this->lineheight_correction); }
- else if ($valign == 'B') { $va = $h-(0.5 * $bfs * $this->lineheight_correction); }
- else { $va = 0.5*$h; } // Middle
- }
- else {
- if ($valign == 'T') { $va = (0.5 * $bfs * $this->default_lineheight_correction); }
- else if ($valign == 'B') { $va = $h-(0.5 * $bfs * $this->default_lineheight_correction); }
- else { $va = 0.5*$h; } // Middle
- }
-
- // ONLY SET THESE IF WANT TO CONFINE BORDER +/- FILL TO FIT FONTSIZE - NOT FULL CELL AS IS ORIGINAL FUNCTION
- // spanfill or spanborder are set in FlowingBlock functions
- // mPDF 5.3.52
- if ($spanfill || !empty($this->spanborddet) || $link!='') { // mPDF 5.3.71
- $exth = 0.2; // Add to fontsize to increase height of background / link / border
- $boxtop = $this->y+$baseline+$va-($this->FontSize*(1+$exth/2)*(0.5+$bfx));
- $boxheight = $this->FontSize * (1+$exth);
- $boxbottom = $boxtop + $boxheight;
- }
- }
-
- // mPDF 5.3.61
- $bbw = $tbw = $lbw = $rbw = 0; // Border widths
- if (!empty($this->spanborddet)) {
- // mPDF 5.3.76
- if (!isset($this->spanborddet['B'])) { $this->spanborddet['B'] = array('s' => 0, 'style' => '', 'w' => 0); }
- if (!isset($this->spanborddet['T'])) { $this->spanborddet['T'] = array('s' => 0, 'style' => '', 'w' => 0); }
- if (!isset($this->spanborddet['L'])) { $this->spanborddet['L'] = array('s' => 0, 'style' => '', 'w' => 0); }
- if (!isset($this->spanborddet['R'])) { $this->spanborddet['R'] = array('s' => 0, 'style' => '', 'w' => 0); }
- // mPDF 5.3.61
- $bbw = $this->spanborddet['B']['w'];
- $tbw = $this->spanborddet['T']['w'];
- $lbw = $this->spanborddet['L']['w'];
- $rbw = $this->spanborddet['R']['w'];
- }
- if($fill==1 || $border==1 || !empty($this->spanborddet)) { // mPDF 5.3.61
- // mPDF 5.3.61
- if (!empty($this->spanborddet)) {
- if ($fill==1) {
- $s.=sprintf('%.3F %.3F %.3F %.3F re f ',($this->x-$lbw)*_MPDFK,($this->h-$boxtop+$tbw)*_MPDFK,($w+$lbw+$rbw)*_MPDFK,(-$boxheight-$tbw-$bbw)*_MPDFK);
- }
- $s.= ' q ';
- $dashon = 3;
- $dashoff = 3.5;
- $dot = 2.5;
- if($tbw) { // mPDF 5.3.76
- $short = 0;
- if ($this->spanborddet['T']['style'] == 'dashed') {
- $s.=sprintf(' 0 j 0 J [%.3F %.3F] 0 d ',$tbw*$dashon*_MPDFK,$tbw*$dashoff*_MPDFK);
- }
- else if ($this->spanborddet['T']['style'] == 'dotted') {
- $s.=sprintf(' 1 j 1 J [%.3F %.3F] %.3F d ',0.001,$tbw*$dot*_MPDFK,-$tbw/2*_MPDFK);
- $short = $tbw/2;
- }
- else {
- $s.=' 0 j 0 J [] 0 d ';
- }
- $c = $this->SetDColor($this->spanborddet['T']['c'],true);
- if ($this->spanborddet['T']['style'] == 'double') {
- $s.=sprintf(' %s %.3F w ',$c,$tbw/3*_MPDFK);
- $xadj = $xadj2 = 0;
- if ($this->spanborddet['L']['style'] == 'double') { $xadj = $this->spanborddet['L']['w']*2/3; }
- if ($this->spanborddet['R']['style'] == 'double') { $xadj2 = $this->spanborddet['R']['w']*2/3; }
- $s.=sprintf('%.3F %.3F m %.3F %.3F l S ',($this->x-$lbw)*_MPDFK,($this->h-$boxtop+$tbw*5/6)*_MPDFK,($this->x+$w+$rbw-$short)*_MPDFK,($this->h-$boxtop+$tbw*5/6)*_MPDFK);
- $s.=sprintf('%.3F %.3F m %.3F %.3F l S ',($this->x-$lbw+$xadj)*_MPDFK,($this->h-$boxtop+$tbw/6)*_MPDFK,($this->x+$w+$rbw-$short-$xadj2)*_MPDFK,($this->h-$boxtop+$tbw/6)*_MPDFK);
- }
- else {
- $s.=sprintf(' %s %.3F w ',$c,$tbw*_MPDFK);
- $s.=sprintf('%.3F %.3F m %.3F %.3F l S ',($this->x-$lbw)*_MPDFK,($this->h-$boxtop+$tbw/2)*_MPDFK,($this->x+$w+$rbw-$short)*_MPDFK,($this->h-$boxtop+$tbw/2)*_MPDFK);
- }
- }
- if($bbw) { // mPDF 5.3.76
- $short = 0;
- if ($this->spanborddet['B']['style'] == 'dashed') {
- $s.=sprintf(' 0 j 0 J [%.3F %.3F] 0 d ',$bbw*$dashon*_MPDFK,$bbw*$dashoff*_MPDFK);
- }
- else if ($this->spanborddet['B']['style'] == 'dotted') {
- $s.=sprintf(' 1 j 1 J [%.3F %.3F] %.3F d ',0.001,$bbw*$dot*_MPDFK,-$bbw/2*_MPDFK);
- $short = $bbw/2;
- }
- else {
- $s.=' 0 j 0 J [] 0 d ';
- }
- $c = $this->SetDColor($this->spanborddet['B']['c'],true);
- if ($this->spanborddet['B']['style'] == 'double') {
- $s.=sprintf(' %s %.3F w ',$c,$bbw/3*_MPDFK);
- $xadj = $xadj2 = 0;
- if ($this->spanborddet['L']['style'] == 'double') { $xadj = $this->spanborddet['L']['w']*2/3; }
- if ($this->spanborddet['R']['style'] == 'double') { $xadj2 = $this->spanborddet['R']['w']*2/3; }
- $s.=sprintf('%.3F %.3F m %.3F %.3F l S ',($this->x-$lbw+$xadj)*_MPDFK,($this->h-$boxbottom-$bbw/6)*_MPDFK,($this->x+$w+$rbw-$short-$xadj2)*_MPDFK,($this->h-$boxbottom-$bbw/6)*_MPDFK);
- $s.=sprintf('%.3F %.3F m %.3F %.3F l S ',($this->x-$lbw)*_MPDFK,($this->h-$boxbottom-$bbw*5/6)*_MPDFK,($this->x+$w+$rbw-$short)*_MPDFK,($this->h-$boxbottom-$bbw*5/6)*_MPDFK);
- }
- else {
- $s.=sprintf(' %s %.3F w ',$c,$bbw*_MPDFK);
- $s.=sprintf('%.3F %.3F m %.3F %.3F l S ',($this->x-$lbw)*_MPDFK,($this->h-$boxbottom-$bbw/2)*_MPDFK,($this->x+$w+$rbw-$short)*_MPDFK,($this->h-$boxbottom-$bbw/2)*_MPDFK);
- }
- }
- if($lbw) { // mPDF 5.3.76
- $short = 0;
- if ($this->spanborddet['L']['style'] == 'dashed') {
- $s.=sprintf(' 0 j 0 J [%.3F %.3F] 0 d ',$lbw*$dashon*_MPDFK,$lbw*$dashoff*_MPDFK);
- }
- else if ($this->spanborddet['L']['style'] == 'dotted') {
- $s.=sprintf(' 1 j 1 J [%.3F %.3F] %.3F d ',0.001,$lbw*$dot*_MPDFK,-$lbw/2*_MPDFK);
- $short = $lbw/2;
- }
- else {
- $s.=' 0 j 0 J [] 0 d ';
- }
- $c = $this->SetDColor($this->spanborddet['L']['c'],true);
- if ($this->spanborddet['L']['style'] == 'double') {
- $s.=sprintf(' %s %.3F w ',$c,$lbw/3*_MPDFK);
- $yadj = $yadj2 = 0;
- if ($this->spanborddet['T']['style'] == 'double') { $yadj = $this->spanborddet['T']['w']*2/3; }
- if ($this->spanborddet['B']['style'] == 'double') { $yadj2 = $this->spanborddet['B']['w']*2/3; }
- $s.=sprintf('%.3F %.3F m %.3F %.3F l S ',($this->x-$lbw/6)*_MPDFK,($this->h-$boxtop+$tbw-$yadj)*_MPDFK,($this->x-$lbw/6)*_MPDFK,($this->h-$boxbottom-$bbw+$short+$yadj2)*_MPDFK);
- $s.=sprintf('%.3F %.3F m %.3F %.3F l S ',($this->x-$lbw*5/6)*_MPDFK,($this->h-$boxtop+$tbw)*_MPDFK,($this->x-$lbw*5/6)*_MPDFK,($this->h-$boxbottom-$bbw+$short)*_MPDFK);
- }
- else {
- $s.=sprintf(' %s %.3F w ',$c,$lbw*_MPDFK);
- $s.=sprintf('%.3F %.3F m %.3F %.3F l S ',($this->x-$lbw/2)*_MPDFK,($this->h-$boxtop+$tbw)*_MPDFK,($this->x-$lbw/2)*_MPDFK,($this->h-$boxbottom-$bbw+$short)*_MPDFK);
- }
- }
- if($rbw) { // mPDF 5.3.76
- $short = 0;
- if ($this->spanborddet['R']['style'] == 'dashed') {
- $s.=sprintf(' 0 j 0 J [%.3F %.3F] 0 d ',$rbw*$dashon*_MPDFK,$rbw*$dashoff*_MPDFK);
- }
- else if ($this->spanborddet['R']['style'] == 'dotted') {
- $s.=sprintf(' 1 j 1 J [%.3F %.3F] %.3F d ',0.001,$rbw*$dot*_MPDFK,-$rbw/2*_MPDFK);
- $short = $rbw/2;
- }
- else {
- $s.=' 0 j 0 J [] 0 d ';
- }
- $c = $this->SetDColor($this->spanborddet['R']['c'],true);
- if ($this->spanborddet['R']['style'] == 'double') {
- $s.=sprintf(' %s %.3F w ',$c,$rbw/3*_MPDFK);
- $yadj = $yadj2 = 0;
- if ($this->spanborddet['T']['style'] == 'double') { $yadj = $this->spanborddet['T']['w']*2/3; }
- if ($this->spanborddet['B']['style'] == 'double') { $yadj2 = $this->spanborddet['B']['w']*2/3; }
- $s.=sprintf('%.3F %.3F m %.3F %.3F l S ',($this->x+$w+$rbw/6)*_MPDFK,($this->h-$boxtop+$tbw-$yadj)*_MPDFK,($this->x+$w+$rbw/6)*_MPDFK,($this->h-$boxbottom-$bbw+$short+$yadj2)*_MPDFK);
- $s.=sprintf('%.3F %.3F m %.3F %.3F l S ',($this->x+$w+$rbw*5/6)*_MPDFK,($this->h-$boxtop+$tbw)*_MPDFK,($this->x+$w+$rbw*5/6)*_MPDFK,($this->h-$boxbottom-$bbw+$short)*_MPDFK);
- }
- else {
- $s.=sprintf(' %s %.3F w ',$c,$rbw*_MPDFK);
- $s.=sprintf('%.3F %.3F m %.3F %.3F l S ',($this->x+$w+$rbw/2)*_MPDFK,($this->h-$boxtop+$tbw)*_MPDFK,($this->x+$w+$rbw/2)*_MPDFK,($this->h-$boxbottom-$bbw+$short)*_MPDFK);
- }
- }
- $s.= ' Q ';
- }
- else {
- if ($fill==1) $op=($border==1) ? 'B' : 'f';
- else $op='S';
- $s.=sprintf('%.3F %.3F %.3F %.3F re %s ',$this->x*_MPDFK,($this->h-$boxtop)*_MPDFK,$w*_MPDFK,-$boxheight*_MPDFK,$op);
- }
- }
-
- if(is_string($border)) {
- $x=$this->x;
- $y=$this->y;
- if(is_int(strpos($border,'L')))
- $s.=sprintf('%.3F %.3F m %.3F %.3F l S ',$x*_MPDFK,($this->h-$boxtop)*_MPDFK,$x*_MPDFK,($this->h-($boxbottom))*_MPDFK);
- if(is_int(strpos($border,'T')))
- $s.=sprintf('%.3F %.3F m %.3F %.3F l S ',$x*_MPDFK,($this->h-$boxtop)*_MPDFK,($x+$w)*_MPDFK,($this->h-$boxtop)*_MPDFK);
- if(is_int(strpos($border,'R')))
- $s.=sprintf('%.3F %.3F m %.3F %.3F l S ',($x+$w)*_MPDFK,($this->h-$boxtop)*_MPDFK,($x+$w)*_MPDFK,($this->h-($boxbottom))*_MPDFK);
- if(is_int(strpos($border,'B')))
- $s.=sprintf('%.3F %.3F m %.3F %.3F l S ',$x*_MPDFK,($this->h-($boxbottom))*_MPDFK,($x+$w)*_MPDFK,($this->h-($boxbottom))*_MPDFK);
- }
-
- if($txt!='') {
- if ($exactWidth) // mPDF 5.3.07
- $stringWidth = $w;
- else // mPDF 5.3.07 // mPDF 5.3.20
- $stringWidth = $this->GetStringWidth($txt) + ( $this->charspacing * mb_strlen( $txt, $this->mb_enc ) / _MPDFK )
- + ( $this->ws * mb_substr_count( $txt, ' ', $this->mb_enc ) / _MPDFK );
-
- // Set x OFFSET FOR PRINTING
- if($align=='R') {
- $dx=$w-$this->cMarginR - $stringWidth - $lcpaddingR;
- }
- elseif($align=='C') {
- $dx=(($w - $stringWidth )/2);
- }
- elseif($align=='L' or $align=='J') $dx=$this->cMarginL + $lcpaddingL;
- else $dx = 0;
-
- if($this->ColorFlag) $s .='q '.$this->TextColor.' ';
-
- // OUTLINE
- if($this->outline_on && !$this->S) {
- $s .=' '.sprintf('%.3F w',$this->LineWidth*_MPDFK).' ';
- $s .=" $this->DrawColor ";
- $s .=" 2 Tr ";
- }
- else if ($this->falseBoldWeight && strpos($this->ReqFontStyle,"B") !== false && strpos($this->FontStyle,"B") === false && !$this->S) { // can't use together with OUTLINE or Small Caps
- $s .= ' 2 Tr 1 J 1 j ';
- $s .= ' '.sprintf('%.3F w',($this->FontSize/130)*_MPDFK*$this->falseBoldWeight).' ';
- $tc = strtoupper($this->TextColor); // change 0 0 0 rg to 0 0 0 RG
- if($this->FillColor!=$tc) { $s .= ' '.$tc.' '; } // stroke (outline) = same colour as text(fill)
- }
-
- if (strpos($this->ReqFontStyle,"I") !== false && strpos($this->FontStyle,"I") === false) { // Artificial italic
- $aix = '1 0 0.261799 1 %.3F %.3F Tm ';
- }
- else { $aix = '%.3F %.3F Td '; }
-
- // THE TEXT
- // mPDF 5.3.A2 Capture in substring $sub
- $sub = '';
- $this->CurrentFont['used']= true;
-
- // WORD SPACING
- // IF multibyte - Tw has no effect - need to use alternative method - do word spacing using an adjustment before each space
- if ($this->ws && !$this->usingCoreFont && !$this->CurrentFont['sip'] && !$this->CurrentFont['smp'] && !$this->S) {
- $sub .= ' BT 0 Tw ET ';
- if ($this->kerning && $this->useKerning) { $sub .= $this->_kern($txt, 'MBTw', $aix, ($this->x+$dx), ($this->y+$baseline+$va)); }
- else {
- $space = " ";
- //Convert string to UTF-16BE without BOM
- $space= $this->UTF8ToUTF16BE($space , false);
- $space=$this->_escape($space );
- $sub .=sprintf('BT '.$aix,($this->x+$dx)*_MPDFK,($this->h-($this->y+$baseline+$va))*_MPDFK);
- $t = explode(' ',$txt);
- $sub .=sprintf(' %.3F Tc [',$this->charspacing);
- $numt = count($t); // mPDF 5.3.07
- for($i=0;$i<$numt;$i++) { // mPDF 5.3.07
- $tx = $t[$i];
- //Convert string to UTF-16BE without BOM
- $tx = $this->UTF8ToUTF16BE($tx , false);
- $tx = $this->_escape($tx);
- $sub .=sprintf('(%s) ',$tx);
- if (($i+1)<$numt) { // mPDF 5.3.07
- $adj = -($this->ws)*1000/$this->FontSizePt;
- $sub .=sprintf('%d(%s) ',$adj,$space);
- }
- }
- $sub .='] TJ ';
- $sub .=' ET';
- }
- }
- else {
- $txt2= $txt;
- if ($this->CurrentFont['type']=='TTF' && ($this->CurrentFont['sip'] || $this->CurrentFont['smp'])) {
- if ($this->S) { $sub .= $this->_smallCaps($txt2, 'SIPSMP', $aix, $dx, _MPDFK, $baseline, $va); }
- else {
- $txt2 = $this->UTF8toSubset($txt2);
- $sub .=sprintf('BT '.$aix.' %s Tj ET',($this->x+$dx)*_MPDFK,($this->h-($this->y+$baseline+$va))*_MPDFK,$txt2);
- }
- }
- else {
- if ($this->S) { $sub .= $this->_smallCaps($txt2, '', $aix, $dx, _MPDFK, $baseline, $va); }
- else if ($this->kerning && $this->useKerning) { $sub .= $this->_kern($txt2, '', $aix, ($this->x+$dx), ($this->y+$baseline+$va)); }
- else {
- if (!$this->usingCoreFont) {
- $txt2 = $this->UTF8ToUTF16BE($txt2, false);
- }
- $txt2=$this->_escape($txt2);
- $sub .=sprintf('BT '.$aix.' (%s) Tj ET',($this->x+$dx)*_MPDFK,($this->h-($this->y+$baseline+$va))*_MPDFK,$txt2);
- }
- }
- }
- // UNDERLINE
- if($this->U) {
- $c = strtoupper($this->TextColor); // change 0 0 0 rg to 0 0 0 RG
- if($this->FillColor!=$c) { $sub .= ' '.$c.' '; }
- if (isset($this->CurrentFont['up'])) { $up=$this->CurrentFont['up']; }
- else { $up = -100; }
- $adjusty = (-$up/1000* $this->FontSize);
- if (isset($this->CurrentFont['ut'])) { $ut=$this->CurrentFont['ut']/1000* $this->FontSize; }
- else { $ut = 60/1000* $this->FontSize; }
- $olw = $this->LineWidth;
- $sub .=' '.(sprintf(' %.3F w 0 j 0 J ',$ut*_MPDFK)); // mPDF 5.3.61
- $sub .=' '.$this->_dounderline($this->x+$dx,$this->y+$baseline+$va+$adjusty,$txt);
- $sub .=' '.(sprintf(' %.3F w 2 j 2 J ',$olw*_MPDFK)); // mPDF 5.3.61
- if($this->FillColor!=$c) { $sub .= ' '.$this->FillColor.' '; }
- }
-
- // STRIKETHROUGH
- if($this->strike) {
- $c = strtoupper($this->TextColor); // change 0 0 0 rg to 0 0 0 RG
- if($this->FillColor!=$c) { $sub .= ' '.$c.' '; }
- //Superscript and Subscript Y coordinate adjustment (now for striked-through texts)
- if (isset($this->CurrentFont['desc']['CapHeight'])) { $ch=$this->CurrentFont['desc']['CapHeight']; }
- else { $ch = 700; }
- $adjusty = (-$ch/1000* $this->FontSize) * 0.35;
- if (isset($this->CurrentFont['ut'])) { $ut=$this->CurrentFont['ut']/1000* $this->FontSize; }
- else { $ut = 60/1000* $this->FontSize; }
- $olw = $this->LineWidth;
- $sub .=' '.(sprintf(' %.3F w 0 j 0 J ',$ut*_MPDFK)); // mPDF 5.3.61
- $sub .=' '.$this->_dounderline($this->x+$dx,$this->y+$baseline+$va+$adjusty,$txt);
- $sub .=' '.(sprintf(' %.3F w 2 j 2 J ',$olw*_MPDFK)); // mPDF 5.3.54 // mPDF 5.3.61
- if($this->FillColor!=$c) { $sub .= ' '.$this->FillColor.' '; }
- }
-
- // mPDF 5.3.A2
- // TEXT SHADOW
- if ($this->textshadow) { // First to process is last in CSS comma separated shadows
- foreach($this->textshadow AS $ts) {
- $s .= ' q ';
- $s .= $this->SetTColor($ts['col'], true)."\n";
- if ($ts['col']{0}==5 && ord($ts['col']{4})<100) { // RGBa
- $s .= $this->SetAlpha(ord($ts['col']{4})/100, 'Normal', true, 'F')."\n";
- }
- else if ($ts['col']{0}==6 && ord($ts['col']{5})<100) { // CMYKa
- $s .= $this->SetAlpha(ord($ts['col']{5})/100, 'Normal', true, 'F')."\n";
- }
- else if ($ts['col']{0}==1 && $ts['col']{2}==1 && ord($ts['col']{3})<100) { // Gray
- $s .= $this->SetAlpha(ord($ts['col']{3})/100, 'Normal', true, 'F')."\n";
- }
- $s .= sprintf(' q 1 0 0 1 %.4F %.4F cm', $ts['x']*_MPDFK, -$ts['y']*_MPDFK)."\n";
- $s .= $sub;
- $s .= ' Q ';
- $s .= ' Q ';
- }
- }
-
- $s .= $sub;
-
- // COLOR
- if($this->ColorFlag) $s .=' Q';
-
- // LINK
- if($link!='') {
- // mPDF 5.3.16
- // Use same co-ordinates as span FILL above
- $this->Link($this->x,$boxtop,$w,$boxheight,$link);
- // Use this to add some padding/spacing around the textbox for the LINK
- // Use same spacing as span FILL above
- // $hsp = $this->FontSize/7;
- // $vsp = $this->FontSize/10;
- // $this->Link($this->x-$hsp,$boxtop-$vsp,$w+2*$hsp,$boxheight+2*$vsp,$link);
- }
- }
- if($s) $this->_out($s);
-
- // WORD SPACING
- if ($this->ws && !$this->usingCoreFont) {
- $this->_out(sprintf('BT %.3F Tc ET',$this->charspacing));
- }
- $this->lasth=$h;
- if( strpos($txt,"\n") !== false) $ln=1; // cell recognizes \n from
tag
- if($ln>0)
- {
- //Go to next line
- $this->y += $h;
- if($ln==1) {
- //Move to next line
- if ($currentx != 0) { $this->x=$currentx; }
- else { $this->x=$this->lMargin; }
- }
- }
- else $this->x+=$w;
-
-
-}
-
-
-function _kern($txt, $mode, $aix, $x, $y) {
- if ($mode == 'MBTw') { // Multibyte requiring word spacing
- $space = ' ';
- //Convert string to UTF-16BE without BOM
- $space= $this->UTF8ToUTF16BE($space , false);
- $space=$this->_escape($space );
- $s = sprintf(' BT '.$aix,$x*_MPDFK,($this->h-$y)*_MPDFK);
- $t = explode(' ',$txt);
- for($i=0;$i
UTF8StringToArray($tx);
- for($ti=0;$ti 0 && isset($this->CurrentFont['kerninfo'][$unicode[($ti-1)]][$unicode[$ti]])) {
- $kern = -$this->CurrentFont['kerninfo'][$unicode[($ti-1)]][$unicode[$ti]];
- $tj .= sprintf(')%d(',$kern);
- }
- $tc = code2utf($unicode[$ti]);
- $tc = $this->UTF8ToUTF16BE($tc, false);
- $tj .= $this->_escape($tc);
- }
- $tj .= ')';
- $s.=sprintf(' %.3F Tc [%s] TJ',$this->charspacing,$tj);
-
-
- if (($i+1)ws+$this->charspacing,$space);
- }
- }
- $s.=' ET ';
- }
- else if (!$this->usingCoreFont) {
- $s = '';
- $tj = '(';
- $unicode = $this->UTF8StringToArray($txt);
- for($i=0;$i 0 && isset($this->CurrentFont['kerninfo'][$unicode[($i-1)]][$unicode[$i]])) {
- $kern = -$this->CurrentFont['kerninfo'][$unicode[($i-1)]][$unicode[$i]];
- $tj .= sprintf(')%d(',$kern);
- }
- $tx = code2utf($unicode[$i]);
- $tx = $this->UTF8ToUTF16BE($tx, false);
- $tj .= $this->_escape($tx);
- }
- $tj .= ')';
- $s.=sprintf(' BT '.$aix.' [%s] TJ ET ',$x*_MPDFK,($this->h-$y)*_MPDFK,$tj);
- }
- else { // CORE Font
- $s = '';
- $tj = '(';
- $l = strlen($txt);
- for($i=0;$i<$l;$i++) {
- if ($i > 0 && isset($this->CurrentFont['kerninfo'][$txt[($i-1)]][$txt[$i]])) {
- $kern = -$this->CurrentFont['kerninfo'][$txt[($i-1)]][$txt[$i]];
- $tj .= sprintf(')%d(',$kern);
- }
- $tj .= $this->_escape($txt[$i]);
- }
- $tj .= ')';
- $s.=sprintf(' BT '.$aix.' [%s] TJ ET ',$x*_MPDFK,($this->h-$y)*_MPDFK,$tj);
- }
-
- return $s;
-}
-
-
-function _smallCaps($txt, $mode, $aix, $dx, $k, $baseline, $va) { // mPDF 5.3.76
- $upp = false;
- $str = array();
- $bits = array();
- if (!$this->usingCoreFont) {
- $unicode = $this->UTF8StringToArray($txt);
- foreach($unicode as $char) {
- if ($this->ws && $char == 32) { // space
- if (count($str)) { $bits[] = array($upp, $str, false); }
- $bits[] = array(false, array(32), true);
- $str = array();
- $upp = false;
- }
- else if (isset($this->upperCase[$char])) {
- if (!$upp) {
- if (count($str)) { $bits[] = array($upp, $str, false); }
- $str = array();
- }
- $str[] = $this->upperCase[$char];
- if ((!isset($this->CurrentFont['sip']) || !$this->CurrentFont['sip']) && (!isset($this->CurrentFont['smp']) || !$this->CurrentFont['smp'])) {
- $this->CurrentFont['subset'][$this->upperCase[$char]] = $this->upperCase[$char];
- }
- $upp = true;
- }
- else {
- if ($upp) {
- if (count($str)) { $bits[] = array($upp, $str, false); }
- $str = array();
- }
- $str[] = $char;
- $upp = false;
- }
- }
- }
- else {
- for($i=0;$iupperCase[ord($txt[$i])]) && $this->upperCase[ord($txt[$i])] < 256) {
- if (!$upp) {
- if (count($str)) { $bits[] = array($upp, $str, false); }
- $str = array();
- }
- $str[] = $this->upperCase[ord($txt[$i])];
- $upp = true;
- }
- else {
- if ($upp) {
- if (count($str)) { $bits[] = array($upp, $str, false); }
- $str = array();
- }
- $str[] = ord($txt[$i]);
- $upp = false;
- }
- }
- }
- if (count($str)) { $bits[] = array($upp, $str, false); }
-
- $fid = $this->CurrentFont['i'];
-
- $s=sprintf(' BT '.$aix,($this->x+$dx)*$k,($this->h-($this->y+$baseline+$va))*$k); // mPDF 5.3.76
- foreach($bits AS $b) {
- if ($b[0]) { $upp = true; }
- else { $upp = false; }
-
- $size = count ($b[1]);
- $txt = '';
- for ($i = 0; $i < $size; $i++) {
- $txt .= code2utf($b[1][$i]);
- }
- if ($this->usingCoreFont) {
- $txt = utf8_decode($txt);
- }
- if ($mode == 'SIPSMP') {
- $txt = $this->UTF8toSubset($txt);
- }
- else {
- if (!$this->usingCoreFont) {
- $txt = $this->UTF8ToUTF16BE($txt, false);
- }
- $txt=$this->_escape($txt);
- $txt = '('.$txt.')';
- }
- if ($b[2]) { // space
- $s.=sprintf(' /F%d %.3F Tf %d Tz', $fid, $this->FontSizePt, 100);
- $s.=sprintf(' %.3F Tc', ($this->charspacing+$this->ws));
- $s.=sprintf(' %s Tj', $txt);
- }
- else if ($upp) {
- $s.=sprintf(' /F%d %.3F Tf', $fid, $this->FontSizePt*$this->smCapsScale);
- $s.=sprintf(' %d Tz', $this->smCapsStretch);
- $s.=sprintf(' %.3F Tc', ($this->charspacing*100/$this->smCapsStretch));
- $s.=sprintf(' %s Tj', $txt);
- }
- else {
- $s.=sprintf(' /F%d %.3F Tf %d Tz', $fid, $this->FontSizePt, 100);
- $s.=sprintf(' %.3F Tc', ($this->charspacing));
- $s.=sprintf(' %s Tj', $txt);
- }
- }
- $s.=' ET ';
- return $s;
-}
-
-
-function MultiCell($w,$h,$txt,$border=0,$align='',$fill=0,$link='',$directionality='ltr',$encoded=false)
-{
- // Parameter (pre-)encoded - When called internally from ToC or textarea: mb_encoding already done - but not reverse RTL/Indic
- if (!$encoded) {
- $txt = $this->purify_utf8_text($txt);
- if ($this->text_input_as_HTML) {
- $txt = $this->all_entities_to_utf8($txt);
- }
- if ($this->usingCoreFont) { $txt = mb_convert_encoding($txt,$this->mb_enc,'UTF-8'); }
- // Font-specific ligature substitution for Indic fonts
- else if (isset($this->CurrentFont['indic']) && $this->CurrentFont['indic']) { // *INDIC*
- $this->ConvertIndic($tmp); // *INDIC*
- } // *INDIC*
- if (preg_match("/([".$this->pregRTLchars."])/u", $txt)) { $this->biDirectional = true; } // *RTL*
- }
- if (!$align) { $align = $this->defaultAlign; }
-
- //Output text with automatic or explicit line breaks
- $cw=&$this->CurrentFont['cw'];
- if($w==0) $w=$this->w-$this->rMargin-$this->x;
-
- $wmax = ($w - ($this->cMarginL+$this->cMarginR));
- if ($this->usingCoreFont) {
- $s=str_replace("\r",'',$txt);
- $nb=strlen($s);
- while($nb>0 and $s[$nb-1]=="\n") $nb--;
- }
- else {
- $s=str_replace("\r",'',$txt);
- $nb=mb_strlen($s, $this->mb_enc );
- while($nb>0 and mb_substr($s,$nb-1,1,$this->mb_enc )=="\n") $nb--;
- }
- $b=0;
- if($border) {
- if($border==1) {
- $border='LTRB';
- $b='LRT';
- $b2='LR';
- }
- else {
- $b2='';
- if(is_int(strpos($border,'L'))) $b2.='L';
- if(is_int(strpos($border,'R'))) $b2.='R';
- $b=is_int(strpos($border,'T')) ? $b2.'T' : $b2;
- }
- }
- $sep=-1;
- $i=0;
- $j=0;
- $l=0;
- $ns=0;
- $nl=1;
-
-
-
- if (!$this->usingCoreFont) {
- $checkCursive=false;
- if ($this->biDirectional) { $checkCursive=true; } // *RTL*
- else if (isset($this->CurrentFont['indic']) && $this->CurrentFont['indic']) { $checkCursive=true; } // *INDIC*
- while($i<$nb) {
- //Get next character
- $c = mb_substr($s,$i,1,$this->mb_enc );
- if($c == "\n") {
- //Explicit line break
- // WORD SPACING
- $this->ResetSpacing();
- $tmp = rtrim(mb_substr($s,$j,$i-$j,$this->mb_enc));
- // DIRECTIONALITY
- $this->magic_reverse_dir($tmp, true, $directionality); // *RTL*
-
- $this->Cell($w,$h,$tmp,$b,2,$align,$fill,$link);
- $i++;
- $sep=-1;
- $j=$i;
- $l=0;
- $ns=0;
- $nl++;
- if($border and $nl==2) $b=$b2;
- continue;
- }
- if($c == " ") {
- $sep=$i;
- $ls=$l;
- $ns++;
- }
-
- $l += $this->GetCharWidthNonCore($c); // mPDF 5.3.04
-
- if($l>$wmax) {
- //Automatic line break
- if($sep==-1) { // Only one word
- if($i==$j) $i++;
- // WORD SPACING
- $this->ResetSpacing();
- $tmp = rtrim(mb_substr($s,$j,$i-$j,$this->mb_enc));
- // DIRECTIONALITY
- $this->magic_reverse_dir($tmp, true, $directionality); // *RTL*
-
- $this->Cell($w,$h,$tmp,$b,2,$align,$fill,$link);
- }
- else {
- $tmp = rtrim(mb_substr($s,$j,$sep-$j,$this->mb_enc));
- if($align=='J') {
- //////////////////////////////////////////
- // JUSTIFY J using Unicode fonts (Word spacing doesn't work)
- // WORD SPACING UNICODE
- // Change NON_BREAKING SPACE to spaces so they are 'spaced' properly
- $tmp = str_replace(chr(194).chr(160),chr(32),$tmp );
- $len_ligne = $this->GetStringWidth($tmp );
- $nb_carac = mb_strlen( $tmp , $this->mb_enc ) ;
- $nb_spaces = mb_substr_count( $tmp ,' ', $this->mb_enc ) ;
-
- $inclCursive=false;
- if ($checkCursive) {
- if (preg_match("/([".$this->pregRTLchars."])/u", $tmp)) { $inclCursive = true; } // *RTL*
- if (preg_match("/([".$this->pregHIchars.$this->pregBNchars.$this->pregPAchars."])/u", $tmp)) { $inclCursive = true; } // *INDIC*
- }
- list($charspacing,$ws) = $this->GetJspacing($nb_carac,$nb_spaces,((($wmax) - $len_ligne) * _MPDFK),$inclCursive);
- $this->SetSpacing($charspacing,$ws);
- //////////////////////////////////////////
- }
-
- // DIRECTIONALITY
- $this->magic_reverse_dir($tmp, true, $directionality); // *RTL*
-
- $this->Cell($w,$h,$tmp,$b,2,$align,$fill,$link);
- $i=$sep+1;
- }
- $sep=-1;
- $j=$i;
- $l=0;
- $ns=0;
- $nl++;
- if($border and $nl==2) $b=$b2;
- }
- else $i++;
- }
- //Last chunk
- // WORD SPACING
-
- $this->ResetSpacing();
-
- }
-
-
- else {
-
- while($i<$nb) {
- //Get next character
- $c=$s[$i];
- if($c == "\n") {
- //Explicit line break
- // WORD SPACING
- $this->ResetSpacing();
- $this->Cell($w,$h,substr($s,$j,$i-$j),$b,2,$align,$fill,$link);
- $i++;
- $sep=-1;
- $j=$i;
- $l=0;
- $ns=0;
- $nl++;
- if($border and $nl==2) $b=$b2;
- continue;
- }
- if($c == " ") {
- $sep=$i;
- $ls=$l;
- $ns++;
- }
-
- $l += $this->GetCharWidthCore($c); // mPDF 5.3.04
- if($l>$wmax) {
- //Automatic line break
- if($sep==-1) {
- if($i==$j) $i++;
- // WORD SPACING
- $this->ResetSpacing();
- $this->Cell($w,$h,substr($s,$j,$i-$j),$b,2,$align,$fill,$link);
- }
- else {
- if($align=='J') {
- $tmp = rtrim(substr($s,$j,$sep-$j));
- //////////////////////////////////////////
- // JUSTIFY J using Unicode fonts (Word spacing doesn't work)
- // WORD SPACING NON_UNICDOE/CJK
- // Change NON_BREAKING SPACE to spaces so they are 'spaced' properly
- $tmp = str_replace(chr(160),chr(32),$tmp);
- $len_ligne = $this->GetStringWidth($tmp );
- $nb_carac = strlen( $tmp ) ;
- $nb_spaces = substr_count( $tmp ,' ' ) ;
- list($charspacing,$ws) = $this->GetJspacing($nb_carac,$nb_spaces,((($wmax) - $len_ligne) * _MPDFK),false);
- $this->SetSpacing($charspacing,$ws);
- //////////////////////////////////////////
- }
- $this->Cell($w,$h,substr($s,$j,$sep-$j),$b,2,$align,$fill,$link);
- $i=$sep+1;
- }
- $sep=-1;
- $j=$i;
- $l=0;
- $ns=0;
- $nl++;
- if($border and $nl==2) $b=$b2;
- }
- else $i++;
- }
- //Last chunk
- // WORD SPACING
-
- $this->ResetSpacing();
-
- }
- //Last chunk
- if($border and is_int(strpos($border,'B'))) $b.='B';
- if (!$this->usingCoreFont) {
- $tmp = rtrim(mb_substr($s,$j,$i-$j,$this->mb_enc));
- // DIRECTIONALITY
- $this->magic_reverse_dir($tmp, true, $directionality); // *RTL*
- $this->Cell($w,$h,$tmp,$b,2,$align,$fill,$link);
- }
- else { $this->Cell($w,$h,substr($s,$j,$i-$j),$b,2,$align,$fill,$link); }
- $this->x=$this->lMargin;
-}
-
-
-/*-- DIRECTW --*/
-function Write($h,$txt,$currentx=0,$link='',$directionality='ltr',$align='') {
- if (!class_exists('directw', false)) { include(_MPDF_PATH.'classes/directw.php'); }
- if (empty($this->directw)) { $this->directw = new directw($this); }
- $this->directw->Write($h,$txt,$currentx,$link,$directionality,$align);
-}
-/*-- END DIRECTW --*/
-
-
-/*-- HTML-CSS --*/
-function saveInlineProperties() {
- $saved = array();
- $saved[ 'family' ] = $this->FontFamily;
- $saved[ 'style' ] = $this->FontStyle;
- $saved[ 'sizePt' ] = $this->FontSizePt;
- $saved[ 'size' ] = $this->FontSize;
- $saved[ 'HREF' ] = $this->HREF;
- $saved[ 'underline' ] = $this->U;
- $saved[ 'smCaps' ] = $this->S;
- $saved[ 'strike' ] = $this->strike;
- $saved[ 'textshadow' ] = $this->textshadow; // mPDF 5.3.A2
- $saved[ 'SUP' ] = $this->SUP;
- $saved[ 'SUB' ] = $this->SUB;
- $saved[ 'linewidth' ] = $this->LineWidth;
- $saved[ 'drawcolor' ] = $this->DrawColor;
- $saved[ 'is_outline' ] = $this->outline_on;
- $saved[ 'outlineparam' ] = $this->outlineparam;
- $saved[ 'toupper' ] = $this->toupper;
- $saved[ 'tolower' ] = $this->tolower;
- $saved[ 'capitalize' ] = $this->capitalize;
- $saved[ 'fontkerning' ] = $this->kerning;
- $saved[ 'lSpacingCSS' ] = $this->lSpacingCSS;
- $saved[ 'wSpacingCSS' ] = $this->wSpacingCSS;
- $saved[ 'I' ] = $this->I;
- $saved[ 'B' ] = $this->B;
- $saved[ 'colorarray' ] = $this->colorarray;
- $saved[ 'bgcolorarray' ] = $this->spanbgcolorarray;
- $saved[ 'border' ] = $this->spanborddet; // mPDF 5.3.61
- $saved[ 'color' ] = $this->TextColor;
- $saved[ 'bgcolor' ] = $this->FillColor;
- $saved['lang'] = $this->currentLang;
- $saved['display_off'] = $this->inlineDisplayOff;
-
- return $saved;
-}
-
-function restoreInlineProperties( &$saved) {
- $FontFamily = $saved[ 'family' ];
- $this->FontStyle = $saved[ 'style' ];
- $this->FontSizePt = $saved[ 'sizePt' ];
- $this->FontSize = $saved[ 'size' ];
-
- $this->currentLang = $saved['lang'];
- if ($this->useLang && !$this->usingCoreFont) {
- if ($this->currentLang != $this->default_lang && ((strlen($this->currentLang) == 5 && $this->currentLang != 'UTF-8') || strlen($this->currentLang ) == 2)) {
- list ($coreSuitable,$mpdf_pdf_unifonts) = GetLangOpts($this->currentLang, $this->useAdobeCJK);
- if ($mpdf_pdf_unifonts) { $this->RestrictUnicodeFonts($mpdf_pdf_unifonts); }
- else { $this->RestrictUnicodeFonts($this->default_available_fonts ); }
- }
- else {
- $this->RestrictUnicodeFonts($this->default_available_fonts );
- }
- }
-
- $this->ColorFlag = ($this->FillColor != $this->TextColor); //Restore ColorFlag as well
-
- $this->HREF = $saved[ 'HREF' ];
- $this->U = $saved[ 'underline' ];
- $this->S = $saved[ 'smCaps' ];
- $this->strike = $saved[ 'strike' ];
- $this->textshadow = $saved[ 'textshadow' ]; // mPDF 5.3.A2
- $this->SUP = $saved[ 'SUP' ];
- $this->SUB = $saved[ 'SUB' ];
- $this->LineWidth = $saved[ 'linewidth' ];
- $this->DrawColor = $saved[ 'drawcolor' ];
- $this->outline_on = $saved[ 'is_outline' ];
- $this->outlineparam = $saved[ 'outlineparam' ];
- $this->inlineDisplayOff = $saved['display_off'];
-
- $this->toupper = $saved[ 'toupper' ];
- $this->tolower = $saved[ 'tolower' ];
- $this->capitalize = $saved[ 'capitalize' ];
- $this->kerning = $saved[ 'fontkerning' ];
- $this->lSpacingCSS = $saved[ 'lSpacingCSS' ];
- if (($this->lSpacingCSS || $this->lSpacingCSS==='0') && strtoupper($this->lSpacingCSS) != 'NORMAL') {
- $this->fixedlSpacing = $this->ConvertSize($this->lSpacingCSS,$this->FontSize);
- }
- else { $this->fixedlSpacing = false; }
- $this->wSpacingCSS = $saved[ 'wSpacingCSS' ];
- if ($this->wSpacingCSS && strtoupper($this->wSpacingCSS) != 'NORMAL') {
- $this->minwSpacing = $this->ConvertSize($this->wSpacingCSS,$this->FontSize);
- }
- else { $this->minwSpacing = 0; }
-
- $this->SetFont($FontFamily, $saved[ 'style' ].($this->U ? 'U' : '').($this->S ? 'S' : ''),$saved[ 'sizePt' ],false);
-
- $this->currentfontstyle = $saved[ 'style' ].($this->U ? 'U' : '').($this->S ? 'S' : '');
- $this->currentfontsize = $saved[ 'sizePt' ];
- $this->SetStylesArray(array('S'=>$this->S, 'U'=>$this->U, 'B'=>$saved[ 'B' ], 'I'=>$saved[ 'I' ]));
-
- $this->TextColor = $saved[ 'color' ];
- $this->FillColor = $saved[ 'bgcolor' ];
- $this->colorarray = $saved[ 'colorarray' ];
- $cor = $saved[ 'colorarray' ];
- if ($cor) $this->SetTColor($cor);
- $this->spanbgcolorarray = $saved[ 'bgcolorarray' ];
- $cor = $saved[ 'bgcolorarray' ];
- if ($cor) $this->SetFColor($cor);
- $this->spanborddet = $saved[ 'border' ]; // mPDF 5.3.61
-}
-
-
-
-// Used when ColActive for tables - updated to return first block with background fill OR borders
-function GetFirstBlockFill() {
- // Returns the first blocklevel that uses a bgcolor fill
- $startfill = 0;
- for ($i=1;$i<=$this->blklvl;$i++) {
- if ($this->blk[$i]['bgcolor'] || $this->blk[$i]['border_left']['w'] || $this->blk[$i]['border_right']['w'] || $this->blk[$i]['border_top']['w'] || $this->blk[$i]['border_bottom']['w'] ) {
- $startfill = $i;
- break;
- }
- }
- return $startfill;
-}
-
-function SetBlockFill($blvl) {
- if ($this->blk[$blvl]['bgcolor']) {
- $this->SetFColor($this->blk[$blvl]['bgcolorarray']);
- return 1;
- }
- else {
- $this->SetFColor($this->ConvertColor(255));
- return 0;
- }
-}
-
-
-//-------------------------FLOWING BLOCK------------------------------------//
-//The following functions were originally written by Damon Kohler //
-//--------------------------------------------------------------------------//
-
-function saveFont() {
- $saved = array();
- $saved[ 'family' ] = $this->FontFamily;
- $saved[ 'style' ] = $this->FontStyle;
- $saved[ 'sizePt' ] = $this->FontSizePt;
- $saved[ 'size' ] = $this->FontSize;
- $saved[ 'curr' ] = &$this->CurrentFont;
- $saved[ 'color' ] = $this->TextColor;
- $saved[ 'spanbgcolor' ] = $this->spanbgcolor;
- $saved[ 'spanbgcolorarray' ] = $this->spanbgcolorarray;
- $saved[ 'bord' ] = $this->spanborder; // mPDF 5.3.61
- $saved[ 'border' ] = $this->spanborddet; // mPDF 5.3.61
- $saved[ 'HREF' ] = $this->HREF;
- $saved[ 'underline' ] = $this->U;
- $saved[ 'smCaps' ] = $this->S;
- $saved[ 'strike' ] = $this->strike;
- $saved[ 'textshadow' ] = $this->textshadow; // mPDF 5.3.A2
- $saved[ 'SUP' ] = $this->SUP;
- $saved[ 'SUB' ] = $this->SUB;
- $saved[ 'linewidth' ] = $this->LineWidth;
- $saved[ 'drawcolor' ] = $this->DrawColor;
- $saved[ 'is_outline' ] = $this->outline_on;
- $saved[ 'outlineparam' ] = $this->outlineparam;
- $saved[ 'ReqFontStyle' ] = $this->ReqFontStyle;
- $saved[ 'fontkerning' ] = $this->kerning;
- $saved[ 'fixedlSpacing' ] = $this->fixedlSpacing;
- $saved[ 'minwSpacing' ] = $this->minwSpacing;
- return $saved;
-}
-
-function restoreFont( &$saved, $write=true) {
- if (!isset($saved) || empty($saved)) return;
-
- $this->FontFamily = $saved[ 'family' ];
- $this->FontStyle = $saved[ 'style' ];
- $this->FontSizePt = $saved[ 'sizePt' ];
- $this->FontSize = $saved[ 'size' ];
- $this->CurrentFont = &$saved[ 'curr' ];
- $this->TextColor = $saved[ 'color' ];
- $this->spanbgcolor = $saved[ 'spanbgcolor' ];
- $this->spanbgcolorarray = $saved[ 'spanbgcolorarray' ];
- $this->spanborder = $saved[ 'bord' ]; // mPDF 5.3.61
- $this->spanborddet = $saved[ 'border' ]; // mPDF 5.3.61
- $this->ColorFlag = ($this->FillColor != $this->TextColor); //Restore ColorFlag as well
- $this->HREF = $saved[ 'HREF' ];
- $this->U = $saved[ 'underline' ];
- $this->S = $saved[ 'smCaps' ];
- $this->kerning = $saved[ 'fontkerning' ];
- $this->fixedlSpacing = $saved[ 'fixedlSpacing' ];
- $this->minwSpacing = $saved[ 'minwSpacing' ];
- $this->strike = $saved[ 'strike' ];
- $this->textshadow = $saved[ 'textshadow' ]; // mPDF 5.3.A2
- $this->SUP = $saved[ 'SUP' ];
- $this->SUB = $saved[ 'SUB' ];
- $this->LineWidth = $saved[ 'linewidth' ];
- $this->DrawColor = $saved[ 'drawcolor' ];
- $this->outline_on = $saved[ 'is_outline' ];
- $this->outlineparam = $saved[ 'outlineparam' ];
- if ($write) {
- $this->SetFont($saved[ 'family' ],$saved[ 'style' ].($this->U ? 'U' : '').($this->S ? 'S' : ''),$saved[ 'sizePt' ],true,true); // force output
- $fontout = (sprintf('BT /F%d %.3F Tf ET', $this->CurrentFont['i'], $this->FontSizePt));
- if($this->page>0 && ((isset($this->pageoutput[$this->page]['Font']) && $this->pageoutput[$this->page]['Font'] != $fontout) || !isset($this->pageoutput[$this->page]['Font']) || $this->keep_block_together)) { $this->_out($fontout); }
- $this->pageoutput[$this->page]['Font'] = $fontout;
- }
- else
- $this->SetFont($saved[ 'family' ],$saved[ 'style' ].($this->U ? 'U' : '').($this->S ? 'S' : ''),$saved[ 'sizePt' ]);
- $this->ReqFontStyle = $saved[ 'ReqFontStyle' ];
-}
-
-function newFlowingBlock( $w, $h, $a = '', $is_table = false, $is_list = false, $blockstate = 0, $newblock=true, $blockdir='ltr')
-{
- if (!$a) {
- if ($blockdir=='rtl') { $a = 'R'; }
- else { $a = 'L'; }
- }
- $this->flowingBlockAttr[ 'width' ] = ($w * _MPDFK);
- // line height in user units
- $this->flowingBlockAttr[ 'is_table' ] = $is_table;
- $this->flowingBlockAttr[ 'is_list' ] = $is_list;
- $this->flowingBlockAttr[ 'height' ] = $h;
- $this->flowingBlockAttr[ 'lineCount' ] = 0;
- $this->flowingBlockAttr[ 'align' ] = $a;
- $this->flowingBlockAttr[ 'font' ] = array();
- $this->flowingBlockAttr[ 'content' ] = array();
- $this->flowingBlockAttr[ 'contentB' ] = array(); // mPDF 5.3.61
- $this->flowingBlockAttr[ 'contentWidth' ] = 0;
- $this->flowingBlockAttr[ 'blockstate' ] = $blockstate;
-
- $this->flowingBlockAttr[ 'newblock' ] = $newblock;
- $this->flowingBlockAttr[ 'valign' ] = 'M';
- $this->flowingBlockAttr['blockdir'] = $blockdir;
-
-}
-
-function finishFlowingBlock($endofblock=false, $next='') {
- $currentx = $this->x;
- //prints out the last chunk
- $is_table = $this->flowingBlockAttr[ 'is_table' ];
- $is_list = $this->flowingBlockAttr[ 'is_list' ];
- $maxWidth =& $this->flowingBlockAttr[ 'width' ];
- $lineHeight =& $this->flowingBlockAttr[ 'height' ];
- $align =& $this->flowingBlockAttr[ 'align' ];
- $content =& $this->flowingBlockAttr[ 'content' ];
- $contentB =& $this->flowingBlockAttr[ 'contentB' ]; // mPDF 5.3.61
- $font =& $this->flowingBlockAttr[ 'font' ];
- $contentWidth =& $this->flowingBlockAttr[ 'contentWidth' ];
- $lineCount =& $this->flowingBlockAttr[ 'lineCount' ];
- $valign =& $this->flowingBlockAttr[ 'valign' ];
- $blockstate = $this->flowingBlockAttr[ 'blockstate' ];
-
- $newblock = $this->flowingBlockAttr[ 'newblock' ];
- $blockdir = $this->flowingBlockAttr['blockdir'];
-
-
- // *********** BLOCK BACKGROUND COLOR *****************//
- if ($this->blk[$this->blklvl]['bgcolor'] && !$is_table) {
- $fill = 0;
- }
- else {
- $this->SetFColor($this->ConvertColor(255));
- $fill = 0;
- }
-
- // Always right trim!
- // Right trim content and adjust width if need to justify (later)
- // mPDF 5.3.76
- if (isset($content[count($content)-1]) && preg_match('/[ ]+$/',$content[count($content)-1], $m)) {
- $strip = strlen($m[0]);
- $content[count($content)-1] = substr($content[count($content)-1],0,(strlen($content[count($content)-1])-$strip));
- $this->restoreFont( $font[ count($content)-1 ],false );
- $contentWidth -= $this->GetStringWidth($m[0]) * _MPDFK;
- }
-
- // the amount of space taken up so far in user units
- $usedWidth = 0;
-
- // COLS
- $oldcolumn = $this->CurrCol;
-
- if ($this->ColActive && !$is_table) { $this->breakpoints[$this->CurrCol][] = $this->y; } // *COLUMNS*
-
- // Print out each chunk
-
-/*-- TABLES --*/
- if ($is_table) {
- $ipaddingL = 0;
- $ipaddingR = 0;
- $paddingL = 0;
- $paddingR = 0;
- }
- else {
-/*-- END TABLES --*/
- $ipaddingL = $this->blk[$this->blklvl]['padding_left'];
- $ipaddingR = $this->blk[$this->blklvl]['padding_right'];
- $paddingL = ($ipaddingL * _MPDFK);
- $paddingR = ($ipaddingR * _MPDFK);
- $this->cMarginL = $this->blk[$this->blklvl]['border_left']['w'];
- $this->cMarginR = $this->blk[$this->blklvl]['border_right']['w'];
-
- // Added mPDF 3.0 Float DIV
- $fpaddingR = 0;
- $fpaddingL = 0;
-/*-- CSS-FLOAT --*/
- if (count($this->floatDivs)) {
- list($l_exists, $r_exists, $l_max, $r_max, $l_width, $r_width) = $this->GetFloatDivInfo($this->blklvl);
- if ($r_exists) { $fpaddingR = $r_width; }
- if ($l_exists) { $fpaddingL = $l_width; }
- }
-/*-- END CSS-FLOAT --*/
-
- $usey = $this->y + 0.002;
- if (($newblock) && ($blockstate==1 || $blockstate==3) && ($lineCount == 0) ) {
- $usey += $this->blk[$this->blklvl]['margin_top'] + $this->blk[$this->blklvl]['padding_top'] + $this->blk[$this->blklvl]['border_top']['w'];
- }
-/*-- CSS-IMAGE-FLOAT --*/
- // If float exists at this level
- if (isset($this->floatmargins['R']) && $usey <= $this->floatmargins['R']['y1'] && $usey >= $this->floatmargins['R']['y0'] && !$this->floatmargins['R']['skipline']) { $fpaddingR += $this->floatmargins['R']['w']; }
- if (isset($this->floatmargins['L']) && $usey <= $this->floatmargins['L']['y1'] && $usey >= $this->floatmargins['L']['y0'] && !$this->floatmargins['L']['skipline']) { $fpaddingL += $this->floatmargins['L']['w']; }
-/*-- END CSS-IMAGE-FLOAT --*/
- } // *TABLES*
-
- // Set Current lineheight (correction factor)
- $lhfixed = false;
-/*-- LISTS --*/
- if ($is_list) {
- if (preg_match('/([0-9.,]+)mm/',$this->list_lineheight[$this->listlvl][$this->listOcc],$am)) {
- $lhfixed = true;
- $def_fontsize = $this->InlineProperties['LISTITEM'][$this->listlvl][$this->listOcc][$this->listnum]['size'];
- $this->lineheight_correction = $am[1] / $def_fontsize ;
- }
- else {
- $this->lineheight_correction = $this->list_lineheight[$this->listlvl][$this->listOcc];
- }
- }
- else
-/*-- END LISTS --*/
-/*-- TABLES --*/
- if ($is_table) {
- if (preg_match('/([0-9.,]+)mm/',$this->table_lineheight,$am)) {
- $lhfixed = true;
- $def_fontsize = $this->FontSize; // needs to be default font-size for block ****
- $this->lineheight_correction = $lineHeight / $def_fontsize ;
- }
- else {
- $this->lineheight_correction = $this->table_lineheight;
- }
- }
- else
-/*-- END TABLES --*/
- if (isset($this->blk[$this->blklvl]['line_height']) && $this->blk[$this->blklvl]['line_height']) {
- if (preg_match('/([0-9.,]+)mm/',$this->blk[$this->blklvl]['line_height'],$am)) {
- $lhfixed = true;
- $def_fontsize = $this->blk[$this->blklvl]['InlineProperties']['size']; // needs to be default font-size for block ****
- $this->lineheight_correction = $am[1] / $def_fontsize ;
- }
- else {
- $this->lineheight_correction = $this->blk[$this->blklvl]['line_height'];
- }
- }
- else {
- $this->lineheight_correction = $this->normalLineheight;
- }
-
- // correct lineheight to maximum fontsize
- if ($lhfixed) { $maxlineHeight = $this->lineheight; }
- else { $maxlineHeight = 0; }
- $this->forceExactLineheight = true;
- $maxfontsize = 0;
- // While we're at it, check if contains cursive text
- $checkCursive=false;
- if ($this->biDirectional) { $checkCursive=true; } // *RTL*
- foreach ( $content as $k => $chunk )
- {
- $this->restoreFont( $font[ $k ],false );
- if (!isset($this->objectbuffer[$k])) {
- // Soft Hyphens chr(173)
- if (!$this->usingCoreFont) {
- $content[$k] = $chunk = str_replace("\xc2\xad",'',$chunk );
- if (isset($this->CurrentFont['indic']) && $this->CurrentFont['indic']) { $checkCursive=true; } // *INDIC*
- }
- else if ($this->FontFamily!='csymbol' && $this->FontFamily!='czapfdingbats') {
- $content[$k] = $chunk = str_replace(chr(173),'',$chunk );
- }
- // Special case of sub/sup carried over on its own to last line
- if (($this->SUB || $this->SUP) && count($content)==1) { $actfs = $this->FontSize*100/55; } // 55% is font change for sub/sup
- else { $actfs = $this->FontSize; }
- if (!$lhfixed) { $maxlineHeight = max($maxlineHeight,$actfs * $this->lineheight_correction ); }
- if ($lhfixed && ($actfs > $def_fontsize || ($actfs > ($lineHeight * $this->lineheight_correction) && $is_list))) {
- $this->forceExactLineheight = false;
- }
- $maxfontsize = max($maxfontsize,$actfs);
- }
- }
-
- if(isset($font[count($font)-1])) {
- $lastfontreqstyle = $font[count($font)-1]['ReqFontStyle'];
- $lastfontstyle = $font[count($font)-1]['style'];
- }
- else {
- $lastfontreqstyle=null;
- $lastfontstyle=null;
- }
- if ($blockdir == 'ltr' && strpos($lastfontreqstyle,"I") !== false && strpos($lastfontstyle,"I") === false) { // Artificial italic
- $lastitalic = $this->FontSize*0.15*_MPDFK;
- }
- else { $lastitalic = 0; }
-
-
-/*-- LISTS --*/
- if ($is_list && is_array($this->bulletarray) && count($this->bulletarray)) {
- $actfs = $this->bulletarray['fontsize'];
- if (!$lhfixed) { $maxlineHeight = max($maxlineHeight,$actfs * $this->lineheight_correction ); }
- if ($lhfixed && $actfs > $def_fontsize) { $this->forceExactLineheight = false; }
- $maxfontsize = max($maxfontsize,$actfs);
- }
-/*-- END LISTS --*/
-
- // when every text item checked i.e. $maxfontsize is set properly
-
- $af = 0; // Above font
- $bf = 0; // Below font
- $mta = 0; // Maximum top-aligned
- $mba = 0; // Maximum bottom-aligned
-
- foreach ( $content as $k => $chunk )
- {
- if (isset($this->objectbuffer[$k])) {
- $oh = $this->objectbuffer[$k]['OUTER-HEIGHT'];
- $va = $this->objectbuffer[$k]['vertical-align']; // = $objattr['vertical-align'] = set as M,T,B,S
- if ($lhfixed && $oh > $def_fontsize) { $this->forceExactLineheight = false; }
-
- if ($va == 'BS') { // (BASELINE default)
- $af = max($af, ($oh - ($maxfontsize * (0.5 + $this->baselineC))));
- }
- else if ($va == 'M') {
- $af = max($af, ($oh - $maxfontsize)/2);
- $bf = max($bf, ($oh - $maxfontsize)/2);
- }
- else if ($va == 'TT') {
- $bf = max($bf, ($oh - $maxfontsize));
- }
- else if ($va == 'TB') {
- $af = max($af, ($oh - $maxfontsize));
- }
- else if ($va == 'T') {
- $mta = max($mta, $oh);
- }
- else if ($va == 'B') {
- $mba = max($mba, $oh);
- }
- }
- }
- if ((!$lhfixed || !$this->forceExactLineheight) && ($af > (($maxlineHeight - $maxfontsize)/2) || $bf > (($maxlineHeight - $maxfontsize)/2))) {
- $maxlineHeight = $maxfontsize + $af + $bf;
- }
- else if (!$lhfixed) { $af = $bf = ($maxlineHeight - $maxfontsize)/2; }
- if ($mta > $maxlineHeight) {
- $bf += ($mta - $maxlineHeight);
- $maxlineHeight = $mta;
- }
- if ($mba > $maxlineHeight) {
- $af += ($mba - $maxlineHeight);
- $maxlineHeight = $mba;
- }
-
- $lineHeight = $maxlineHeight;
- // If NOT images, and maxfontsize NOT > lineHeight - this value determines text baseline positioning
- if ($lhfixed && $af==0 && $bf==0 && $maxfontsize<=($def_fontsize * $this->lineheight_correction * 0.8 )) {
- $this->linemaxfontsize = $def_fontsize;
- }
- else { $this->linemaxfontsize = $maxfontsize; }
-
- // Get PAGEBREAK TO TEST for height including the bottom border/padding
- $check_h = max($this->divheight,$lineHeight);
-
- // This fixes a proven bug...
- if ($endofblock && $newblock && $blockstate==0 && !$content) { $check_h = 0; }
- // but ? needs to fix potentially more widespread...
- // if (!$content) { $check_h = 0; }
-
- if ($this->blklvl > 0 && !$is_table) {
- if ($endofblock && $blockstate > 1) {
- if ($this->blk[$this->blklvl]['page_break_after_avoid']) { $check_h += $lineHeight; }
- $check_h += ($this->blk[$this->blklvl]['padding_bottom'] + $this->blk[$this->blklvl]['border_bottom']['w']);
- }
- if (($newblock && ($blockstate==1 || $blockstate==3) && $lineCount == 0) || ($endofblock && $blockstate > 1 && $lineCount == 0)) {
- $check_h += ($this->blk[$this->blklvl]['padding_top'] + $this->blk[$this->blklvl]['margin_top'] + $this->blk[$this->blklvl]['border_top']['w']);
- }
- }
-
- // Force PAGE break if column height cannot take check-height
- if ($this->ColActive && $check_h > ($this->PageBreakTrigger - $this->y0)) {
- $this->SetCol($this->NbCol-1);
- }
-
-
- // PAGEBREAK
- //'If' below used in order to fix "first-line of other page with justify on" bug
- if(!$is_table && ($this->y+$check_h) > $this->PageBreakTrigger and !$this->InFooter and $this->AcceptPageBreak()) {
- $bak_x=$this->x;//Current X position
- // WORD SPACING
- $ws=$this->ws;//Word Spacing
- $charspacing=$this->charspacing;//Character Spacing
- $this->ResetSpacing();
-
- $this->AddPage($this->CurOrientation);
-
- $this->x=$bak_x;
- // Added to correct for OddEven Margins
- $currentx += $this->MarginCorrection;
- $this->x += $this->MarginCorrection;
-
- // WORD SPACING
- $this->SetSpacing($charspacing,$ws);
- }
-
- if ($this->keep_block_together && !$is_table && $this->kt_p00 < $this->page && ($this->y+$check_h) > $this->kt_y00) {
- $this->printdivbuffer();
- $this->keep_block_together = 0;
- }
-
-/*-- COLUMNS --*/
- // COLS
- // COLUMN CHANGE
- if ($this->CurrCol != $oldcolumn) {
- $currentx += $this->ChangeColumn * ($this->ColWidth+$this->ColGap);
- $this->x += $this->ChangeColumn * ($this->ColWidth+$this->ColGap);
- $oldcolumn = $this->CurrCol;
- }
-
-
- if ($this->ColActive && !$is_table) { $this->breakpoints[$this->CurrCol][] = $this->y; }
-/*-- END COLUMNS --*/
-
- // TOP MARGIN
- if ($newblock && ($blockstate==1 || $blockstate==3) && ($this->blk[$this->blklvl]['margin_top']) && $lineCount == 0 && !$is_table && !$is_list) {
- $this->DivLn($this->blk[$this->blklvl]['margin_top'],$this->blklvl-1,true,$this->blk[$this->blklvl]['margin_collapse']);
- if ($this->ColActive) { $this->breakpoints[$this->CurrCol][] = $this->y; } // *COLUMNS*
- }
-
- if ($newblock && ($blockstate==1 || $blockstate==3) && $lineCount == 0 && !$is_table && !$is_list) {
- $this->blk[$this->blklvl]['y0'] = $this->y;
- $this->blk[$this->blklvl]['startpage'] = $this->page;
- if ($this->ColActive) { $this->breakpoints[$this->CurrCol][] = $this->y; } // *COLUMNS*
- }
-
- // ADDED for Paragraph_indent
- $WidthCorrection = 0;
- if (($newblock) && ($blockstate==1 || $blockstate==3) && isset($this->blk[$this->blklvl]['text_indent']) && ($lineCount == 0) && (!$is_table) && (!$is_list) && ($align != 'C')) {
- $ti = $this->ConvertSize($this->blk[$this->blklvl]['text_indent'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false);
- $WidthCorrection = ($ti*_MPDFK);
- }
-
-
- // PADDING and BORDER spacing/fill
- if (($newblock) && ($blockstate==1 || $blockstate==3) && (($this->blk[$this->blklvl]['padding_top']) || ($this->blk[$this->blklvl]['border_top'])) && ($lineCount == 0) && (!$is_table) && (!$is_list)) {
- // $state = 0 normal; 1 top; 2 bottom; 3 top and bottom
- $this->DivLn($this->blk[$this->blklvl]['padding_top'] + $this->blk[$this->blklvl]['border_top']['w'],-3,true,false,1);
- if ($this->ColActive) { $this->breakpoints[$this->CurrCol][] = $this->y; } // *COLUMNS*
- $this->x = $currentx;
- }
-
-
- // Added mPDF 3.0 Float DIV
- $fpaddingR = 0;
- $fpaddingL = 0;
-/*-- CSS-FLOAT --*/
- if (count($this->floatDivs)) {
- list($l_exists, $r_exists, $l_max, $r_max, $l_width, $r_width) = $this->GetFloatDivInfo($this->blklvl);
- if ($r_exists) { $fpaddingR = $r_width; }
- if ($l_exists) { $fpaddingL = $l_width; }
- }
-/*-- END CSS-FLOAT --*/
-
- $usey = $this->y + 0.002;
- if (($newblock) && ($blockstate==1 || $blockstate==3) && ($lineCount == 0) ) {
- $usey += $this->blk[$this->blklvl]['margin_top'] + $this->blk[$this->blklvl]['padding_top'] + $this->blk[$this->blklvl]['border_top']['w'];
- }
-/*-- CSS-IMAGE-FLOAT --*/
- // If float exists at this level
- if (isset($this->floatmargins['R']) && $usey <= $this->floatmargins['R']['y1'] && $usey >= $this->floatmargins['R']['y0'] && !$this->floatmargins['R']['skipline']) { $fpaddingR += $this->floatmargins['R']['w']; }
- if (isset($this->floatmargins['L']) && $usey <= $this->floatmargins['L']['y1'] && $usey >= $this->floatmargins['L']['y0'] && !$this->floatmargins['L']['skipline']) { $fpaddingL += $this->floatmargins['L']['w']; }
-/*-- END CSS-IMAGE-FLOAT --*/
-
- if ($content) {
-
- // In FinishFlowing Block no lines are justified as it is always last line
- // but if orphansAllowed have allowed content width to go over max width, use J charspacing to compress line
- // JUSTIFICATION J - NOT!
- $nb_carac = 0;
- $nb_spaces = 0;
- $jcharspacing = 0;
- $jws = 0;
- $inclCursive=false;
- foreach ( $content as $k => $chunk ) {
- if (!isset($this->objectbuffer[$k]) || (isset($this->objectbuffer[$k]) && !$this->objectbuffer[$k])) {
- if ($this->usingCoreFont) {
- $chunk = str_replace(chr(160),chr(32),$chunk );
- }
- else {
- $chunk = str_replace(chr(194).chr(160),chr(32),$chunk );
- }
- $nb_carac += mb_strlen( $chunk, $this->mb_enc );
- $nb_spaces += mb_substr_count( $chunk,' ', $this->mb_enc );
- if ($checkCursive) {
- if (preg_match("/([".$this->pregRTLchars."])/u", $chunk)) { $inclCursive = true; } // *RTL*
- if (preg_match("/([".$this->pregHIchars.$this->pregBNchars.$this->pregPAchars."])/u", $chunk)) { $inclCursive = true; } // *INDIC*
- }
- }
- }
- // if it's justified, we need to find the char/word spacing (or if orphans have allowed length of line to go over the maxwidth)
- // If "orphans" in fact is just a final space - ignore this
- if (((($contentWidth + $lastitalic) > $maxWidth) && ($content[count($content)-1] != ' ') ) ||
- (!$endofblock && $align=='J' && ($next=='image' || $next=='select' || $next=='input' || $next=='textarea' || ($next=='br' && $this->justifyB4br)))
- ) {
- // WORD SPACING
- list($jcharspacing,$jws) = $this->GetJspacing($nb_carac,$nb_spaces,($maxWidth-$lastitalic-$contentWidth-$WidthCorrection-(($this->cMarginL+$this->cMarginR)*_MPDFK)-($paddingL+$paddingR +(($fpaddingL + $fpaddingR) * _MPDFK) )),$inclCursive);
- }
- // Check if will fit at word/char spacing of previous line - if so continue it
- // but only allow a maximum of $this->jSmaxWordLast and $this->jSmaxCharLast
- else if ($contentWidth < ($maxWidth - $lastitalic-$WidthCorrection - (($this->cMarginL+$this->cMarginR)* _MPDFK) - ($paddingL+$paddingR +(($fpaddingL + $fpaddingR) * _MPDFK))) && !$this->fixedlSpacing) {
- if ($this->ws > $this->jSmaxWordLast) {
- $jws = $this->jSmaxWordLast;
- }
- if ($this->charspacing > $this->jSmaxCharLast) {
- $jcharspacing = $this->jSmaxCharLast;
- }
- $check = $maxWidth - $lastitalic-$WidthCorrection - $contentWidth - (($this->cMarginL+$this->cMarginR)* _MPDFK) - ($paddingL+$paddingR +(($fpaddingL + $fpaddingR) * _MPDFK) ) - ( $jcharspacing * $nb_carac) - ( $jws * $nb_spaces);
- if ($check <= 0) {
- $jcharspacing = 0;
- $jws = 0;
- }
- }
-
- $empty = $maxWidth - $lastitalic-$WidthCorrection - $contentWidth - (($this->cMarginL+$this->cMarginR)* _MPDFK) - ($paddingL+$paddingR +(($fpaddingL + $fpaddingR) * _MPDFK) );
-
- $empty -= ($jcharspacing * $nb_carac);
- $empty -= ($jws * $nb_spaces);
-
- $empty /= _MPDFK;
-
- if (!$is_table) {
- $this->maxPosR = max($this->maxPosR , ($this->w - $this->rMargin - $this->blk[$this->blklvl]['outer_right_margin'] - $empty));
- $this->maxPosL = min($this->maxPosL , ($this->lMargin + $this->blk[$this->blklvl]['outer_left_margin'] + $empty));
- }
-
- $arraysize = count($content);
-
- $margins = ($this->cMarginL+$this->cMarginR) + ($ipaddingL+$ipaddingR + $fpaddingR + $fpaddingR );
-
- if (!$is_table) { $this->DivLn($lineHeight,$this->blklvl,false); } // false -> don't advance y
-
- // DIRECTIONALITY RTL
- $all_rtl = false;
- $contains_rtl = false;
-/*-- RTL --*/
- if ($blockdir == 'rtl' || $this->biDirectional) {
- $all_rtl = true;
- foreach ( $content as $k => $chunk ) {
- $reversed = $this->magic_reverse_dir($chunk, false, $blockdir);
- if ($reversed > 0) { $contains_rtl = true; }
- if ($reversed < 2) { $all_rtl = false; }
- $content[$k] = $chunk;
- }
- if (($blockdir =='rtl' && $contains_rtl) || $all_rtl) {
- $content = array_reverse($content,false);
- $contentB = array_reverse($contentB,false); // mPDF 5.3.61
- }
- }
-/*-- END RTL --*/
-
- $this->x = $currentx + $this->cMarginL + $ipaddingL + $fpaddingL;
- if ($align == 'R') { $this->x += $empty; }
- else if ($align == 'J' && $blockdir == 'rtl') { $this->x += $empty; }
- else if ($align == 'C') { $this->x += ($empty / 2); }
-
-
- // Paragraph INDENT
- $WidthCorrection = 0;
- if (($newblock) && ($blockstate==1 || $blockstate==3) && isset($this->blk[$this->blklvl]['text_indent']) && ($lineCount == 0) && (!$is_table) && (!$is_list) && ($align !='C')) {
- $ti = $this->ConvertSize($this->blk[$this->blklvl]['text_indent'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false);
- $this->x += $ti;
- }
-
-
- foreach ( $content as $k => $chunk )
- {
-
- // FOR IMAGES
- if ((($blockdir == 'rtl') && ($contains_rtl )) || $all_rtl ) { $dirk = $arraysize-1 - $k; } else { $dirk = $k; }
-
- $va = 'M'; // default for text
- if (isset($this->objectbuffer[$dirk]) && $this->objectbuffer[$dirk]) {
- $xadj = $this->x - $this->objectbuffer[$dirk]['OUTER-X'];
- $this->objectbuffer[$dirk]['OUTER-X'] += $xadj;
- $this->objectbuffer[$dirk]['BORDER-X'] += $xadj;
- $this->objectbuffer[$dirk]['INNER-X'] += $xadj;
- $va = $this->objectbuffer[$dirk]['vertical-align'];
- $yadj = $this->y - $this->objectbuffer[$dirk]['OUTER-Y'];
- if ($va == 'BS') {
- $yadj += $af + ($this->linemaxfontsize * (0.5 + $this->baselineC)) - $this->objectbuffer[$dirk]['OUTER-HEIGHT'];
- }
- else if ($va == 'M' || $va == '') {
- $yadj += $af + ($this->linemaxfontsize /2) - ($this->objectbuffer[$dirk]['OUTER-HEIGHT']/2);
- }
- else if ($va == 'TB') {
- $yadj += $af + $this->linemaxfontsize - $this->objectbuffer[$dirk]['OUTER-HEIGHT'];
- }
- else if ($va == 'TT') {
- $yadj += $af;
- }
- else if ($va == 'B') {
- $yadj += $af + $this->linemaxfontsize + $bf - $this->objectbuffer[$dirk]['OUTER-HEIGHT'];
- }
- else if ($va == 'T') {
- $yadj += 0;
- }
- $this->objectbuffer[$dirk]['OUTER-Y'] += $yadj;
- $this->objectbuffer[$dirk]['BORDER-Y'] += $yadj;
- $this->objectbuffer[$dirk]['INNER-Y'] += $yadj;
- }
-
-
-
- // DIRECTIONALITY RTL
- if ((($blockdir == 'rtl') && ($contains_rtl )) || $all_rtl ) { $this->restoreFont( $font[ $arraysize-1 - $k ] ); }
- else { $this->restoreFont( $font[ $k ] ); }
-
- $this->SetSpacing(($this->fixedlSpacing*_MPDFK)+$jcharspacing,($this->fixedlSpacing+$this->minwSpacing)*_MPDFK+$jws);
- $this->fixedlSpacing = false;
- $this->minwSpacing = 0;
-
- // *********** SPAN BACKGROUND COLOR ***************** //
- if (isset($this->spanbgcolor) && $this->spanbgcolor) {
- $cor = $this->spanbgcolorarray;
- $this->SetFColor($cor);
- $save_fill = $fill; $spanfill = 1; $fill = 1;
- }
- // mPDF 5.3.61
- if (!empty($this->spanborddet)) {
- if (strpos($contentB[$k],'L')!==false && isset($this->spanborddet['L'])) $this->x += $this->spanborddet['L']['w'];
- if (strpos($contentB[$k],'L')===false) $this->spanborddet['L']['s'] = $this->spanborddet['L']['w'] = 0;
- if (strpos($contentB[$k],'R')===false) $this->spanborddet['R']['s'] = $this->spanborddet['R']['w'] = 0;
- }
- // WORD SPACING
- $stringWidth = $this->GetStringWidth($chunk ) + ( $this->charspacing * mb_strlen($chunk,$this->mb_enc ) / _MPDFK )
- + ( $this->ws * mb_substr_count($chunk,' ',$this->mb_enc ) / _MPDFK );
- if (isset($this->objectbuffer[$dirk])) {
- if ($this->objectbuffer[$dirk]['type']=='dottab') {
- $this->objectbuffer[$dirk]['OUTER-WIDTH'] +=$empty;
- }
- $stringWidth = $this->objectbuffer[$dirk]['OUTER-WIDTH'];
- }
-
- if ($stringWidth==0) { $stringWidth = 0.000001; }
- if ($k == $arraysize-1) $this->Cell( $stringWidth, $lineHeight, $chunk, '', 1, '', $fill, $this->HREF , $currentx,0,0,'M', $fill, $af, $bf, true ); //mono-style line or last part (skips line) // mPDF 5.3.07
- else $this->Cell( $stringWidth, $lineHeight, $chunk, '', 0, '', $fill, $this->HREF, 0, 0,0,'M', $fill, $af, $bf, true );//first or middle part // mPDF 5.3.07
-
- // mPDF 5.3.61
- if (!empty($this->spanborddet)) {
- if (strpos($contentB[$k],'R')!==false && $k != $arraysize-1) $this->x += $this->spanborddet['R']['w'];
- }
- // *********** SPAN BACKGROUND COLOR OFF - RESET BLOCK BGCOLOR ***************** //
- if (isset($spanfill) && $spanfill) {
- $fill = $save_fill; $spanfill = 0;
- if ($fill) { $this->SetFColor($bcor); }
- }
- }
-
- $this->printobjectbuffer($is_table, $blockdir);
-
-
- $this->objectbuffer = array();
-
-
- $this->ResetSpacing();
-
-/*-- LISTS --*/
- // LIST BULLETS/NUMBERS
- if ($is_list && is_array($this->bulletarray) && ($lineCount == 0) ) {
-
- $savedFont = $this->saveFont();
-
- $bull = $this->bulletarray;
- if (isset($bull['level']) && isset($bull['occur']) && isset($this->InlineProperties['LIST'][$bull['level']][$bull['occur']])) {
- $this->restoreInlineProperties($this->InlineProperties['LIST'][$bull['level']][$bull['occur']]);
- }
- if (isset($bull['level']) && isset($bull['occur']) && isset($bull['num']) && isset($this->InlineProperties['LISTITEM'][$bull['level']][$bull['occur']][$bull['num']]) && $this->InlineProperties['LISTITEM'][$bull['level']][$bull['occur']][$bull['num']]) { $this->restoreInlineProperties($this->InlineProperties['LISTITEM'][$bull['level']][$bull['occur']][$bull['num']]); }
- if (isset($bull['font']) && $bull['font'] == 'czapfdingbats') {
- $this->bullet = true;
- $this->SetFont('czapfdingbats','',$this->FontSizePt/2.5);
- }
- else { $this->SetFont($this->FontFamily,$this->FontStyle,$this->FontSizePt,true,true); } // force output
- //Output bullet
- $this->x = $currentx;
- if (isset($bull['x'])) { $this->x += $bull['x']; }
- $this->y -= $lineHeight;
- if (is_array($bull['col'])) { $this->SetTColor($bull['col']); }
-
- if (isset($bull['txt'])) { $this->Cell($bull['w'], $lineHeight,$bull['txt'],'','',$bull['align'],0,'',0,-$this->cMarginL, -$this->cMarginR ); }
- if (isset($bull['font']) && $bull['font'] == 'czapfdingbats') {
- $this->bullet = false;
- }
- $this->x = $currentx; // Reset
- $this->y += $lineHeight;
-
- if ($this->ColActive && !$is_table) { $this->breakpoints[$this->CurrCol][] = $this->y; } // *COLUMNS*
-
- $this->restoreFont( $savedFont );
- // $font = array( $savedFont );
-
- $this->bulletarray = array(); // prevents repeat of bullet/number if .... .....
- }
-/*-- END LISTS --*/
-
-
- } // END IF CONTENT
-
-/*-- CSS-IMAGE-FLOAT --*/
- // Update values if set to skipline
- if ($this->floatmargins) { $this->_advanceFloatMargins(); }
-
-
- if ($endofblock && $blockstate>1) {
- // If float exists at this level
- if (isset($this->floatmargins['R']['y1'])) { $fry1 = $this->floatmargins['R']['y1']; }
- else { $fry1 = 0; }
- if (isset($this->floatmargins['L']['y1'])) { $fly1 = $this->floatmargins['L']['y1']; }
- else { $fly1 = 0; }
- if ($this->y < $fry1 || $this->y < $fly1) {
- $drop = max($fry1,$fly1) - $this->y;
- $this->DivLn($drop);
- $this->x = $currentx;
- }
- }
-/*-- END CSS-IMAGE-FLOAT --*/
-
-
- // PADDING and BORDER spacing/fill
- if ($endofblock && ($blockstate > 1) && ($this->blk[$this->blklvl]['padding_bottom'] || $this->blk[$this->blklvl]['border_bottom'] || $this->blk[$this->blklvl]['css_set_height']) && (!$is_table) && (!$is_list)) {
- // If CSS height set, extend bottom - if on same page as block started, and CSS HEIGHT > actual height,
- // and does not force pagebreak
- $extra = 0;
- if ($this->blk[$this->blklvl]['css_set_height'] && $this->blk[$this->blklvl]['startpage']==$this->page) {
- // predicted height
- $h1 = ($this->y-$this->blk[$this->blklvl]['y0']) + $this->blk[$this->blklvl]['padding_bottom'] + $this->blk[$this->blklvl]['border_bottom']['w'];
- if ($h1 < ($this->blk[$this->blklvl]['css_set_height']+$this->blk[$this->blklvl]['padding_bottom']+$this->blk[$this->blklvl]['padding_top'])) { $extra = ($this->blk[$this->blklvl]['css_set_height']+$this->blk[$this->blklvl]['padding_bottom']+$this->blk[$this->blklvl]['padding_top']) - $h1; }
- if($this->y + $this->blk[$this->blklvl]['padding_bottom'] + $this->blk[$this->blklvl]['border_bottom']['w'] + $extra > $this->PageBreakTrigger) {
- $extra = $this->PageBreakTrigger - ($this->y + $this->blk[$this->blklvl]['padding_bottom'] + $this->blk[$this->blklvl]['border_bottom']['w']);
- }
- }
-
- // $state = 0 normal; 1 top; 2 bottom; 3 top and bottom
- $this->DivLn($this->blk[$this->blklvl]['padding_bottom'] + $this->blk[$this->blklvl]['border_bottom']['w'] + $extra,-3,true,false,2);
- $this->x = $currentx;
-
- if ($this->ColActive) { $this->breakpoints[$this->CurrCol][] = $this->y; } // *COLUMNS*
-
- }
-
- // SET Bottom y1 of block (used for painting borders)
- if (($endofblock) && ($blockstate > 1) && (!$is_table) && (!$is_list)) {
- $this->blk[$this->blklvl]['y1'] = $this->y;
- }
-
- // BOTTOM MARGIN
- if (($endofblock) && ($blockstate > 1) && ($this->blk[$this->blklvl]['margin_bottom']) && (!$is_table) && (!$is_list)) {
- if($this->y+$this->blk[$this->blklvl]['margin_bottom'] < $this->PageBreakTrigger and !$this->InFooter) {
- $this->DivLn($this->blk[$this->blklvl]['margin_bottom'],$this->blklvl-1,true,$this->blk[$this->blklvl]['margin_collapse']);
- if ($this->ColActive) { $this->breakpoints[$this->CurrCol][] = $this->y; } // *COLUMNS*
- }
- }
-
- // Reset lineheight
- $lineHeight = $this->divheight;
-}
-
-
-
-
-
-function printobjectbuffer($is_table=false, $blockdir=false) {
- if (!$blockdir) { $blockdir = $this->directionality; }
- if ($is_table && $this->shrin_k > 1) { $k = $this->shrin_k; }
- else { $k = 1; }
- $save_y = $this->y;
- $save_x = $this->x;
- $save_currentfontfamily = $this->FontFamily;
- $save_currentfontsize = $this->FontSizePt;
- $save_currentfontstyle = $this->FontStyle.($this->U ? 'U' : '').($this->S ? 'S' : '');
- if ($blockdir == 'rtl') { $rtlalign = 'R'; } else { $rtlalign = 'L'; }
- foreach ($this->objectbuffer AS $ib => $objattr) {
- if ($objattr['type'] == 'bookmark' || $objattr['type'] == 'indexentry' || $objattr['type'] == 'toc') {
- $x = $objattr['OUTER-X'];
- $y = $objattr['OUTER-Y'];
- $this->y = $y - $this->FontSize/2;
- $this->x = $x;
- if ($objattr['type'] == 'bookmark' ) { $this->Bookmark($objattr['CONTENT'],$objattr['bklevel'] ,$y - $this->FontSize); } // *BOOKMARKS*
- if ($objattr['type'] == 'indexentry') { $this->IndexEntry($objattr['CONTENT']); } // *INDEX*
- if ($objattr['type'] == 'toc') { $this->TOC_Entry($objattr['CONTENT'], $objattr['toclevel'], $objattr['toc_id']); } // *TOC*
- }
-/*-- ANNOTATIONS --*/
- else if ($objattr['type'] == 'annot') {
- if ($objattr['POS-X']) { $x = $objattr['POS-X']; }
- else if ($this->annotMargin<>0) { $x = -$objattr['OUTER-X']; }
- else { $x = $objattr['OUTER-X']; }
- if ($objattr['POS-Y']) { $y = $objattr['POS-Y']; }
- else { $y = $objattr['OUTER-Y'] - $this->FontSize/2; }
- // Create a dummy entry in the _out/columnBuffer with position sensitive data,
- // linking $y-1 in the Columnbuffer with entry in $this->columnAnnots
- // and when columns are split in length will not break annotation from current line
- $this->y = $y-1;
- $this->x = $x-1;
- $this->Line($x-1,$y-1,$x-1,$y-1);
- $this->Annotation($objattr['CONTENT'], $x , $y , $objattr['ICON'], $objattr['AUTHOR'], $objattr['SUBJECT'], $objattr['OPACITY'], $objattr['COLOR'], $objattr['POPUP'], $objattr['FILE']);
- }
-/*-- END ANNOTATIONS --*/
- else {
- $y = $objattr['OUTER-Y'];
- $x = $objattr['OUTER-X'];
- $w = $objattr['OUTER-WIDTH'];
- $h = $objattr['OUTER-HEIGHT'];
- if (isset($objattr['text'])) { $texto = $objattr['text']; }
- $this->y = $y;
- $this->x = $x;
- if (isset($objattr['fontfamily'])) { $this->SetFont($objattr['fontfamily'],'',$objattr['fontsize'] ); }
- }
-
- // HR
- if ($objattr['type'] == 'hr') {
- $this->SetDColor($objattr['color']);
- switch($objattr['align']) {
- case 'C':
- $empty = $objattr['OUTER-WIDTH'] - $objattr['INNER-WIDTH'];
- $empty /= 2;
- $x += $empty;
- break;
- case 'R':
- $empty = $objattr['OUTER-WIDTH'] - $objattr['INNER-WIDTH'];
- $x += $empty;
- break;
- }
- $oldlinewidth = $this->LineWidth;
- $this->SetLineWidth($objattr['linewidth']/$k );
- $this->y += ($objattr['linewidth']/2) + $objattr['margin_top']/$k;
- $this->Line($x,$this->y,$x+$objattr['INNER-WIDTH'],$this->y);
- $this->SetLineWidth($oldlinewidth);
- $this->SetDColor($this->ConvertColor(0));
- }
- // IMAGE
- if ($objattr['type'] == 'image') {
- // mPDF 5.3.42 VISIBILITY // mPDF 5.3.49
- if(isset($objattr['visibility']) && $objattr['visibility']!='visible' && $objattr['visibility']) {
- $this->SetVisibility($objattr['visibility']);
- }
- if (isset($objattr['opacity'])) { $this->SetAlpha($objattr['opacity']); }
- $rotate = 0;
- $obiw = $objattr['INNER-WIDTH'];
- $obih = $objattr['INNER-HEIGHT'];
- $sx = $objattr['INNER-WIDTH']*_MPDFK / $objattr['orig_w'];
- $sy = abs($objattr['INNER-HEIGHT'])*_MPDFK / abs($objattr['orig_h']);
- $sx = ($objattr['INNER-WIDTH']*_MPDFK / $objattr['orig_w']);
- $sy = ($objattr['INNER-HEIGHT']*_MPDFK / $objattr['orig_h']);
-
- if (isset($objattr['ROTATE'])) { $rotate = $objattr['ROTATE']; }
- if ($rotate==90) {
- // Clockwise
- $obiw = $objattr['INNER-HEIGHT'];
- $obih = $objattr['INNER-WIDTH'];
- $tr = $this->transformTranslate(0, -$objattr['INNER-WIDTH'], true) ;
- $tr .= ' '. $this->transformRotate(90, $objattr['INNER-X'],($objattr['INNER-Y'] +$objattr['INNER-WIDTH'] ),true) ;
- $sx = $obiw*_MPDFK / $objattr['orig_h'];
- $sy = $obih*_MPDFK / $objattr['orig_w'];
- }
- else if ($rotate==-90 || $rotate==270) {
- // AntiClockwise
- $obiw = $objattr['INNER-HEIGHT'];
- $obih = $objattr['INNER-WIDTH'];
- $tr = $this->transformTranslate($objattr['INNER-WIDTH'], ($objattr['INNER-HEIGHT']-$objattr['INNER-WIDTH']), true) ;
- $tr .= ' '. $this->transformRotate(-90, $objattr['INNER-X'],($objattr['INNER-Y'] +$objattr['INNER-WIDTH'] ),true) ;
- $sx = $obiw*_MPDFK / $objattr['orig_h'];
- $sy = $obih*_MPDFK / $objattr['orig_w'];
- }
- else if ($rotate==180) {
- // Mirror
- $tr = $this->transformTranslate($objattr['INNER-WIDTH'], -$objattr['INNER-HEIGHT'], true) ;
- $tr .= ' '. $this->transformRotate(180, $objattr['INNER-X'],($objattr['INNER-Y'] +$objattr['INNER-HEIGHT'] ),true) ;
- }
- else { $tr = ''; }
- $tr = trim($tr);
- if ($tr) { $tr .= ' '; }
- $gradmask = '';
-
-
-/*-- BACKGROUNDS --*/
- if (isset($objattr['GRADIENT-MASK'])) {
- $g = $this->grad->parseMozGradient( $objattr['GRADIENT-MASK'] );
- if ($g) {
- $dummy = $this->grad->Gradient($objattr['INNER-X'], $objattr['INNER-Y'], $obiw, $obih, $g['type'], $g['stops'], $g['colorspace'], $g['coords'], $g['extend'], true, true);
- $gradmask = '/TGS'.count($this->gradients).' gs ';
- // $this->_out("q ".$tr.$this->grad->Gradient($objattr['INNER-X'], $objattr['INNER-Y'], $obiw, $obih, $g['type'], $g['stops'], $g['colorspace'], $g['coords'], $g['extend'], true)." Q");
- }
- }
-/*-- END BACKGROUNDS --*/
-/*-- IMAGES-WMF --*/
- if (isset($objattr['itype']) && $objattr['itype']=='wmf') {
- $outstring = sprintf('q '.$tr.'%.3F 0 0 %.3F %.3F %.3F cm /FO%d Do Q', $sx, -$sy, $objattr['INNER-X']*_MPDFK-$sx*$objattr['wmf_x'], (($this->h-$objattr['INNER-Y'])*_MPDFK)+$sy*$objattr['wmf_y'], $objattr['ID']);
- }
- else
-/*-- END IMAGES-WMF --*/
- if (isset($objattr['itype']) && $objattr['itype']=='svg') {
- $outstring = sprintf('q '.$tr.'%.3F 0 0 %.3F %.3F %.3F cm /FO%d Do Q', $sx, -$sy, $objattr['INNER-X']*_MPDFK-$sx*$objattr['wmf_x'], (($this->h-$objattr['INNER-Y'])*_MPDFK)+$sy*$objattr['wmf_y'], $objattr['ID']);
- }
- else {
- $outstring = sprintf("q ".$tr."%.3F 0 0 %.3F %.3F %.3F cm ".$gradmask."/I%d Do Q",$obiw*_MPDFK, $obih*_MPDFK, $objattr['INNER-X'] *_MPDFK, ($this->h-($objattr['INNER-Y'] +$obih ))*_MPDFK,$objattr['ID'] );
- }
- $this->_out($outstring);
- // LINK
- if (isset($objattr['link'])) $this->Link($objattr['INNER-X'],$objattr['INNER-Y'],$objattr['INNER-WIDTH'],$objattr['INNER-HEIGHT'],$objattr['link']);
- if (isset($objattr['opacity'])) { $this->SetAlpha(1); }
- if ((isset($objattr['border_top']) && $objattr['border_top']>0) || (isset($objattr['border_left']) && $objattr['border_left']>0) || (isset($objattr['border_right']) && $objattr['border_right']>0) || (isset($objattr['border_bottom']) && $objattr['border_bottom']>0)) { $this->PaintImgBorder($objattr,$is_table); }
- // mPDF 5.3.42 VISIBILITY // mPDF 5.3.49
- if(isset($objattr['visibility']) && $objattr['visibility']!='visible' && $objattr['visibility']) {
- $this->SetVisibility('visible');
- }
-
- }
-
-/*-- BARCODES --*/
- // BARCODE
- if ($objattr['type'] == 'barcode') {
- $bgcol = $this->ConvertColor(255);
- if (isset($objattr['bgcolor']) && $objattr['bgcolor']) { // mPDF 5.3.A4
- $bgcol = $objattr['bgcolor'];
- }
- $col = $this->ConvertColor(0);
- if (isset($objattr['color']) && $objattr['color']) { // mPDF 5.3.A4
- $col = $objattr['color'];
- }
- $this->SetFColor($bgcol);
- $this->Rect($objattr['BORDER-X'], $objattr['BORDER-Y'], $objattr['BORDER-WIDTH'], $objattr['BORDER-HEIGHT'], 'F');
- $this->SetFColor($this->ConvertColor(255));
- if (isset($objattr['BORDER-WIDTH'])) { $this->PaintImgBorder($objattr,$is_table); }
- if ($objattr['btype'] == 'EAN13' || $objattr['btype'] == 'ISBN' || $objattr['btype'] == 'ISSN' || $objattr['btype'] == 'UPCA' || $objattr['btype'] == 'UPCE' || $objattr['btype'] == 'EAN8') {
- $this->WriteBarcode($objattr['code'], $objattr['showtext'], $objattr['INNER-X'], $objattr['INNER-Y'], $objattr['bsize'], 0, 0, 0, 0, 0, $objattr['bheight'], $bgcol, $col, $objattr['btype'], $objattr['bsupp'], $objattr['bsupp_code'], $k);
- }
- // QR-code
- else if ($objattr['btype']=='QR') {
- if (!class_exists('QRcode', false)) {
- include(_MPDF_PATH.'qrcode/qrcode.class.php');
- }
- $this->qrcode = new QRcode($objattr['code'], $objattr['errorlevel']);
- $this->qrcode->displayFPDF($this, $objattr['INNER-X'], $objattr['INNER-Y'], $objattr['bsize']*25, array(255,255,255), array(0,0,0));
- }
- else {
- $this->WriteBarcode2($objattr['code'], $objattr['INNER-X'], $objattr['INNER-Y'], $objattr['bsize'], $objattr['bheight'], $bgcol, $col, $objattr['btype'], $objattr['pr_ratio'], $k);
- }
- }
-/*-- END BARCODES --*/
-
- // mPDF 5.3.A5
- // TEXT CIRCLE
- if ($objattr['type'] == 'textcircle') {
- $bgcol = $this->ConvertColor(255);
- if (isset($objattr['bgcolor']) && $objattr['bgcolor']) {
- $bgcol = $objattr['bgcolor'];
- }
- $col = $this->ConvertColor(0);
- if (isset($objattr['color']) && $objattr['color']) {
- $col = $objattr['color'];
- }
- $this->SetTColor($col);
- $this->SetFColor($bgcol);
- $this->Rect($objattr['BORDER-X'], $objattr['BORDER-Y'], $objattr['BORDER-WIDTH'], $objattr['BORDER-HEIGHT'], 'F');
- $this->SetFColor($this->ConvertColor(255));
- if (isset($objattr['BORDER-WIDTH'])) { $this->PaintImgBorder($objattr,$is_table); }
- if (!class_exists('directw', false)) { include(_MPDF_PATH.'classes/directw.php'); }
- if (empty($this->directw)) { $this->directw = new directw($this); }
- $save_lmfs = $this->linemaxfontsize;
- $this->linemaxfontsize = 0;
- if (isset($objattr['top-text'])) {
- $this->directw->CircularText($objattr['INNER-X']+$objattr['INNER-WIDTH']/2, $objattr['INNER-Y']+$objattr['INNER-HEIGHT']/2, $objattr['r']/$k, $objattr['top-text'], 'top', $objattr['fontfamily'], $objattr['fontsize']/$k, $objattr['fontstyle'], $objattr['space-width'], $objattr['char-width']);
- }
- if (isset($objattr['bottom-text'])) {
- $this->directw->CircularText($objattr['INNER-X']+$objattr['INNER-WIDTH']/2, $objattr['INNER-Y']+$objattr['INNER-HEIGHT']/2, $objattr['r']/$k, $objattr['bottom-text'], 'bottom', $objattr['fontfamily'], $objattr['fontsize']/$k, $objattr['fontstyle'], $objattr['space-width'], $objattr['char-width']);
- }
- $this->linemaxfontsize = $save_lmfs;
- }
-
- $this->ResetSpacing();
-
- // DOT-TAB
- if ($objattr['type'] == 'dottab') {
- $sp = $this->GetStringWidth(' ');
- $nb=floor(($w-2*$sp)/$this->GetStringWidth('.'));
- if ($nb>0) { $dots=' '.str_repeat('.',$nb).' '; }
- else { $dots=' '; }
- $col = $this->ConvertColor(0);
- if (isset($objattr['colorarray']) && is_array($objattr['colorarray'])) {
- $col = $objattr['colorarray'];
- }
- $this->SetTColor($col);
- // mPDF 5.3.A3
- $save_sbd = $this->spanborddet;
- $save_u = $this->U;
- $save_s = $this->strike;
- $this->spanborddet = '';
- $this->U = false;
- $this->strike = false;
- $this->Cell($w,$h,$dots,0,0,'C');
- $this->spanborddet = $save_sbd;
- $this->U = $save_u;
- $this->strike = $save_s;
- // mPDF 5.0
- $this->SetTColor($this->ConvertColor(0));
- }
-
-/*-- FORMS --*/
- // TEXT/PASSWORD INPUT
- if ($objattr['type'] == 'input' && ($objattr['subtype'] == 'TEXT' || $objattr['subtype'] == 'PASSWORD')) {
- $this->form->print_ob_text($objattr,$w,$h,$texto,$rtlalign,$k,$blockdir);
- }
-
- // TEXTAREA
- if ($objattr['type'] == 'textarea') {
- $this->form->print_ob_textarea($objattr,$w,$h,$texto,$rtlalign,$k,$blockdir);
- }
-
- // SELECT
- if ($objattr['type'] == 'select') {
- $this->form->print_ob_select($objattr,$w,$h,$texto,$rtlalign,$k,$blockdir);
- }
-
-
- // INPUT/BUTTON as IMAGE
- if ($objattr['type'] == 'input' && $objattr['subtype'] == 'IMAGE') {
- $this->form->print_ob_imageinput($objattr,$w,$h,$texto,$rtlalign,$k,$blockdir);
- }
-
- // BUTTON
- if ($objattr['type'] == 'input' && ($objattr['subtype'] == 'SUBMIT' || $objattr['subtype'] == 'RESET' || $objattr['subtype'] == 'BUTTON')) {
- $this->form->print_ob_button($objattr,$w,$h,$texto,$rtlalign,$k,$blockdir);
- }
-
- // CHECKBOX
- if ($objattr['type'] == 'input' && ($objattr['subtype'] == 'CHECKBOX')) {
- $this->form->print_ob_checkbox($objattr,$w,$h,$texto,$rtlalign,$k,$blockdir,$x,$y);
- }
- // RADIO
- if ($objattr['type'] == 'input' && ($objattr['subtype'] == 'RADIO')) {
- $this->form->print_ob_radio($objattr,$w,$h,$texto,$rtlalign,$k,$blockdir,$x,$y);
- }
-/*-- END FORMS --*/
- }
- $this->SetFont($save_currentfontfamily,$save_currentfontstyle,$save_currentfontsize);
- $this->y = $save_y;
- $this->x = $save_x;
- unset($content);
-}
-
-
-function WriteFlowingBlock( $s)
-{
- $currentx = $this->x;
- $is_table = $this->flowingBlockAttr[ 'is_table' ];
- $is_list = $this->flowingBlockAttr[ 'is_list' ];
- // width of all the content so far in points
- $contentWidth =& $this->flowingBlockAttr[ 'contentWidth' ];
- // cell width in points
- $maxWidth =& $this->flowingBlockAttr[ 'width' ];
- $lineCount =& $this->flowingBlockAttr[ 'lineCount' ];
- // line height in user units
- $lineHeight =& $this->flowingBlockAttr[ 'height' ];
- $align =& $this->flowingBlockAttr[ 'align' ];
- $content =& $this->flowingBlockAttr[ 'content' ];
- $contentB =& $this->flowingBlockAttr[ 'contentB' ]; // mPDF 5.3.61
- $font =& $this->flowingBlockAttr[ 'font' ];
- $valign =& $this->flowingBlockAttr[ 'valign' ];
- $blockstate = $this->flowingBlockAttr[ 'blockstate' ];
-
- $newblock = $this->flowingBlockAttr[ 'newblock' ];
- $blockdir = $this->flowingBlockAttr['blockdir'];
- // *********** BLOCK BACKGROUND COLOR ***************** //
- if ($this->blk[$this->blklvl]['bgcolor'] && !$is_table) {
- $fill = 0;
- }
- else {
- $this->SetFColor($this->ConvertColor(255));
- $fill = 0;
- }
- $font[] = $this->saveFont();
- $content[] = '';
- $contentB[] = ''; // mPDF 5.3.61
- $currContent =& $content[ count( $content ) - 1 ];
- // where the line should be cutoff if it is to be justified
- $cutoffWidth = $contentWidth;
-
- $curlyquote = mb_convert_encoding("\xe2\x80\x9e",$this->mb_enc,'UTF-8');
- $curlylowquote = mb_convert_encoding("\xe2\x80\x9d",$this->mb_enc,'UTF-8');
-
- $CJKoverflow = false;
-
- // COLS
- $oldcolumn = $this->CurrCol;
-
- if ($this->ColActive && !$is_table) { $this->breakpoints[$this->CurrCol][] = $this->y; } // *COLUMNS*
-
-/*-- TABLES --*/
- if ($is_table) {
- $ipaddingL = 0;
- $ipaddingR = 0;
- $paddingL = 0;
- $paddingR = 0;
- $cpaddingadjustL = 0;
- $cpaddingadjustR = 0;
- // Added mPDF 3.0
- $fpaddingR = 0;
- $fpaddingL = 0;
- }
- else {
-/*-- END TABLES --*/
- $ipaddingL = $this->blk[$this->blklvl]['padding_left'];
- $ipaddingR = $this->blk[$this->blklvl]['padding_right'];
- $paddingL = ($ipaddingL * _MPDFK);
- $paddingR = ($ipaddingR * _MPDFK);
- $this->cMarginL = $this->blk[$this->blklvl]['border_left']['w'];
- $cpaddingadjustL = -$this->cMarginL;
- $this->cMarginR = $this->blk[$this->blklvl]['border_right']['w'];
- $cpaddingadjustR = -$this->cMarginR;
- // Added mPDF 3.0 Float DIV
- $fpaddingR = 0;
- $fpaddingL = 0;
-/*-- CSS-FLOAT --*/
- if (count($this->floatDivs)) {
- list($l_exists, $r_exists, $l_max, $r_max, $l_width, $r_width) = $this->GetFloatDivInfo($this->blklvl);
- if ($r_exists) { $fpaddingR = $r_width; }
- if ($l_exists) { $fpaddingL = $l_width; }
- }
-/*-- END CSS-FLOAT --*/
-
- $usey = $this->y + 0.002;
- if (($newblock) && ($blockstate==1 || $blockstate==3) && ($lineCount == 0) ) {
- $usey += $this->blk[$this->blklvl]['margin_top'] + $this->blk[$this->blklvl]['padding_top'] + $this->blk[$this->blklvl]['border_top']['w'];
- }
-/*-- CSS-IMAGE-FLOAT --*/
- // If float exists at this level
- if (isset($this->floatmargins['R']) && $usey <= $this->floatmargins['R']['y1'] && $usey >= $this->floatmargins['R']['y0'] && !$this->floatmargins['R']['skipline']) { $fpaddingR += $this->floatmargins['R']['w']; }
- if (isset($this->floatmargins['L']) && $usey <= $this->floatmargins['L']['y1'] && $usey >= $this->floatmargins['L']['y0'] && !$this->floatmargins['L']['skipline']) { $fpaddingL += $this->floatmargins['L']['w']; }
-/*-- END CSS-IMAGE-FLOAT --*/
- } // *TABLES*
-
- //OBJECTS - IMAGES & FORM Elements (NB has already skipped line/page if required - in printbuffer)
- if (substr($s,0,3) == "\xbb\xa4\xac") { //identifier has been identified!
- $objattr = $this->_getObjAttr($s);
- $h_corr = 0;
- if ($is_table) { // *TABLES*
- $maximumW = ($maxWidth/_MPDFK) - ($this->cellPaddingL + $this->cMarginL + $this->cellPaddingR + $this->cMarginR); // *TABLES*
- } // *TABLES*
- else { // *TABLES*
- if (($newblock) && ($blockstate==1 || $blockstate==3) && ($lineCount == 0) && (!$is_table)) { $h_corr = $this->blk[$this->blklvl]['padding_top'] + $this->blk[$this->blklvl]['border_top']['w']; }
- $maximumW = ($maxWidth/_MPDFK) - ($this->blk[$this->blklvl]['padding_left'] + $this->blk[$this->blklvl]['border_left']['w'] + $this->blk[$this->blklvl]['padding_right'] + $this->blk[$this->blklvl]['border_right']['w'] + $fpaddingL + $fpaddingR );
- } // *TABLES*
- $objattr = $this->inlineObject($objattr['type'],$this->lMargin + $fpaddingL + ($contentWidth/_MPDFK),($this->y + $h_corr), $objattr, $this->lMargin,($contentWidth/_MPDFK),$maximumW,$lineHeight,true,$is_table);
-
- // SET LINEHEIGHT for this line ================ RESET AT END
- $lineHeight = MAX($lineHeight,$objattr['OUTER-HEIGHT']);
- $this->objectbuffer[count($content)-1] = $objattr;
- // if (isset($objattr['vertical-align'])) { $valign = $objattr['vertical-align']; }
- // else { $valign = ''; }
- $contentWidth += ($objattr['OUTER-WIDTH'] * _MPDFK);
- return;
- }
-
- // mPDF 5.3.61
- $lbw = $rbw = 0; // Border widths
- if (!empty($this->spanborddet)) {
- if (isset($this->spanborddet['L'])) $lbw = $this->spanborddet['L']['w'];
- if (isset($this->spanborddet['R'])) $rbw = $this->spanborddet['R']['w'];
- }
-
- if ($this->usingCoreFont) {
- $tmp = strlen( $s );
- }
- else {
- $tmp = mb_strlen( $s, $this->mb_enc );
- }
-
- $orphs = 0;
- $check = 0;
-
- // for every character in the string
- for ( $i = 0; $i < $tmp; $i++ ) {
- // extract the current character
- // get the width of the character in points
- if ($this->usingCoreFont) {
- $c = $s[$i];
- // Soft Hyphens chr(173)
- // mPDF 5.3.07
- $cw = ($this->GetCharWidthCore($c) * _MPDFK); // mPDF 5.3.04
- if ($this->kerning && $this->useKerning && $i > 0) {
- if (isset($this->CurrentFont['kerninfo'][$s[($i-1)]][$c])) {
- $cw += ($this->CurrentFont['kerninfo'][$s[($i-1)]][$c] * $this->FontSizePt / 1000 );
- }
- }
- }
- else {
- $c = mb_substr($s,$i,1,$this->mb_enc );
- $cw = ($this->GetCharWidthNonCore($c, false) * _MPDFK); // mPDF 5.3.04
- if ($this->kerning && $this->useKerning && $i > 0) {
- $lastc = mb_substr($s,($i-1),1,$this->mb_enc );
- $ulastc = $this->UTF8StringToArray($lastc, false);
- $uc = $this->UTF8StringToArray($c, false);
- if (isset($this->CurrentFont['kerninfo'][$ulastc[0]][$uc[0]])) {
- $cw += ($this->CurrentFont['kerninfo'][$ulastc[0]][$uc[0]] * $this->FontSizePt / 1000 );
- }
- }
- }
-
- // mPDF 5.3.61
- if ($i==0) {
- $cw += $lbw*_MPDFK;
- $contentB[(count($contentB)-1)] .= 'L';
- }
- if ($i==($tmp-1)) {
- $cw += $rbw*_MPDFK;
- $contentB[(count($contentB)-1)] .= 'R';
- }
-
- if ($c==' ') { $check = 1; }
-
- // CHECK for ORPHANS
- else if ($c=='.' || $c==',' || $c==')' || $c==']' || $c==';' || $c==':' || $c=='!' || $c=='?'|| $c=='"' || $c==$curlyquote || $c==$curlylowquote) {$check++; }
-/*-- CJK-FONTS --*/
- else if ($this->checkCJK) { // mPDF 5.3.07
- if ((!$is_table && $this->CJKfollowing && preg_match("/[".$this->CJKfollowing."]/u", $c)) || ($is_table && preg_match("/[".$this->CJKoverflow ."]/u", $c))) { $check++; }
- else { $check = 0; }
- }
-/*-- END CJK-FONTS --*/
- else { $check = 0; }
-
- // There's an orphan '. ' or ', ' or 32 about to be cut off at the end of line
- if($check==1) {
- $currContent .= $c;
- $cutoffWidth = $contentWidth;
- $contentWidth += $cw;
- continue;
- }
- if(($this->SUP || $this->SUB) && ($orphs < $this->orphansAllowed)) { // ? disable orphans in table if borders used
- $currContent .= $c;
- $cutoffWidth = $contentWidth;
- $contentWidth += $cw;
- $orphs++;
- continue;
- }
- else { $orphs = 0; }
-
- // ADDED for Paragraph_indent
- $WidthCorrection = 0;
- if (($newblock) && ($blockstate==1 || $blockstate==3) && isset($this->blk[$this->blklvl]['text_indent']) && ($lineCount == 0) && (!$is_table) && (!$is_list) && ($align != 'C')) {
- $ti = $this->ConvertSize($this->blk[$this->blklvl]['text_indent'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false);
- $WidthCorrection = ($ti*_MPDFK);
- }
-
- // Added mPDF 3.0 Float DIV
- $fpaddingR = 0;
- $fpaddingL = 0;
-/*-- CSS-FLOAT --*/
- if (count($this->floatDivs)) {
- list($l_exists, $r_exists, $l_max, $r_max, $l_width, $r_width) = $this->GetFloatDivInfo($this->blklvl);
- if ($r_exists) { $fpaddingR = $r_width; }
- if ($l_exists) { $fpaddingL = $l_width; }
- }
-/*-- END CSS-FLOAT --*/
-
- $usey = $this->y + 0.002;
- if (($newblock) && ($blockstate==1 || $blockstate==3) && ($lineCount == 0) ) {
- $usey += $this->blk[$this->blklvl]['margin_top'] + $this->blk[$this->blklvl]['padding_top'] + $this->blk[$this->blklvl]['border_top']['w'];
- }
-
-/*-- CSS-IMAGE-FLOAT --*/
- // If float exists at this level
- if (isset($this->floatmargins['R']) && $usey <= $this->floatmargins['R']['y1'] && $usey >= $this->floatmargins['R']['y0'] && !$this->floatmargins['R']['skipline']) { $fpaddingR += $this->floatmargins['R']['w']; }
- if (isset($this->floatmargins['L']) && $usey <= $this->floatmargins['L']['y1'] && $usey >= $this->floatmargins['L']['y0'] && !$this->floatmargins['L']['skipline']) { $fpaddingL += $this->floatmargins['L']['w']; }
-/*-- END CSS-IMAGE-FLOAT --*/
-
-
-
- // try adding another char
- if (( $contentWidth + $cw > $maxWidth - $WidthCorrection - (($this->cMarginL+$this->cMarginR)*_MPDFK) - ($paddingL+$paddingR +(($fpaddingL + $fpaddingR) * _MPDFK) ) + 0.001)) {// 0.001 is to correct for deviations converting mm=>pts
- // it won't fit, output what we already have
- $lineCount++;
-
- // contains any content that didn't make it into this print
- $savedContent = '';
- $savedContentB = ''; // mPDF 5.3.61
- $savedFont = array();
- $savedObj = array();
-
- // cut off and save any partial words at the end of the string
- $words = explode( ' ', $currContent );
- ///////////////////
- // HYPHENATION
- $currWord = $words[count($words)-1] ;
- $success = false;
-/*-- HYPHENATION --*/
- // Soft Hyphens chr(173)
- if ((!$this->usingCoreFont && preg_match("/\xc2\xad/",$currWord)) || ($this->usingCoreFont && preg_match("/".chr(173)."/",$currWord) && ($this->FontFamily!='csymbol' && $this->FontFamily!='czapfdingbats')) ) {
- $rem = $maxWidth - $WidthCorrection - (($this->cMarginL+$this->cMarginR)*_MPDFK) - ($paddingL+$paddingR +(($fpaddingL + $fpaddingR) * _MPDFK) );
- list($success,$pre,$post,$prelength) = $this->softHyphenate($currWord, (($rem-$cutoffWidth)/_MPDFK -$this->GetCharWidthNonCore(" ", false)) ); // mPDF 5.3.04
- }
-
- if (!$success && ($this->hyphenate || ($this->hyphenateTables && $is_table))) {
- // Look ahead to get current word
- for($ac = $i; $ac<(mb_strlen($s)-1); $ac++) {
- $addc = mb_substr($s,$ac,1,$this->mb_enc );
- if ($addc == ' ') { break; }
- $currWord .= $addc;
- }
- $rem = $maxWidth - $WidthCorrection - (($this->cMarginL+$this->cMarginR)*_MPDFK) - ($paddingL+$paddingR +(($fpaddingL + $fpaddingR) * _MPDFK) );
- list($success,$pre,$post,$prelength) = $this->hyphenateWord($currWord, (($rem-$cutoffWidth)/_MPDFK -$this->GetCharWidth(" ", false)) );
- }
- if ($success) {
- $already = array_pop( $words );
- $forward = mb_substr($already,$prelength,mb_strlen($already, $this->mb_enc), $this->mb_enc);
- $words[] = $pre.'-';
- $words[] = $forward;
- $currContent = mb_substr($currContent,0,mb_strlen($currContent, $this->mb_enc)+1-mb_strlen($post, $this->mb_enc), $this->mb_enc) . '-';
- }
-/*-- END HYPHENATION --*/
-
-
- // if it looks like we didn't finish any words for this chunk
- if ( count( $words ) == 1 ) {
- // TO correct for error when word too wide for page - but only when one long word from left to right margin
- if (count($content) == 1 && $currContent != ' ') {
-
-/////////////////////////////////////////////////////////////////////////////////////
-
-
- $lastchar = mb_substr($words[0],mb_strlen($words[0], $this->mb_enc)-1, 1, $this->mb_enc);
-/*-- CJK-FONTS --*/
- // mPDF 5.3.07
- if ($this->checkCJK) {
- // Last character that fits is not allowed to end a line - move lastchar(s) to start of next line
- if (!$is_table && preg_match("/[".$this->CJKleading."]/u", $lastchar)) {
- //move lastchar(s) to next line
- $m0 = $lastchar;
- $m1 = $c;
- while(preg_match("/[".$this->CJKleading."]/u", $m0) && mb_strlen($words[0], $this->mb_enc)>2) {
- // trim last letter off word[0]
- $words[0] = mb_substr($words[0],0,mb_strlen($words[0], $this->mb_enc)-1, $this->mb_enc);
- // and add it to savedContent for next line
- $savedContent = $m0.$savedContent;
- $m1 = $lastchar;
- $lastchar = mb_substr($words[0],mb_strlen($words[0], $this->mb_enc)-1, 1, $this->mb_enc);
- $m0 = $lastchar;
- }
- }
- // Next character is not allowed to start a new line - move lastchar(s) to next line
- else if (!$is_table && preg_match("/[".$this->CJKfollowing."]/u", $c)) {
- // try squeezing another character(s) onto this line = Oikomi
- if ($this->allowCJKorphans) {
- $lookahead = mb_substr($s,$i+1,1,$this->mb_enc );
- //if lookahead is not another following char
- if ($lookahead && !preg_match("/[".$this->CJKfollowing."]/u", $lookahead)) {
- $currContent .= $c;
- $cutoffWidth = $contentWidth;
- $contentWidth += $cw;
- if ($this->allowCJKoverflow && !$is_table && preg_match("/[".$this->CJKoverflow."]/u", $c)) { $CJKoverflow = true; }
- continue;
- }
- }
- // or move lastchar(s) to next line to keep $c company = Oidashi
- $m0 = $lastchar;
- $m1 = $c;
- while(preg_match("/[".$this->CJKfollowing."]/u", $m1) && mb_strlen($words[0], $this->mb_enc)>2) {
- // trim last letter off word[0]
- $words[0] = mb_substr($words[0],0,mb_strlen($words[0], $this->mb_enc)-1, $this->mb_enc);
- // and add it to savedContent for next line
- $savedContent = $m0.$savedContent;
- $m1 = $lastchar;
- $lastchar = mb_substr($words[0],mb_strlen($words[0], $this->mb_enc)-1, 1, $this->mb_enc);
- $m0 = $lastchar;
- }
-
- }
- }
-/*-- END CJK-FONTS --*/
-
- $lastContent = $words[0];
- $savedFont = $this->saveFont();
- // replace the current content with the cropped version
- $currContent = rtrim( $lastContent );
- }
- else {
- // save and crop off the content currently on the stack
- $savedContent = array_pop( $content );
- $savedContentB = $contentB[(count($contentB)-1)]; // mPDF 5.3.61
- $savedFont = array_pop( $font );
- // trim any trailing spaces off the last bit of content
- $currContent =& $content[ count( $content ) - 1 ];
- $currContent = rtrim( $currContent );
- }
- }
- else { // otherwise, we need to find which bit to cut off
- $lastContent = '';
- for ( $w = 0; $w < count( $words ) - 1; $w++) { $lastContent .= $words[ $w ]." "; }
- $savedContent = $words[ count( $words ) - 1 ];
- $savedFont = $this->saveFont();
- // replace the current content with the cropped version
- $currContent = rtrim( $lastContent );
- }
- // CJK - strip CJK space at end of line
- // = \xe3\x80\x80 = CJK space
- if ($this->checkCJK) { $currContent = preg_replace("/\xe3\x80\x80$/",'',$currContent) ; } // *CJK-FONTS*
-
-
- if (isset($this->objectbuffer[(count($content)-1)]) && $this->objectbuffer[(count($content)-1)]['type']=='dottab') {
- $savedObj = array_pop( $this->objectbuffer );
- $contentWidth -= ($this->objectbuffer[(count($content)-1)]['OUTER-WIDTH'] * _MPDFK);
- }
-
- // Set Current lineheight (correction factor)
- $lhfixed = false;
-/*-- LISTS --*/
- if ($is_list) {
- if (preg_match('/([0-9.,]+)mm/',$this->list_lineheight[$this->listlvl][$this->listOcc],$am)) {
- $lhfixed = true;
- $def_fontsize = $this->InlineProperties['LISTITEM'][$this->listlvl][$this->listOcc][$this->listnum]['size'];
- $this->lineheight_correction = $am[1] / $def_fontsize ;
- }
- else {
- $this->lineheight_correction = $this->list_lineheight[$this->listlvl][$this->listOcc];
- }
- }
- else
-/*-- END LISTS --*/
-/*-- TABLES --*/
- if ($is_table) {
- if (preg_match('/([0-9.,]+)mm/',$this->table_lineheight,$am)) {
- $lhfixed = true;
- $def_fontsize = $this->FontSize; // needs to be default font-size for block ****
- $this->lineheight_correction = $lineHeight / $def_fontsize ;
- }
- else {
- $this->lineheight_correction = $this->table_lineheight;
- }
- }
- else
-/*-- END TABLES --*/
- if (isset($this->blk[$this->blklvl]['line_height']) && $this->blk[$this->blklvl]['line_height']) {
- if (preg_match('/([0-9.,]+)mm/',$this->blk[$this->blklvl]['line_height'],$am)) {
- $lhfixed = true;
- $def_fontsize = $this->blk[$this->blklvl]['InlineProperties']['size']; // needs to be default font-size for block ****
- $this->lineheight_correction = $am[1] / $def_fontsize ;
- }
- else {
- $this->lineheight_correction = $this->blk[$this->blklvl]['line_height'];
- }
- }
- else {
- $this->lineheight_correction = $this->normalLineheight;
- }
- // update $contentWidth and $cutoffWidth since they changed with cropping
- // Also correct lineheight to maximum fontsize (not for tables)
- $contentWidth = 0;
- // correct lineheight to maximum fontsize
- if ($lhfixed) { $maxlineHeight = $this->lineheight; }
- else { $maxlineHeight = 0; }
- $this->forceExactLineheight = true;
- $maxfontsize = 0;
- // While we're at it, check for cursive text
- $checkCursive=false;
- if ($this->biDirectional) { $checkCursive=true; } // *RTL*
- foreach ( $content as $k => $chunk )
- {
- $this->restoreFont( $font[ $k ]);
- if (!isset($this->objectbuffer[$k])) {
- if (!$this->usingCoreFont) {
- $content[$k] = $chunk = str_replace("\xc2\xad",'',$chunk );
- if (isset($this->CurrentFont['indic']) && $this->CurrentFont['indic']) { $checkCursive=true; } // *INDIC*
- }
- // Soft Hyphens chr(173)
- else if ($this->FontFamily!='csymbol' && $this->FontFamily!='czapfdingbats') {
- $content[$k] = $chunk = str_replace(chr(173),'',$chunk );
- }
- $contentWidth += $this->GetStringWidth( $chunk ) * _MPDFK;
- // mPDF 5.3.61
- if (!empty($this->spanborddet)) {
- if (strpos($contentB[$k],'L')!==false) $contentWidth += $this->spanborddet['L']['w'] * _MPDFK;
- if (strpos($contentB[$k],'R')!==false) $contentWidth += $this->spanborddet['R']['w'] * _MPDFK;
- }
- if (!$lhfixed) { $maxlineHeight = max($maxlineHeight,$this->FontSize * $this->lineheight_correction ); }
- if ($lhfixed && ($this->FontSize > $def_fontsize || ($this->FontSize > ($lineHeight * $this->lineheight_correction) && $is_list))) {
- $this->forceExactLineheight = false;
- }
- $maxfontsize = max($maxfontsize,$this->FontSize);
- }
- }
-
- $lastfontreqstyle = $font[count($font)-1]['ReqFontStyle'];
- $lastfontstyle = $font[count($font)-1]['style'];
- if ($blockdir == 'ltr' && strpos($lastfontreqstyle,"I") !== false && strpos($lastfontstyle,"I") === false) { // Artificial italic
- $lastitalic = $this->FontSize*0.15*_MPDFK;
- }
- else { $lastitalic = 0; }
-
-
-/*-- LISTS --*/
- if ($is_list && is_array($this->bulletarray) && $this->bulletarray) {
- $actfs = $this->bulletarray['fontsize'];
- if (!$lhfixed) { $maxlineHeight = max($maxlineHeight,$actfs * $this->lineheight_correction ); }
- if ($lhfixed && $actfs > $def_fontsize) { $this->forceExactLineheight = false; }
- $maxfontsize = max($maxfontsize,$actfs);
- }
-/*-- END LISTS --*/
-
- // when every text item checked i.e. $maxfontsize is set properly
-
- $af = 0; // Above font
- $bf = 0; // Below font
- $mta = 0; // Maximum top-aligned
- $mba = 0; // Maximum bottom-aligned
-
- foreach ( $content as $k => $chunk ) {
- if (isset($this->objectbuffer[$k]) && $this->objectbuffer[$k]) {
- $contentWidth += $this->objectbuffer[$k]['OUTER-WIDTH'] * _MPDFK;
- $oh = $this->objectbuffer[$k]['OUTER-HEIGHT'];
- $va = $this->objectbuffer[$k]['vertical-align']; // = $objattr['vertical-align'] = set as M,T,B,S
- if ($lhfixed && $oh > $def_fontsize) { $this->forceExactLineheight = false; }
-
- if ($va == 'BS') { // (BASELINE default)
- $af = max($af, ($oh - ($maxfontsize * (0.5 + $this->baselineC))));
- }
- else if ($va == 'M') {
- $af = max($af, ($oh - $maxfontsize)/2);
- $bf = max($bf, ($oh - $maxfontsize)/2);
- }
- else if ($va == 'TT') {
- $bf = max($bf, ($oh - $maxfontsize));
- }
- else if ($va == 'TB') {
- $af = max($af, ($oh - $maxfontsize));
- }
- else if ($va == 'T') {
- $mta = max($mta, $oh);
- }
- else if ($va == 'B') {
- $mba = max($mba, $oh);
- }
- }
- }
- if ((!$lhfixed || !$this->forceExactLineheight) && ($af > (($maxlineHeight - $maxfontsize)/2) || $bf > (($maxlineHeight - $maxfontsize)/2))) {
- $maxlineHeight = $maxfontsize + $af + $bf;
- }
- else if (!$lhfixed) { $af = $bf = ($maxlineHeight - $maxfontsize)/2; }
-
- if ($mta > $maxlineHeight) {
- $bf += ($mta - $maxlineHeight);
- $maxlineHeight = $mta;
- }
- if ($mba > $maxlineHeight) {
- $af += ($mba - $maxlineHeight);
- $maxlineHeight = $mba;
- }
-
-
- $lineHeight = $maxlineHeight;
- $cutoffWidth = $contentWidth;
- // If NOT images, and maxfontsize NOT > lineHeight - this value determines text baseline positioning
- if ($lhfixed && $af==0 && $bf==0 && $maxfontsize<=($def_fontsize * $this->lineheight_correction * 0.8 )) {
- $this->linemaxfontsize = $def_fontsize;
- }
- else { $this->linemaxfontsize = $maxfontsize; }
-
-
- $inclCursive=false;
- foreach ( $content as $k => $chunk ) {
- if (!isset($this->objectbuffer[$k]) || (isset($this->objectbuffer[$k]) && !$this->objectbuffer[$k])) {
- if ($this->usingCoreFont) {
- $content[$k] = str_replace(chr(160),chr(32),$chunk );
- }
- else {
- $content[$k] = str_replace(chr(194).chr(160),chr(32),$chunk );
- if ($checkCursive) {
- if (preg_match("/([".$this->pregRTLchars."])/u", $chunk)) { $inclCursive = true; } // *RTL*
- if (preg_match("/([".$this->pregHIchars.$this->pregBNchars.$this->pregPAchars."])/u", $chunk)) { $inclCursive = true; } // *INDIC*
- }
- }
- }
- }
-
- // JUSTIFICATION J
- $jcharspacing = 0;
- $jws = 0;
- $nb_carac = 0;
- $nb_spaces = 0;
- // if it's justified, we need to find the char/word spacing (or if orphans have allowed length of line to go over the maxwidth)
- if(( $align == 'J' ) || (($cutoffWidth + $lastitalic > $maxWidth - $WidthCorrection - (($this->cMarginL+$this->cMarginR)*_MPDFK) - ($paddingL+$paddingR +(($fpaddingL + $fpaddingR) * _MPDFK) ) + 0.001) && !$CJKoverflow)) { // 0.001 is to correct for deviations converting mm=>pts
- // JUSTIFY J (Use character spacing)
- // WORD SPACING
- foreach ( $content as $k => $chunk ) {
- if (!isset($this->objectbuffer[$k]) || (isset($this->objectbuffer[$k]) && !$this->objectbuffer[$k])) {
- $nb_carac += mb_strlen( $chunk, $this->mb_enc ) ;
- $nb_spaces += mb_substr_count( $chunk,' ', $this->mb_enc ) ;
- }
- }
- list($jcharspacing,$jws) = $this->GetJspacing($nb_carac,$nb_spaces,($maxWidth-$lastitalic-$cutoffWidth-$WidthCorrection-(($this->cMarginL+$this->cMarginR)*_MPDFK)-($paddingL+$paddingR +(($fpaddingL + $fpaddingR) * _MPDFK) )),$inclCursive);
- }
-
-
- // WORD SPACING
- $empty = $maxWidth - $lastitalic-$WidthCorrection - $contentWidth - (($this->cMarginL+$this->cMarginR)* _MPDFK) - ($paddingL+$paddingR +(($fpaddingL + $fpaddingR) * _MPDFK) );
-
- $empty -= ($jcharspacing * $nb_carac);
- $empty -= ($jws * $nb_spaces);
-
- $empty /= _MPDFK;
- $b = ''; //do not use borders
- // Get PAGEBREAK TO TEST for height including the top border/padding
- $check_h = max($this->divheight,$lineHeight);
- if (($newblock) && ($blockstate==1 || $blockstate==3) && ($this->blklvl > 0) && ($lineCount == 1) && (!$is_table) && (!$is_list)) {
- $check_h += ($this->blk[$this->blklvl]['padding_top'] + $this->blk[$this->blklvl]['margin_top'] + $this->blk[$this->blklvl]['border_top']['w']);
- }
-
- if ($this->ColActive && $check_h > ($this->PageBreakTrigger - $this->y0)) {
- $this->SetCol($this->NbCol-1);
- }
-
- // PAGEBREAK
- // 'If' below used in order to fix "first-line of other page with justify on" bug
- if(!$is_table && ($this->y+$check_h) > $this->PageBreakTrigger and !$this->InFooter and $this->AcceptPageBreak()) {
- $bak_x=$this->x;//Current X position
-
- // WORD SPACING
- $ws=$this->ws;//Word Spacing
- $charspacing=$this->charspacing;//Character Spacing
- $this->ResetSpacing();
-
- $this->AddPage($this->CurOrientation);
-
- $this->x = $bak_x;
- // Added to correct for OddEven Margins
- $currentx += $this->MarginCorrection;
- $this->x += $this->MarginCorrection;
-
- // WORD SPACING
- $this->SetSpacing($charspacing,$ws);
- }
-
- if ($this->keep_block_together && !$is_table && $this->kt_p00 < $this->page && ($this->y+$check_h) > $this->kt_y00) {
- $this->printdivbuffer();
- $this->keep_block_together = 0;
- }
-
-
-/*-- COLUMNS --*/
- // COLS
- // COLUMN CHANGE
- if ($this->CurrCol != $oldcolumn) {
- $currentx += $this->ChangeColumn * ($this->ColWidth+$this->ColGap);
- $this->x += $this->ChangeColumn * ($this->ColWidth+$this->ColGap);
- $oldcolumn = $this->CurrCol;
- }
-
- if ($this->ColActive && !$is_table) { $this->breakpoints[$this->CurrCol][] = $this->y; } // *COLUMNS*
-/*-- END COLUMNS --*/
-
- // TOP MARGIN
- if (($newblock) && ($blockstate==1 || $blockstate==3) && ($this->blk[$this->blklvl]['margin_top']) && ($lineCount == 1) && (!$is_table) && (!$is_list)) {
- $this->DivLn($this->blk[$this->blklvl]['margin_top'],$this->blklvl-1,true,$this->blk[$this->blklvl]['margin_collapse']);
- if ($this->ColActive) { $this->breakpoints[$this->CurrCol][] = $this->y; } // *COLUMNS*
- }
-
-
- // Update y0 for top of block (used to paint border)
- if (($newblock) && ($blockstate==1 || $blockstate==3) && ($lineCount == 1) && (!$is_table) && (!$is_list)) {
- $this->blk[$this->blklvl]['y0'] = $this->y;
- $this->blk[$this->blklvl]['startpage'] = $this->page;
- }
-
- // TOP PADDING and BORDER spacing/fill
- if (($newblock) && ($blockstate==1 || $blockstate==3) && (($this->blk[$this->blklvl]['padding_top']) || ($this->blk[$this->blklvl]['border_top'])) && ($lineCount == 1) && (!$is_table) && (!$is_list)) {
- // $state = 0 normal; 1 top; 2 bottom; 3 top and bottom
- $this->DivLn($this->blk[$this->blklvl]['padding_top'] + $this->blk[$this->blklvl]['border_top']['w'],-3,true,false,1);
- if ($this->ColActive) { $this->breakpoints[$this->CurrCol][] = $this->y; } // *COLUMNS*
- }
-
- $arraysize = count($content);
-
- $margins = ($this->cMarginL+$this->cMarginR) + ($ipaddingL+$ipaddingR + $fpaddingR + $fpaddingR );
-
- // PAINT BACKGROUND FOR THIS LINE
- if (!$is_table) { $this->DivLn($lineHeight,$this->blklvl,false); } // false -> don't advance y
-
- $this->x = $currentx + $this->cMarginL + $ipaddingL + $fpaddingL ;
- if ($align == 'R') { $this->x += $empty; }
- else if ($align == 'C') { $this->x += ($empty / 2); }
-
- // Paragraph INDENT
- if (isset($this->blk[$this->blklvl]['text_indent']) && ($newblock) && ($blockstate==1 || $blockstate==3) && ($lineCount == 1) && (!$is_table) && ($blockdir !='rtl') && ($align !='C')) {
- $ti = $this->ConvertSize($this->blk[$this->blklvl]['text_indent'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false);
- $this->x += $ti;
- }
-
- // DIRECTIONALITY RTL
- $all_rtl = false;
- $contains_rtl = false;
-/*-- RTL --*/
- if ($blockdir == 'rtl' || $this->biDirectional) {
- $all_rtl = true;
- foreach ( $content as $k => $chunk ) {
- $reversed = $this->magic_reverse_dir($chunk, false, $blockdir);
-
- if ($reversed > 0) { $contains_rtl = true; }
- if ($reversed < 2) { $all_rtl = false; }
- $content[$k] = $chunk;
- }
- if (($blockdir =='rtl' && $contains_rtl) || $all_rtl) {
- $content = array_reverse($content,false);
- $contentB = array_reverse($contentB,false); // mPDF 5.3.61
- }
- }
-/*-- END RTL --*/
-
- foreach ( $content as $k => $chunk ) {
-
- // FOR IMAGES - UPDATE POSITION
- if (($blockdir =='rtl' && $contains_rtl) || $all_rtl) { $dirk = $arraysize-1 - $k ; } else { $dirk = $k; }
-
- $va = 'M'; // default for text
- if (isset($this->objectbuffer[$dirk]) && $this->objectbuffer[$dirk]) {
- $xadj = $this->x - $this->objectbuffer[$dirk]['OUTER-X'] ;
- $this->objectbuffer[$dirk]['OUTER-X'] += $xadj;
- $this->objectbuffer[$dirk]['BORDER-X'] += $xadj;
- $this->objectbuffer[$dirk]['INNER-X'] += $xadj;
- $va = $this->objectbuffer[$dirk]['vertical-align'];
- $yadj = $this->y - $this->objectbuffer[$dirk]['OUTER-Y'];
- if ($va == 'BS') {
- $yadj += $af + ($this->linemaxfontsize * (0.5 + $this->baselineC)) - $this->objectbuffer[$dirk]['OUTER-HEIGHT'];
- }
- else if ($va == 'M' || $va == '') {
- $yadj += $af + ($this->linemaxfontsize /2) - ($this->objectbuffer[$dirk]['OUTER-HEIGHT']/2);
- }
- else if ($va == 'TB') {
- $yadj += $af + $this->linemaxfontsize - $this->objectbuffer[$dirk]['OUTER-HEIGHT'];
- }
- else if ($va == 'TT') {
- $yadj += $af;
- }
- else if ($va == 'B') {
- $yadj += $af + $this->linemaxfontsize + $bf - $this->objectbuffer[$dirk]['OUTER-HEIGHT'];
- }
- else if ($va == 'T') {
- $yadj += 0;
- }
- $this->objectbuffer[$dirk]['OUTER-Y'] += $yadj;
- $this->objectbuffer[$dirk]['BORDER-Y'] += $yadj;
- $this->objectbuffer[$dirk]['INNER-Y'] += $yadj;
- }
-
- // DIRECTIONALITY RTL
- if ((($blockdir == 'rtl') && ($contains_rtl )) || ($all_rtl )) { $this->restoreFont($font[$arraysize-1 - $k]); }
- else { $this->restoreFont( $font[ $k ] ); }
-
- $this->SetSpacing(($this->fixedlSpacing*_MPDFK)+$jcharspacing,($this->fixedlSpacing+$this->minwSpacing)*_MPDFK+$jws);
- // Now unset these values so they don't influence GetStringwidth below or in fn. Cell
- $this->fixedlSpacing = false;
- $this->minwSpacing = 0;
-
- // *********** SPAN BACKGROUND COLOR ***************** //
- if ($this->spanbgcolor) {
- $cor = $this->spanbgcolorarray;
- $this->SetFColor($cor);
- $save_fill = $fill; $spanfill = 1; $fill = 1;
- }
- // mPDF 5.3.61
- if (!empty($this->spanborddet)) {
- if (strpos($contentB[$k],'L')!==false) $this->x += $this->spanborddet['L']['w'];
- if (strpos($contentB[$k],'L')===false) $this->spanborddet['L']['s'] = $this->spanborddet['L']['w'] = 0;
- if (strpos($contentB[$k],'R')===false) $this->spanborddet['R']['s'] = $this->spanborddet['R']['w'] = 0;
- }
-
- // WORD SPACING
- $stringWidth = $this->GetStringWidth($chunk );
- $stringWidth += ( $this->charspacing * mb_strlen($chunk,$this->mb_enc ) / _MPDFK );
- $stringWidth += ( $this->ws * mb_substr_count($chunk,' ',$this->mb_enc ) / _MPDFK );
- if (isset($this->objectbuffer[$dirk])) { $stringWidth = $this->objectbuffer[$dirk]['OUTER-WIDTH']; }
-
- if ($stringWidth==0) { $stringWidth = 0.000001; }
- if ($k == $arraysize-1) {
- $stringWidth -= ( $this->charspacing / _MPDFK );
- $this->Cell( $stringWidth, $lineHeight, $chunk, '', 1, '', $fill, $this->HREF, $currentx,0,0,'M', $fill, $af, $bf, true ); //mono-style line or last part (skips line) // mPDF 5.3.07
- }
- else $this->Cell( $stringWidth, $lineHeight, $chunk, '', 0, '', $fill, $this->HREF, 0, 0,0,'M', $fill, $af, $bf, true );//first or middle part // mPDF 5.3.07
-
- // mPDF 5.3.61
- if (!empty($this->spanborddet)) {
- if (strpos($contentB[$k],'R')!==false && $k != $arraysize-1) $this->x += $this->spanborddet['R']['w'];
- }
- // *********** SPAN BACKGROUND COLOR OFF - RESET BLOCK BGCOLOR ***************** //
- if (isset($spanfill) && $spanfill) {
- $fill = $save_fill; $spanfill = 0;
- if ($fill) { $this->SetFColor($bcor); }
- }
- }
- if (!$is_table) {
- $this->maxPosR = max($this->maxPosR , ($this->w - $this->rMargin - $this->blk[$this->blklvl]['outer_right_margin']));
- $this->maxPosL = min($this->maxPosL , ($this->lMargin + $this->blk[$this->blklvl]['outer_left_margin']));
- }
-
- // move on to the next line, reset variables, tack on saved content and current char
-
- $this->printobjectbuffer($is_table, $blockdir);
- $this->objectbuffer = array();
-
-/*-- LISTS --*/
- // LIST BULLETS/NUMBERS
- if ($is_list && is_array($this->bulletarray) && ($lineCount == 1) ) {
-
- $this->ResetSpacing();
-
- $bull = $this->bulletarray;
- if (isset($bull['level']) && isset($bull['occur']) && isset($this->InlineProperties['LIST'][$bull['level']][$bull['occur']])) {
- $this->restoreInlineProperties($this->InlineProperties['LIST'][$bull['level']][$bull['occur']]);
- }
- if (isset($bull['level']) && isset($bull['occur']) && isset($bull['num']) && isset($this->InlineProperties['LISTITEM'][$bull['level']][$bull['occur']][$bull['num']]) && $this->InlineProperties['LISTITEM'][$bull['level']][$bull['occur']][$bull['num']]) { $this->restoreInlineProperties($this->InlineProperties['LISTITEM'][$bull['level']][$bull['occur']][$bull['num']]); }
- if (isset($bull['font']) && $bull['font'] == 'czapfdingbats') {
- $this->bullet = true;
- $this->SetFont('czapfdingbats','',$this->FontSizePt/2.5);
- }
- else { $this->SetFont($this->FontFamily,$this->FontStyle,$this->FontSizePt,true,true); } // force output
- //Output bullet
- $this->x = $currentx;
- if (isset($bull['x'])) { $this->x += $bull['x']; }
- $this->y -= $lineHeight;
- if (is_array($bull['col'])) { $this->SetTColor($bull['col']); }
- if (isset($bull['txt'])) { $this->Cell($bull['w'], $lineHeight,$bull['txt'],'','',$bull['align'],0,'',0,-$this->cMarginL, -$this->cMarginR ); }
- if (isset($bull['font']) && $bull['font'] == 'czapfdingbats') {
- $this->bullet = false;
- }
- $this->x = $currentx; // Reset
- $this->y += $lineHeight;
-
- if ($this->ColActive && !$is_table) { $this->breakpoints[$this->CurrCol][] = $this->y; } // *COLUMNS*
-
- $this->bulletarray = array(); // prevents repeat of bullet/number if .... .....
- }
-/*-- END LISTS --*/
-
-
-/*-- CSS-IMAGE-FLOAT --*/
- // Update values if set to skipline
- if ($this->floatmargins) { $this->_advanceFloatMargins(); }
-/*-- END CSS-IMAGE-FLOAT --*/
-
- // Reset lineheight
- $lineHeight = $this->divheight;
- $valign = 'M';
-
- $this->restoreFont( $savedFont );
- // mPDF 5.3.61
- $lbw = $rbw = 0; // Border widths
- if (!empty($this->spanborddet)) {
- $lbw = $this->spanborddet['L']['w'];
- $rbw = $this->spanborddet['R']['w'];
- }
-
- $font = array();
- $content = array();
- $contentB = array(); // mPDF 5.3.61
- $contentWidth = 0;
- if (!empty($savedObj)) {
- $this->objectbuffer[] = $savedObj;
- $font[] = $savedFont;
- $content[] = '';
- $contentB[] = '';
- $contentWidth += $savedObj['OUTER-WIDTH'] * _MPDFK;
- }
- $font[] = $savedFont;
- $content[] = $savedContent . $c;
- $contentB[] = $savedContentB ; // mPDF 5.3.61
- $currContent =& $content[ (count($content)-1) ];
- // CJK - strip CJK space at end of line
- // = \xe3\x80\x80 = CJK space
- if ($this->checkCJK && $currContent == "\xe3\x80\x80") { $currContent = '' ; } // *CJK-FONTS*
- $contentWidth += $this->GetStringWidth( $currContent ) * _MPDFK;
- // mPDF 5.3.61
- if (strpos($savedContentB,'L')!==false) $contentWidth += $lbw;
- $cutoffWidth = $contentWidth;
- $CJKoverflow = false;
- }
- // another character will fit, so add it on
- else {
- $contentWidth += $cw;
- $currContent .= $c;
- }
- }
- unset($content);
- unset($contentB); // mPDF 5.3.61
-}
-//----------------------END OF FLOWING BLOCK------------------------------------//
-
-
-/*-- CSS-IMAGE-FLOAT --*/
-// Update values if set to skipline
-function _advanceFloatMargins() {
- // Update floatmargins - L
- if (isset($this->floatmargins['L']) && $this->floatmargins['L']['skipline'] && $this->floatmargins['L']['y0'] != $this->y) {
- $yadj = $this->y - $this->floatmargins['L']['y0'];
- $this->floatmargins['L']['y0'] = $this->y;
- $this->floatmargins['L']['y1'] += $yadj;
-
- // Update objattr in floatbuffer
- if ($this->floatbuffer[$this->floatmargins['L']['id']]['border_left']['w']) {
- $this->floatbuffer[$this->floatmargins['L']['id']]['BORDER-Y'] += $yadj;
- }
- $this->floatbuffer[$this->floatmargins['L']['id']]['INNER-Y'] += $yadj;
- $this->floatbuffer[$this->floatmargins['L']['id']]['OUTER-Y'] += $yadj;
-
- // Unset values
- $this->floatbuffer[$this->floatmargins['L']['id']]['skipline'] = false;
- $this->floatmargins['L']['skipline'] = false;
- $this->floatmargins['L']['id'] = '';
- }
- // Update floatmargins - R
- if (isset($this->floatmargins['R']) && $this->floatmargins['R']['skipline'] && $this->floatmargins['R']['y0'] != $this->y) {
- $yadj = $this->y - $this->floatmargins['R']['y0'];
- $this->floatmargins['R']['y0'] = $this->y;
- $this->floatmargins['R']['y1'] += $yadj;
-
- // Update objattr in floatbuffer
- if ($this->floatbuffer[$this->floatmargins['R']['id']]['border_left']['w']) {
- $this->floatbuffer[$this->floatmargins['R']['id']]['BORDER-Y'] += $yadj;
- }
- $this->floatbuffer[$this->floatmargins['R']['id']]['INNER-Y'] += $yadj;
- $this->floatbuffer[$this->floatmargins['R']['id']]['OUTER-Y'] += $yadj;
-
- // Unset values
- $this->floatbuffer[$this->floatmargins['R']['id']]['skipline'] = false;
- $this->floatmargins['R']['skipline'] = false;
- $this->floatmargins['R']['id'] = '';
- }
-}
-/*-- END CSS-IMAGE-FLOAT --*/
-
-
-
-////////////////////////////////////////////////////////////////////////////////
-// ADDED forcewrap - to call from inline OBJECT functions to breakwords if necessary in cell
-////////////////////////////////////////////////////////////////////////////////
-function WordWrap(&$text, $maxwidth, $forcewrap = 0) {
- $biggestword=0;
- $toonarrow=false;
-
- $text = trim($text);
-
- if ($text==='') return 0;
- $space = $this->GetCharWidth(' ',false); // mPDF 5.3.04
- $lines = explode("\n", $text);
- $text = '';
- $count = 0;
- foreach ($lines as $line) {
- $words = explode(' ', $line);
- $width = 0;
- foreach ($words as $word) {
- $word = trim($word);
- $wordwidth = $this->GetStringWidth($word);
- //Warn user that maxwidth is insufficient
- if ($wordwidth > $maxwidth + 0.0001) {
- if ($wordwidth > $biggestword) { $biggestword = $wordwidth; }
- $toonarrow=true;
- // ADDED
- if ($forcewrap) {
- while($wordwidth > $maxwidth) {
- $chw = 0; // check width
- for ( $i = 0; $i < mb_strlen($word, $this->mb_enc ); $i++ ) {
- $chw = $this->GetStringWidth(mb_substr($word,0,$i+1,$this->mb_enc ));
- if ($chw > $maxwidth ) {
- if ($text) {
- $text = rtrim($text)."\n".mb_substr($word,0,$i,$this->mb_enc );
- $count++;
- }
- else {
- $text = mb_substr($word,0,$i,$this->mb_enc );
- }
- $word = mb_substr($word,$i,mb_strlen($word, $this->mb_enc )-$i,$this->mb_enc );
- $wordwidth = $this->GetStringWidth($word);
- $width = $maxwidth;
- break;
- }
- }
- }
- }
- }
-
- if ($width + $wordwidth < $maxwidth - 0.0001) {
- $width += $wordwidth + $space;
- $text .= $word.' ';
- }
- else {
- $width = $wordwidth + $space;
- $text = rtrim($text)."\n".$word.' ';
- $count++;
- }
- }
- $text .= "\n";
- $count++;
- }
- $text = rtrim($text);
-
- //Return -(wordsize) if word is bigger than maxwidth
-
- // ADDED
- if ($forcewrap) { return $count; }
- if (($toonarrow) && ($this->table_error_report)) {
- $this->Error("Word is too long to fit in table - ".$this->table_error_report_param);
- }
- if ($toonarrow) return -$biggestword;
- else return $count;
-}
-
-/*-- END HTML-CSS --*/
-
-function _SetTextRendering($mode) {
- if (!(($mode == 0) || ($mode == 1) || ($mode == 2)))
- $this->Error("Text rendering mode should be 0, 1 or 2 (value : $mode)");
- $tr = ($mode.' Tr');
- if($this->page>0 && ((isset($this->pageoutput[$this->page]['TextRendering']) && $this->pageoutput[$this->page]['TextRendering'] != $tr) || !isset($this->pageoutput[$this->page]['TextRendering']) || $this->keep_block_together)) { $this->_out($tr); }
- $this->pageoutput[$this->page]['TextRendering'] = $tr;
-
-}
-
-function SetTextOutline($width, $col=0) {
- if ($width == false) //Now resets all values
- {
- $this->outline_on = false;
- $this->SetLineWidth(0.2);
- $this->SetDColor($this->ConvertColor(0));
- $this->_SetTextRendering(0);
- $tr = ('0 Tr');
- if($this->page>0 && ((isset($this->pageoutput[$this->page]['TextRendering']) && $this->pageoutput[$this->page]['TextRendering'] != $tr) || !isset($this->pageoutput[$this->page]['TextRendering']) || $this->keep_block_together)) { $this->_out($tr); }
- $this->pageoutput[$this->page]['TextRendering'] = $tr;
- }
- else
- {
- $this->SetLineWidth($width);
- $this->SetDColor($col);
- $tr = ('2 Tr');
- if($this->page>0 && ((isset($this->pageoutput[$this->page]['TextRendering']) && $this->pageoutput[$this->page]['TextRendering'] != $tr) || !isset($this->pageoutput[$this->page]['TextRendering']) || $this->keep_block_together)) { $this->_out($tr); }
- $this->pageoutput[$this->page]['TextRendering'] = $tr;
- }
-}
-
-function Image($file,$x,$y,$w=0,$h=0,$type='',$link='',$paint=true, $constrain=true, $watermark=false, $shownoimg=true, $allowvector=true) {
- $orig_srcpath = $file;
- $this->GetFullPath($file);
-
- $info=$this->_getImage($file, true, $allowvector, $orig_srcpath );
- if(!$info && $paint) {
- $info = $this->_getImage($this->noImageFile);
- if ($info) {
- $file = $this->noImageFile;
- $w = ($info['w'] * (25.4/$this->dpi)); // 14 x 16px
- $h = ($info['h'] * (25.4/$this->dpi)); // 14 x 16px
- }
- }
- if(!$info) return false;
- //Automatic width and height calculation if needed
- if($w==0 and $h==0) {
-/*-- IMAGES-WMF --*/
- if ($info['type']=='wmf') {
- // WMF units are twips (1/20pt)
- // divide by 20 to get points
- // divide by k to get user units
- $w = abs($info['w'])/(20*_MPDFK);
- $h = abs($info['h']) / (20*_MPDFK);
- }
- else
-/*-- END IMAGES-WMF --*/
- if ($info['type']=='svg') {
- // returned SVG units are pts
- // divide by k to get user units (mm)
- $w = abs($info['w'])/_MPDFK;
- $h = abs($info['h']) /_MPDFK;
- }
- else {
- //Put image at default image dpi
- $w=($info['w']/_MPDFK) * (72/$this->img_dpi);
- $h=($info['h']/_MPDFK) * (72/$this->img_dpi);
- }
- }
- if($w==0) $w=abs($h*$info['w']/$info['h']);
- if($h==0) $h=abs($w*$info['h']/$info['w']);
-
-/*-- WATERMARK --*/
- if ($watermark) {
- $maxw = $this->w;
- $maxh = $this->h;
- // Size = D PF or array
- if (is_array($this->watermark_size)) {
- $w = $this->watermark_size[0];
- $h = $this->watermark_size[1];
- }
- else if (!is_string($this->watermark_size)) {
- $maxw -= $this->watermark_size*2;
- $maxh -= $this->watermark_size*2;
- $w = $maxw;
- $h=abs($w*$info['h']/$info['w']);
- if ($h > $maxh ) {
- $h = $maxh ; $w=abs($h*$info['w']/$info['h']);
- }
- }
- else if ($this->watermark_size == 'F') {
- if ($this->ColActive) { $maxw = $this->w - ($this->DeflMargin + $this->DefrMargin); }
- else { $maxw = $this->pgwidth; }
- $maxh = $this->h - ($this->tMargin + $this->bMargin);
- $w = $maxw;
- $h=abs($w*$info['h']/$info['w']);
- if ($h > $maxh ) {
- $h = $maxh ; $w=abs($h*$info['w']/$info['h']);
- }
- }
- else if ($this->watermark_size == 'P') { // Default P
- $w = $maxw;
- $h=abs($w*$info['h']/$info['w']);
- if ($h > $maxh ) {
- $h = $maxh ; $w=abs($h*$info['w']/$info['h']);
- }
- }
- // Automatically resize to maximum dimensions of page if too large
- if ($w > $maxw) {
- $w = $maxw;
- $h=abs($w*$info['h']/$info['w']);
- }
- if ($h > $maxh ) {
- $h = $maxh ;
- $w=abs($h*$info['w']/$info['h']);
- }
- // Position
- if (is_array($this->watermark_pos)) {
- $x = $this->watermark_pos[0];
- $y = $this->watermark_pos[1];
- }
- else if ($this->watermark_pos == 'F') { // centred on printable area
- if ($this->ColActive) { // *COLUMNS*
- if (($this->mirrorMargins) && (($this->page)%2==0)) { $xadj = $this->DeflMargin-$this->DefrMargin; } // *COLUMNS*
- else { $xadj = 0; } // *COLUMNS*
- $x = ($this->DeflMargin - $xadj + ($this->w - ($this->DeflMargin + $this->DefrMargin))/2) - ($w/2); // *COLUMNS*
- } // *COLUMNS*
- else { // *COLUMNS*
- $x = ($this->lMargin + ($this->pgwidth)/2) - ($w/2);
- } // *COLUMNS*
- $y = ($this->tMargin + ($this->h - ($this->tMargin + $this->bMargin))/2) - ($h/2);
- }
- else { // default P - centred on whole page
- $x = ($this->w/2) - ($w/2);
- $y = ($this->h/2) - ($h/2);
- }
-/*-- IMAGES-WMF --*/
- if ($info['type']=='wmf') {
- $sx = $w*_MPDFK / $info['w'];
- $sy = -$h*_MPDFK / $info['h'];
- $outstring = sprintf('q %.3F 0 0 %.3F %.3F %.3F cm /FO%d Do Q', $sx, $sy, $x*_MPDFK-$sx*$info['x'], (($this->h-$y)*_MPDFK)-$sy*$info['y'], $info['i']);
- }
- else
-/*-- END IMAGES-WMF --*/
- if ($info['type']=='svg') {
- $sx = $w*_MPDFK / $info['w'];
- $sy = -$h*_MPDFK / $info['h'];
- $outstring = sprintf('q %.3F 0 0 %.3F %.3F %.3F cm /FO%d Do Q', $sx, $sy, $x*_MPDFK-$sx*$info['x'], (($this->h-$y)*_MPDFK)-$sy*$info['y'], $info['i']);
- }
- else {
- $outstring = sprintf("q %.3F 0 0 %.3F %.3F %.3F cm /I%d Do Q",$w*_MPDFK,$h*_MPDFK,$x*_MPDFK,($this->h-($y+$h))*_MPDFK,$info['i']);
- }
-
- if ($this->watermarkImgBehind) {
- $outstring = $this->watermarkImgAlpha . "\n" . $outstring . "\n" . $this->SetAlpha(1, 'Normal', true) . "\n";
- $this->pages[$this->page] = preg_replace('/(___BACKGROUND___PATTERNS'.date('jY').')/', "\n".$outstring."\n".'\\1', $this->pages[$this->page]);
- }
- else { $this->_out($outstring); }
-
- return 0;
- } // end of IF watermark
-/*-- END WATERMARK --*/
-
- if ($constrain) {
- // Automatically resize to maximum dimensions of page if too large
- if (isset($this->blk[$this->blklvl]['inner_width']) && $this->blk[$this->blklvl]['inner_width']) { $maxw = $this->blk[$this->blklvl]['inner_width']; }
- else { $maxw = $this->pgwidth; }
- if ($w > $maxw) {
- $w = $maxw;
- $h=abs($w*$info['h']/$info['w']);
- }
- if ($h > $this->h - ($this->tMargin + $this->bMargin + 1)) { // see below - +10 to avoid drawing too close to border of page
- $h = $this->h - ($this->tMargin + $this->bMargin + 1) ;
- if ($this->fullImageHeight) { $h = $this->fullImageHeight; }
- $w=abs($h*$info['w']/$info['h']);
- }
-
-
- //Avoid drawing out of the paper(exceeding width limits).
- //if ( ($x + $w) > $this->fw ) {
- if ( ($x + $w) > $this->w ) {
- $x = $this->lMargin;
- $y += 5;
- }
-
- $changedpage = false;
- $oldcolumn = $this->CurrCol;
- //Avoid drawing out of the page.
- if($y+$h>$this->PageBreakTrigger and !$this->InFooter and $this->AcceptPageBreak()) {
- $this->AddPage($this->CurOrientation);
- // Added to correct for OddEven Margins
- $x=$x +$this->MarginCorrection;
- $y = $tMargin + $this->margin_header;
- $changedpage = true;
- }
-/*-- COLUMNS --*/
- // COLS
- // COLUMN CHANGE
- if ($this->CurrCol != $oldcolumn) {
- $y = $this->y0;
- $x += $this->ChangeColumn * ($this->ColWidth+$this->ColGap);
- $this->x += $this->ChangeColumn * ($this->ColWidth+$this->ColGap);
- }
-/*-- END COLUMNS --*/
- } // end of IF constrain
-
-/*-- IMAGES-WMF --*/
- if ($info['type']=='wmf') {
- $sx = $w*_MPDFK / $info['w'];
- $sy = -$h*_MPDFK / $info['h'];
- $outstring = sprintf('q %.3F 0 0 %.3F %.3F %.3F cm /FO%d Do Q', $sx, $sy, $x*_MPDFK-$sx*$info['x'], (($this->h-$y)*_MPDFK)-$sy*$info['y'], $info['i']);
- }
- else
-/*-- END IMAGES-WMF --*/
- if ($info['type']=='svg') {
- $sx = $w*_MPDFK / $info['w'];
- $sy = -$h*_MPDFK / $info['h'];
- $outstring = sprintf('q %.3F 0 0 %.3F %.3F %.3F cm /FO%d Do Q', $sx, $sy, $x*_MPDFK-$sx*$info['x'], (($this->h-$y)*_MPDFK)-$sy*$info['y'], $info['i']);
- }
- else {
- $outstring = sprintf("q %.3F 0 0 %.3F %.3F %.3F cm /I%d Do Q",$w*_MPDFK,$h*_MPDFK,$x*_MPDFK,($this->h-($y+$h))*_MPDFK,$info['i']);
- }
-
- if($paint) {
- $this->_out($outstring);
- if($link) $this->Link($x,$y,$w,$h,$link);
-
- // Avoid writing text on top of the image. // THIS WAS OUTSIDE THE if ($paint) bit!!!!!!!!!!!!!!!!
- $this->y = $y + $h;
- }
-
- //Return width-height array
- $sizesarray['WIDTH'] = $w;
- $sizesarray['HEIGHT'] = $h;
- $sizesarray['X'] = $x; //Position before painting image
- $sizesarray['Y'] = $y; //Position before painting image
- $sizesarray['OUTPUT'] = $outstring;
-
- $sizesarray['IMAGE_ID'] = $info['i'];
- $sizesarray['itype'] = $info['type'];
- $sizesarray['set-dpi'] = $info['set-dpi'];
- return $sizesarray;
-}
-
-
-
-//=============================================================
-//=============================================================
-//=============================================================
-//=============================================================
-//=============================================================
-/*-- HTML-CSS --*/
-
-function _getObjAttr($t) {
- $c = explode("\xbb\xa4\xac",$t,2);
- $c = explode(",",$c[1],2);
- foreach($c as $v) {
- $v = explode("=",$v,2);
- $sp[$v[0]] = $v[1];
- }
- return (unserialize($sp['objattr']));
-}
-
-
-function inlineObject($type,$x,$y,$objattr,$Lmargin,$widthUsed,$maxWidth,$lineHeight,$paint=false,$is_table=false)
-{
- if ($is_table) { $k = $this->shrin_k; } else { $k = 1; }
-
- // NB $x is only used when paint=true
- // Lmargin not used
- $w = 0;
- if (isset($objattr['width'])) { $w = $objattr['width']/$k; }
- $h = 0;
- if (isset($objattr['height'])) { $h = abs($objattr['height']/$k); }
- $widthLeft = $maxWidth - $widthUsed;
- $maxHeight = $this->h - ($this->tMargin + $this->bMargin + 10) ;
- if ($this->fullImageHeight) { $maxHeight = $this->fullImageHeight; }
- // For Images
- if (isset($objattr['border_left'])) {
- $extraWidth = ($objattr['border_left']['w'] + $objattr['border_right']['w'] + $objattr['margin_left']+ $objattr['margin_right'])/$k;
- $extraHeight = ($objattr['border_top']['w'] + $objattr['border_bottom']['w'] + $objattr['margin_top']+ $objattr['margin_bottom'])/$k;
-
- if ($type == 'image' || $type == 'barcode' || $type == 'textcircle') { // mPDF 5.3.A5
- $extraWidth += ($objattr['padding_left'] + $objattr['padding_right'])/$k;
- $extraHeight += ($objattr['padding_top'] + $objattr['padding_bottom'])/$k;
- }
- }
-
- if (!isset($objattr['vertical-align'])) { $objattr['vertical-align'] = 'M'; }
-
- if ($type == 'image' || (isset($objattr['subtype']) && $objattr['subtype'] == 'IMAGE')) {
- if (isset($objattr['itype']) && ($objattr['itype'] == 'wmf' || $objattr['itype'] == 'svg')) {
- $file = $objattr['file'];
- $info=$this->formobjects[$file];
- }
- else if (isset($objattr['file'])) {
- $file = $objattr['file'];
- $info=$this->images[$file];
- }
- }
- if ($type == 'annot' || $type == 'bookmark' || $type == 'indexentry' || $type == 'toc') {
- $w = 0.00001;
- $h = 0.00001;
- }
-
- // TEST whether need to skipline
- if (!$paint) {
- if ($type == 'hr') { // always force new line
- if (($y + $h + $lineHeight > $this->PageBreakTrigger) && !$this->InFooter && !$is_table) { return array(-2, $w ,$h ); } // New page + new line
- else { return array(1, $w ,$h ); } // new line
- }
- else {
- if ($widthUsed > 0 && $w > $widthLeft && (!$is_table || $type != 'image')) { // New line needed
- if (($y + $h + $lineHeight > $this->PageBreakTrigger) && !$this->InFooter) { return array(-2,$w ,$h ); } // New page + new line
- return array(1,$w ,$h ); // new line
- }
- else if ($widthUsed > 0 && $w > $widthLeft && $is_table) { // New line needed in TABLE
- return array(1,$w ,$h ); // new line
- }
- // Will fit on line but NEW PAGE REQUIRED
- else if (($y + $h > $this->PageBreakTrigger) && !$this->InFooter && !$is_table) { return array(-1,$w ,$h ); }
- else { return array(0,$w ,$h ); }
- }
- }
-
- if ($type == 'annot' || $type == 'bookmark' || $type == 'indexentry' || $type == 'toc') {
- $w = 0.00001;
- $h = 0.00001;
- $objattr['BORDER-WIDTH'] = 0;
- $objattr['BORDER-HEIGHT'] = 0;
- $objattr['BORDER-X'] = $x;
- $objattr['BORDER-Y'] = $y;
- $objattr['INNER-WIDTH'] = 0;
- $objattr['INNER-HEIGHT'] = 0;
- $objattr['INNER-X'] = $x;
- $objattr['INNER-Y'] = $y;
- }
-
- if ($type == 'image') {
- // Automatically resize to width remaining
- if ($w > $widthLeft && !$is_table) {
- $w = $widthLeft ;
- $h=abs($w*$info['h']/$info['w']);
- }
- $img_w = $w - $extraWidth ;
- $img_h = $h - $extraHeight ;
-
- $objattr['BORDER-WIDTH'] = $img_w + $objattr['padding_left']/$k + $objattr['padding_right']/$k + (($objattr['border_left']['w']/$k + $objattr['border_right']['w']/$k)/2) ;
- $objattr['BORDER-HEIGHT'] = $img_h + $objattr['padding_top']/$k + $objattr['padding_bottom']/$k + (($objattr['border_top']['w']/$k + $objattr['border_bottom']['w']/$k)/2) ;
- $objattr['BORDER-X'] = $x + $objattr['margin_left']/$k + (($objattr['border_left']['w']/$k)/2) ;
- $objattr['BORDER-Y'] = $y + $objattr['margin_top']/$k + (($objattr['border_top']['w']/$k)/2) ;
- $objattr['INNER-WIDTH'] = $img_w;
- $objattr['INNER-HEIGHT'] = $img_h;
- $objattr['INNER-X'] = $x + $objattr['padding_left']/$k + $objattr['margin_left']/$k + ($objattr['border_left']['w']/$k);
- $objattr['INNER-Y'] = $y + $objattr['padding_top']/$k + $objattr['margin_top']/$k + ($objattr['border_top']['w']/$k) ;
- $objattr['ID'] = $info['i'];
- }
-
- if ($type == 'input' && $objattr['subtype'] == 'IMAGE') {
- $img_w = $w - $extraWidth ;
- $img_h = $h - $extraHeight ;
- $objattr['BORDER-WIDTH'] = $img_w + (($objattr['border_left']['w']/$k + $objattr['border_right']['w']/$k)/2) ;
- $objattr['BORDER-HEIGHT'] = $img_h + (($objattr['border_top']['w']/$k + $objattr['border_bottom']['w']/$k)/2) ;
- $objattr['BORDER-X'] = $x + $objattr['margin_left']/$k + (($objattr['border_left']['w']/$k)/2) ;
- $objattr['BORDER-Y'] = $y + $objattr['margin_top']/$k + (($objattr['border_top']['w']/$k)/2) ;
- $objattr['INNER-WIDTH'] = $img_w;
- $objattr['INNER-HEIGHT'] = $img_h;
- $objattr['INNER-X'] = $x + $objattr['margin_left']/$k + ($objattr['border_left']['w']/$k);
- $objattr['INNER-Y'] = $y + $objattr['margin_top']/$k + ($objattr['border_top']['w']/$k) ;
- $objattr['ID'] = $info['i'];
- }
-
- if ($type == 'barcode' || $type == 'textcircle') { // mPDF 5.3.A5
- $b_w = $w - $extraWidth ;
- $b_h = $h - $extraHeight ;
- $objattr['BORDER-WIDTH'] = $b_w + $objattr['padding_left']/$k + $objattr['padding_right']/$k + (($objattr['border_left']['w']/$k + $objattr['border_right']['w']/$k)/2) ;
- $objattr['BORDER-HEIGHT'] = $b_h + $objattr['padding_top']/$k + $objattr['padding_bottom']/$k + (($objattr['border_top']['w']/$k + $objattr['border_bottom']['w']/$k)/2) ;
- $objattr['BORDER-X'] = $x + $objattr['margin_left']/$k + (($objattr['border_left']['w']/$k)/2) ;
- $objattr['BORDER-Y'] = $y + $objattr['margin_top']/$k + (($objattr['border_top']['w']/$k)/2) ;
- $objattr['INNER-X'] = $x + $objattr['padding_left']/$k + $objattr['margin_left']/$k + ($objattr['border_left']['w']/$k);
- $objattr['INNER-Y'] = $y + $objattr['padding_top']/$k + $objattr['margin_top']/$k + ($objattr['border_top']['w']/$k) ;
- $objattr['INNER-WIDTH'] = $b_w;
- $objattr['INNER-HEIGHT'] = $b_h;
- }
-
-
- if ($type == 'textarea') {
- // Automatically resize to width remaining
- if ($w > $widthLeft && !$is_table) {
- $w = $widthLeft ;
- }
- if (($y + $h > $this->PageBreakTrigger) && !$this->InFooter) {
- $h=$this->h - $y - $this->bMargin;
- }
- }
-
- if ($type == 'hr') {
- if ($is_table) {
- $objattr['INNER-WIDTH'] = $maxWidth * $objattr['W-PERCENT']/100;
- $objattr['width'] = $objattr['INNER-WIDTH'];
- $w = $maxWidth;
- }
- else {
- if ($w>$maxWidth) { $w = $maxWidth; }
- $objattr['INNER-WIDTH'] = $w;
- $w = $maxWidth;
- }
- }
-
-
-
- if (($type == 'select') || ($type == 'input' && ($objattr['subtype'] == 'TEXT' || $objattr['subtype'] == 'PASSWORD'))) {
- // Automatically resize to width remaining
- if ($w > $widthLeft && !$is_table) {
- $w = $widthLeft;
- }
- }
-
- if ($type == 'textarea' || $type == 'select' || $type == 'input') {
- if (isset($objattr['fontsize'])) $objattr['fontsize'] /= $k;
- if (isset($objattr['linewidth'])) $objattr['linewidth'] /= $k;
- }
-
- if (!isset($objattr['BORDER-Y'])) { $objattr['BORDER-Y'] = 0; }
- if (!isset($objattr['BORDER-X'])) { $objattr['BORDER-X'] = 0; }
- if (!isset($objattr['INNER-Y'])) { $objattr['INNER-Y'] = 0; }
- if (!isset($objattr['INNER-X'])) { $objattr['INNER-X'] = 0; }
-
- //Return width-height array
- $objattr['OUTER-WIDTH'] = $w;
- $objattr['OUTER-HEIGHT'] = $h;
- $objattr['OUTER-X'] = $x;
- $objattr['OUTER-Y'] = $y;
- return $objattr;
-}
-
-/*-- END HTML-CSS --*/
-
-//=============================================================
-//=============================================================
-//=============================================================
-//=============================================================
-//=============================================================
-
-function SetLineJoin($mode=0)
-{
- $s=sprintf('%d j',$mode);
- if($this->page>0 && ((isset($this->pageoutput[$this->page]['LineJoin']) && $this->pageoutput[$this->page]['LineJoin'] != $s) || !isset($this->pageoutput[$this->page]['LineJoin']) || $this->keep_block_together)) { $this->_out($s); }
- $this->pageoutput[$this->page]['LineJoin'] = $s;
-
-}
-function SetLineCap($mode=2) {
- $s=sprintf('%d J',$mode);
- if($this->page>0 && ((isset($this->pageoutput[$this->page]['LineCap']) && $this->pageoutput[$this->page]['LineCap'] != $s) || !isset($this->pageoutput[$this->page]['LineCap']) || $this->keep_block_together)) { $this->_out($s); }
- $this->pageoutput[$this->page]['LineCap'] = $s;
-
-}
-
-function SetDash($black=false,$white=false)
-{
- if($black and $white) $s=sprintf('[%.3F %.3F] 0 d',$black*_MPDFK,$white*_MPDFK);
- else $s='[] 0 d';
- if($this->page>0 && ((isset($this->pageoutput[$this->page]['Dash']) && $this->pageoutput[$this->page]['Dash'] != $s) || !isset($this->pageoutput[$this->page]['Dash']) || $this->keep_block_together)) { $this->_out($s); }
- $this->pageoutput[$this->page]['Dash'] = $s;
-
-}
-
-function SetDisplayPreferences($preferences) {
- // String containing any or none of /HideMenubar/HideToolbar/HideWindowUI/DisplayDocTitle/CenterWindow/FitWindow
- $this->DisplayPreferences .= $preferences;
-}
-
-
-function Ln($h='',$collapsible=0)
-{
-// Added collapsible to allow collapsible top-margin on new page
- //Line feed; default value is last cell height
- $this->x = $this->lMargin + $this->blk[$this->blklvl]['outer_left_margin'];
- if ($collapsible && ($this->y==$this->tMargin) && (!$this->ColActive)) { $h = 0; }
- if(is_string($h)) $this->y+=$this->lasth;
- else $this->y+=$h;
-}
-
-/*-- HTML-CSS --*/
-// $state = 0 normal; 1 top; 2 bottom; 3 top and bottom
-function DivLn($h,$level=-3,$move_y=true,$collapsible=false,$state=0) {
- // this->x is returned as it was
- // adds lines (y) where DIV bgcolors are filled in
- // allows .00001 as nominal height used for bookmarks/annotations etc.
- if ($collapsible && (sprintf("%0.4f", $this->y)==sprintf("%0.4f", $this->tMargin)) && (!$this->ColActive)) { return; }
- if ($collapsible && (sprintf("%0.4f", $this->y)==sprintf("%0.4f", $this->y0)) && ($this->ColActive) && $this->CurrCol == 0) { return; } // *COLUMNS*
-
- // Still use this method if columns or page-break-inside: avoid, as it allows repositioning later
- // otherwise, now uses PaintDivBB()
- if (!$this->ColActive && !$this->keep_block_together && !$this->kwt) {
- if ($move_y && !$this->ColActive) { $this->y += $h; }
- return;
- }
-
- if ($level == -3) { $level = $this->blklvl; }
- $firstblockfill = $this->GetFirstBlockFill();
- if ($firstblockfill && $this->blklvl > 0 && $this->blklvl >= $firstblockfill) {
- $last_x = 0;
- $last_w = 0;
- $last_fc = $this->FillColor;
- $bak_x = $this->x;
- $bak_h = $this->divheight;
- $this->divheight = 0; // Temporarily turn off divheight - as Cell() uses it to check for PageBreak
- for ($blvl=$firstblockfill;$blvl<=$level;$blvl++) {
- $this->SetBlockFill($blvl);
- $this->x = $this->lMargin + $this->blk[$blvl]['outer_left_margin'];
- if ($last_x != $this->lMargin + $this->blk[$blvl]['outer_left_margin'] || $last_w != $this->blk[$blvl]['width'] || $last_fc != $this->FillColor) {
- $x = $this->x;
- $this->Cell( ($this->blk[$blvl]['width']), $h, '', '', 0, '', 1);
- if (!$this->keep_block_together && !$this->writingHTMLheader && !$this->writingHTMLfooter) {
- $this->x = $x;
- // $state = 0 normal; 1 top; 2 bottom; 3 top and bottom
- if ($blvl == $this->blklvl) { $this->PaintDivLnBorder($state,$blvl,$h); }
- else { $this->PaintDivLnBorder(0,$blvl,$h); }
- }
- }
- $last_x = $this->lMargin + $this->blk[$blvl]['outer_left_margin'];
- $last_w = $this->blk[$blvl]['width'];
- $last_fc = $this->FillColor;
- }
- // Reset current block fill
- if (isset($this->blk[$this->blklvl]['bgcolorarray'])) {
- $bcor = $this->blk[$this->blklvl]['bgcolorarray'];
- $this->SetFColor($bcor);
- }
- $this->x = $bak_x;
- $this->divheight = $bak_h;
- }
- if ($move_y) { $this->y += $h; }
-}
-/*-- END HTML-CSS --*/
-
-
-function SetX($x)
-{
- //Set x position
- if($x >= 0) $this->x=$x;
- else $this->x = $this->w + $x;
-}
-
-function SetY($y)
-{
- //Set y position and reset x
- $this->x=$this->lMargin;
- if($y>=0)
- $this->y=$y;
- else
- $this->y=$this->h+$y;
-}
-
-function SetXY($x,$y)
-{
- //Set x and y positions
- $this->SetY($y);
- $this->SetX($x);
-}
-
-
-function Output($name='',$dest='')
-{
- //Output PDF to some destination
- if ($this->showStats) {
- echo 'Generated in '.sprintf('%.2F',(microtime(true) - $this->time0)).' seconds
';
- }
- //Finish document if necessary
- if ($this->progressBar) { $this->UpdateProgressBar(1,'100','Finished'); } // *PROGRESS-BAR*
- if($this->state < 3) $this->Close();
- if ($this->progressBar) { $this->UpdateProgressBar(2,'100','Finished'); } // *PROGRESS-BAR*
- // fn. error_get_last is only in PHP>=5.2
- if ($this->debug && function_exists('error_get_last') && error_get_last()) {
- $e = error_get_last();
- if (($e['type'] < 2048 && $e['type'] != 8) || (intval($e['type']) & intval(ini_get("error_reporting")))) {
- echo "Error message detected - PDF file generation aborted.
";
- echo $e['message'].' ';
- echo 'File: '.$e['file'].' ';
- echo 'Line: '.$e['line'].' ';
- exit;
- }
- }
-
-
- if (($this->PDFA || $this->PDFX) && $this->encrypted) { $this->Error("PDFA1-b or PDFX/1-a does not permit encryption of documents."); }
- if (count($this->PDFAXwarnings) && (($this->PDFA && !$this->PDFAauto) || ($this->PDFX && !$this->PDFXauto))) {
- if ($this->PDFA) {
- echo 'WARNING - This file could not be generated as it stands as a PDFA1-b compliant file.
';
- echo 'These issues can be automatically fixed by mPDF using $mpdf->PDFAauto=true;
';
- echo 'Action that mPDF will take to automatically force PDFA1-b compliance are shown in brackets.
';
- }
- else {
- echo 'WARNING - This file could not be generated as it stands as a PDFX/1-a compliant file.
';
- echo 'These issues can be automatically fixed by mPDF using $mpdf->PDFXauto=true;
';
- echo 'Action that mPDF will take to automatically force PDFX/1-a compliance are shown in brackets.
';
- }
- echo 'Warning(s) generated:
';
- $this->PDFAXwarnings = array_unique($this->PDFAXwarnings);
- foreach($this->PDFAXwarnings AS $w) {
- echo ''.$w.' ';
- }
- echo ' ';
- exit;
- }
-
- if ($this->showStats) {
- echo 'Compiled in '.sprintf('%.2F',(microtime(true) - $this->time0)).' seconds (total)
';
- echo 'Peak Memory usage '.number_format((memory_get_peak_usage(true)/(1024*1024)),2).' MB
';
- echo 'PDF file size '.number_format((strlen($this->buffer)/1024)).' kB
';
- echo 'Number of fonts '.count($this->fonts).'
';
- exit;
- }
-
-
- if(is_bool($dest)) $dest=$dest ? 'D' : 'F';
- $dest=strtoupper($dest);
- if($dest=='') {
- if($name=='') {
- $name='mpdf.pdf';
- $dest='I';
- }
- else { $dest='F'; }
- }
-
-/*-- PROGRESS-BAR --*/
- if ($this->progressBar && ($dest=='D' || $dest=='I')) {
- if($name=='') { $name='mpdf.pdf'; }
- $tempfile = '_tempPDF'.RAND(1,10000);
- //Save to local file
- $f=fopen(_MPDF_TEMP_PATH.$tempfile.'.pdf','wb');
- if(!$f) $this->Error('Unable to create temporary output file: '.$tempfile.'.pdf');
- fwrite($f,$this->buffer,strlen($this->buffer));
- fclose($f);
- $this->UpdateProgressBar(3,'','Finished');
-
- echo '
-
-
- ';
- exit;
- }
- else {
- if ($this->progressBar) { $this->UpdateProgressBar(3,'','Finished'); }
-/*-- END PROGRESS-BAR --*/
-
- switch($dest) {
- case 'I':
- if ($this->debug && !$this->allow_output_buffering && ob_get_contents()) { echo "Output has already been sent from the script - PDF file generation aborted.
"; exit; }
- //Send to standard output
- if(PHP_SAPI!='cli') {
- //We send to a browser
- header('Content-Type: application/pdf');
- if(headers_sent())
- $this->Error('Some data has already been output to browser, can\'t send PDF file');
- if (!isset($_SERVER['HTTP_ACCEPT_ENCODING']) OR empty($_SERVER['HTTP_ACCEPT_ENCODING'])) {
- // don't use length if server using compression
- header('Content-Length: '.strlen($this->buffer));
- }
- header('Content-disposition: inline; filename="'.$name.'"');
- header('Cache-Control: public, must-revalidate, max-age=0');
- header('Pragma: public');
- header('Expires: Sat, 26 Jul 1997 05:00:00 GMT');
- header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT');
- }
- echo $this->buffer;
- break;
- case 'D':
- //Download file
- header('Content-Description: File Transfer');
- if (headers_sent())
- $this->Error('Some data has already been output to browser, can\'t send PDF file');
- header('Content-Transfer-Encoding: binary');
- header('Cache-Control: public, must-revalidate, max-age=0');
- header('Pragma: public');
- header('Expires: Sat, 26 Jul 1997 05:00:00 GMT');
- header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT');
- header('Content-Type: application/force-download');
- header('Content-Type: application/octet-stream', false);
- header('Content-Type: application/download', false);
- header('Content-Type: application/pdf', false);
- if (!isset($_SERVER['HTTP_ACCEPT_ENCODING']) OR empty($_SERVER['HTTP_ACCEPT_ENCODING'])) {
- // don't use length if server using compression
- header('Content-Length: '.strlen($this->buffer));
- }
- header('Content-disposition: attachment; filename="'.$name.'"');
- echo $this->buffer;
- break;
- case 'F':
- //Save to local file
- $f=fopen($name,'wb');
- if(!$f) $this->Error('Unable to create output file: '.$name);
- fwrite($f,$this->buffer,strlen($this->buffer));
- fclose($f);
- break;
- case 'S':
- //Return as a string
- return $this->buffer;
- default:
- $this->Error('Incorrect output destination: '.$dest);
- }
-
- } // *PROGRESS-BAR*
- //======================================================================================================
- // mPDF 5.3.79
- // DELETE OLD TMP FILES - Housekeeping
- // Delete any files in tmp/ directory that are >1 hrs old
- $interval = 3600;
- if ($handle = opendir(preg_replace('/\/$/','',_MPDF_TEMP_PATH))) {
- while (false !== ($file = readdir($handle))) {
- if (((filemtime(_MPDF_TEMP_PATH.$file)+$interval) < time()) && ($file != "..") && ($file != ".")) {
- unlink(_MPDF_TEMP_PATH.$file);
- }
- }
- closedir($handle);
- }
- //==============================================================================================================
-
- return '';
-}
-
-
-// *****************************************************************************
-// *
-// Protected methods *
-// *
-// *****************************************************************************
-function _dochecks()
-{
- //Check for locale-related bug
- if(1.1==1)
- $this->Error('Don\'t alter the locale before including mPDF');
- //Check for decimal separator
- if(sprintf('%.1f',1.0)!='1.0')
- setlocale(LC_NUMERIC,'C');
-}
-
-function _begindoc()
-{
- //Start document
- $this->state=1;
- $this->_out('%PDF-'.$this->pdf_version);
- $this->_out('%'.chr(226).chr(227).chr(207).chr(211)); // 4 chars > 128 to show binary file
-}
-
-
-/*-- HTMLHEADERS-FOOTERS --*/
-function _puthtmlheaders() {
- $this->state=2;
- $nb=$this->page;
- for($n=1;$n<=$nb;$n++) {
- if ($this->mirrorMargins && $n%2==0) { $OE = 'E'; } // EVEN
- else { $OE = 'O'; }
- $this->page = $n;
- if (isset($this->saveHTMLHeader[$n][$OE])) {
- $html = $this->saveHTMLHeader[$n][$OE]['html'];
- $this->lMargin = $this->saveHTMLHeader[$n][$OE]['ml'];
- $this->rMargin = $this->saveHTMLHeader[$n][$OE]['mr'];
- $this->tMargin = $this->saveHTMLHeader[$n][$OE]['mh'];
- $this->bMargin = $this->saveHTMLHeader[$n][$OE]['mf'];
- $this->margin_header = $this->saveHTMLHeader[$n][$OE]['mh'];
- $this->margin_footer = $this->saveHTMLHeader[$n][$OE]['mf'];
- $this->w = $this->saveHTMLHeader[$n][$OE]['pw'];
- $this->h = $this->saveHTMLHeader[$n][$OE]['ph'];
- $rotate = (isset($this->saveHTMLHeader[$n][$OE]['rotate']) ? $this->saveHTMLHeader[$n][$OE]['rotate'] : null);
- $this->Reset();
- $this->pageoutput[$n] = array();
- $this->pgwidth = $this->w - $this->lMargin - $this->rMargin;
- $this->x = $this->lMargin;
- $this->y = $this->margin_header;
-
- $html = str_replace('{PAGENO}',$this->pagenumPrefix.$this->docPageNum($n).$this->pagenumSuffix,$html);
- $html = str_replace($this->aliasNbPgGp,$this->nbpgPrefix.$this->docPageNumTotal($n).$this->nbpgSuffix,$html ); // {nbpg}
- $html = str_replace($this->aliasNbPg,$nb,$html ); // {nb}
- $html = preg_replace('/\{DATE\s+(.*?)\}/e',"date('\\1')",$html );
-
- $this->HTMLheaderPageLinks = array();
- $this->HTMLheaderPageAnnots = array();
- $this->HTMLheaderPageForms = array();
- $this->pageBackgrounds = array();
-
- $this->writingHTMLheader = true;
- $this->WriteHTML($html , 4); // parameter 4 saves output to $this->headerbuffer
- $this->writingHTMLheader = false;
- $this->Reset();
- $this->pageoutput[$n] = array();
-
- $s = $this->PrintPageBackgrounds();
- $this->headerbuffer = $s . $this->headerbuffer;
- $os = '';
- if ($rotate) {
- $os .= sprintf('q 0 -1 1 0 0 %.3F cm ',($this->w*_MPDFK));
- }
- $os .= $this->headerbuffer ;
- if ($rotate) {
- $os .= ' Q' . "\n";
- }
-
- // Writes over the page background but behind any other output on page
- $os = preg_replace('/\\\\/','\\\\\\\\',$os);
- $this->pages[$n] = preg_replace('/(___HEADER___MARKER'.date('jY').')/', "\n".$os."\n".'\\1', $this->pages[$n]);
-
- $lks = $this->HTMLheaderPageLinks;
- foreach($lks AS $lk) {
- if ($rotate) {
- $lw = $lk[2];
- $lh = $lk[3];
- $lk[2] = $lh;
- $lk[3] = $lw; // swap width and height
- $ax = $lk[0]/_MPDFK;
- $ay = $lk[1]/_MPDFK;
- $bx = $ay-($lh/_MPDFK);
- $by = $this->w-$ax;
- $lk[0] = $bx*_MPDFK;
- $lk[1] = ($this->h-$by)*_MPDFK - $lw;
- }
- $this->PageLinks[$n][]=$lk;
- }
-/*-- FORMS --*/
- foreach($this->HTMLheaderPageForms AS $f) {
- $this->form->forms[$f['n']] = $f;
- }
-/*-- END FORMS --*/
-
-
- }
- if (isset($this->saveHTMLFooter[$n][$OE])) {
- $html = $this->saveHTMLFooter[$this->page][$OE]['html'];
- $this->lMargin = $this->saveHTMLFooter[$n][$OE]['ml'];
- $this->rMargin = $this->saveHTMLFooter[$n][$OE]['mr'];
- $this->tMargin = $this->saveHTMLFooter[$n][$OE]['mh'];
- $this->bMargin = $this->saveHTMLFooter[$n][$OE]['mf'];
- $this->margin_header = $this->saveHTMLFooter[$n][$OE]['mh'];
- $this->margin_footer = $this->saveHTMLFooter[$n][$OE]['mf'];
- $this->w = $this->saveHTMLFooter[$n][$OE]['pw'];
- $this->h = $this->saveHTMLFooter[$n][$OE]['ph'];
- $rotate = (isset($this->saveHTMLFooter[$n][$OE]['rotate']) ? $this->saveHTMLFooter[$n][$OE]['rotate'] : null);
- $this->Reset();
- $this->pageoutput[$n] = array();
- $this->pgwidth = $this->w - $this->lMargin - $this->rMargin;
- $this->x = $this->lMargin;
- $top_y = $this->y = $this->h - $this->margin_footer;
-
- // if bottom-margin==0, corrects to avoid division by zero
- if ($this->y == $this->h) { $top_y = $this->y = ($this->h - 0.1); }
-
- $html = str_replace('{PAGENO}',$this->pagenumPrefix.$this->docPageNum($n).$this->pagenumSuffix,$html);
- $html = str_replace($this->aliasNbPgGp,$this->nbpgPrefix.$this->docPageNumTotal($n).$this->nbpgSuffix,$html ); // {nbpg}
- $html = str_replace($this->aliasNbPg,$nb,$html ); // {nb}
- $html = preg_replace('/\{DATE\s+(.*?)\}/e',"date('\\1')",$html );
-
-
- $this->HTMLheaderPageLinks = array();
- $this->HTMLheaderPageAnnots = array();
- $this->HTMLheaderPageForms = array();
- $this->pageBackgrounds = array();
-
- $this->writingHTMLfooter = true;
- $this->InFooter = true;
- $this->WriteHTML($html , 4); // parameter 4 saves output to $this->headerbuffer
- $this->writingHTMLfooter = false;
- $this->InFooter = false;
- $this->Reset();
- $this->pageoutput[$n] = array();
-
- $fheight = $this->y - $top_y;
- $adj = -$fheight;
-
- $s = $this->PrintPageBackgrounds(-$adj);
- $this->headerbuffer = $s . $this->headerbuffer;
-
- $os = '';
- $os .= $this->StartTransform(true)."\n";
- if ($rotate) {
- $os .= sprintf('q 0 -1 1 0 0 %.3F cm ',($this->w*_MPDFK));
- }
- $os .= $this->transformTranslate(0, $adj, true)."\n";
- $os .= $this->headerbuffer ;
- if ($rotate) {
- $os .= ' Q' . "\n";
- }
- $os .= $this->StopTransform(true)."\n";
- // Writes over the page background but behind any other output on page
- $os = preg_replace('/\\\\/','\\\\\\\\',$os);
- $this->pages[$n] = preg_replace('/(___HEADER___MARKER'.date('jY').')/', "\n".$os."\n".'\\1', $this->pages[$n]);
-
- $lks = $this->HTMLheaderPageLinks;
- foreach($lks AS $lk) {
- $lk[1] -= $adj*_MPDFK;
- if ($rotate) {
- $lw = $lk[2];
- $lh = $lk[3];
- $lk[2] = $lh;
- $lk[3] = $lw; // swap width and height
-
- $ax = $lk[0]/_MPDFK;
- $ay = $lk[1]/_MPDFK;
- $bx = $ay-($lh/_MPDFK);
- $by = $this->w-$ax;
- $lk[0] = $bx*_MPDFK;
- $lk[1] = ($this->h-$by)*_MPDFK - $lw;
- }
- $this->PageLinks[$n][]=$lk;
- }
-/*-- FORMS --*/
- foreach($this->HTMLheaderPageForms AS $f) {
- $f['y'] += $adj;
- $this->form->forms[$f['n']] = $f;
- }
-/*-- END FORMS --*/
- }
- }
- $this->page=$nb;
- $this->state=1;
-}
-/*-- END HTMLHEADERS-FOOTERS --*/
-
-
-function _putpages()
-{
- $nb=$this->page;
- $filter=($this->compress) ? '/Filter /FlateDecode ' : '';
-
- if($this->DefOrientation=='P') {
- $defwPt=$this->fwPt;
- $defhPt=$this->fhPt;
- }
- else {
- $defwPt=$this->fhPt;
- $defhPt=$this->fwPt;
- }
- $annotid=(3+2*$nb);
-
- // Active Forms
- $totaladdnum = 0;
- for($n=1;$n<=$nb;$n++) {
- if (isset($this->PageLinks[$n])) { $totaladdnum += count($this->PageLinks[$n]); }
-/*-- ANNOTATIONS --*/
- if (isset($this->PageAnnots[$n])) {
- foreach ($this->PageAnnots[$n] as $k => $pl) {
- if (!empty($pl['opt']['popup']) || !empty($pl['opt']['file'])) { $totaladdnum += 2 ; }
- else { $totaladdnum++; }
- }
- }
-/*-- END ANNOTATIONS --*/
-
-/*-- FORMS --*/
- if ( count($this->form->forms) > 0 ) {
- $this->form->countPageForms($n, $totaladdnum);
- }
-/*-- END FORMS --*/
- }
-/*-- FORMS --*/
- // Make a note in the radio button group of the obj_id it will have
- $ctr = 0;
- if (count($this->form->form_radio_groups)) {
- foreach($this->form->form_radio_groups AS $name=>$frg) {
- $this->form->form_radio_groups[$name]['obj_id'] = $annotid + $totaladdnum + $ctr;
- $ctr++;
- }
- }
-/*-- END FORMS --*/
-
- // mPDF 5.3.99
- // Select unused fonts (usually default font)
- $unused = array();
- foreach($this->fonts as $fk=>$font) {
- if (!$font['used'] && ($font['type']=='TTF')) {
- $unused[] = $fk;
- }
- }
-
-
- for($n=1;$n<=$nb;$n++)
- {
- $thispage = $this->pages[$n]; // mPDF 5.3.99
- unset($this->pages[$n]); // mPDF 5.3.99
- if(isset($this->OrientationChanges[$n])) {
- $hPt=$this->pageDim[$n]['w']*_MPDFK;
- $wPt=$this->pageDim[$n]['h']*_MPDFK;
- $owidthPt_LR = $this->pageDim[$n]['outer_width_TB']*_MPDFK;
- $owidthPt_TB = $this->pageDim[$n]['outer_width_LR']*_MPDFK;
- }
- else {
- $wPt=$this->pageDim[$n]['w']*_MPDFK;
- $hPt=$this->pageDim[$n]['h']*_MPDFK;
- $owidthPt_LR = $this->pageDim[$n]['outer_width_LR']*_MPDFK;
- $owidthPt_TB = $this->pageDim[$n]['outer_width_TB']*_MPDFK;
- }
- // mPDF 5.3.99
- // Remove references to unused fonts (usually default font)
- foreach($unused as $fk) {
- if ($this->fonts[$fk]['sip'] || $this->fonts[$fk]['smp']) {
- foreach($this->fonts[$fk]['subsetfontids'] AS $k => $fid) {
- $thispage = preg_replace('/\s\/F'.$fid.' \d[\d.]* Tf\s/is',' ',$thispage);
- }
- }
- else {
- $thispage = preg_replace('/\s\/F'.$this->fonts[$fk]['i'].' \d[\d.]* Tf\s/is',' ',$thispage);
- }
- }
- //Replace number of pages
- if(!empty($this->aliasNbPg)) {
- if (!$this->onlyCoreFonts) { $s1 = $this->UTF8ToUTF16BE($this->aliasNbPg, false); } // mPDF 5.3.22
- $s2 = $this->aliasNbPg;
- if (!$this->onlyCoreFonts) { $r1 = $this->UTF8ToUTF16BE($nb, false); } // mPDF 5.3.22
- $r2 = $nb;
- if (preg_match_all('/{mpdfheadernbpg (C|R) ff=(\S*) fs=(\S*) fz=(.*?)}/',$thispage,$m)) {
- for($hi=0;$hiSetFont($hff,$hfst,$hfsz, false);
- $x1 = $this->GetStringWidth($this->aliasNbPg);
- $x2 = $this->GetStringWidth($nb);
- $xadj = $x1 - $x2;
- if ($pos=='C') { $xadj /= 2; }
- $rep = sprintf(' q 1 0 0 1 %.3F 0 cm ', $xadj*_MPDFK);
- $thispage = str_replace($m[0][$hi], $rep, $thispage);
- }
- }
- if (!$this->onlyCoreFonts) { $thispage=str_replace($s1,$r1,$thispage); } // mPDF 5.3.22
- $thispage=str_replace($s2,$r2,$thispage); // mPDF 5.3.22
-
- // And now for any SMP/SIP fonts subset using format
- $r = '';
- $nstr = "$nb";
- for($i=0;$ialiasNbPgHex,$r,$thispage);
-
- }
- //Replace number of pages in group
- if(!empty($this->aliasNbPgGp)) {
- if (!$this->onlyCoreFonts) { $s1 = $this->UTF8ToUTF16BE($this->aliasNbPgGp, false); } // mPDF 5.3.22
- $s2 = $this->aliasNbPgGp;
- $nbt = $this->docPageNumTotal($n);
- if (!$this->onlyCoreFonts) { $r1 = $this->UTF8ToUTF16BE($nbt, false); } // mPDF 5.3.22
- $r2 = $nbt;
- if (preg_match_all('/{mpdfheadernbpggp (C|R) ff=(\S*) fs=(\S*) fz=(.*?)}/',$thispage,$m)) {
- for($hi=0;$hiSetFont($hff,$hfst,$hfsz, false);
- $x1 = $this->GetStringWidth($this->aliasNbPgGp);
- $x2 = $this->GetStringWidth($nbt);
- $xadj = $x1 - $x2;
- if ($pos=='C') { $xadj /= 2; }
- $rep = sprintf(' q 1 0 0 1 %.3F 0 cm ', $xadj*_MPDFK);
- $thispage = str_replace($m[0][$hi], $rep, $thispage);
- }
- }
- if (!$this->onlyCoreFonts) { $thispage=str_replace($s1,$r1,$thispage); } // mPDF 5.3.22
- $thispage=str_replace($s2,$r2,$thispage);
-
- // And now for any SMP/SIP fonts subset using format
- $r = '';
- $nstr = "$nbt";
- for($i=0;$ialiasNbPgGpHex,$r,$thispage);
-
- }
- $thispage = preg_replace('/(\s*___BACKGROUND___PATTERNS'.date('jY').'\s*)/', " ", $thispage);
- $thispage = preg_replace('/(\s*___HEADER___MARKER'.date('jY').'\s*)/', " ", $thispage);
- $thispage = preg_replace('/(\s*___PAGE___START'.date('jY').'\s*)/', " ", $thispage);
- $thispage = preg_replace('/(\s*___TABLE___BACKGROUNDS'.date('jY').'\s*)/', " ", $thispage);
-
- //Page
- $this->_newobj();
- $this->_out('<_out('/Parent 1 0 R');
- if(isset($this->OrientationChanges[$n])) {
- $this->_out(sprintf('/MediaBox [0 0 %.3F %.3F]',$hPt,$wPt));
- //If BleedBox is defined, it must be larger than the TrimBox, but smaller than the MediaBox
- $bleedMargin = $this->pageDim[$n]['bleedMargin']*_MPDFK;
- if ($bleedMargin && ($owidthPt_TB || $owidthPt_LR)) {
- $x0 = $owidthPt_TB-$bleedMargin;
- $y0 = $owidthPt_LR-$bleedMargin;
- $x1 = $hPt-$owidthPt_TB+$bleedMargin;
- $y1 = $wPt-$owidthPt_LR+$bleedMargin;
- $this->_out(sprintf('/BleedBox [%.3F %.3F %.3F %.3F]', $x0, $y0, $x1, $y1));
- }
- $this->_out(sprintf('/TrimBox [%.3F %.3F %.3F %.3F]', $owidthPt_TB, $owidthPt_LR, ($hPt-$owidthPt_TB), ($wPt-$owidthPt_LR)));
- if (isset($this->OrientationChanges[$n]) && $this->displayDefaultOrientation) {
- if ($this->DefOrientation=='P') { $this->_out('/Rotate 270'); }
- else { $this->_out('/Rotate 90'); }
- }
- }
- //else if($wPt != $defwPt || $hPt != $defhPt) {
- else {
- $this->_out(sprintf('/MediaBox [0 0 %.3F %.3F]',$wPt,$hPt));
- $bleedMargin = $this->pageDim[$n]['bleedMargin']*_MPDFK;
- if ($bleedMargin && ($owidthPt_TB || $owidthPt_LR)) {
- $x0 = $owidthPt_LR-$bleedMargin;
- $y0 = $owidthPt_TB-$bleedMargin;
- $x1 = $wPt-$owidthPt_LR+$bleedMargin;
- $y1 = $hPt-$owidthPt_TB+$bleedMargin;
- $this->_out(sprintf('/BleedBox [%.3F %.3F %.3F %.3F]', $x0, $y0, $x1, $y1));
- }
- $this->_out(sprintf('/TrimBox [%.3F %.3F %.3F %.3F]', $owidthPt_LR, $owidthPt_TB, ($wPt-$owidthPt_LR), ($hPt-$owidthPt_TB)));
- }
- $this->_out('/Resources 2 0 R');
-
- // Important to keep in RGB colorSpace when using transparency
- if (!$this->PDFA && !$this->PDFX) {
- if ($this->restrictColorSpace == 3)
- $this->_out('/Group << /Type /Group /S /Transparency /CS /DeviceCMYK >> ');
- else if ($this->restrictColorSpace == 1)
- $this->_out('/Group << /Type /Group /S /Transparency /CS /DeviceGray >> ');
- else
- $this->_out('/Group << /Type /Group /S /Transparency /CS /DeviceRGB >> ');
- }
-
- $annotsnum = 0;
- if (isset($this->PageLinks[$n])) { $annotsnum += count($this->PageLinks[$n]); }
-/*-- ANNOTATIONS --*/
- if (isset($this->PageAnnots[$n])) {
- foreach ($this->PageAnnots[$n] as $k => $pl) {
- if (!empty($pl['opt']['popup']) || !empty($pl['opt']['file'])) { $annotsnum += 2 ; }
- else { $annotsnum++; }
- $this->PageAnnots[$n][$k]['pageobj'] = $this->n;
- }
- }
-/*-- END ANNOTATIONS --*/
-
-/*-- FORMS --*/
- // Active Forms
- $formsnum = 0;
- if ( count($this->form->forms) > 0 ) {
- foreach( $this->form->forms as $val ) {
- if ( $val['page'] == $n )
- $formsnum++;
- }
- }
-/*-- END FORMS --*/
- if ($annotsnum || $formsnum) {
- $s = '/Annots [ ';
- for($i=0;$i<$annotsnum;$i++) {
- $s .= ($annotid + $i) . ' 0 R ';
- }
- $annotid += $annotsnum;
-/*-- FORMS --*/
- if ( count($this->form->forms) > 0 ) {
- $this->form->addFormIds($n, $s, $annotid);
- }
-/*-- END FORMS --*/
- $s .= '] ';
- $this->_out($s);
- }
-
- $this->_out('/Contents '.($this->n+1).' 0 R>>');
- $this->_out('endobj');
-
- //Page content
- $this->_newobj();
- $p=($this->compress) ? gzcompress($thispage) : $thispage;
- $this->_out('<<'.$filter.'/Length '.strlen($p).'>>');
- $this->_putstream($p);
- $this->_out('endobj');
- }
- $this->_putannots($n);
-
- //Pages root
- $this->offsets[1]=strlen($this->buffer);
- $this->_out('1 0 obj');
- $this->_out('<_out($kids.']');
- $this->_out('/Count '.$nb);
- $this->_out(sprintf('/MediaBox [0 0 %.3F %.3F]',$defwPt,$defhPt));
- $this->_out('>>');
- $this->_out('endobj');
-}
-
-
-function _putannots($n) {
- $filter=($this->compress) ? '/Filter /FlateDecode ' : '';
- $nb=$this->page;
- for($n=1;$n<=$nb;$n++)
- {
- $annotobjs = array();
- if(isset($this->PageLinks[$n]) || isset($this->PageAnnots[$n]) || count($this->form->forms) > 0 ) {
- $wPt=$this->pageDim[$n]['w']*_MPDFK;
- $hPt=$this->pageDim[$n]['h']*_MPDFK;
-
- //Links
- if(isset($this->PageLinks[$n])) {
- foreach($this->PageLinks[$n] as $key => $pl) {
- $this->_newobj();
- $annot='';
- $rect=sprintf('%.3F %.3F %.3F %.3F',$pl[0],$pl[1],$pl[0]+$pl[2],$pl[1]-$pl[3]);
- $annot .= '<_UTF16BEtextstring($pl[4]);
- $annot .= ' /NM '.$this->_textstring(sprintf('%04u-%04u', $n, $key));
- $annot .= ' /M '.$this->_textstring('D:'.date('YmdHis'));
- $annot .= ' /Border [0 0 0]';
- // mPDF 5.3.16 5.3.52 Use this (instead of /Border) to specify border around link
- // $annot .= ' /BS <>';
- // $annot .= ' /C [1 0 0]'; // Color RGB
-
- if ($this->PDFA || $this->PDFX) { $annot .= ' /F 28'; }
- if (strpos($pl[4],'@')===0) {
- $p=substr($pl[4],1);
- // $h=isset($this->OrientationChanges[$p]) ? $wPt : $hPt;
- $htarg=$this->pageDim[$p]['h']*_MPDFK;
- $annot.=sprintf(' /Dest [%d 0 R /XYZ 0 %.3F null]>>',1+2*$p,$htarg);
- }
- else if(is_string($pl[4])) {
- $annot .= ' /A <_textstring($pl[4]).'>> >>';
- }
- else {
- $l=$this->links[$pl[4]];
- // may not be set if #link points to non-existent target
- if (isset($this->pageDim[$l[0]]['h'])) { $htarg=$this->pageDim[$l[0]]['h']*_MPDFK; }
- else { $htarg=$this->h*_MPDFK; } // doesn't really matter
- $annot.=sprintf(' /Dest [%d 0 R /XYZ 0 %.3F null]>>',1+2*$l[0],$htarg-$l[1]*_MPDFK);
- }
- $this->_out($annot);
- $this->_out('endobj');
- }
- }
-
-
-/*-- ANNOTATIONS --*/
- if(isset($this->PageAnnots[$n])) {
- foreach ($this->PageAnnots[$n] as $key => $pl) {
- if ($pl['opt']['file']) { $FileAttachment=true; }
- else { $FileAttachment=false; }
- $this->_newobj();
- $annot='';
- $pl['opt'] = array_change_key_case($pl['opt'], CASE_LOWER);
- $x = $pl['x'];
- if ($this->annotMargin <> 0 || $x==0 || $x<0) { // Odd page
- $x = ($wPt/_MPDFK) - $this->annotMargin;
- }
- $w = $h = 0;
- $a = $x * _MPDFK;
- $b = $hPt - ($pl['y'] * _MPDFK);
- $annot .= '<n+1).' 0 R>>';
- $annot .= '>>';
- }
- else {
- $annot .= '/Subtype /Text';
- }
- $rect = sprintf('%.3F %.3F %.3F %.3F', $a, $b-$h, $a+$w, $b);
- $annot .= '/Rect ['.$rect.']';
-
- // contents = description of file in free text
- $annot .= ' /Contents '.$this->_UTF16BEtextstring($pl['txt']);
- $annot .= ' /NM '.$this->_textstring(sprintf('%04u-%04u', $n, (2000 + $key)));
- $annot .= ' /M '.$this->_textstring('D:'.date('YmdHis'));
- $annot .= ' /CreationDate '.$this->_textstring('D:'.date('YmdHis'));
- $annot .= ' /Border [0 0 0]';
- if ($this->PDFA || $this->PDFX) {
- $annot .= ' /F 28';
- $annot .= ' /CA 1';
- }
- else if ($pl['opt']['ca']>0) { $annot .= ' /CA '.$pl['opt']['ca']; }
-
- $annotcolor = ' /C [';
- // mPDF 5.3.74
- if (isset($pl['opt']['c']) AND $pl['opt']['c']) {
- $col = $pl['opt']['c'];
- if ($col{0}==3 || $col{0}==5) { $annotcolor .= sprintf("%.3F %.3F %.3F", ord($col{1})/255,ord($col{2})/255,ord($col{3})/255); }
- else if ($col{0}==1) { $annotcolor .= sprintf("%.3F", ord($col{1})/255); }
- else if ($col{0}==4 || $col{0}==6) { $annotcolor .= sprintf("%.3F %.3F %.3F %.3F", ord($col{1})/100,ord($col{2})/100,ord($col{3})/100,ord($col{4})/100); }
- else { $annotcolor .= '1 1 0'; }
- }
- else { $annotcolor .= '1 1 0'; }
- $annotcolor .= ']';
- $annot .= $annotcolor;
- // Usually Author
- // Use as Title for fileattachment
- if (isset($pl['opt']['t']) AND is_string($pl['opt']['t'])) {
- $annot .= ' /T '.$this->_UTF16BEtextstring($pl['opt']['t']);
- }
- if ($FileAttachment) {
- $iconsapp = array('Paperclip', 'Graph', 'PushPin', 'Tag');
- }
- else { $iconsapp = array('Comment', 'Help', 'Insert', 'Key', 'NewParagraph', 'Note', 'Paragraph'); }
- if (isset($pl['opt']['icon']) AND in_array($pl['opt']['icon'], $iconsapp)) {
- $annot .= ' /Name /'.$pl['opt']['icon'];
- }
- else if ($FileAttachment) { $annot .= ' /Name /PushPin'; }
- else { $annot .= ' /Name /Note'; }
- if (!$FileAttachment) {
- // /Subj is PDF 1.5 spec.
- if (isset($pl['opt']['subj']) && !$this->PDFA && !$this->PDFX) {
- $annot .= ' /Subj '.$this->_UTF16BEtextstring($pl['opt']['subj']);
- }
- if (!empty($pl['opt']['popup'])) {
- $annot .= ' /Open true';
- $annot .= ' /Popup '.($this->n+1).' 0 R';
- }
- else { $annot .= ' /Open false'; }
- }
- $annot .= ' /P '.$pl['pageobj'].' 0 R';
- $annot .= '>>';
- $this->_out($annot);
- $this->_out('endobj');
-
- if ($FileAttachment) {
- $file = @file_get_contents($pl['opt']['file']) or die('mPDF Error: Cannot access file attachment - '.$pl['opt']['file']);
- $filestream = gzcompress($file);
- $this->_newobj();
- $this->_out('<_out('/Length '.strlen($filestream));
- $this->_out('/Filter /FlateDecode');
- $this->_out('>>');
- $this->_putstream($filestream);
- $this->_out('endobj');
- }
- else if (!empty($pl['opt']['popup'])) {
- $this->_newobj();
- $annot='';
- if (is_array($pl['opt']['popup']) && isset($pl['opt']['popup'][0])) { $x = $pl['opt']['popup'][0] * _MPDFK; }
- else { $x = $pl['x'] * _MPDFK; }
- if (is_array($pl['opt']['popup']) && isset($pl['opt']['popup'][1])) { $y = $hPt - ($pl['opt']['popup'][1] * _MPDFK); }
- else { $y = $hPt - ($pl['y'] * _MPDFK); }
- if (is_array($pl['opt']['popup']) && isset($pl['opt']['popup'][2])) { $w = $pl['opt']['popup'][2] * _MPDFK; }
- else { $w = 180; }
- if (is_array($pl['opt']['popup']) && isset($pl['opt']['popup'][3])) { $h = $pl['opt']['popup'][3] * _MPDFK; }
- else { $h = 120; }
- $rect = sprintf('%.3F %.3F %.3F %.3F', $x, $y-$h, $x+$w, $y);
- $annot .= '<_textstring('D:'.date('YmdHis'));
- if ($this->PDFA || $this->PDFX) { $annot .= ' /F 28'; }
- $annot .= ' /Parent '.($this->n-1).' 0 R';
- $annot .= '>>';
- $this->_out($annot);
- $this->_out('endobj');
- }
- }
- }
-/*-- END ANNOTATIONS --*/
-
-/*-- FORMS --*/
- // Active Forms
- if ( count($this->form->forms) > 0 ) {
- $this->form->_putFormItems($n, $hPt);
- }
-/*-- END FORMS --*/
- }
- }
-/*-- FORMS --*/
- // Active Forms - Radio Button Group entries
- // Output Radio Button Group form entries (radio_on_obj_id already determined)
- if (count($this->form->form_radio_groups)) {
- $this->form->_putRadioItems($n);
- }
-/*-- END FORMS --*/
-}
-
-
-/*-- ANNOTATIONS --*/
-function Annotation($text, $x=0, $y=0, $icon='Note', $author='', $subject='', $opacity=0, $colarray=false, $popup='', $file='') {
- // mPDF 5.3.94
- if (is_array($colarray) && count($colarray)==3) { $colarray = $this->ConvertColor('rgb('.$colarray[0].','.$colarray[1].','.$colarray[2].')'); }
- if ($colarray === false) { $colarray = $this->ConvertColor('yellow'); }
- if ($x==0) { $x = $this->x; }
- if ($y==0) { $y = $this->y; }
- $page = $this->page;
- if ($page < 1) { // Document has not been started - assume it's for first page
- $page = 1;
- if ($x==0) { $x = $this->lMargin; }
- if ($y==0) { $y = $this->tMargin; }
- }
-
- if ($this->PDFA || $this->PDFX) {
- if (($this->PDFA && !$this->PDFAauto) || ($this->PDFX && !$this->PDFXauto)) { $this->PDFAXwarnings[] = "Annotation markers cannot be semi-transparent in PDFA1-b or PDFX/1-a, so they may make underlying text unreadable. (Annotation markers moved to right margin)"; }
- $x = ($this->w) - $this->rMargin*0.66;
- }
- if (!$this->annotMargin) { $y -= $this->FontSize / 2; }
-
- if (!$opacity && $this->annotMargin) { $opacity = 1; }
- else if (!$opacity) { $opacity = $this->annotOpacity; }
-
- $an = array('txt' => $text, 'x' => $x, 'y' => $y, 'opt' => array('Icon'=>$icon, 'T'=>$author, 'Subj'=>$subject, 'C'=>$colarray, 'CA'=>$opacity, 'popup'=>$popup, 'file'=>$file));
-
- if ($this->keep_block_together) { // Save to array - don't write yet
- $this->ktAnnots[$this->page][]= $an;
- return;
- }
- else if ($this->table_rotate) {
- $this->tbrot_Annots[$this->page][]= $an;
- return;
- }
- else if ($this->kwt) {
- $this->kwt_Annots[$this->page][]= $an;
- return;
- }
- // mPDF 5.0
- if ($this->writingHTMLheader || $this->writingHTMLfooter) {
- $this->HTMLheaderPageAnnots[]= $an;
- return;
- }
- //Put an Annotation on the page
- $this->PageAnnots[$page][] = $an;
-/*-- COLUMNS --*/
- // Save cross-reference to Column buffer
- $ref = count($this->PageAnnots[$this->page])-1;
- $this->columnAnnots[$this->CurrCol][INTVAL($this->x)][INTVAL($this->y)] = $ref;
-/*-- END COLUMNS --*/
-}
-/*-- END ANNOTATIONS --*/
-
-
-function _putfonts() {
- $nf=$this->n;
- $mqr=$this->_getMQR();
- if ($mqr) { set_magic_quotes_runtime(0); }
- foreach($this->FontFiles as $fontkey=>$info) {
- // TrueType embedded
- if (isset($info['type']) && $info['type']=='TTF' && !$info['sip'] && !$info['smp']) {
- $used = true;
- $asSubset = false;
- foreach($this->fonts AS $k=>$f) {
- if ($f['fontkey'] == $fontkey && $f['type']=='TTF') {
- $used = $f['used'];
- if ($used) {
- $nChars = (ord($f['cw'][0]) << 8) + ord($f['cw'][1]);
- $usage = intval(count($f['subset'])*100 / $nChars);
- $fsize = $info['length1'];
- // Always subset the very large TTF files
- if ($fsize > ($this->maxTTFFilesize *1024)) { $asSubset = true; }
- else if ($usage < $this->percentSubset) { $asSubset = true; }
- }
- if ($this->PDFA || $this->PDFX) $asSubset = false; // mPDF 5.3.45
- $this->fonts[$k]['asSubset'] = $asSubset;
- break;
- }
- }
- if ($used && !$asSubset) {
- //Font file embedding
- $this->_newobj();
- $this->FontFiles[$fontkey]['n']=$this->n;
- $font='';
- $originalsize = $info['length1'];
- if ($this->repackageTTF || $this->fonts[$fontkey]['TTCfontID']>0) {
- // First see if there is a cached compressed file
- if (file_exists(_MPDF_TTFONTDATAPATH.$fontkey.'.ps.z')) {
- $f=fopen(_MPDF_TTFONTDATAPATH.$fontkey.'.ps.z','rb');
- if(!$f) { $this->Error('Font file .ps.z not found'); }
- while(!feof($f)) { $font .= fread($f, 2048); }
- fclose($f);
- include(_MPDF_TTFONTDATAPATH.$fontkey.'.ps.php'); // sets $originalsize (of repackaged font)
- }
- else {
- if (!class_exists('TTFontFile', false)) { include(_MPDF_PATH .'classes/ttfontsuni.php'); }
- $ttf = new TTFontFile();
- $font = $ttf->repackageTTF($this->FontFiles[$fontkey]['ttffile'], $this->fonts[$fontkey]['TTCfontID'], $this->debugfonts);
-
- $originalsize = strlen($font);
- $font = gzcompress($font);
- unset($ttf);
- if (is_writable(dirname(_MPDF_TTFONTDATAPATH.'x'))) {
- $fh = fopen(_MPDF_TTFONTDATAPATH.$fontkey.'.ps.z',"wb");
- fwrite($fh,$font,strlen($font));
- fclose($fh);
- $fh = fopen(_MPDF_TTFONTDATAPATH.$fontkey.'.ps.php',"wb");
- $len = "";
- fwrite($fh,$len,strlen($len));
- fclose($fh);
- }
- }
- }
- else {
- // First see if there is a cached compressed file
- if (file_exists(_MPDF_TTFONTDATAPATH.$fontkey.'.z')) {
- $f=fopen(_MPDF_TTFONTDATAPATH.$fontkey.'.z','rb');
- if(!$f) { $this->Error('Font file not found'); }
- while(!feof($f)) { $font .= fread($f, 2048); }
- fclose($f);
- }
- else {
- $f=fopen($this->FontFiles[$fontkey]['ttffile'],'rb');
- if(!$f) { $this->Error('Font file not found'); }
- while(!feof($f)) { $font .= fread($f, 2048); }
- fclose($f);
- $font = gzcompress($font);
- if (is_writable(dirname(_MPDF_TTFONTDATAPATH.'x'))) {
- $fh = fopen(_MPDF_TTFONTDATAPATH.$fontkey.'.z',"wb");
- fwrite($fh,$font,strlen($font));
- fclose($fh);
- }
- }
- }
-
- $this->_out('<_out('/Filter /FlateDecode');
- $this->_out('/Length1 '.$originalsize);
- $this->_out('>>');
- $this->_putstream($font);
- $this->_out('endobj');
- }
- }
- }
-
- $nfonts = count($this->fonts);
- $fctr = 1;
- foreach($this->fonts as $k=>$font) {
- //Font objects
- $type=$font['type'];
- $name=$font['name'];
- if ((!isset($font['used']) || !$font['used']) && $type=='TTF') { continue; }
- if ($this->progressBar) { $this->UpdateProgressBar(2,intval($fctr*100/$nfonts),'Writing Fonts'); $fctr++; } // *PROGRESS-BAR*
- if (isset($font['asSubset'])) { $asSubset = $font['asSubset']; }
- else { $asSubset = ''; }
-/*-- CJK-FONTS --*/
- if($type=='Type0') { // = Adobe CJK Fonts
- $this->fonts[$k]['n']=$this->n+1;
- $this->_newobj();
- $this->_out('<_putType0($font);
- }
- else
-/*-- END CJK-FONTS --*/
- if($type=='core') {
- //Standard font
- $this->fonts[$k]['n']=$this->n+1;
- if ($this->PDFA || $this->PDFX) { $this->Error('Core fonts are not allowed in PDF/A1-b or PDFX/1-a files (Times, Helvetica, Courier etc.)'); }
- $this->_newobj();
- $this->_out('<_out('/BaseFont /'.$name);
- $this->_out('/Subtype /Type1');
- if($name!='Symbol' && $name!='ZapfDingbats') {
- $this->_out('/Encoding /WinAnsiEncoding');
- }
- $this->_out('>>');
- $this->_out('endobj');
- }
- // TrueType embedded SUBSETS for SIP (CJK extB containing Supplementary Ideographic Plane 2)
- // Or Unicode Plane 1 - Supplementary Multilingual Plane
- else if ($type=='TTF' && ($font['sip'] || $font['smp'])) {
- if (!$font['used']) { continue; }
- $ssfaid="AA";
- if (!class_exists('TTFontFile', false)) { include(_MPDF_PATH .'classes/ttfontsuni.php'); }
- $ttf = new TTFontFile();
- for($sfid=0;$sfidfonts[$k]['n'][$sfid]=$this->n+1; // NB an array for subset
- $subsetname = 'MPDF'.$ssfaid.'+'.$font['name'];
- $ssfaid++;
- $subset = $font['subsets'][$sfid];
- unset($subset[0]);
- $ttfontstream = $ttf->makeSubsetSIP($font['ttffile'], $subset, $font['TTCfontID'], $this->debugfonts);
- $ttfontsize = strlen($ttfontstream);
- $fontstream = gzcompress($ttfontstream);
- $widthstring = '';
- $toUnistring = '';
- foreach($font['subsets'][$sfid] AS $cp=>$u) {
- $w = $this->_getCharWidth($font['cw'], $u);
- if ($w !== false) {
- $widthstring .= $w.' ';
- }
- else {
- $widthstring .= round($ttf->defaultWidth).' ';
- }
- if ($u > 65535) {
- $utf8 = chr(($u>>18)+240).chr((($u>>12)&63)+128).chr((($u>>6)&63)+128) .chr(($u&63)+128);
- $utf16 = mb_convert_encoding($utf8, 'UTF-16BE', 'UTF-8');
- $l1 = ord($utf16[0]);
- $h1 = ord($utf16[1]);
- $l2 = ord($utf16[2]);
- $h2 = ord($utf16[3]);
- $toUnistring .= sprintf("<%02s> <%02s%02s%02s%02s>\n", strtoupper(dechex($cp)), strtoupper(dechex($l1)), strtoupper(dechex($h1)), strtoupper(dechex($l2)), strtoupper(dechex($h2)));
- }
- else {
- $toUnistring .= sprintf("<%02s> <%04s>\n", strtoupper(dechex($cp)), strtoupper(dechex($u)));
- }
- }
-
- //Additional Type1 or TrueType font
- $this->_newobj();
- $this->_out('<_out('/BaseFont /'.$subsetname);
- $this->_out('/Subtype /TrueType');
- $this->_out('/FirstChar 0 /LastChar '.(count($font['subsets'][$sfid])-1));
- $this->_out('/Widths '.($this->n+1).' 0 R');
- $this->_out('/FontDescriptor '.($this->n+2).' 0 R');
- $this->_out('/ToUnicode '.($this->n + 3).' 0 R');
- $this->_out('>>');
- $this->_out('endobj');
-
- //Widths
- $this->_newobj();
- $this->_out('['.$widthstring.']');
- $this->_out('endobj');
-
- //Descriptor
- $this->_newobj();
- $s='<$v) {
- if ($kd == 'Flags') { $v = $v | 4; $v = $v & ~32; } // SYMBOLIC font flag
- $s.=' /'.$kd.' '.$v."\n";
- }
- $s.='/FontFile2 '.($this->n + 2).' 0 R';
- $this->_out($s.'>>');
- $this->_out('endobj');
-
- // ToUnicode
- // mPDF 5.3.35
- $this->_newobj();
- $toUni = "/CIDInit /ProcSet findresource begin\n";
- $toUni .= "12 dict begin\n";
- $toUni .= "begincmap\n";
- $toUni .= "/CIDSystemInfo\n";
- $toUni .= "<> def\n";
- $toUni .= "/CMapName /Adobe-Identity-UCS def\n";
- $toUni .= "/CMapType 2 def\n";
- $toUni .= "1 begincodespacerange\n";
- $toUni .= "<00> \n";
- $toUni .= "endcodespacerange\n";
- $toUni .= count($font['subsets'][$sfid])." beginbfchar\n";
- $toUni .= $toUnistring;
- $toUni .= "endbfchar\n";
- $toUni .= "endcmap\n";
- $toUni .= "CMapName currentdict /CMap defineresource pop\n";
- $toUni .= "end\n";
- $toUni .= "end\n";
-
- $this->_out('<>');
- $this->_putstream($toUni);
- $this->_out('endobj');
-
- //Font file
- $this->_newobj();
- $this->_out('<_out('/Filter /FlateDecode');
- $this->_out('/Length1 '.$ttfontsize);
- $this->_out('>>');
- $this->_putstream($fontstream);
- $this->_out('endobj');
- } // foreach subset
- unset($ttf);
- }
- // TrueType embedded SUBSETS or FULL
- else if ($type=='TTF') {
- $this->fonts[$k]['n']=$this->n+1;
- if ($asSubset ) {
- $ssfaid="A";
- if (!class_exists('TTFontFile', false)) { include(_MPDF_PATH .'classes/ttfontsuni.php'); }
- $ttf = new TTFontFile();
- $fontname = 'MPDFA'.$ssfaid.'+'.$font['name'];
- $subset = $font['subset'];
- unset($subset[0]);
- $ttfontstream = $ttf->makeSubset($font['ttffile'], $subset, $font['TTCfontID'], $this->debugfonts);
- $ttfontsize = strlen($ttfontstream);
- $fontstream = gzcompress($ttfontstream);
- $codeToGlyph = $ttf->codeToGlyph;
- unset($codeToGlyph[0]);
- }
- else { $fontname = $font['name']; }
- // Type0 Font
- // A composite font - a font composed of other fonts, organized hierarchically
- $this->_newobj();
- $this->_out('<_out('/Subtype /Type0');
- $this->_out('/BaseFont /'.$fontname.'');
- $this->_out('/Encoding /Identity-H');
- $this->_out('/DescendantFonts ['.($this->n + 1).' 0 R]');
- $this->_out('/ToUnicode '.($this->n + 2).' 0 R');
- $this->_out('>>');
- $this->_out('endobj');
-
- // CIDFontType2
- // A CIDFont whose glyph descriptions are based on TrueType font technology
- $this->_newobj();
- $this->_out('<_out('/Subtype /CIDFontType2');
- $this->_out('/BaseFont /'.$fontname.'');
- $this->_out('/CIDSystemInfo '.($this->n + 2).' 0 R');
- $this->_out('/FontDescriptor '.($this->n + 3).' 0 R');
- if (isset($font['desc']['MissingWidth'])){
- $this->_out('/DW '.$font['desc']['MissingWidth'].'');
- }
-
- if (!$asSubset && file_exists(_MPDF_TTFONTDATAPATH.$font['fontkey'].'.cw')) {
- $w = '';
- $w=file_get_contents(_MPDF_TTFONTDATAPATH.$font['fontkey'].'.cw');
- $this->_out($w);
- }
- else {
- $this->_putTTfontwidths($font, $asSubset, $ttf->maxUni);
- }
-
- $this->_out('/CIDToGIDMap '.($this->n + 4).' 0 R');
- $this->_out('>>');
- $this->_out('endobj');
-
- // ToUnicode
- // mPDF 5.3.35
- $this->_newobj();
- $toUni = "/CIDInit /ProcSet findresource begin\n";
- $toUni .= "12 dict begin\n";
- $toUni .= "begincmap\n";
- $toUni .= "/CIDSystemInfo\n";
- $toUni .= "<> def\n";
- $toUni .= "/CMapName /Adobe-Identity-UCS def\n";
- $toUni .= "/CMapType 2 def\n";
- $toUni .= "1 begincodespacerange\n";
- $toUni .= "<0000> \n";
- $toUni .= "endcodespacerange\n";
- $toUni .= "1 beginbfrange\n";
- $toUni .= "<0000> <0000>\n";
- $toUni .= "endbfrange\n";
- $toUni .= "endcmap\n";
- $toUni .= "CMapName currentdict /CMap defineresource pop\n";
- $toUni .= "end\n";
- $toUni .= "end\n";
- $this->_out('<>');
- $this->_putstream($toUni);
- $this->_out('endobj');
-
-
- // CIDSystemInfo dictionary
- $this->_newobj();
- $this->_out('<_out('/Ordering (UCS)');
- $this->_out('/Supplement 0');
- $this->_out('>>');
- $this->_out('endobj');
-
- // Font descriptor
- $this->_newobj();
- $this->_out('<_out('/FontName /'.$fontname);
- foreach($font['desc'] as $kd=>$v) {
- if ($asSubset && $kd == 'Flags') { $v = $v | 4; $v = $v & ~32; } // SYMBOLIC font flag
- $this->_out(' /'.$kd.' '.$v);
- }
- if ($font['panose']) {
- $this->_out(' /Style << /Panose <'.$font['panose'].'> >>');
- }
- if ($asSubset ) {
- $this->_out('/FontFile2 '.($this->n + 2).' 0 R');
- }
- else if ($font['fontkey']) {
- // obj ID of a stream containing a TrueType font program
- $this->_out('/FontFile2 '.$this->FontFiles[$font['fontkey']]['n'].' 0 R');
- }
- $this->_out('>>');
- $this->_out('endobj');
-
- // Embed CIDToGIDMap
- // A specification of the mapping from CIDs to glyph indices
- if ($asSubset ) {
- $cidtogidmap = '';
- $cidtogidmap = str_pad('', 256*256*2, "\x00");
- foreach($codeToGlyph as $cc=>$glyph) {
- $cidtogidmap[$cc*2] = chr($glyph >> 8);
- $cidtogidmap[$cc*2 + 1] = chr($glyph & 0xFF);
- }
- $cidtogidmap = gzcompress($cidtogidmap);
- }
- else {
- // First see if there is a cached CIDToGIDMapfile
- $cidtogidmap = '';
- if (file_exists(_MPDF_TTFONTDATAPATH.$font['fontkey'].'.cgm')) {
- $f=fopen(_MPDF_TTFONTDATAPATH.$font['fontkey'].'.cgm','rb');
- while(!feof($f)) { $cidtogidmap .= fread($f, 2048); }
- fclose($f);
- }
- else {
- if (!class_exists('TTFontFile', false)) { include(_MPDF_PATH .'classes/ttfontsuni.php'); }
- $ttf = new TTFontFile();
- $charToGlyph = $ttf->getCTG($font['ttffile'], $font['TTCfontID'], $this->debugfonts);
- $cidtogidmap = str_pad('', 256*256*2, "\x00");
- foreach($charToGlyph as $cc=>$glyph) {
- $cidtogidmap[$cc*2] = chr($glyph >> 8);
- $cidtogidmap[$cc*2 + 1] = chr($glyph & 0xFF);
- }
- unset($ttf);
- $cidtogidmap = gzcompress($cidtogidmap);
- if (is_writable(dirname(_MPDF_TTFONTDATAPATH.'x'))) {
- $fh = fopen(_MPDF_TTFONTDATAPATH.$font['fontkey'].'.cgm',"wb");
- fwrite($fh,$cidtogidmap,strlen($cidtogidmap));
- fclose($fh);
- }
- }
- }
- $this->_newobj();
- $this->_out('<_out('/Filter /FlateDecode');
- $this->_out('>>');
- $this->_putstream($cidtogidmap);
- $this->_out('endobj');
-
- //Font file
- if ($asSubset ) {
- $this->_newobj();
- $this->_out('<_out('/Filter /FlateDecode');
- $this->_out('/Length1 '.$ttfontsize);
- $this->_out('>>');
- $this->_putstream($fontstream);
- $this->_out('endobj');
- unset($ttf);
- }
- }
- else { $this->Error('Unsupported font type: '.$type.' ('.$name.')'); }
- }
- if ($mqr) { set_magic_quotes_runtime($mqr); }
-}
-
-
-
-function _putTTfontwidths(&$font, $asSubset, $maxUni) {
- if ($asSubset && file_exists(_MPDF_TTFONTDATAPATH.$font['fontkey'].'.cw127.php')) {
- include(_MPDF_TTFONTDATAPATH.$font['fontkey'].'.cw127.php') ;
- $startcid = 128;
- }
- else {
- $rangeid = 0;
- $range = array();
- $prevcid = -2;
- $prevwidth = -1;
- $interval = false;
- $startcid = 1;
- }
- if ($asSubset) { $cwlen = $maxUni + 1; }
- else { $cwlen = (strlen($font['cw'])/2); }
-
- // for each character
- for ($cid=$startcid; $cid<$cwlen; $cid++) {
- if ($cid==128 && $asSubset && (!file_exists(_MPDF_TTFONTDATAPATH.$font['fontkey'].'.cw127.php'))) {
- if (is_writable(dirname(_MPDF_TTFONTDATAPATH.'x'))) {
- $fh = fopen(_MPDF_TTFONTDATAPATH.$font['fontkey'].'.cw127.php',"wb");
- $cw127='";
- fwrite($fh,$cw127,strlen($cw127));
- fclose($fh);
- }
- }
- if ($font['cw'][$cid*2] == "\00" && $font['cw'][$cid*2+1] == "\00") { continue; }
- $width = (ord($font['cw'][$cid*2]) << 8) + ord($font['cw'][$cid*2+1]);
- if ($width == 65535) { $width = 0; }
- if ($asSubset && $cid > 255 && (!isset($font['subset'][$cid]) || !$font['subset'][$cid])) {
- continue;
- }
- if (!isset($font['dw']) || (isset($font['dw']) && $width != $font['dw'])) {
- if ($cid == ($prevcid + 1)) {
- // consecutive CID
- if ($width == $prevwidth) {
- if ($width == $range[$rangeid][0]) {
- $range[$rangeid][] = $width;
- } else {
- array_pop($range[$rangeid]);
- // new range
- $rangeid = $prevcid;
- $range[$rangeid] = array();
- $range[$rangeid][] = $prevwidth;
- $range[$rangeid][] = $width;
- }
- $interval = true;
- $range[$rangeid]['interval'] = true;
- } else {
- if ($interval) {
- // new range
- $rangeid = $cid;
- $range[$rangeid] = array();
- $range[$rangeid][] = $width;
- } else {
- $range[$rangeid][] = $width;
- }
- $interval = false;
- }
- } else {
- // new range
- $rangeid = $cid;
- $range[$rangeid] = array();
- $range[$rangeid][] = $width;
- $interval = false;
- }
- $prevcid = $cid;
- $prevwidth = $width;
- }
- }
- $w = $this->_putfontranges($range);
- $this->_out($w);
- if (!$asSubset) {
- if (is_writable(dirname(_MPDF_TTFONTDATAPATH.'x'))) {
- $fh = fopen(_MPDF_TTFONTDATAPATH.$font['fontkey'].'.cw',"wb");
- fwrite($fh,$w,strlen($w));
- fclose($fh);
- }
- }
-}
-
-function _putfontranges(&$range) {
- // optimize ranges
- $prevk = -1;
- $nextk = -1;
- $prevint = false;
- foreach ($range as $k => $ws) {
- $cws = count($ws);
- if (($k == $nextk) AND (!$prevint) AND ((!isset($ws['interval'])) OR ($cws < 4))) {
- if (isset($range[$k]['interval'])) {
- unset($range[$k]['interval']);
- }
- $range[$prevk] = array_merge($range[$prevk], $range[$k]);
- unset($range[$k]);
- } else {
- $prevk = $k;
- }
- $nextk = $k + $cws;
- if (isset($ws['interval'])) {
- if ($cws > 3) {
- $prevint = true;
- } else {
- $prevint = false;
- }
- unset($range[$k]['interval']);
- --$nextk;
- } else {
- $prevint = false;
- }
- }
- // output data
- $w = '';
- foreach ($range as $k => $ws) {
- if (count(array_count_values($ws)) == 1) {
- // interval mode is more compact
- $w .= ' '.$k.' '.($k + count($ws) - 1).' '.$ws[0];
- } else {
- // range mode
- $w .= ' '.$k.' [ '.implode(' ', $ws).' ]' . "\n";
- }
- }
- return '/W ['.$w.' ]';
-}
-
-
-function _putfontwidths(&$font, $cidoffset=0) {
- ksort($font['cw']);
- unset($font['cw'][65535]);
- $rangeid = 0;
- $range = array();
- $prevcid = -2;
- $prevwidth = -1;
- $interval = false;
- // for each character
- foreach ($font['cw'] as $cid => $width) {
- $cid -= $cidoffset;
- if (!isset($font['dw']) || (isset($font['dw']) && $width != $font['dw'])) {
- if ($cid == ($prevcid + 1)) {
- // consecutive CID
- if ($width == $prevwidth) {
- if ($width == $range[$rangeid][0]) {
- $range[$rangeid][] = $width;
- } else {
- array_pop($range[$rangeid]);
- // new range
- $rangeid = $prevcid;
- $range[$rangeid] = array();
- $range[$rangeid][] = $prevwidth;
- $range[$rangeid][] = $width;
- }
- $interval = true;
- $range[$rangeid]['interval'] = true;
- } else {
- if ($interval) {
- // new range
- $rangeid = $cid;
- $range[$rangeid] = array();
- $range[$rangeid][] = $width;
- } else {
- $range[$rangeid][] = $width;
- }
- $interval = false;
- }
- } else {
- // new range
- $rangeid = $cid;
- $range[$rangeid] = array();
- $range[$rangeid][] = $width;
- $interval = false;
- }
- $prevcid = $cid;
- $prevwidth = $width;
- }
- }
- $this->_out($this->_putfontranges($range));
-}
-
-
-/*-- CJK-FONTS --*/
-
-// from class PDF_Chinese CJK EXTENSIONS
-function _putType0(&$font)
-{
- //Type0
- $this->_out('/Subtype /Type0');
- $this->_out('/BaseFont /'.$font['name'].'-'.$font['CMap']);
- $this->_out('/Encoding /'.$font['CMap']);
- $this->_out('/DescendantFonts ['.($this->n+1).' 0 R]');
- $this->_out('>>');
- $this->_out('endobj');
- //CIDFont
- $this->_newobj();
- $this->_out('<_out('/Subtype /CIDFontType0');
- $this->_out('/BaseFont /'.$font['name']);
-
- $cidinfo = '/Registry '.$this->_textstring('Adobe');
- $cidinfo .= ' /Ordering '.$this->_textstring($font['registry']['ordering']);
- $cidinfo .= ' /Supplement '.$font['registry']['supplement'];
- $this->_out('/CIDSystemInfo <<'.$cidinfo.'>>');
-
- $this->_out('/FontDescriptor '.($this->n+1).' 0 R');
- if (isset($font['MissingWidth'])){
- $this->_out('/DW '.$font['MissingWidth'].'');
- }
- $this->_putfontwidths($font, 31);
- $this->_out('>>');
- $this->_out('endobj');
-
- //Font descriptor
- $this->_newobj();
- $s = '< $v) {
- if ($k != 'Style') {
- $s .= ' /'.$k.' '.$v.'';
- }
- }
- $this->_out($s.'>>');
- $this->_out('endobj');
-}
-/*-- END CJK-FONTS --*/
-
-
-
-function _putimages()
-{
- $filter=($this->compress) ? '/Filter /FlateDecode ' : '';
- reset($this->images);
- while(list($file,$info)=each($this->images)) {
- $this->_newobj();
- $this->images[$file]['n']=$this->n;
- $this->_out('<_out('/Subtype /Image');
- $this->_out('/Width '.$info['w']);
- $this->_out('/Height '.$info['h']);
- if (isset($info['masked'])) {
- $this->_out('/SMask '.($this->n - 1).' 0 R');
- }
- if($info['cs']=='Indexed') {
- if ($this->PDFX || ($this->PDFA && $this->restrictColorSpace==3)) { $this->Error("PDFA1-b and PDFX/1-a files do not permit using mixed colour space (".$file.")."); }
- $this->_out('/ColorSpace [/Indexed /DeviceRGB '.(strlen($info['pal'])/3-1).' '.($this->n+1).' 0 R]');
- }
- else {
- $this->_out('/ColorSpace /'.$info['cs']);
- if($info['cs']=='DeviceCMYK') {
- if ($this->PDFA && $this->restrictColorSpace!=3) { $this->Error("PDFA1-b does not permit Images using mixed colour space (".$file.")."); }
- if($info['type']=='jpg') { $this->_out('/Decode [1 0 1 0 1 0 1 0]'); }
- }
- else if ($info['cs']=='DeviceRGB' && ($this->PDFX || ($this->PDFA && $this->restrictColorSpace==3))) { $this->Error("PDFA1-b and PDFX/1-a files do not permit using mixed colour space (".$file.")."); }
- }
- $this->_out('/BitsPerComponent '.$info['bpc']);
- if (isset($info['f']) && $info['f']) { $this->_out('/Filter /'.$info['f']); }
- if(isset($info['parms'])) { $this->_out($info['parms']); }
- if(isset($info['trns']) and is_array($info['trns'])) {
- $trns='';
- for($i=0;$i_out('/Mask ['.$trns.']');
- }
- $this->_out('/Length '.strlen($info['data']).'>>');
- $this->_putstream($info['data']);
-
- unset($this->images[$file]['data']);
- $this->_out('endobj');
- //Palette
- if($info['cs']=='Indexed') {
- $this->_newobj();
- $pal=($this->compress) ? gzcompress($info['pal']) : $info['pal'];
- $this->_out('<<'.$filter.'/Length '.strlen($pal).'>>');
- $this->_putstream($pal);
- $this->_out('endobj');
- }
- }
-}
-
-function _putinfo()
-{
- $this->_out('/Producer '.$this->_UTF16BEtextstring('mPDF '.mPDF_VERSION));
- if(!empty($this->title))
- $this->_out('/Title '.$this->_UTF16BEtextstring($this->title));
- if(!empty($this->subject))
- $this->_out('/Subject '.$this->_UTF16BEtextstring($this->subject));
- if(!empty($this->author))
- $this->_out('/Author '.$this->_UTF16BEtextstring($this->author));
- if(!empty($this->keywords))
- $this->_out('/Keywords '.$this->_UTF16BEtextstring($this->keywords));
- if(!empty($this->creator))
- $this->_out('/Creator '.$this->_UTF16BEtextstring($this->creator));
-
- $z = date('O'); // +0200
- $offset = substr($z,0,3)."'".substr($z,3,2)."'";
- $this->_out('/CreationDate '.$this->_textstring(date('YmdHis').$offset));
- $this->_out('/ModDate '.$this->_textstring(date('YmdHis').$offset));
- if ($this->PDFX) {
- $this->_out('/Trapped/False');
- $this->_out('/GTS_PDFXVersion(PDF/X-1a:2003)');
- }
-}
-
-function _putmetadata() {
- $this->_newobj();
- $this->MetadataRoot = $this->n;
- $Producer = 'mPDF '.mPDF_VERSION;
- $z = date('O'); // +0200
- $offset = substr($z,0,3).':'.substr($z,3,2);
- $CreationDate = date('Y-m-d\TH:i:s').$offset; // 2006-03-10T10:47:26-05:00 2006-06-19T09:05:17Z
- $uuid = sprintf('%04x%04x-%04x-%04x-%04x-%04x%04x%04x', mt_rand(0, 0xffff), mt_rand(0, 0xffff),
- mt_rand(0, 0xffff), mt_rand(0, 0x0fff) | 0x4000, mt_rand(0, 0x3fff) | 0x8000,
- mt_rand(0, 0xffff), mt_rand(0, 0xffff), mt_rand(0, 0xffff) );
-
-
- $m = ''."\n"; // begin = FEFF BOM
- $m .= ' '."\n";
- $m .= ' '."\n";
- $m .= ' '."\n";
- $m .= ' '.$Producer.' '."\n";
- if(!empty($this->keywords)) { $m .= ' '.$this->keywords.' '."\n"; }
- $m .= ' '."\n";
-
- $m .= ' '."\n";
- $m .= ' '.$CreationDate.' '."\n";
- $m .= ' '.$CreationDate.' '."\n";
- $m .= ' '.$CreationDate.' '."\n";
- if(!empty($this->creator)) { $m .= ' '.$this->creator.' '."\n"; }
- $m .= ' '."\n";
-
- // DC elements
- $m .= ' '."\n";
- $m .= ' application/pdf '."\n";
- if(!empty($this->title)) {
- $m .= '
-
- '.$this->title.'
-
- '."\n";
- }
- if(!empty($this->keywords)) {
- $m .= '
-
- '.$this->keywords.'
-
- '."\n";
- }
- if(!empty($this->subject)) {
- $m .= '
-
- '.$this->subject.'
-
- '."\n";
- }
- if(!empty($this->author)) {
- $m .= '
-
- '.$this->author.'
-
- '."\n";
- }
- $m .= ' '."\n";
-
-
- // This bit is specific to PDFX-1a
- if ($this->PDFX) {
- $m .= ' '."\n";
- }
-
- // This bit is specific to PDFA-1b
- else if ($this->PDFA) {
- $m .= ' '."\n";
- $m .= ' 1 '."\n";
- $m .= ' B '."\n";
- $m .= ' 2005 '."\n";
- $m .= ' '."\n";
- }
-
- $m .= ' '."\n";
- $m .= ' uuid:'.$uuid.' '."\n";
- $m .= ' '."\n";
- $m .= ' '."\n";
- $m .= ' '."\n";
- $m .= str_repeat(str_repeat(' ',100)."\n",20); // 2-4kB whitespace padding required
- $m .= ''; // "r" read only
- $this->_out('<>');
- $this->_putstream($m);
- $this->_out('endobj');
-}
-
-function _putoutputintent() {
- $this->_newobj();
- $this->OutputIntentRoot = $this->n;
- $this->_out('<PDFA) {
- $this->_out('/S /GTS_PDFA1');
- if ($this->ICCProfile) {
- $this->_out('/Info ('.preg_replace('/_/',' ',$this->ICCProfile).')');
- $this->_out('/OutputConditionIdentifier (Custom)');
- $this->_out('/OutputCondition ()');
- }
- else {
- $this->_out('/Info (sRGB IEC61966-2.1)');
- $this->_out('/OutputConditionIdentifier (sRGB IEC61966-2.1)');
- $this->_out('/OutputCondition ()');
- }
- $this->_out('/DestOutputProfile '.($this->n+1).' 0 R');
- }
- else if ($this->PDFX) { // always a CMYK profile
- $this->_out('/S /GTS_PDFX');
- if ($this->ICCProfile) {
- $this->_out('/Info ('.preg_replace('/_/',' ',$this->ICCProfile).')');
- $this->_out('/OutputConditionIdentifier (Custom)');
- $this->_out('/OutputCondition ()');
- $this->_out('/DestOutputProfile '.($this->n+1).' 0 R');
- }
- else {
- $this->_out('/Info (CGATS TR 001)');
- $this->_out('/OutputConditionIdentifier (CGATS TR 001)');
- $this->_out('/OutputCondition (CGATS TR 001 (SWOP))');
- $this->_out('/RegistryName (http://www.color.org)');
- }
- }
- $this->_out('>>');
- $this->_out('endobj');
-
- if ($this->PDFX && !$this->ICCProfile) { return; } // no ICCProfile embedded
-
- $this->_newobj();
- if ($this->ICCProfile)
- $s = file_get_contents(_MPDF_PATH.'iccprofiles/'.$this->ICCProfile.'.icc');
- else
- $s = file_get_contents(_MPDF_PATH.'iccprofiles/sRGB_IEC61966-2-1.icc');
- if ($this->compress) { $s = gzcompress($s); }
- $this->_out('<<');
- if ($this->PDFX || ($this->PDFA && $this->restrictColorSpace == 3)) { $this->_out('/N 4'); }
- else { $this->_out('/N 3'); }
- if ($this->compress)
- $this->_out('/Filter /FlateDecode ');
- $this->_out('/Length '.strlen($s).'>>');
- $this->_putstream($s);
- $this->_out('endobj');
-}
-
-
-function _putcatalog() {
- $this->_out('/Type /Catalog');
- $this->_out('/Pages 1 0 R');
- if($this->ZoomMode=='fullpage') $this->_out('/OpenAction [3 0 R /Fit]');
- elseif($this->ZoomMode=='fullwidth') $this->_out('/OpenAction [3 0 R /FitH null]');
- elseif($this->ZoomMode=='real') $this->_out('/OpenAction [3 0 R /XYZ null null 1]');
- elseif(!is_string($this->ZoomMode)) $this->_out('/OpenAction [3 0 R /XYZ null null '.($this->ZoomMode/100).']');
- else $this->_out('/OpenAction [3 0 R /XYZ null null null]');
- if($this->LayoutMode=='single') $this->_out('/PageLayout /SinglePage');
- elseif($this->LayoutMode=='continuous') $this->_out('/PageLayout /OneColumn');
- elseif($this->LayoutMode=='twoleft') $this->_out('/PageLayout /TwoColumnLeft');
- elseif($this->LayoutMode=='tworight') $this->_out('/PageLayout /TwoColumnRight');
- elseif($this->LayoutMode=='two') {
- if ($this->mirrorMargins) { $this->_out('/PageLayout /TwoColumnRight'); }
- else { $this->_out('/PageLayout /TwoColumnLeft'); }
- }
-
-/*-- BOOKMARKS --*/
- if(count($this->BMoutlines)>0) {
- $this->_out('/Outlines '.$this->OutlineRoot.' 0 R');
- $this->_out('/PageMode /UseOutlines');
- }
-/*-- END BOOKMARKS --*/
- if(is_int(strpos($this->DisplayPreferences,'FullScreen'))) $this->_out('/PageMode /FullScreen');
-
- // Metadata
- if ($this->PDFA || $this->PDFX) {
- $this->_out('/Metadata '.$this->MetadataRoot.' 0 R');
- }
- // OutputIntents
- if ($this->PDFA || $this->PDFX || $this->ICCProfile) {
- $this->_out('/OutputIntents ['.$this->OutputIntentRoot.' 0 R]');
- }
-
-/*-- FORMS --*/
- if (count($this->form->forms)>0) {
- $this->form->_putFormsCatalog();
- }
-/*-- END FORMS --*/
- if ( isset($this->js) ) {
- $this->_out('/Names << /JavaScript '.($this->n_js).' 0 R >> ');
- }
-
- if($this->DisplayPreferences || $this->directionality == 'rtl' || $this->mirrorMargins) {
- $this->_out('/ViewerPreferences<<');
- if(is_int(strpos($this->DisplayPreferences,'HideMenubar'))) $this->_out('/HideMenubar true');
- if(is_int(strpos($this->DisplayPreferences,'HideToolbar'))) $this->_out('/HideToolbar true');
- if(is_int(strpos($this->DisplayPreferences,'HideWindowUI'))) $this->_out('/HideWindowUI true');
- if(is_int(strpos($this->DisplayPreferences,'DisplayDocTitle'))) $this->_out('/DisplayDocTitle true');
- if(is_int(strpos($this->DisplayPreferences,'CenterWindow'))) $this->_out('/CenterWindow true');
- if(is_int(strpos($this->DisplayPreferences,'FitWindow'))) $this->_out('/FitWindow true');
- // /PrintScaling is PDF 1.6 spec.
- if(is_int(strpos($this->DisplayPreferences,'NoPrintScaling')) && !$this->PDFA && !$this->PDFX)
- $this->_out('/PrintScaling /None');
- if($this->directionality == 'rtl') $this->_out('/Direction /R2L');
- // /Duplex is PDF 1.7 spec.
- if($this->mirrorMargins && !$this->PDFA && !$this->PDFX) {
- // if ($this->DefOrientation=='P') $this->_out('/Duplex /DuplexFlipShortEdge');
- $this->_out('/Duplex /DuplexFlipLongEdge'); // PDF v1.7+
- }
- $this->_out('>>');
- }
- if ($this->hasOC) { // mPDF 5.3.45
- // mPDF 5.3.41 Visibility
- $p=$this->n_ocg_print.' 0 R';
- $v=$this->n_ocg_view.' 0 R';
- $h=$this->n_ocg_hidden.' 0 R';
- $as="<> <>";
- $this->_out("/OCProperties <>>>");
- }
-}
-
-// Inactive function left for backwards compatability
-function SetUserRights($enable=true, $annots="", $form="", $signature="") {
- // Does nothing
-}
-
-function _enddoc() {
- if ($this->progressBar) { $this->UpdateProgressBar(2,'10','Writing Headers & Footers'); } // *PROGRESS-BAR*
- $this->_puthtmlheaders(); // *HTMLHEADERS-FOOTERS*
- if ($this->progressBar) { $this->UpdateProgressBar(2,'20','Writing Pages'); } // *PROGRESS-BAR*
- // Remove references to unused fonts (usually default font)
- foreach($this->fonts as $fk=>$font) {
- if (!$font['used'] && ($font['type']=='TTF')) {
- if ($font['sip'] || $font['smp']) {
- foreach($font['subsetfontids'] AS $k => $fid) {
- foreach($this->pages AS $pn=>$page) {
- $this->pages[$pn] = preg_replace('/\s\/F'.$fid.' \d[\d.]* Tf\s/is',' ',$this->pages[$pn]);
- }
- }
- }
- else {
- foreach($this->pages AS $pn=>$page) {
- $this->pages[$pn] = preg_replace('/\s\/F'.$font['i'].' \d[\d.]* Tf\s/is',' ',$this->pages[$pn]);
- }
- }
- }
- }
-
- $this->_putpages();
- if ($this->progressBar) { $this->UpdateProgressBar(2,'30','Writing document resources'); } // *PROGRESS-BAR*
-
- $this->_putresources();
- //Info
- $this->_newobj();
- $this->InfoRoot = $this->n;
- $this->_out('<<');
- if ($this->progressBar) { $this->UpdateProgressBar(2,'80','Writing document info'); } // *PROGRESS-BAR*
- $this->_putinfo();
- $this->_out('>>');
- $this->_out('endobj');
-
- // METADATA
- if ($this->PDFA || $this->PDFX) { $this->_putmetadata(); }
- // OUTPUTINTENT
- if ($this->PDFA || $this->PDFX || $this->ICCProfile) { $this->_putoutputintent(); }
-
- //Catalog
- $this->_newobj();
- $this->_out('<<');
- if ($this->progressBar) { $this->UpdateProgressBar(2,'90','Writing document catalog'); } // *PROGRESS-BAR*
- $this->_putcatalog();
- $this->_out('>>');
- $this->_out('endobj');
- //Cross-ref
- $o=strlen($this->buffer);
- $this->_out('xref');
- $this->_out('0 '.($this->n+1));
- $this->_out('0000000000 65535 f ');
- for($i=1; $i <= $this->n ; $i++)
- $this->_out(sprintf('%010d 00000 n ',$this->offsets[$i]));
- //Trailer
- $this->_out('trailer');
- $this->_out('<<');
- $this->_puttrailer();
- $this->_out('>>');
- $this->_out('startxref');
- $this->_out($o);
-
- $this->buffer .= '%%EOF';
- $this->state=3;
-/*-- IMPORTS --*/
-
- if ($this->enableImports && count($this->parsers) > 0) {
- foreach ($this->parsers as $k => $_){
- $this->parsers[$k]->closeFile();
- $this->parsers[$k] = null;
- unset($this->parsers[$k]);
- }
- }
-/*-- END IMPORTS --*/
-}
-
-function _beginpage($orientation,$mgl='',$mgr='',$mgt='',$mgb='',$mgh='',$mgf='',$ohname='',$ehname='',$ofname='',$efname='',$ohvalue=0,$ehvalue=0,$ofvalue=0,$efvalue=0,$pagesel='',$newformat='') {
- if (!($pagesel && $this->page==1 && (sprintf("%0.4f", $this->y)==sprintf("%0.4f", $this->tMargin)))) {
- $this->page++;
- $this->pages[$this->page]='';
- }
- $this->state=2;
- $resetHTMLHeadersrequired = false;
-
-
- if ($newformat) { $this->_setPageSize($newformat, $orientation); }
-/*-- CSS-PAGE --*/
- // Paged media (page-box)
-
- if ($pagesel || (isset($this->page_box['using']) && $this->page_box['using'])) {
- if ($pagesel || $this->page==1) { $first = true; }
- else { $first = false; }
- if ($this->mirrorMargins && ($this->page % 2==0)) { $oddEven = 'E'; }
- else { $oddEven = 'O'; }
- if ($pagesel) { $psel = $pagesel; }
- else if ($this->page_box['current']) { $psel = $this->page_box['current']; }
- else { $psel = ''; }
- list($orientation,$mgl,$mgr,$mgt,$mgb,$mgh,$mgf,$hname,$fname,$bg,$resetpagenum,$pagenumstyle,$suppress,$marks,$newformat) = $this->SetPagedMediaCSS($psel, $first, $oddEven);
- if ($this->mirrorMargins && ($this->page % 2==0)) {
- if ($hname) { $ehvalue = 1; $ehname = $hname; } else { $ehvalue = -1; }
- if ($fname) { $efvalue = 1; $efname = $fname; } else { $efvalue = -1; }
- }
- else {
- if ($hname) { $ohvalue = 1; $ohname = $hname; } else { $ohvalue = -1; }
- if ($fname) { $ofvalue = 1; $ofname = $fname; } else { $ofvalue = -1; }
- }
- if ($resetpagenum || $pagenumstyle || $suppress) {
- $this->PageNumSubstitutions[] = array('from'=>($this->page), 'reset'=> $resetpagenum, 'type'=>$pagenumstyle, 'suppress'=>$suppress);
- }
- // PAGED MEDIA - CROP / CROSS MARKS from @PAGE
- $this->show_marks = $marks;
-
- // Background color
- if (isset($bg['BACKGROUND-COLOR'])) {
- $cor = $this->ConvertColor($bg['BACKGROUND-COLOR']);
- if ($cor) {
- $this->bodyBackgroundColor = $cor;
- }
- }
- else { $this->bodyBackgroundColor = false; }
-
-/*-- BACKGROUNDS --*/
- if (isset($bg['BACKGROUND-GRADIENT'])) {
- $this->bodyBackgroundGradient = $bg['BACKGROUND-GRADIENT'];
- }
- else { $this->bodyBackgroundGradient = false; }
-
- // Tiling Patterns
- if (isset($bg['BACKGROUND-IMAGE']) && $bg['BACKGROUND-IMAGE']) {
- $ret = $this->SetBackground($bg, $this->pgwidth);
- if ($ret) { $this->bodyBackgroundImage = $ret; }
- }
- else { $this->bodyBackgroundImage = false; }
-/*-- END BACKGROUNDS --*/
-
- $this->page_box['current'] = $psel;
- $this->page_box['using'] = true;
- }
-/*-- END CSS-PAGE --*/
-
- //Page orientation
- if(!$orientation)
- $orientation=$this->DefOrientation;
- else {
- $orientation=strtoupper(substr($orientation,0,1));
- if($orientation!=$this->DefOrientation)
- $this->OrientationChanges[$this->page]=true;
- }
- if($orientation!=$this->CurOrientation || $newformat) {
-
- //Change orientation
- if($orientation=='P') {
- $this->wPt=$this->fwPt;
- $this->hPt=$this->fhPt;
- $this->w=$this->fw;
- $this->h=$this->fh;
- if (($this->forcePortraitHeaders || $this->forcePortraitMargins) && $this->DefOrientation=='P') {
- $this->tMargin = $this->orig_tMargin;
- $this->bMargin = $this->orig_bMargin;
- $this->DeflMargin = $this->orig_lMargin;
- $this->DefrMargin = $this->orig_rMargin;
- $this->margin_header = $this->orig_hMargin;
- $this->margin_footer = $this->orig_fMargin;
- }
- else { $resetHTMLHeadersrequired = true; } // *HTMLHEADERS-FOOTERS*
- }
- else {
- $this->wPt=$this->fhPt;
- $this->hPt=$this->fwPt;
- $this->w=$this->fh;
- $this->h=$this->fw;
- if (($this->forcePortraitHeaders || $this->forcePortraitMargins) && $this->DefOrientation=='P') {
- $this->tMargin = $this->orig_lMargin;
- $this->bMargin = $this->orig_rMargin;
- $this->DeflMargin = $this->orig_bMargin;
- $this->DefrMargin = $this->orig_tMargin;
- $this->margin_header = $this->orig_hMargin;
- $this->margin_footer = $this->orig_fMargin;
- }
- else { $resetHTMLHeadersrequired = true; } // *HTMLHEADERS-FOOTERS*
-
- }
- $this->CurOrientation=$orientation;
- $this->ResetMargins();
- $this->pgwidth = $this->w - $this->lMargin - $this->rMargin;
- $this->PageBreakTrigger=$this->h-$this->bMargin;
- }
-
- $this->pageDim[$this->page]['w']=$this->w ;
- $this->pageDim[$this->page]['h']=$this->h ;
-
- $this->pageDim[$this->page]['outer_width_LR'] = isset($this->page_box['outer_width_LR']) ? $this->page_box['outer_width_LR'] : 0;
- $this->pageDim[$this->page]['outer_width_TB'] = isset($this->page_box['outer_width_TB']) ? $this->page_box['outer_width_TB'] : 0;
- if (!isset($this->page_box['outer_width_LR']) && !isset($this->page_box['outer_width_TB'])) {
- $this->pageDim[$this->page]['bleedMargin'] = 0;
- }
- else if ($this->bleedMargin <= $this->page_box['outer_width_LR'] && $this->bleedMargin <= $this->page_box['outer_width_TB']) {
- $this->pageDim[$this->page]['bleedMargin'] = $this->bleedMargin;
- }
- else {
- $this->pageDim[$this->page]['bleedMargin'] = min($this->page_box['outer_width_LR'], $this->page_box['outer_width_TB'])-0.01;
- }
-
- // If Page Margins are re-defined
- // strlen()>0 is used to pick up (integer) 0, (string) '0', or set value
- if ((strlen($mgl)>0 && $this->DeflMargin != $mgl) || (strlen($mgr)>0 && $this->DefrMargin != $mgr) || (strlen($mgt)>0 && $this->tMargin != $mgt) || (strlen($mgb)>0 && $this->bMargin != $mgb) || (strlen($mgh)>0 && $this->margin_header!=$mgh) || (strlen($mgf)>0 && $this->margin_footer!=$mgf)) {
- if (strlen($mgl)>0) $this->DeflMargin = $mgl;
- if (strlen($mgr)>0) $this->DefrMargin = $mgr;
- if (strlen($mgt)>0) $this->tMargin = $mgt;
- if (strlen($mgb)>0) $this->bMargin = $mgb;
- if (strlen($mgh)>0) $this->margin_header=$mgh;
- if (strlen($mgf)>0) $this->margin_footer=$mgf;
- $this->ResetMargins();
- $this->SetAutoPageBreak($this->autoPageBreak,$this->bMargin);
- $this->pgwidth = $this->w - $this->lMargin - $this->rMargin;
- $resetHTMLHeadersrequired = true; // *HTMLHEADERS-FOOTERS*
- }
-
- $this->ResetMargins();
- $this->pgwidth = $this->w - $this->lMargin - $this->rMargin;
- $this->SetAutoPageBreak($this->autoPageBreak,$this->bMargin);
-
- // Reset column top margin
- $this->y0 = $this->tMargin;
-
- $this->x=$this->lMargin;
- $this->y=$this->tMargin;
- $this->FontFamily='';
-
- // HEADERS AND FOOTERS
- if ($ohvalue<0 || strtoupper($ohvalue)=='OFF') {
- $this->HTMLHeader = '';
- $this->headerDetails['odd'] = array();
- $resetHTMLHeadersrequired = true; // *HTMLHEADERS-FOOTERS*
- }
- else if ($ohname && $ohvalue>0) {
-/*-- HTMLHEADERS-FOOTERS --*/
- if (preg_match('/^html_(.*)$/i',$ohname,$n)) {
- if (isset($this->pageHTMLheaders[$n[1]])) { $this->HTMLHeader = $this->pageHTMLheaders[$n[1]]; }
- else { $this->HTMLHeader = ''; }
- $this->headerDetails['odd'] = array();
- $resetHTMLHeadersrequired = true;
- }
- else {
-/*-- END HTMLHEADERS-FOOTERS --*/
- if (isset($this->pageheaders[$ohname])) { $this->headerDetails['odd'] = $this->pageheaders[$ohname]; }
- else if ($ohname!='_default') { $this->headerDetails['odd'] = array(); }
- $this->HTMLHeader = '';
-/*-- HTMLHEADERS-FOOTERS --*/
- $resetHTMLHeadersrequired = false;
- }
-/*-- END HTMLHEADERS-FOOTERS --*/
- }
-
- if ($ehvalue<0 || strtoupper($ehvalue)=='OFF') {
- $this->HTMLHeaderE = '';
- $this->headerDetails['even'] = array();
- $resetHTMLHeadersrequired = true; // *HTMLHEADERS-FOOTERS*
- }
- else if ($ehname && $ehvalue>0) {
-/*-- HTMLHEADERS-FOOTERS --*/
- if (preg_match('/^html_(.*)$/i',$ehname,$n)) {
- if (isset($this->pageHTMLheaders[$n[1]])) { $this->HTMLHeaderE = $this->pageHTMLheaders[$n[1]]; }
- else { $this->HTMLHeaderE = ''; }
- $this->headerDetails['even'] = array();
- $resetHTMLHeadersrequired = true;
- }
- else {
-/*-- END HTMLHEADERS-FOOTERS --*/
- if (isset($this->pageheaders[$ehname])) { $this->headerDetails['even'] = $this->pageheaders[$ehname]; }
- else if ($ehname!='_default') { $this->headerDetails['even'] = array(); }
- $this->HTMLHeaderE = '';
-/*-- HTMLHEADERS-FOOTERS --*/
- $resetHTMLHeadersrequired = false;
- }
-/*-- END HTMLHEADERS-FOOTERS --*/
- }
-
- if ($ofvalue<0 || strtoupper($ofvalue)=='OFF') {
- $this->HTMLFooter = '';
- $this->footerDetails['odd'] = array();
- $resetHTMLHeadersrequired = true; // *HTMLHEADERS-FOOTERS*
- }
- else if ($ofname && $ofvalue>0) {
-/*-- HTMLHEADERS-FOOTERS --*/
- if (preg_match('/^html_(.*)$/i',$ofname,$n)) {
- if (isset($this->pageHTMLfooters[$n[1]])) { $this->HTMLFooter = $this->pageHTMLfooters[$n[1]]; }
- else { $this->HTMLFooter = ''; }
- $this->footerDetails['odd'] = array();
- $resetHTMLHeadersrequired = true;
- }
- else {
-/*-- END HTMLHEADERS-FOOTERS --*/
- if (isset($this->pagefooters[$ofname])) { $this->footerDetails['odd'] = $this->pagefooters[$ofname]; }
- else if ($ofname!='_default') { $this->footerDetails['odd'] = array(); }
- $this->HTMLFooter = '';
-/*-- HTMLHEADERS-FOOTERS --*/
- $resetHTMLHeadersrequired = true;
- }
-/*-- END HTMLHEADERS-FOOTERS --*/
- }
-
- if ($efvalue<0 || strtoupper($efvalue)=='OFF') {
- $this->HTMLFooterE = '';
- $this->footerDetails['even'] = array();
- $resetHTMLHeadersrequired = true; // *HTMLHEADERS-FOOTERS*
- }
- else if ($efname && $efvalue>0) {
-/*-- HTMLHEADERS-FOOTERS --*/
- if (preg_match('/^html_(.*)$/i',$efname,$n)) {
- if (isset($this->pageHTMLfooters[$n[1]])) { $this->HTMLFooterE = $this->pageHTMLfooters[$n[1]]; }
- else { $this->HTMLFooterE = ''; }
- $this->footerDetails['even'] = array();
- $resetHTMLHeadersrequired = true;
- }
- else {
-/*-- END HTMLHEADERS-FOOTERS --*/
- if (isset($this->pagefooters[$efname])) { $this->footerDetails['even'] = $this->pagefooters[$efname]; }
- else if ($efname!='_default') { $this->footerDetails['even'] = array(); }
- $this->HTMLFooterE = '';
-/*-- HTMLHEADERS-FOOTERS --*/
- $resetHTMLHeadersrequired = true;
- }
-/*-- END HTMLHEADERS-FOOTERS --*/
- }
-
-/*-- HTMLHEADERS-FOOTERS --*/
- if ($resetHTMLHeadersrequired) {
- $this->SetHTMLHeader($this->HTMLHeader );
- $this->SetHTMLHeader($this->HTMLHeaderE ,'E');
- $this->SetHTMLFooter($this->HTMLFooter );
- $this->SetHTMLFooter($this->HTMLFooterE ,'E');
- }
-/*-- END HTMLHEADERS-FOOTERS --*/
-
-
- if (($this->mirrorMargins) && (($this->page)%2==0)) { // EVEN
- $this->_setAutoHeaderHeight($this->headerDetails['even'], $this->HTMLHeaderE);
- $this->_setAutoFooterHeight($this->footerDetails['even'], $this->HTMLFooterE);
- }
- else { // ODD or DEFAULT
- $this->_setAutoHeaderHeight($this->headerDetails['odd'], $this->HTMLHeader);
- $this->_setAutoFooterHeight($this->footerDetails['odd'], $this->HTMLFooter);
- }
- // Reset column top margin
- $this->y0 = $this->tMargin;
-
- $this->x=$this->lMargin;
- $this->y=$this->tMargin;
-}
-
-
-
-function _setAutoHeaderHeight(&$det, &$htmlh) {
- if ($this->setAutoTopMargin=='pad') {
- if ($htmlh['h']) { $h = $htmlh['h']; }
- else if ($det) { $h = $this->_getHFHeight($det,'H'); }
- else { $h = 0; }
- $this->tMargin = $this->margin_header + $h + $this->orig_tMargin;
- }
- else if ($this->setAutoTopMargin=='stretch') {
- if ($htmlh['h']) { $h = $htmlh['h']; }
- else if ($det) { $h = $this->_getHFHeight($det,'H'); }
- else { $h = 0; }
- $this->tMargin = max($this->orig_tMargin, $this->margin_header + $h + $this->autoMarginPadding);
- }
-}
-
-
-function _setAutoFooterHeight(&$det, &$htmlf) {
- if ($this->setAutoBottomMargin=='pad') {
- if ($htmlf['h']) { $h = $htmlf['h']; }
- else if ($det) { $h = $this->_getHFHeight($det,'F'); }
- else { $h = 0; }
- $this->bMargin = $this->margin_footer + $h + $this->orig_bMargin;
- $this->PageBreakTrigger=$this->h-$this->bMargin ;
- }
- else if ($this->setAutoBottomMargin=='stretch') {
- if ($htmlf['h']) { $h = $htmlf['h']; }
- else if ($det) { $h = $this->_getHFHeight($det,'F'); }
- else { $h = 0; }
- $this->bMargin = max($this->orig_bMargin, $this->margin_footer + $h + $this->autoMarginPadding);
- $this->PageBreakTrigger=$this->h-$this->bMargin ;
- }
-}
-
-function _getHFHeight(&$det,$end) {
- $h = 0;
- if(count($det)) {
- foreach(array('L','C','R') AS $pos) {
- if (isset($det[$pos]['content']) && $det[$pos]['content']) {
- if (isset($det[$pos]['font-size']) && $det[$pos]['font-size']) { $hfsz = $det[$pos]['font-size']; }
- else { $hfsz = $this->default_font_size; }
- $h = max($h,$hfsz/_MPDFK);
- }
- }
- if ($det['line'] && $end=='H') { $h += $h/_MPDFK*$this->header_line_spacing; }
- else if ($det['line'] && $end=='F') { $h += $h/_MPDFK*$this->footer_line_spacing; }
- }
- return $h;
-}
-
-
-function _endpage() {
-/*-- CSS-IMAGE-FLOAT --*/
- $this->printfloatbuffer();
-/*-- END CSS-IMAGE-FLOAT --*/
-
- // mPDF 5.3.41
- if($this->visibility!='visible')
- $this->SetVisibility('visible');
-
- //End of page contents
- $this->state=1;
-}
-
-function _newobj($obj_id=false,$onlynewobj=false) {
- if (!$obj_id) {
- $obj_id = ++$this->n;
- }
- //Begin a new object
- if (!$onlynewobj) {
- $this->offsets[$obj_id] = strlen($this->buffer);
- $this->_out($obj_id.' 0 obj');
- $this->_current_obj_id = $obj_id; // for later use with encryption
- }
-}
-
-function _dounderline($x,$y,$txt) {
- // Now print line exactly where $y secifies - called from Text() and Cell() - adjust position there
- // WORD SPACING
- $w =($this->GetStringWidth($txt)*_MPDFK) + ($this->charspacing * mb_strlen( $txt, $this->mb_enc ))
- + ( $this->ws * mb_substr_count( $txt, ' ', $this->mb_enc ));
- //Draw a line
- return sprintf('%.3F %.3F m %.3F %.3F l S',$x*_MPDFK,($this->h-$y)*_MPDFK,($x*_MPDFK)+$w,($this->h-$y)*_MPDFK);
-}
-
-
-function _imageError($file, $firsttime, $msg) {
- // Save re-trying image URL's which have already failed
- $this->failedimages[$file] = true;
- if ($firsttime && ($this->showImageErrors || $this->debug)) {
- $this->Error("IMAGE Error (".$file."): ".$msg);
- }
- return false;
-}
-
-
-function _getImage(&$file, $firsttime=true, $allowvector=true, $orig_srcpath=false) {
- // firsttime i.e. whether to add to this->images - use false when calling iteratively
- // mPDF 5.3.95
- $file = urldecode($file);
- if ($orig_srcpath) { $orig_srcpath = urldecode($orig_srcpath); }
- // Image Data passed directly as var:varname
- if (preg_match('/var:\s*(.*)/',$file, $v)) {
- $data = $this->$v[1];
- $file = md5($data);
- }
- $ppUx = 0;
- if ($firsttime && preg_match('/(.*\/)([^\/]*)/',$file,$fm)) {
- if (strlen($fm[2])) { $file = $fm[1].preg_replace('/ /','%20',$fm[2]); }
- }
- if ($orig_srcpath && isset($this->images[$orig_srcpath])) { $file=$orig_srcpath; return $this->images[$orig_srcpath]; }
- if (isset($this->images[$file])) { return $this->images[$file]; }
- else if ($orig_srcpath && isset($this->formobjects[$orig_srcpath])) { $file=$orig_srcpath; return $this->formobjects[$file]; }
- else if (isset($this->formobjects[$file])) { return $this->formobjects[$file]; }
- // Save re-trying image URL's which have already failed
- else if ($firsttime && isset($this->failedimages[$file])) { return $this->_imageError($file, $firsttime, ''); }
- if (empty($data)) {
- $type = '';
- $data = '';
- $mqr=$this->_getMQR();
- if ($mqr) { set_magic_quotes_runtime(0); }
-
- if ($orig_srcpath && $this->basepathIsLocal && $check = @fopen($orig_srcpath,"rb")) {
- fclose($check);
- $file=$orig_srcpath;
- $data = file_get_contents($file);
- $type = $this->_imageTypeFromString($data);
- }
- if (!$data && $check = @fopen($file,"rb")) {
- fclose($check);
- $data = file_get_contents($file);
- $type = $this->_imageTypeFromString($data);
- }
- if ((!$data || !$type) && !ini_get('allow_url_fopen')) { // only worth trying if remote file and !ini_get('allow_url_fopen')
- $this->file_get_contents_by_socket($file, $data); // needs full url?? even on local (never needed for local)
- if ($data) { $type = $this->_imageTypeFromString($data); }
- }
- if ((!$data || !$type) && !ini_get('allow_url_fopen') && function_exists("curl_init")) {
- $this->file_get_contents_by_curl($file, $data); // needs full url?? even on local (never needed for local)
- if ($data) { $type = $this->_imageTypeFromString($data); }
- }
-
- if ($mqr) { set_magic_quotes_runtime($mqr); }
- }
- if (!$data) { return $this->_imageError($file, $firsttime, 'Could not find image file'); }
- if (empty($type)) { $type = $this->_imageTypeFromString($data); }
- if (($type == 'wmf' || $type == 'svg') && !$allowvector) { return $this->_imageError($file, $firsttime, 'WMF or SVG image file not supported in this context'); }
-
- // SVG
- if ($type == 'svg') {
- if (!class_exists('SVG', false)) { include(_MPDF_PATH .'classes/svg.php'); }
- $svg = new SVG($this);
- $family=$this->FontFamily;
- $style=$this->FontStyle;
- $size=$this->FontSizePt;
- $info = $svg->ImageSVG($data);
- //Restore font
- if($family) $this->SetFont($family,$style,$size,false);
- if (!$info) { return $this->_imageError($file, $firsttime, 'Error parsing SVG file'); }
- $info['type']='svg';
- $info['i']=count($this->formobjects)+1;
- $this->formobjects[$file]=$info;
- return $info;
- }
-
- // JPEG
- if ($type == 'jpeg' || $type == 'jpg') {
- $hdr = $this->_jpgHeaderFromString($data);
- if (!$hdr) { return $this->_imageError($file, $firsttime, 'Error parsing JPG header'); }
- $a = $this->_jpgDataFromHeader($hdr);
- $j = strpos($data,'JFIF');
- if ($j) {
- //Read resolution
- $unitSp=ord(substr($data,($j+7),1));
- if ($unitSp > 0) {
- $ppUx=$this->_twobytes2int(substr($data,($j+8),2)); // horizontal pixels per meter, usually set to zero
- if ($unitSp == 2) { // = dots per cm (if == 1 set as dpi)
- $ppUx=round($ppUx/10 *25.4);
- }
- }
- }
- if ($a[2] == 'DeviceCMYK' && (($this->PDFA && $this->restrictColorSpace!=3) || $this->restrictColorSpace==2)) {
- // convert to RGB image
- if (!function_exists("gd_info")) { $this->Error("JPG image may not use CMYK color space (".$file.")."); }
- if ($this->PDFA && !$this->PDFAauto) { $this->PDFAXwarnings[] = "JPG image may not use CMYK color space - ".$file." - (Image converted to RGB. NB This will alter the colour profile of the image.)"; }
- $im = @imagecreatefromstring($data);
- if ($im) {
- $tempfile = _MPDF_TEMP_PATH.'_tempImgPNG'.RAND(1,10000).'.png';
- imageinterlace($im, false);
- $check = @imagepng($im, $tempfile);
- if (!$check) { return $this->_imageError($file, $firsttime, 'Error creating temporary file ('.$tempfile.') whilst using GD library to parse JPG(CMYK) image'); }
- $info = $this->_getImage($tempfile, false);
- if (!$info) { return $this->_imageError($file, $firsttime, 'Error parsing temporary file ('.$tempfile.') created with GD library to parse JPG(CMYK) image'); }
- imagedestroy($im);
- unlink($tempfile);
- $info['type']='jpg';
- if ($firsttime) {
- $info['i']=count($this->images)+1;
- $this->images[$file]=$info;
- }
- return $info;
- }
- else { return $this->_imageError($file, $firsttime, 'Error creating GD image file from JPG(CMYK) image'); }
- }
- else if ($a[2] == 'DeviceRGB' && ($this->PDFX || $this->restrictColorSpace==3)) {
- // Convert to CMYK image stream - nominally returned as type='png'
- $info = $this->_convImage($data, $a[2], 'DeviceCMYK', $a[0], $a[1], $ppUx, false);
- if (($this->PDFA && !$this->PDFAauto) || ($this->PDFX && !$this->PDFXauto)) { $this->PDFAXwarnings[] = "JPG image may not use RGB color space - ".$file." - (Image converted to CMYK. NB This will alter the colour profile of the image.)"; }
- }
- else if (($a[2] == 'DeviceRGB' || $a[2] == 'DeviceCMYK') && $this->restrictColorSpace==1) {
- // Convert to Grayscale image stream - nominally returned as type='png'
- $info = $this->_convImage($data, $a[2], 'DeviceGray', $a[0], $a[1], $ppUx, false);
- }
- else {
- $info = array('w'=>$a[0],'h'=>$a[1],'cs'=>$a[2],'bpc'=>$a[3],'f'=>'DCTDecode','data'=>$data, 'type'=>'jpg');
- if ($ppUx) { $info['set-dpi'] = $ppUx; }
- }
- if (!$info) { return $this->_imageError($file, $firsttime, 'Error parsing or converting JPG image'); }
-
- if ($firsttime) {
- $info['i']=count($this->images)+1;
- $this->images[$file]=$info;
- }
- return $info;
- }
-
- // PNG
- else if ($type == 'png') {
- //Check signature
- if(substr($data,0,8)!=chr(137).'PNG'.chr(13).chr(10).chr(26).chr(10)) {
- return $this->_imageError($file, $firsttime, 'Error parsing PNG identifier');
- }
- //Read header chunk
- if(substr($data,12,4)!='IHDR') {
- return $this->_imageError($file, $firsttime, 'Incorrect PNG file (no IHDR block found)');
- }
-
- $w=$this->_fourbytes2int(substr($data,16,4));
- $h=$this->_fourbytes2int(substr($data,20,4));
- $bpc=ord(substr($data,24,1));
- $errpng = false;
- $pngalpha = false;
- if($bpc>8) { $errpng = 'not 8-bit depth'; }
- $ct=ord(substr($data,25,1));
- if($ct==0) { $colspace='DeviceGray'; }
- elseif($ct==2) { $colspace='DeviceRGB'; }
- elseif($ct==3) { $colspace='Indexed'; }
- elseif($ct==4) { $colspace='DeviceGray'; $errpng = 'alpha channel'; $pngalpha = true; }
- else { $colspace='DeviceRGB'; $errpng = 'alpha channel'; $pngalpha = true; }
- if(ord(substr($data,26,1))!=0) { $errpng = 'compression method'; }
- if(ord(substr($data,27,1))!=0) { $errpng = 'filter method'; }
- if(ord(substr($data,28,1))!=0) { $errpng = 'interlaced file'; }
- $j = strpos($data,'pHYs');
- if ($j) {
- //Read resolution
- $unitSp=ord(substr($data,($j+12),1));
- if ($unitSp == 1) {
- $ppUx=$this->_fourbytes2int(substr($data,($j+4),4)); // horizontal pixels per meter, usually set to zero
- $ppUx=round($ppUx/1000 *25.4);
- }
- }
- if (($colspace == 'DeviceRGB' || $colspace == 'Indexed') && ($this->PDFX || $this->restrictColorSpace==3)) {
- // Convert to CMYK image stream - nominally returned as type='png'
- $info = $this->_convImage($data, $colspace, 'DeviceCMYK', $w, $h, $ppUx, $pngalpha);
- if (($this->PDFA && !$this->PDFAauto) || ($this->PDFX && !$this->PDFXauto)) { $this->PDFAXwarnings[] = "PNG image may not use RGB color space - ".$file." - (Image converted to CMYK. NB This will alter the colour profile of the image.)"; }
- }
- else if (($colspace == 'DeviceRGB' || $colspace == 'Indexed') && $this->restrictColorSpace==1) {
- // Convert to Grayscale image stream - nominally returned as type='png'
- $info = $this->_convImage($data, $colspace, 'DeviceGray', $w, $h, $ppUx, $pngalpha);
- }
- else if (($this->PDFA || $this->PDFX) && $pngalpha) {
- // Remove alpha channel
- if ($this->restrictColorSpace==1) { // Grayscale
- $info = $this->_convImage($data, $colspace, 'DeviceGray', $w, $h, $ppUx, $pngalpha);
- }
- else if ($this->restrictColorSpace==3) { // CMYK
- $info = $this->_convImage($data, $colspace, 'DeviceCMYK', $w, $h, $ppUx, $pngalpha);
- }
- else if ($this->PDFA ) { // RGB
- $info = $this->_convImage($data, $colspace, 'DeviceRGB', $w, $h, $ppUx, $pngalpha);
- }
- if (($this->PDFA && !$this->PDFAauto) || ($this->PDFX && !$this->PDFXauto)) { $this->PDFAXwarnings[] = "Transparency (alpha channel) not permitted in PDFA or PDFX files - ".$file." - (Image converted to one without transparency.)"; }
- }
- else if ($errpng || $pngalpha) {
- if (function_exists('gd_info')) { $gd = gd_info(); }
- else {$gd = array(); }
- if (!isset($gd['PNG Support'])) { return $this->_imageError($file, $firsttime, 'GD library required for PNG image ('.$errpng.')'); }
- $im = imagecreatefromstring($data);
- if (!$im) { return $this->_imageError($file, $firsttime, 'Error creating GD image from PNG file ('.$errpng.')'); }
- $w = imagesx($im);
- $h = imagesy($im);
- if ($im) {
- $tempfile = _MPDF_TEMP_PATH.'_tempImgPNG'.RAND(1,10000).'.png';
- // Alpha channel set
- if ($pngalpha) {
- if ($this->PDFA) { $this->Error("PDFA1-b does not permit images with alpha channel transparency (".$file.")."); }
- $imgalpha = imagecreate($w, $h);
- // generate gray scale pallete
- for ($c = 0; $c < 256; ++$c) { ImageColorAllocate($imgalpha, $c, $c, $c); }
- // extract alpha channel
- $gammacorr = 2.2; // gamma correction // mPDF 5.3.07
- for ($xpx = 0; $xpx < $w; ++$xpx) {
- for ($ypx = 0; $ypx < $h; ++$ypx) {
- // mPDF 5.3.07
- //$colorindex = imagecolorat($im, $xpx, $ypx);
- //$col = imagecolorsforindex($im, $colorindex);
- //$gamma2 = (pow((((127 - $col['alpha']) * 255 / 127) / 255), $gammacorr) * 255);
- $alpha = (imagecolorat($im, $xpx, $ypx) & 0x7F000000) >> 24;
- if ($alpha < 127) {
- if ($alpha==0) { $gamma = 255; }
- else
- $gamma = (pow((((127 - $alpha) * 255 / 127) / 255), $gammacorr) * 255);
- imagesetpixel($imgalpha, $xpx, $ypx, $gamma);
- }
- }
- }
- // create temp alpha file
- $tempfile_alpha = _MPDF_TEMP_PATH.'_tempMskPNG'.RAND(1,10000).'.png';
- if (!is_writable($tempfile_alpha)) {
- ob_start();
- $check = @imagepng($imgalpha);
- if (!$check) { return $this->_imageError($file, $firsttime, 'Error creating temporary image object whilst using GD library to parse PNG image'); }
- imagedestroy($imgalpha);
- $this->_tempimg = ob_get_contents();
- $this->_tempimglnk = 'var:_tempimg';
- ob_end_clean();
- // extract image without alpha channel
- $imgplain = imagecreatetruecolor($w, $h);
- imagecopy($imgplain, $im, 0, 0, 0, 0, $w, $h);
- // create temp image file
- $minfo = $this->_getImage($this->_tempimglnk, false);
- if (!$minfo) { return $this->_imageError($file, $firsttime, 'Error parsing temporary file image object created with GD library to parse PNG image'); }
- ob_start();
- $check = @imagepng($imgplain);
- if (!$check) { return $this->_imageError($file, $firsttime, 'Error creating temporary image object whilst using GD library to parse PNG image'); }
- $this->_tempimg = ob_get_contents();
- $this->_tempimglnk = 'var:_tempimg';
- ob_end_clean();
- $info = $this->_getImage($this->_tempimglnk, false);
- if (!$info) { return $this->_imageError($file, $firsttime, 'Error parsing temporary file image object created with GD library to parse PNG image'); }
- imagedestroy($imgplain);
- $imgmask = count($this->images)+1;
- $minfo['cs'] = 'DeviceGray';
- $minfo['i']=$imgmask ;
- $this->images[$tempfile_alpha] = $minfo;
-
- }
- else {
- $check = @imagepng($imgalpha, $tempfile_alpha);
- if (!$check) { return $this->_imageError($file, $firsttime, 'Failed to create temporary image file ('.$tempfile_alpha.') parsing PNG image with alpha channel ('.$errpng.')'); }
- imagedestroy($imgalpha);
-
- // extract image without alpha channel
- $imgplain = imagecreatetruecolor($w, $h);
- imagecopy($imgplain, $im, 0, 0, 0, 0, $w, $h);
-
- // create temp image file
- $check = @imagepng($imgplain, $tempfile);
- if (!$check) { return $this->_imageError($file, $firsttime, 'Failed to create temporary image file ('.$tempfile.') parsing PNG image with alpha channel ('.$errpng.')'); }
- imagedestroy($imgplain);
- // embed mask image
- $minfo = $this->_getImage($tempfile_alpha, false);
- unlink($tempfile_alpha);
- if (!$minfo) { return $this->_imageError($file, $firsttime, 'Error parsing temporary file ('.$tempfile_alpha.') created with GD library to parse PNG image'); }
- $imgmask = count($this->images)+1;
- $minfo['cs'] = 'DeviceGray';
- $minfo['i']=$imgmask ;
- $this->images[$tempfile_alpha] = $minfo;
- // embed image, masked with previously embedded mask
- $info = $this->_getImage($tempfile, false);
- unlink($tempfile);
- if (!$info) { return $this->_imageError($file, $firsttime, 'Error parsing temporary file ('.$tempfile.') created with GD library to parse PNG image'); }
-
- }
- $info['masked'] = $imgmask;
- if ($ppUx) { $info['set-dpi'] = $ppUx; }
- $info['type']='png';
- if ($firsttime) {
- $info['i']=count($this->images)+1;
- $this->images[$file]=$info;
- }
- return $info;
- }
- else { // No alpha/transparency set
- imagealphablending($im, false);
- imagesavealpha($im, false);
- imageinterlace($im, false);
- if (!is_writable($tempfile)) {
- ob_start();
- $check = @imagepng($im);
- if (!$check) { return $this->_imageError($file, $firsttime, 'Error creating temporary image object whilst using GD library to parse PNG image'); }
- $this->_tempimg = ob_get_contents();
- $this->_tempimglnk = 'var:_tempimg';
- ob_end_clean();
- $info = $this->_getImage($this->_tempimglnk, false);
- if (!$info) { return $this->_imageError($file, $firsttime, 'Error parsing temporary file image object created with GD library to parse PNG image'); }
- imagedestroy($im);
- }
- else {
- $check = @imagepng($im, $tempfile );
- if (!$check) { return $this->_imageError($file, $firsttime, 'Failed to create temporary image file ('.$tempfile.') parsing PNG image ('.$errpng.')'); }
- imagedestroy($im);
- $info = $this->_getImage($tempfile, false) ;
- unlink($tempfile );
- if (!$info) { return $this->_imageError($file, $firsttime, 'Error parsing temporary file ('.$tempfile.') created with GD library to parse PNG image'); }
- }
- if ($ppUx) { $info['set-dpi'] = $ppUx; }
- $info['type']='png';
- if ($firsttime) {
- $info['i']=count($this->images)+1;
- $this->images[$file]=$info;
- }
- return $info;
- }
- }
- }
-
- else {
- $parms='/DecodeParms <>';
- //Scan chunks looking for palette, transparency and image data
- $pal='';
- $trns='';
- $pngdata='';
- $p = 33;
- do {
- $n=$this->_fourbytes2int(substr($data,$p,4)); $p += 4;
- $type=substr($data,$p,4); $p += 4;
- if($type=='PLTE') {
- //Read palette
- $pal=substr($data,$p,$n); $p += $n;
- $p += 4;
- }
- elseif($type=='tRNS') {
- //Read transparency info
- $t=substr($data,$p,$n); $p += $n;
- if($ct==0) $trns=array(ord(substr($t,1,1)));
- elseif($ct==2) $trns=array(ord(substr($t,1,1)),ord(substr($t,3,1)),ord(substr($t,5,1)));
- else
- {
- $pos=strpos($t,chr(0));
- if(is_int($pos)) $trns=array($pos);
- }
- $p += 4;
- }
- elseif($type=='IDAT') {
- $pngdata.=substr($data,$p,$n); $p += $n;
- $p += 4;
- }
- elseif($type=='IEND') { break; }
- else if (preg_match('/[a-zA-Z]{4}/',$type)) { $p += $n+4; }
- else { return $this->_imageError($file, $firsttime, 'Error parsing PNG image data'); }
- }
- while($n);
- if (!$pngdata) { return $this->_imageError($file, $firsttime, 'Error parsing PNG image data - no IDAT data found'); }
- if($colspace=='Indexed' and empty($pal)) { return $this->_imageError($file, $firsttime, 'Error parsing PNG image data - missing colour palette'); }
- $info = array('w'=>$w,'h'=>$h,'cs'=>$colspace,'bpc'=>$bpc,'f'=>'FlateDecode','parms'=>$parms,'pal'=>$pal,'trns'=>$trns,'data'=>$pngdata);
- $info['type']='png';
- if ($ppUx) { $info['set-dpi'] = $ppUx; }
- }
-
- if (!$info) { return $this->_imageError($file, $firsttime, 'Error parsing or converting PNG image'); }
-
- if ($firsttime) {
- $info['i']=count($this->images)+1;
- $this->images[$file]=$info;
- }
- return $info;
- }
-
- // GIF
- else if ($type == 'gif') {
- if (function_exists('gd_info')) { $gd = gd_info(); }
- else {$gd = array(); }
- if (isset($gd['GIF Read Support']) && $gd['GIF Read Support']) {
- $im = @imagecreatefromstring($data);
- if ($im) {
- $tempfile = _MPDF_TEMP_PATH.'_tempImgPNG'.RAND(1,10000).'.png';
- imagealphablending($im, false);
- imagesavealpha($im, false);
- imageinterlace($im, false);
- if (!is_writable($tempfile)) {
- ob_start();
- $check = @imagepng($im);
- if (!$check) { return $this->_imageError($file, $firsttime, 'Error creating temporary image object whilst using GD library to parse GIF image'); }
- $this->_tempimg = ob_get_contents();
- $this->_tempimglnk = 'var:_tempimg';
- ob_end_clean();
- $info = $this->_getImage($this->_tempimglnk, false);
- if (!$info) { return $this->_imageError($file, $firsttime, 'Error parsing temporary file image object created with GD library to parse GIF image'); }
- imagedestroy($im);
- }
- else {
- $check = @imagepng($im, $tempfile);
- if (!$check) { return $this->_imageError($file, $firsttime, 'Error creating temporary file ('.$tempfile.') whilst using GD library to parse GIF image'); }
- $info = $this->_getImage($tempfile, false);
- if (!$info) { return $this->_imageError($file, $firsttime, 'Error parsing temporary file ('.$tempfile.') created with GD library to parse GIF image'); }
- imagedestroy($im);
- unlink($tempfile);
- }
- $info['type']='gif';
- if ($firsttime) {
- $info['i']=count($this->images)+1;
- $this->images[$file]=$info;
- }
- return $info;
- }
- else { return $this->_imageError($file, $firsttime, 'Error creating GD image file from GIF image'); }
- }
-
- if (!class_exists('gif', false)) {
- include_once(_MPDF_PATH.'classes/gif.php');
- }
- $gif=new CGIF();
-
- $h=0;
- $w=0;
- $gif->loadFile($data, 0);
-
- if(isset($gif->m_img->m_gih->m_bLocalClr) && $gif->m_img->m_gih->m_bLocalClr) {
- $nColors = $gif->m_img->m_gih->m_nTableSize;
- $pal = $gif->m_img->m_gih->m_colorTable->toString();
- if($bgColor != -1) {
- $bgColor = $gif->m_img->m_gih->m_colorTable->colorIndex($bgColor);
- }
- $colspace='Indexed';
- } elseif(isset($gif->m_gfh->m_bGlobalClr) && $gif->m_gfh->m_bGlobalClr) {
- $nColors = $gif->m_gfh->m_nTableSize;
- $pal = $gif->m_gfh->m_colorTable->toString();
- if((isset($bgColor)) and $bgColor != -1) {
- $bgColor = $gif->m_gfh->m_colorTable->colorIndex($bgColor);
- }
- $colspace='Indexed';
- } else {
- $nColors = 0;
- $bgColor = -1;
- $colspace='DeviceGray';
- $pal='';
- }
-
- $trns='';
- if(isset($gif->m_img->m_bTrans) && $gif->m_img->m_bTrans && ($nColors > 0)) {
- $trns=array($gif->m_img->m_nTrans);
- }
- $gifdata=$gif->m_img->m_data;
- $w=$gif->m_gfh->m_nWidth;
- $h=$gif->m_gfh->m_nHeight;
- $gif->ClearData();
-
- if($colspace=='Indexed' and empty($pal)) {
- return $this->_imageError($file, $firsttime, 'Error parsing GIF image - missing colour palette');
- }
- if ($this->compress) {
- $gifdata=gzcompress($gifdata);
- $info = array( 'w'=>$w, 'h'=>$h, 'cs'=>$colspace, 'bpc'=>8, 'f'=>'FlateDecode', 'pal'=>$pal, 'trns'=>$trns, 'data'=>$gifdata);
- }
- else {
- $info = array( 'w'=>$w, 'h'=>$h, 'cs'=>$colspace, 'bpc'=>8, 'pal'=>$pal, 'trns'=>$trns, 'data'=>$gifdata);
- }
- $info['type']='gif';
- if ($firsttime) {
- $info['i']=count($this->images)+1;
- $this->images[$file]=$info;
- }
- return $info;
- }
-
-/*-- IMAGES-BMP --*/
- // BMP (Windows Bitmap)
- else if ($type == 'bmp') {
- // mPDF 5.3.89
- if (!class_exists('bmp', false)) { include(_MPDF_PATH.'classes/bmp.php'); }
- if (empty($this->bmp)) { $this->bmp = new bmp($this); }
- $info = $this->bmp->_getBMPimage($data, $file);
- if (isset($info['error'])) {
- return $this->_imageError($file, $firsttime, $info['error']);
- }
- if ($firsttime) {
- $info['i']=count($this->images)+1;
- $this->images[$file]=$info;
- }
- return $info;
- }
-/*-- END IMAGES-BMP --*/
-/*-- IMAGES-WMF --*/
- // WMF
- else if ($type == 'wmf') {
- // mPDF 5.3.89
- if (!class_exists('wmf', false)) { include(_MPDF_PATH.'classes/wmf.php'); }
- if (empty($this->wmf)) { $this->wmf = new wmf($this); }
- $wmfres = $this->wmf->_getWMFimage($data);
- if ($wmfres[0]==0) {
- if ($wmfres[1]) { return $this->_imageError($file, $firsttime, $wmfres[1]); }
- return $this->_imageError($file, $firsttime, 'Error parsing WMF image');
- }
- $info = array('x'=>$wmfres[2][0],'y'=>$wmfres[2][1],'w'=>$wmfres[3][0],'h'=>$wmfres[3][1],'data'=>$wmfres[1]);
- $info['i']=count($this->formobjects)+1;
- $info['type']='wmf';
- $this->formobjects[$file]=$info;
- return $info;
- }
-/*-- END IMAGES-WMF --*/
-
- // UNKNOWN TYPE - try GD imagecreatefromstring
- else {
- if (function_exists('gd_info')) { $gd = gd_info(); }
- else {$gd = array(); }
- if (isset($gd['PNG Support']) && $gd['PNG Support']) {
- $im = @imagecreatefromstring($data);
- if (!$im) { return $this->_imageError($file, $firsttime, 'Error parsing image file - image type not recognised, and not supported by GD imagecreate'); }
- $tempfile = _MPDF_TEMP_PATH.'_tempImgPNG'.RAND(1,10000).'.png';
- imagealphablending($im, false);
- imagesavealpha($im, false);
- imageinterlace($im, false);
- $check = @imagepng($im, $tempfile);
- if (!$check) { return $this->_imageError($file, $firsttime, 'Error creating temporary file ('.$tempfile.') whilst using GD library to parse unknown image type'); }
- $info = $this->_getImage($tempfile, false);
- imagedestroy($im);
- unlink($tempfile);
- if (!$info) { return $this->_imageError($file, $firsttime, 'Error parsing temporary file ('.$tempfile.') created with GD library to parse unknown image type'); }
- $info['type']='png';
- if ($firsttime) {
- $info['i']=count($this->images)+1;
- $this->images[$file]=$info;
- }
- return $info;
- }
- }
-
- return $this->_imageError($file, $firsttime, 'Error parsing image file - image type not recognised');
-}
-//==============================================================
-function _convImage(&$data, $colspace, $targetcs, $w, $h, $dpi, $mask) {
- if ($this->PDFA || $this->PDFX) { $mask=false; }
- $im = @imagecreatefromstring($data);
- $info = array();
- if ($im) {
- $imgdata = '';
- $mimgdata = '';
- $minfo = array();
- //Read transparency info
- $trns=array();
- $trnsrgb = false;
- if (!$this->PDFA && !$this->PDFX) {
- $p = strpos($data,'tRNS');
- if ($p) {
- $n=$this->_fourbytes2int(substr($data,($p-4),4));
- $t = substr($data,($p+4),$n);
- if ($colspace=='DeviceGray') {
- $trns=array(ord(substr($t,1,1)));
- $trnsrgb = array($trns[0],$trns[0],$trns[0]);
- }
- else if ($colspace=='DeviceRGB') {
- $trns=array(ord(substr($t,1,1)),ord(substr($t,3,1)),ord(substr($t,5,1)));
- $trnsrgb = $trns;
- if ($targetcs=='DeviceCMYK') {
- $col = $this->rgb2cmyk(array(3,$trns[0],$trns[1],$trns[2]));
- $c1 = intval($col[1]*2.55);
- $c2 = intval($col[2]*2.55);
- $c3 = intval($col[3]*2.55);
- $c4 = intval($col[4]*2.55);
- $trns = array($c1,$c2,$c3,$c4);
- }
- else if ($targetcs=='DeviceGray') {
- $c = intval(($trns[0] * .21) + ($trns[1] * .71) + ($trns[2] * .07));
- $trns = array($c);
- }
- }
- else { // Indexed
- $pos = strpos($t,chr(0));
- if (is_int($pos)) {
- $pal = imagecolorsforindex($im, $pos);
- $r = $pal['red'];
- $g = $pal['green'];
- $b = $pal['blue'];
- $trns=array($r,$g,$b); // ****
- $trnsrgb = $trns;
- if ($targetcs=='DeviceCMYK') {
- $col = $this->rgb2cmyk(array(3,$r,$g,$b));
- $c1 = intval($col[1]*2.55);
- $c2 = intval($col[2]*2.55);
- $c3 = intval($col[3]*2.55);
- $c4 = intval($col[4]*2.55);
- $trns = array($c1,$c2,$c3,$c4);
- }
- else if ($targetcs=='DeviceGray') {
- $c = intval(($r * .21) + ($g * .71) + ($b * .07));
- $trns = array($c);
- }
- }
- }
- }
- }
- for ($i = 0; $i < $h; $i++) {
- for ($j = 0; $j < $w; $j++) {
- $rgb = imagecolorat($im, $j, $i);
- $r = ($rgb >> 16) & 0xFF;
- $g = ($rgb >> 8) & 0xFF;
- $b = $rgb & 0xFF;
- if ($colspace=='Indexed') {
- $pal = imagecolorsforindex($im, $rgb);
- $r = $pal['red'];
- $g = $pal['green'];
- $b = $pal['blue'];
- }
-
- if ($targetcs=='DeviceCMYK') {
- $col = $this->rgb2cmyk(array(3,$r,$g,$b));
- $c1 = intval($col[1]*2.55);
- $c2 = intval($col[2]*2.55);
- $c3 = intval($col[3]*2.55);
- $c4 = intval($col[4]*2.55);
- if ($trnsrgb) {
- // original pixel was not set as transparent but processed color does match
- if ($trnsrgb!=array($r,$g,$b) && $trns==array($c1,$c2,$c3,$c4)) {
- if ($c4==0) { $c4=1; } else { $c4--; }
- }
- }
- $imgdata .= chr($c1).chr($c2).chr($c3).chr($c4);
- }
- else if ($targetcs=='DeviceGray') {
- $c = intval(($r * .21) + ($g * .71) + ($b * .07));
- if ($trnsrgb) {
- // original pixel was not set as transparent but processed color does match
- if ($trnsrgb!=array($r,$g,$b) && $trns==array($c)) {
- if ($c==0) { $c=1; } else { $c--; }
- }
- }
- $imgdata .= chr($c);
- }
- else if ($targetcs=='DeviceRGB') {
- $imgdata .= chr($r).chr($g).chr($b);
- }
- if ($mask) {
- $col = imagecolorsforindex($im, $rgb);
- $gammacorr = 2.2; // gamma correction
- $gamma = intval((pow((((127 - $col['alpha']) * 255 / 127) / 255), $gammacorr) * 255));
- $mimgdata .= chr($gamma);
- }
- }
- }
-
- if ($targetcs=='DeviceGray') { $ncols = 1; }
- else if ($targetcs=='DeviceRGB') { $ncols = 3; }
- else if ($targetcs=='DeviceCMYK') { $ncols = 4; }
-
- $imgdata = gzcompress($imgdata);
- $info = array('w'=>$w,'h'=>$h,'cs'=>$targetcs,'bpc'=>8,'f'=>'FlateDecode','data'=>$imgdata, 'type'=>'png',
- 'parms'=>'/DecodeParms <>');
- if ($dpi) { $info['set-dpi'] = $dpi; }
- if ($mask) {
- $mimgdata = gzcompress($mimgdata);
- $minfo = array('w'=>$w,'h'=>$h,'cs'=>'DeviceGray','bpc'=>8,'f'=>'FlateDecode','data'=>$mimgdata, 'type'=>'png',
- 'parms'=>'/DecodeParms <>');
- if ($dpi) { $minfo['set-dpi'] = $dpi; }
- $tempfile = '_tempImgPNG'.RAND(1,10000).'.png';
- $imgmask = count($this->images)+1;
- $minfo['i']=$imgmask ;
- $this->images[$tempfile] = $minfo;
- $info['masked'] = $imgmask;
- }
- else if ($trns) { $info['trns'] = $trns; }
- imagedestroy($im);
- }
- return $info;
-}
-
-
-
-
-function _fourbytes2int($s) {
- //Read a 4-byte integer from string
- return (ord($s[0])<<24) + (ord($s[1])<<16) + (ord($s[2])<<8) + ord($s[3]);
-}
-
-function _twobytes2int($s) {
- //Read a 2-byte integer from string
- return (ord(substr($s, 0, 1))<<8) + ord(substr($s, 1, 1));
-}
-
-function _jpgHeaderFromString(&$data) {
- $p = 4;
- $p += $this->_twobytes2int(substr($data, $p, 2)); // Length of initial marker block
- $marker = substr($data, $p, 2);
- while($marker != chr(255).chr(192) && $marker != chr(255).chr(194) && $p_twobytes2int(substr($data, $p+2, 2))) + 2; // Length of marker block
- $marker = substr($data, $p, 2);
- }
- if ($marker != chr(255).chr(192) && $marker != chr(255).chr(194)) { return false; }
- return substr($data, $p+2, 10);
-}
-
-function _jpgDataFromHeader($hdr) {
- $bpc = ord(substr($hdr, 2, 1));
- if (!$bpc) { $bpc = 8; }
- $h = $this->_twobytes2int(substr($hdr, 3, 2));
- $w = $this->_twobytes2int(substr($hdr, 5, 2));
- $channels = ord(substr($hdr, 7, 1));
- if ($channels==3) { $colspace='DeviceRGB'; }
- elseif($channels==4) { $colspace='DeviceCMYK'; }
- else { $colspace='DeviceGray'; }
- return array($w, $h, $colspace, $bpc);
-}
-
-function file_get_contents_by_curl($url, &$data) {
- $timeout = 5;
- $ch = curl_init($url);
- curl_setopt($ch, CURLOPT_HEADER, 0);
- curl_setopt($ch, CURLOPT_NOBODY, 0);
- curl_setopt ( $ch , CURLOPT_RETURNTRANSFER , 1 );
- curl_setopt ( $ch , CURLOPT_CONNECTTIMEOUT , $timeout );
- $data = curl_exec($ch);
- curl_close($ch);
-}
-
-
-function file_get_contents_by_socket($url, &$data) {
- $timeout = 1;
- $p = parse_url($url);
- $file = $p['path'];
- if ($p['query']) { $file .= '?'.$p['query']; }
- if(!($fh = @fsockopen($p['host'], 80, $errno, $errstr, $timeout))) { return false; }
- $getstring =
- "GET ".$file." HTTP/1.0 \r\n" .
- "Host: ".$p['host']." \r\n" .
- "Connection: close\r\n\r\n";
- fwrite($fh, $getstring);
- // Get rid of HTTP header
- $s = fgets($fh, 1024);
- if (!$s) { return false; }
- $httpheader .= $s;
- while (!feof($fh)) {
- $s = fgets($fh, 1024);
- if ( $s == "\r\n" ) { break; }
- }
- $data = '';
- while (!feof($fh)) {
- $data .= fgets($fh, 1024);
- }
- fclose($fh);
-}
-
-//==============================================================
-
-function _imageTypeFromString(&$data) {
- $type = '';
- if (substr($data, 6, 4)== 'JFIF' || substr($data, 6, 4)== 'Exif') {
- $type = 'jpeg';
- }
- else if (substr($data, 0, 6)== "GIF87a" || substr($data, 0, 6)== "GIF89a") {
- $type = 'gif';
- }
- else if (substr($data, 0, 8)== chr(137).'PNG'.chr(13).chr(10).chr(26).chr(10)) {
- $type = 'png';
- }
-/*-- IMAGES-WMF --*/
- else if (substr($data, 0, 4)== chr(215).chr(205).chr(198).chr(154)) {
- $type = 'wmf';
- }
-/*-- END IMAGES-WMF --*/
- else if (preg_match('//is',$data)) {
- $type = 'svg';
- }
- // BMP images
- else if (substr($data, 0, 2)== "BM") {
- $type = 'bmp';
- }
- return $type;
-}
-//==============================================================
-
-// Moved outside WMF as also needed for SVG
-function _putformobjects() {
- reset($this->formobjects);
- while(list($file,$info)=each($this->formobjects)) {
- $this->_newobj();
- $this->formobjects[$file]['n']=$this->n;
- $this->_out('<_out('/Subtype /Form');
- $this->_out('/Group '.($this->n+1).' 0 R');
- $this->_out('/BBox ['.$info['x'].' '.$info['y'].' '.($info['w']+$info['x']).' '.($info['h']+$info['y']).']');
- if ($this->compress)
- $this->_out('/Filter /FlateDecode');
- $data=($this->compress) ? gzcompress($info['data']) : $info['data'];
- $this->_out('/Length '.strlen($data).'>>');
- $this->_putstream($data);
- unset($this->formobjects[$file]['data']);
- $this->_out('endobj');
- // Required for SVG transparency (opacity) to work
- $this->_newobj();
- $this->_out('<_out('/S /Transparency');
- $this->_out('>>');
- $this->_out('endobj');
- }
-}
-
-function _freadint($f)
-{
- //Read a 4-byte integer from file
- $i=ord(fread($f,1))<<24;
- $i+=ord(fread($f,1))<<16;
- $i+=ord(fread($f,1))<<8;
- $i+=ord(fread($f,1));
- return $i;
-}
-
-function _UTF16BEtextstring($s) {
- $s = $this->UTF8ToUTF16BE($s, true);
-/*-- ENCRYPTION --*/
- if ($this->encrypted) {
- $s = $this->_RC4($this->_objectkey($this->_current_obj_id), $s);
- }
-/*-- END ENCRYPTION --*/
- return '('. $this->_escape($s).')';
-}
-
-function _textstring($s) {
-/*-- ENCRYPTION --*/
- if ($this->encrypted) {
- $s = $this->_RC4($this->_objectkey($this->_current_obj_id), $s);
- }
-/*-- END ENCRYPTION --*/
- return '('. $this->_escape($s).')';
-}
-
-
-function _escape($s)
-{
- // the chr(13) substitution fixes the Bugs item #1421290.
- return strtr($s, array(')' => '\\)', '(' => '\\(', '\\' => '\\\\', chr(13) => '\r'));
-}
-
-function _putstream($s) {
-/*-- ENCRYPTION --*/
- if ($this->encrypted) {
- $s = $this->_RC4($this->_objectkey($this->_current_obj_id), $s);
- }
-/*-- END ENCRYPTION --*/
- $this->_out('stream');
- $this->_out($s);
- $this->_out('endstream');
-}
-
-
-function _out($s,$ln=true) {
- if($this->state==2) {
- if ($this->bufferoutput) {
- $this->headerbuffer.= $s."\n";
- }
-/*-- COLUMNS --*/
- else if (($this->ColActive) && !$this->processingHeader && !$this->processingFooter) {
- // Captures everything in buffer for columns; Almost everything is sent from fn. Cell() except:
- // Images sent from Image() or
- // later sent as _out($textto) in printbuffer
- // Line()
- if (preg_match('/q \d+\.\d\d+ 0 0 (\d+\.\d\d+) \d+\.\d\d+ \d+\.\d\d+ cm \/(I|FO)\d+ Do Q/',$s,$m)) { // Image data
- $h = ($m[1]/_MPDFK);
- // Update/overwrite the lowest bottom of printing y value for a column
- $this->ColDetails[$this->CurrCol]['bottom_margin'] = $this->y+$h;
- }
-/*-- TABLES --*/
- else if (preg_match('/\d+\.\d\d+ \d+\.\d\d+ \d+\.\d\d+ ([\-]{0,1}\d+\.\d\d+) re/',$s,$m) && $this->tableLevel>0) { // Rect in table
- $h = ($m[1]/_MPDFK);
- // Update/overwrite the lowest bottom of printing y value for a column
- $this->ColDetails[$this->CurrCol]['bottom_margin'] = max($this->ColDetails[$this->CurrCol]['bottom_margin'],($this->y+$h));
- }
-/*-- END TABLES --*/
- else { // Td Text Set in Cell()
- if (isset($this->ColDetails[$this->CurrCol]['bottom_margin'])) { $h = $this->ColDetails[$this->CurrCol]['bottom_margin'] - $this->y; }
- else { $h = 0; }
- }
- if ($h < 0) { $h = -$h; }
- $this->columnbuffer[] = array(
- 's' => $s, // Text string to output
- 'col' => $this->CurrCol, // Column when printed
- 'x' => $this->x, // x when printed
- 'y' => $this->y, // this->y when printed (after column break)
- 'h' => $h // actual y at bottom when printed = y+h
- );
- }
-/*-- END COLUMNS --*/
-/*-- TABLES --*/
- else if ($this->table_rotate && !$this->processingHeader && !$this->processingFooter) {
- // Captures eveything in buffer for rotated tables;
- $this->tablebuffer .= $s . "\n";
- }
-/*-- END TABLES --*/
- else if ($this->kwt && !$this->processingHeader && !$this->processingFooter) {
- // Captures eveything in buffer for keep-with-table (h1-6);
- $this->kwt_buffer[] = array(
- 's' => $s, // Text string to output
- 'x' => $this->x, // x when printed
- 'y' => $this->y, // y when printed
- );
- }
- else if (($this->keep_block_together) && !$this->processingHeader && !$this->processingFooter) {
- if (!isset($this->ktBlock[$this->page]['bottom_margin'])) {
- $this->ktBlock[$this->page]['bottom_margin'] = $this->y;
- }
-
- // Captures eveything in buffer;
- if (preg_match('/q \d+\.\d\d+ 0 0 (\d+\.\d\d+) \d+\.\d\d+ \d+\.\d\d+ cm \/(I|FO)\d+ Do Q/',$s,$m)) { // Image data
- $h = ($m[1]/_MPDFK);
- // Update/overwrite the lowest bottom of printing y value for Keep together block
- $this->ktBlock[$this->page]['bottom_margin'] = $this->y+$h;
- }
- else { // Td Text Set in Cell()
- if (isset($this->ktBlock[$this->page]['bottom_margin'])) { $h = $this->ktBlock[$this->page]['bottom_margin'] - $this->y; }
- else { $h = 0; }
- }
- if ($h < 0) { $h = -$h; }
- $this->divbuffer[] = array(
- 'page' => $this->page,
- 's' => $s, // Text string to output
- 'x' => $this->x, // x when printed
- 'y' => $this->y, // y when printed (after column break)
- 'h' => $h // actual y at bottom when printed = y+h
- );
- }
- else {
- $this->pages[$this->page] .= $s.($ln == true ? "\n" : '');
- }
-
- }
- else {
- $this->buffer .= $s.($ln == true ? "\n" : '');
- }
-}
-
-/*-- WATERMARK --*/
-// add a watermark
-function watermark( $texte, $angle=45, $fontsize=96, $alpha=0.2 ) {
- if ($this->PDFA || $this->PDFX) { $this->Error('PDFA and PDFX do not permit transparency, so mPDF does not allow Watermarks!'); }
- if (!$this->watermark_font) { $this->watermark_font = $this->default_font; }
- $this->SetFont( $this->watermark_font, "B", $fontsize, false ); // Don't output
- $texte= $this->purify_utf8_text($texte);
- if ($this->text_input_as_HTML) {
- $texte= $this->all_entities_to_utf8($texte);
- }
- if ($this->usingCoreFont) { $texte = mb_convert_encoding($texte,$this->mb_enc,'UTF-8'); }
- // DIRECTIONALITY
- $this->magic_reverse_dir($texte, true, $this->directionality); // *RTL*
- // Font-specific ligature substitution for Indic fonts
- if (isset($this->CurrentFont['indic']) && $this->CurrentFont['indic']) $this->ConvertIndic($texte); // *INDIC*
-
- $this->SetAlpha($alpha);
-
- $this->SetTColor($this->ConvertColor(0));
- $szfont = $fontsize;
- $loop = 0;
- $maxlen = (min($this->w,$this->h) ); // sets max length of text as 7/8 width/height of page
- while ( $loop == 0 )
- {
- $this->SetFont( $this->watermark_font, "B", $szfont, false ); // Don't output
- $offset = ((sin(deg2rad($angle))) * ($szfont/_MPDFK));
-
- $strlen = $this->GetStringWidth($texte);
- if ( $strlen > $maxlen - $offset )
- $szfont --;
- else
- $loop ++;
- }
-
- $this->SetFont( $this->watermark_font, "B", $szfont-0.1, true, true); // Output The -0.1 is because SetFont above is not written to PDF
- // Repeating it will not output anything as mPDF thinks it is set
- $adj = ((cos(deg2rad($angle))) * ($strlen/2));
- $opp = ((sin(deg2rad($angle))) * ($strlen/2));
- $wx = ($this->w/2) - $adj + $offset/3;
- $wy = ($this->h/2) + $opp;
- $this->Rotate($angle,$wx,$wy);
- $this->Text($wx,$wy,$texte);
- $this->Rotate(0);
- $this->SetTColor($this->ConvertColor(0));
-
- $this->SetAlpha(1);
-
-}
-
-function watermarkImg( $src, $alpha=0.2 ) {
- if ($this->PDFA || $this->PDFX) { $this->Error('PDFA and PDFX do not permit transparency, so mPDF does not allow Watermarks!'); }
- if ($this->watermarkImgBehind) { $this->watermarkImgAlpha = $this->SetAlpha($alpha, 'Normal', true); }
- else { $this->SetAlpha($alpha, $this->watermarkImgAlphaBlend); }
- $this->Image($src,0,0,0,0,'','', true, true, true);
- if (!$this->watermarkImgBehind) { $this->SetAlpha(1); }
-}
-/*-- END WATERMARK --*/
-
-
-function Rotate($angle,$x=-1,$y=-1)
-{
- if($x==-1)
- $x=$this->x;
- if($y==-1)
- $y=$this->y;
- if($this->angle!=0)
- $this->_out('Q');
- $this->angle=$angle;
- if($angle!=0)
- {
- $angle*=M_PI/180;
- $c=cos($angle);
- $s=sin($angle);
- $cx=$x*_MPDFK;
- $cy=($this->h-$y)*_MPDFK;
- $this->_out(sprintf('q %.5F %.5F %.5F %.5F %.3F %.3F cm 1 0 0 1 %.3F %.3F cm',$c,$s,-$s,$c,$cx,$cy,-$cx,-$cy));
- }
-}
-
-
-
-// mPDF 5.3.40 5.3.51 5.3.53
-function CircularText($x, $y, $r, $text, $align='top', $fontfamily='', $fontsize=0, $fontstyle='', $kerning=120, $fontwidth=100) {
- if (!class_exists('directw', false)) { include(_MPDF_PATH.'classes/directw.php'); }
- if (empty($this->directw)) { $this->directw = new directw($this); }
- $this->directw->CircularText($x, $y, $r, $text, $align, $fontfamily, $fontsize, $fontstyle, $kerning, $fontwidth);
-}
-
-
-// From Invoice
-function RoundedRect($x, $y, $w, $h, $r, $style = '')
-{
- $hp = $this->h;
- if($style=='F')
- $op='f';
- elseif($style=='FD' or $style=='DF')
- $op='B';
- else
- $op='S';
- $MyArc = 4/3 * (sqrt(2) - 1);
- $this->_out(sprintf('%.3F %.3F m',($x+$r)*_MPDFK,($hp-$y)*_MPDFK ));
- $xc = $x+$w-$r ;
- $yc = $y+$r;
- $this->_out(sprintf('%.3F %.3F l', $xc*_MPDFK,($hp-$y)*_MPDFK ));
-
- $this->_Arc($xc + $r*$MyArc, $yc - $r, $xc + $r, $yc - $r*$MyArc, $xc + $r, $yc);
- $xc = $x+$w-$r ;
- $yc = $y+$h-$r;
- $this->_out(sprintf('%.3F %.3F l',($x+$w)*_MPDFK,($hp-$yc)*_MPDFK));
- $this->_Arc($xc + $r, $yc + $r*$MyArc, $xc + $r*$MyArc, $yc + $r, $xc, $yc + $r);
- $xc = $x+$r ;
- $yc = $y+$h-$r;
- $this->_out(sprintf('%.3F %.3F l',$xc*_MPDFK,($hp-($y+$h))*_MPDFK));
- $this->_Arc($xc - $r*$MyArc, $yc + $r, $xc - $r, $yc + $r*$MyArc, $xc - $r, $yc);
- $xc = $x+$r ;
- $yc = $y+$r;
- $this->_out(sprintf('%.3F %.3F l',($x)*_MPDFK,($hp-$yc)*_MPDFK ));
- $this->_Arc($xc - $r, $yc - $r*$MyArc, $xc - $r*$MyArc, $yc - $r, $xc, $yc - $r);
- $this->_out($op);
-}
-
-function _Arc($x1, $y1, $x2, $y2, $x3, $y3)
-{
- $h = $this->h;
- $this->_out(sprintf('%.3F %.3F %.3F %.3F %.3F %.3F c ', $x1*_MPDFK, ($h-$y1)*_MPDFK,
- $x2*_MPDFK, ($h-$y2)*_MPDFK, $x3*_MPDFK, ($h-$y3)*_MPDFK));
-}
-
-
-
-
-//====================================================
-
-
-
-/*-- DIRECTW --*/
-function Shaded_box( $text,$font='',$fontstyle='B',$szfont='',$width='70%',$style='DF',$radius=2.5,$fill='#FFFFFF',$color='#000000',$pad=2 ) {
- // F (shading - no line),S (line, no shading),DF (both)
- if (!class_exists('directw', false)) { include(_MPDF_PATH.'classes/directw.php'); }
- if (empty($this->directw)) { $this->directw = new directw($this); }
- $this->directw->Shaded_box( $text,$font,$fontstyle,$szfont,$width,$style,$radius,$fill,$color,$pad);
-}
-/*-- END DIRECTW --*/
-
-
-function UTF8StringToArray($str, $addSubset=true) {
- $out = array();
- $len = strlen($str);
- for ($i = 0; $i < $len; $i++) {
- $uni = -1;
- $h = ord($str[$i]);
- if ( $h <= 0x7F )
- $uni = $h;
- elseif ( $h >= 0xC2 ) {
- if ( ($h <= 0xDF) && ($i < $len -1) )
- $uni = ($h & 0x1F) << 6 | (ord($str[++$i]) & 0x3F);
- elseif ( ($h <= 0xEF) && ($i < $len -2) )
- $uni = ($h & 0x0F) << 12 | (ord($str[++$i]) & 0x3F) << 6 | (ord($str[++$i]) & 0x3F);
- elseif ( ($h <= 0xF4) && ($i < $len -3) )
- $uni = ($h & 0x0F) << 18 | (ord($str[++$i]) & 0x3F) << 12 | (ord($str[++$i]) & 0x3F) << 6 | (ord($str[++$i]) & 0x3F);
- }
- if ($uni >= 0) {
- $out[] = $uni;
- if ($addSubset && isset($this->CurrentFont['subset'])) {
- $this->CurrentFont['subset'][$uni] = $uni;
- }
- }
- }
- return $out;
-}
-
-
-//Convert utf-8 string to for Font Subsets
-function UTF8toSubset($str) {
- $ret = '<';
- $str = preg_replace('/'.preg_quote($this->aliasNbPg,'/').'/', chr(7), $str );
- $str = preg_replace('/'.preg_quote($this->aliasNbPgGp,'/').'/', chr(8), $str );
- $unicode = $this->UTF8StringToArray($str);
- $orig_fid = $this->CurrentFont['subsetfontids'][0];
- $last_fid = $this->CurrentFont['subsetfontids'][0];
- foreach($unicode as $c) {
- if ($c == 7 || $c == 8) {
- if ($orig_fid != $last_fid) {
- $ret .= '> Tj /F'.$orig_fid.' '.$this->FontSizePt.' Tf <';
- $last_fid = $orig_fid;
- }
- if ($c == 7) { $ret .= $this->aliasNbPgHex; }
- else { $ret .= $this->aliasNbPgGpHex; }
- continue;
- }
- for ($i=0; $i<99; $i++) {
- // return c as decimal char
- $init = array_search($c, $this->CurrentFont['subsets'][$i]);
- if ($init!==false) {
- if ($this->CurrentFont['subsetfontids'][$i] != $last_fid) {
- $ret .= '> Tj /F'.$this->CurrentFont['subsetfontids'][$i].' '.$this->FontSizePt.' Tf <';
- $last_fid = $this->CurrentFont['subsetfontids'][$i];
- }
- $ret .= sprintf("%02s", strtoupper(dechex($init)));
- break;
- }
- // TrueType embedded SUBSETS
- else if (count($this->CurrentFont['subsets'][$i]) < 255) {
- $n = count($this->CurrentFont['subsets'][$i]);
- $this->CurrentFont['subsets'][$i][$n] = $c;
- if ($this->CurrentFont['subsetfontids'][$i] != $last_fid) {
- $ret .= '> Tj /F'.$this->CurrentFont['subsetfontids'][$i].' '.$this->FontSizePt.' Tf <';
- $last_fid = $this->CurrentFont['subsetfontids'][$i];
- }
- $ret .= sprintf("%02s", strtoupper(dechex($n)));
- break;
- }
- else if (!isset($this->CurrentFont['subsets'][($i+1)])) {
- // TrueType embedded SUBSETS
- $this->CurrentFont['subsets'][($i+1)] = array(0=>0);
- $new_fid = count($this->fonts)+$this->extraFontSubsets+1;
- $this->CurrentFont['subsetfontids'][($i+1)] = $new_fid;
- $this->extraFontSubsets++;
- }
- }
- }
- $ret .= '>';
- if ($last_fid != $orig_fid) {
- $ret .= ' Tj /F'.$orig_fid.' '.$this->FontSizePt.' Tf <> ';
- }
- return $ret;
-}
-
-
-// Converts UTF-8 strings to UTF16-BE.
-function UTF8ToUTF16BE($str, $setbom=true) {
- if ($this->checkSIP && preg_match("/([\x{20000}-\x{2FFFF}])/u", $str)) {
- if (!in_array($this->currentfontfamily, array('gb','big5','sjis','uhc','gbB','big5B','sjisB','uhcB','gbI','big5I','sjisI','uhcI',
- 'gbBI','big5BI','sjisBI','uhcBI'))) {
- $str = preg_replace("/[\x{20000}-\x{2FFFF}]/u", chr(0), $str);
- }
- }
- if ($this->checkSMP && preg_match("/([\x{10000}-\x{1FFFF}])/u", $str )) {
- $str = preg_replace("/[\x{10000}-\x{1FFFF}]/u", chr(0), $str );
- }
- $outstr = ""; // string to be returned
- if ($setbom) {
- $outstr .= "\xFE\xFF"; // Byte Order Mark (BOM)
- }
- $outstr .= mb_convert_encoding($str, 'UTF-16BE', 'UTF-8');
- return $outstr;
-}
-
-
-
-
-
-// ====================================================
-// ====================================================
-/*-- CJK-FONTS --*/
-
-// from class PDF_Chinese CJK EXTENSIONS
-function AddCIDFont($family,$style,$name,&$cw,$CMap,$registry,$desc)
-{
- $fontkey=strtolower($family).strtoupper($style);
- if(isset($this->fonts[$fontkey]))
- $this->Error("Font already added: $family $style");
- $i=count($this->fonts)+$this->extraFontSubsets+1;
- $name=str_replace(' ','',$name);
- if ($family == 'sjis') { $up = -120; } else { $up = -130; }
- // ? 'up' and 'ut' do not seem to be referenced anywhere
- $this->fonts[$fontkey]=array('i'=>$i,'type'=>'Type0','name'=>$name,'up'=>$up,'ut'=>40,'cw'=>$cw,'CMap'=>$CMap,'registry'=>$registry,'MissingWidth'=>1000,'desc'=>$desc);
-}
-
-function AddCJKFont($family) {
-
- if ($this->PDFA || $this->PDFX) {
- $this->Error("Adobe CJK fonts cannot be embedded in mPDF (required for PDFA1-b and PDFX/1-a).");
- }
- if ($family == 'big5') { $this->AddBig5Font(); }
- else if ($family == 'gb') { $this->AddGBFont(); }
- else if ($family == 'sjis') { $this->AddSJISFont(); }
- else if ($family == 'uhc') { $this->AddUHCFont(); }
-}
-
-function AddBig5Font()
-{
- //Add Big5 font with proportional Latin
- $family='big5';
- $name='MSungStd-Light-Acro';
- $cw=$this->Big5_widths;
- $CMap='UniCNS-UTF16-H';
- $registry=array('ordering'=>'CNS1','supplement'=>4);
- $desc = array(
- 'Ascent' => 880,
- 'Descent' => -120,
- 'CapHeight' => 880,
- 'Flags' => 6,
- 'FontBBox' => '[-160 -249 1015 1071]',
- 'ItalicAngle' => 0,
- 'StemV' => 93,
- );
- $this->AddCIDFont($family,'',$name,$cw,$CMap,$registry,$desc);
- $this->AddCIDFont($family,'B',$name.',Bold',$cw,$CMap,$registry,$desc);
- $this->AddCIDFont($family,'I',$name.',Italic',$cw,$CMap,$registry,$desc);
- $this->AddCIDFont($family,'BI',$name.',BoldItalic',$cw,$CMap,$registry,$desc);
-}
-
-
-function AddGBFont()
-{
- //Add GB font with proportional Latin
- $family='gb';
- $name='STSongStd-Light-Acro';
- $cw=$this->GB_widths;
- $CMap='UniGB-UTF16-H';
- $registry=array('ordering'=>'GB1','supplement'=>4);
- $desc = array(
- 'Ascent' => 752,
- 'Descent' => -271,
- 'CapHeight' => 737,
- 'Flags' => 6,
- 'FontBBox' => '[-25 -254 1000 880]',
- 'ItalicAngle' => 0,
- 'StemV' => 58,
- 'Style' => '<< /Panose <000000000400000000000000> >>',
- );
- $this->AddCIDFont($family,'',$name,$cw,$CMap,$registry,$desc);
- $this->AddCIDFont($family,'B',$name.',Bold',$cw,$CMap,$registry,$desc);
- $this->AddCIDFont($family,'I',$name.',Italic',$cw,$CMap,$registry,$desc);
- $this->AddCIDFont($family,'BI',$name.',BoldItalic',$cw,$CMap,$registry,$desc);
-}
-
-
-function AddSJISFont()
-{
- //Add SJIS font with proportional Latin
- $family='sjis';
- $name='KozMinPro-Regular-Acro';
- $cw=$this->SJIS_widths;
- $CMap='UniJIS-UTF16-H';
- $registry=array('ordering'=>'Japan1','supplement'=>5);
- $desc = array(
- 'Ascent' => 880,
- 'Descent' => -120,
- 'CapHeight' => 740,
- 'Flags' => 6,
- 'FontBBox' => '[-195 -272 1110 1075]',
- 'ItalicAngle' => 0,
- 'StemV' => 86,
- 'XHeight' => 502,
- );
- $this->AddCIDFont($family,'',$name,$cw,$CMap,$registry,$desc);
- $this->AddCIDFont($family,'B',$name.',Bold',$cw,$CMap,$registry,$desc);
- $this->AddCIDFont($family,'I',$name.',Italic',$cw,$CMap,$registry,$desc);
- $this->AddCIDFont($family,'BI',$name.',BoldItalic',$cw,$CMap,$registry,$desc);
-}
-
-function AddUHCFont()
-{
- //Add UHC font with proportional Latin
- $family='uhc';
- $name='HYSMyeongJoStd-Medium-Acro';
- $cw=$this->UHC_widths;
- $CMap='UniKS-UTF16-H';
- $registry=array('ordering'=>'Korea1','supplement'=>2);
- $desc = array(
- 'Ascent' => 880,
- 'Descent' => -120,
- 'CapHeight' => 720,
- 'Flags' => 6,
- 'FontBBox' => '[-28 -148 1001 880]',
- 'ItalicAngle' => 0,
- 'StemV' => 60,
- 'Style' => '<< /Panose <000000000600000000000000> >>',
- );
- $this->AddCIDFont($family,'',$name,$cw,$CMap,$registry,$desc);
- $this->AddCIDFont($family,'B',$name.',Bold',$cw,$CMap,$registry,$desc);
- $this->AddCIDFont($family,'I',$name.',Italic',$cw,$CMap,$registry,$desc);
- $this->AddCIDFont($family,'BI',$name.',BoldItalic',$cw,$CMap,$registry,$desc);
-}
-
-/*-- END CJK-FONTS --*/
-
-//////////////////////////////////////////////////////////////////////////////
-//////////////////////////////////////////////////////////////////////////////
-//////////////////////////////////////////////////////////////////////////////
-//////////////////////////////////////////////////////////////////////////////
-//////////////////////////////////////////////////////////////////////////////
-//////////////////////////////////////////////////////////////////////////////
-//////////////////////////////////////////////////////////////////////////////
-function SetAutoFont($af = AUTOFONT_ALL) {
- if ($this->onlyCoreFonts) { return false; }
- if (!$af && $af !== 0) { $af = AUTOFONT_ALL; }
- $this->autoFontGroups = $af;
- if ($this->autoFontGroups ) {
- $this->useLang = true;
- }
-}
-
-
-function SetDefaultFont($font) {
- // Disallow embedded fonts to be used as defaults in PDFA
- if ($this->PDFA || $this->PDFX) {
- if (strtolower($font) == 'ctimes') { $font = 'serif'; }
- if (strtolower($font) == 'ccourier') { $font = 'monospace'; }
- if (strtolower($font) == 'chelvetica') { $font = 'sans-serif'; }
- }
- $font = $this->SetFont($font); // returns substituted font if necessary
- $this->default_font = $font;
- $this->original_default_font = $font;
- if (!$this->watermark_font ) { $this->watermark_font = $font; } // *WATERMARK*
- $this->defaultCSS['BODY']['FONT-FAMILY'] = $font;
- $this->CSS['BODY']['FONT-FAMILY'] = $font;
-}
-
-function SetDefaultFontSize($fontsize) {
- $this->default_font_size = $fontsize;
- $this->original_default_font_size = $fontsize;
- $this->SetFontSize($fontsize);
- $this->defaultCSS['BODY']['FONT-SIZE'] = $fontsize . 'pt';
- $this->CSS['BODY']['FONT-SIZE'] = $fontsize . 'pt';
-}
-
-function SetDefaultBodyCSS($prop, $val) {
- if ($prop) {
- $this->defaultCSS['BODY'][strtoupper($prop)] = $val;
- $this->CSS['BODY'][strtoupper($prop)] = $val;
- }
-}
-
-
-function SetDirectionality($dir='ltr') {
-/*-- RTL --*/
- if (strtolower($dir) == 'rtl') {
- if ($this->directionality != 'rtl') {
- // Swop L/R Margins so page 1 RTL is an 'even' page
- $tmp = $this->DeflMargin;
- $this->DeflMargin = $this->DefrMargin;
- $this->DefrMargin = $tmp;
- $this->orig_lMargin = $this->DeflMargin;
- $this->orig_rMargin = $this->DefrMargin;
-
- $this->SetMargins($this->DeflMargin,$this->DefrMargin,$this->tMargin);
- }
- $this->directionality = 'rtl';
- $this->defaultAlign = 'R';
- $this->defaultTableAlign = 'R';
- }
- else {
-/*-- END RTL --*/
- $this->directionality = 'ltr';
- $this->defaultAlign = 'L';
- $this->defaultTableAlign = 'L';
- } // *RTL*
- $this->CSS['BODY']['DIRECTION'] = $this->directionality;
-}
-
-
-
-// Added to set line-height-correction
-function SetLineHeightCorrection($val) {
- if ($val > 0) { $this->default_lineheight_correction = $val; }
- else { $this->default_lineheight_correction = 1.2; }
-}
-
-// Set a (fixed) lineheight to an actual value - either to named fontsize(pts) or default
-function SetLineHeight($FontPt='',$spacing = '') {
- if ($this->shrin_k > 1) { $k = $this->shrin_k; }
- else { $k = 1; }
- if ($spacing > 0) {
- if (preg_match('/mm/',$spacing)) {
- $this->lineheight = ($spacing + 0.0) / $k; // convert to number
- }
- else {
- if ($FontPt) { $this->lineheight = (($FontPt/_MPDFK) *$spacing); }
- else { $this->lineheight = (($this->FontSizePt/_MPDFK) *$spacing); }
- }
- }
- else {
- if ($FontPt) { $this->lineheight = (($FontPt/_MPDFK) *$this->normalLineheight); }
- else { $this->lineheight = (($this->FontSizePt/_MPDFK) *$this->normalLineheight); }
- }
-}
-
-function _computeLineheight($lh, $fs='') {
- if ($this->shrin_k > 1) { $k = $this->shrin_k; }
- else { $k = 1; }
- if (!$fs) { $fs = $this->FontSize; }
- if (preg_match('/mm/',$lh)) {
- return (($lh + 0.0) / $k); // convert to number
- }
- else if ($lh > 0) {
- return ($fs * $lh);
- }
- else if (isset($this->normalLineheight)) { return ($fs * $this->normalLineheight); }
- else return ($fs * $this->default_lineheight_correction);
-}
-
-
-function SetBasePath($str='') {
- if ( isset($_SERVER['HTTP_HOST']) ) { $host = $_SERVER['HTTP_HOST']; }
- else if ( isset($_SERVER['SERVER_NAME']) ) { $host = $_SERVER['SERVER_NAME']; }
- else { $host = ''; }
- if (!$str) {
- if ($_SERVER['SCRIPT_NAME']) { $currentPath = dirname($_SERVER['SCRIPT_NAME']); }
- else { $currentPath = dirname($_SERVER['PHP_SELF']); }
- $currentPath = str_replace("\\","/",$currentPath);
- if ($currentPath == '/') { $currentPath = ''; }
- if ($host) { $currpath = 'http://' . $host . $currentPath .'/'; }
- else { $currpath = ''; }
- $this->basepath = $currpath;
- $this->basepathIsLocal = true;
- return;
- }
- $str = preg_replace('/\?.*/','',$str);
- if (!preg_match('/(http|https|ftp):\/\/.*\//i',$str)) { $str .= '/'; }
- $str .= 'xxx'; // in case $str ends in / e.g. http://www.bbc.co.uk/
- $this->basepath = dirname($str) . "/"; // returns e.g. e.g. http://www.google.com/dir1/dir2/dir3/
- $this->basepath = str_replace("\\","/",$this->basepath); //If on Windows
- $tr = parse_url($this->basepath);
- if (isset($tr['host']) && ($tr['host'] == $host)) { $this->basepathIsLocal = true; }
- else { $this->basepathIsLocal = false; }
-}
-
-
-function GetFullPath(&$path,$basepath='') {
- // When parsing CSS need to pass temporary basepath - so links are relative to current stylesheet
- if (!$basepath) { $basepath = $this->basepath; }
- //Fix path value
- $path = str_replace("\\","/",$path); //If on Windows
- //Get link info and obtain its absolute path
- $regexp = '|^./|'; // Inadvertently corrects "./path/etc" and "//www.domain.com/etc"
- $path = preg_replace($regexp,'',$path);
-
- if(substr($path,0,1) == '#') { return; }
- if (stristr($path,"mailto:") !== false) { return; }
- if (strpos($path,"../") !== false ) { //It is a Relative Link
- $backtrackamount = substr_count($path,"../");
- $maxbacktrack = substr_count($basepath,"/") - 1;
- $filepath = str_replace("../",'',$path);
- $path = $basepath;
- //If it is an invalid relative link, then make it go to directory root
- if ($backtrackamount > $maxbacktrack) $backtrackamount = $maxbacktrack;
- //Backtrack some directories
- for( $i = 0 ; $i < $backtrackamount + 1 ; $i++ ) $path = substr( $path, 0 , strrpos($path,"/") );
- $path = $path . "/" . $filepath; //Make it an absolute path
- }
- else if( strpos($path,":/") === false || strpos($path,":/") > 10) { //It is a Local Link
- if (substr($path,0,1) == "/") {
- $tr = parse_url($basepath);
- $root = $tr['scheme'].'://'.$tr['host'];
- $path = $root . $path;
- }
- else { $path = $basepath . $path; }
- }
- //Do nothing if it is an Absolute Link
-}
-
-
-// Used for external CSS files
-function _get_file($path) {
- // If local file try using local path (? quicker, but also allowed even if allow_url_fopen false)
- $contents = '';
- $contents = @file_get_contents($path);
- if ($contents) { return $contents; }
- if ($this->basepathIsLocal) {
- $tr = parse_url($path);
- $lp=getenv("SCRIPT_NAME");
- $ap=realpath($lp);
- $ap=str_replace("\\","/",$ap);
- $docroot=substr($ap,0,strpos($ap,$lp));
- // WriteHTML parses all paths to full URLs; may be local file name
- if ($tr['scheme'] && $tr['host'] && $_SERVER["DOCUMENT_ROOT"] ) {
- $localpath = $_SERVER["DOCUMENT_ROOT"] . $tr['path'];
- }
- // DOCUMENT_ROOT is not returned on IIS
- else if ($docroot) {
- $localpath = $docroot . $tr['path'];
- }
- else { $localpath = $path; }
- $contents = @file_get_contents($localpath);
- }
- // if not use full URL
- else if (!$contents && !ini_get('allow_url_fopen') && function_exists("curl_init")) {
- $ch = curl_init($path);
- curl_setopt($ch, CURLOPT_HEADER, 0);
- curl_setopt ( $ch , CURLOPT_RETURNTRANSFER , 1 );
- $contents = curl_exec($ch);
- curl_close($ch);
- }
- return $contents;
-}
-
-
-function docPageNum($num = 0, $extras = false) {
- if ($num < 1) { $num = $this->page; }
- $type = '1'; // set default decimal
- $ppgno = $num;
- $suppress = 0;
- $offset = 0;
-
- $lastreset = 0;
- foreach($this->PageNumSubstitutions AS $psarr) {
- if ($num >= $psarr['from']) {
- if ($psarr['reset']) {
- if ($psarr['reset']>1) { $offset = $psarr['reset']-1; }
- $ppgno = $num - $psarr['from'] + 1 + $offset;
- $lastreset = $psarr['from'];
- }
- if ($psarr['type']) { $type = $psarr['type']; }
- if (strtoupper($psarr['suppress'])=='ON' || $psarr['suppress']==1) { $suppress = 1; }
- else if (strtoupper($psarr['suppress'])=='OFF') { $suppress = 0; }
- }
- }
- if ($suppress) { return ''; }
-
- foreach($this->pgsIns AS $k=>$v) {
- if ($k>$lastreset && $k<$num) {
- $ppgno -= $v;
- }
- }
- if ($type=='A') { $ppgno = $this->dec2alpha($ppgno,true); }
- else if ($type=='a') { $ppgno = $this->dec2alpha($ppgno,false);}
- else if ($type=='I') { $ppgno = $this->dec2roman($ppgno,true); }
- else if ($type=='i') { $ppgno = $this->dec2roman($ppgno,false); }
- if ($extras) { $ppgno = $this->pagenumPrefix . $ppgno . $this->pagenumSuffix; }
- return $ppgno;
-}
-
-
-function docPageSettings($num = 0) {
- // Returns current type (numberstyle), suppression state for this page number;
- // reset is only returned if set for this page number
- if ($num < 1) { $num = $this->page; }
- $type = '1'; // set default decimal
- $ppgno = $num;
- $suppress = 0;
- $offset = 0;
- $reset = '';
- foreach($this->PageNumSubstitutions AS $psarr) {
- if ($num >= $psarr['from']) {
- if ($psarr['reset']) {
- if ($psarr['reset']>1) { $offset = $psarr['reset']-1; }
- $ppgno = $num - $psarr['from'] + 1 + $offset;
- }
- if ($psarr['type']) { $type = $psarr['type']; }
- if (strtoupper($psarr['suppress'])=='ON' || $psarr['suppress']==1) { $suppress = 1; }
- else if (strtoupper($psarr['suppress'])=='OFF') { $suppress = 0; }
- }
- if ($num == $psarr['from']) { $reset = $psarr['reset']; }
- }
- if ($suppress) { $suppress = 'on'; }
- else { $suppress = 'off'; }
- return array($type, $suppress, $reset);
-}
-
-function docPageNumTotal($num = 0, $extras = false) {
- if ($num < 1) { $num = $this->page; }
- $type = '1'; // set default decimal
- $ppgstart = 1;
- $ppgend = count($this->pages)+1;
- $suppress = 0;
- $offset = 0;
- foreach($this->PageNumSubstitutions AS $psarr) {
- if ($num >= $psarr['from']) {
- if ($psarr['reset']) {
- if ($psarr['reset']>1) { $offset = $psarr['reset']-1; }
- $ppgstart = $psarr['from'] + $offset;
- $ppgend = count($this->pages)+1 + $offset;
- }
- if ($psarr['type']) { $type = $psarr['type']; }
- if (strtoupper($psarr['suppress'])=='ON' || $psarr['suppress']==1) { $suppress = 1; }
- else if (strtoupper($psarr['suppress'])=='OFF') { $suppress = 0; }
- }
- if ($num < $psarr['from']) {
- if ($psarr['reset']) {
- $ppgend = $psarr['from'] + $offset;
- break;
- }
- }
- }
- if ($suppress) { return ''; }
- $ppgno = $ppgend-$ppgstart+$offset;
- if ($extras) { $ppgno = $this->nbpgPrefix . $ppgno . $this->nbpgSuffix; }
- return $ppgno;
-}
-
-function RestartDocTemplate() {
- $this->docTemplateStart = $this->page;
-}
-
-
-
-//Page header
-function Header($content='') {
-
- $this->cMarginL = 0;
- $this->cMarginR = 0;
-
-
-/*-- HTMLHEADERS-FOOTERS --*/
- if (($this->mirrorMargins && ($this->page%2==0) && $this->HTMLHeaderE) || ($this->mirrorMargins && ($this->page%2==1) && $this->HTMLHeader) || (!$this->mirrorMargins && $this->HTMLHeader)) {
- $this->writeHTMLHeaders();
- return;
- }
-/*-- END HTMLHEADERS-FOOTERS --*/
- $this->processingHeader=true;
- $h = $this->headerDetails;
- if(count($h)) {
-
- if ($this->forcePortraitHeaders && $this->CurOrientation=='L' && $this->CurOrientation!=$this->DefOrientation) {
- $this->_out(sprintf('q 0 -1 1 0 0 %.3F cm ',($this->h*_MPDFK)));
- $yadj = $this->w - $this->h;
- $headerpgwidth = $this->h - $this->orig_lMargin - $this->orig_rMargin;
- if (($this->mirrorMargins) && (($this->page)%2==0)) { // EVEN
- $headerlmargin = $this->orig_rMargin;
- }
- else {
- $headerlmargin = $this->orig_lMargin;
- }
- }
- else {
- $yadj = 0;
- $headerpgwidth = $this->pgwidth;
- $headerlmargin = $this->lMargin;
- }
-
- $this->y = $this->margin_header - $yadj ;
- $this->SetTColor($this->ConvertColor(0));
- $this->SUP = false;
- $this->SUB = false;
- $this->bullet = false;
-
- // only show pagenumber if numbering on
- $pgno = $this->docPageNum($this->page, true);
-
- if (($this->mirrorMargins) && (($this->page)%2==0)) { // EVEN
- $side = 'even';
- }
- else { // ODD // OR NOT MIRRORING MARGINS/FOOTERS = DEFAULT
- $side = 'odd';
- }
- $maxfontheight = 0;
- foreach(array('L','C','R') AS $pos) {
- if (isset($h[$side][$pos]['content']) && $h[$side][$pos]['content']) {
- if (isset($h[$side][$pos]['font-size']) && $h[$side][$pos]['font-size']) { $hfsz = $h[$side][$pos]['font-size']; }
- else { $hfsz = $this->default_font_size; }
- $maxfontheight = max($maxfontheight,$hfsz);
- }
- }
- // LEFT-CENTER-RIGHT
- foreach(array('L','C','R') AS $pos) {
- if (isset($h[$side][$pos]['content']) && $h[$side][$pos]['content']) {
- $hd = str_replace('{PAGENO}',$pgno,$h[$side][$pos]['content']);
- $hd = str_replace($this->aliasNbPgGp,$this->nbpgPrefix.$this->aliasNbPgGp.$this->nbpgSuffix,$hd);
- $hd = preg_replace('/\{DATE\s+(.*?)\}/e',"date('\\1')",$hd);
- if (isset($h[$side][$pos]['font-family']) && $h[$side][$pos]['font-family']) { $hff = $h[$side][$pos]['font-family']; }
- else { $hff = $this->original_default_font; }
- if (isset($h[$side][$pos]['font-size']) && $h[$side][$pos]['font-size']) { $hfsz = $h[$side][$pos]['font-size']; }
- else { $hfsz = $this->original_default_font_size; } // pts
- $maxfontheight = max($maxfontheight,$hfsz);
- $hfst = '';
- if (isset($h[$side][$pos]['font-style']) && $h[$side][$pos]['font-style']) {
- $hfst = $h[$side][$pos]['font-style'];
- }
- if (isset($h[$side][$pos]['color']) && $h[$side][$pos]['color']) {
- $hfcol = $h[$side][$pos]['color'];
- $cor = $this->ConvertColor($hfcol);
- if ($cor) { $this->SetTColor($cor); }
- }
- else { $hfcol = ''; }
- $this->SetFont($hff,$hfst,$hfsz,true,true);
- $this->x = $headerlmargin ;
- $this->y = $this->margin_header - $yadj ;
-
- $hd = $this->purify_utf8_text($hd);
- if ($this->text_input_as_HTML) {
- $hd = $this->all_entities_to_utf8($hd);
- }
- // CONVERT CODEPAGE
- if ($this->usingCoreFont) { $hd = mb_convert_encoding($hd,$this->mb_enc,'UTF-8'); }
- // DIRECTIONALITY RTL
- $this->magic_reverse_dir($hd, true, $this->directionality); // *RTL*
- // Font-specific ligature substitution for Indic fonts
- if (isset($this->CurrentFont['indic']) && $this->CurrentFont['indic']) $this->ConvertIndic($hd); // *INDIC*
- $align = $pos;
-/*-- RTL --*/
- if ($this->directionality == 'rtl') {
- if ($pos == 'L') { $align = 'R'; }
- else if ($pos == 'R') { $align = 'L'; }
- }
-/*-- END RTL --*/
- if ($pos!='L' && (strpos($hd,$this->aliasNbPg)!==false || strpos($hd,$this->aliasNbPgGp)!==false)) {
- if (strpos($hd,$this->aliasNbPgGp)!==false) { $type= 'nbpggp'; } else { $type= 'nbpg'; }
- $this->_out('{mpdfheader'.$type.' '.$pos.' ff='.$hff.' fs='.$hfst.' fz='.$hfsz.'}');
- $this->Cell($headerpgwidth ,$maxfontheight/_MPDFK ,$hd,0,0,$align,0,'',0,0,0,'M');
- $this->_out('Q');
- }
- else {
- $this->Cell($headerpgwidth ,$maxfontheight/_MPDFK ,$hd,0,0,$align,0,'',0,0,0,'M');
- }
- if ($hfcol) { $this->SetTColor($this->ConvertColor(0)); }
- }
- }
- //Return Font to normal
- $this->SetFont($this->default_font,'',$this->original_default_font_size);
- // LINE
- if (isset($h[$side]['line']) && $h[$side]['line']) {
- $this->SetLineWidth(0.1);
- $this->SetDColor($this->ConvertColor(0));
- $this->Line($headerlmargin , $this->margin_header + ($maxfontheight*(1+$this->header_line_spacing)/_MPDFK) - $yadj , $headerlmargin + $headerpgwidth, $this->margin_header + ($maxfontheight*(1+$this->header_line_spacing)/_MPDFK) - $yadj );
- }
- if ($this->forcePortraitHeaders && $this->CurOrientation=='L' && $this->CurOrientation!=$this->DefOrientation) {
- $this->_out('Q');
- }
- }
- $this->SetY($this->tMargin);
- if ($this->ColActive) { $this->pgwidth = $this->ColWidth; } // *COLUMNS*
-
- $this->processingHeader=false;
-}
-
-
-
-/*-- TABLES --*/
-function TableHeaderFooter($content='',$tablestartpage='',$tablestartcolumn ='',$horf = 'H',$level, $firstSpread=true, $finalSpread=true) { // mPDF 5.3.36
- if(($horf=='H' || $horf=='F') && !empty($content)) { // mPDF 5.3.62
- $table = &$this->table[1][1];
- // Advance down page by half width of top border
-
- if ($horf=='H') { // Only if header
- if ($table['borders_separate']) { $adv = $table['border_spacing_V']/2 + $table['border_details']['T']['w'] + $table['padding']['T']; }
- else { $adv = $table['max_cell_border_width']['T'] /2 ; }
- if ($adv) {
- if ($this->table_rotate) {
- $this->y += ($adv);
- }
- else {
- $this->DivLn($adv,$this->blklvl,true);
- }
- }
- }
-
- if ($horf=='F') { // Table Footer
- $firstrow = count($table['cells']) - $table['footernrows']; // mPDF 5.3.62
- $lastrow = count($table['cells']) - 1;
- }
- else { // Table Header
- $firstrow = 0;
- $lastrow = $table['headernrows'] - 1; // mPDF 5.3.62
- }
-
- $topy = $content[$firstrow][0]['y']-$this->y;
-
- for ($i=$firstrow ; $i<=$lastrow; $i++) {
-
- $y = $this->y;
-
-/*-- COLUMNS --*/
- // If outside columns, this is done in PaintDivBB
- if ($this->ColActive) {
- //OUTER FILL BGCOLOR of DIVS
- if ($this->blklvl > 0) {
- $firstblockfill = $this->GetFirstBlockFill();
- if ($firstblockfill && $this->blklvl >= $firstblockfill) {
- $divh = $content[$i][0]['h'];
- $bak_x = $this->x;
- $this->DivLn($divh,-3,false);
- // Reset current block fill
- $bcor = $this->blk[$this->blklvl]['bgcolorarray'];
- $this->SetFColor($bcor);
- $this->x = $bak_x;
- }
- }
- }
-/*-- END COLUMNS --*/
-
- $colctr = 0;
- foreach($content[$i] as $tablehf) {
- $colctr++;
- $y = $tablehf['y'] - $topy;
- $this->y = $y;
- //Set some cell values
- $x = $tablehf['x'];
- if (($this->mirrorMargins) && ($tablestartpage == 'ODD') && (($this->page)%2==0)) { // EVEN
- $x = $x +$this->MarginCorrection;
- }
- else if (($this->mirrorMargins) && ($tablestartpage == 'EVEN') && (($this->page)%2==1)) { // ODD
- $x = $x +$this->MarginCorrection;
- }
-/*-- COLUMNS --*/
- // Added to correct for Columns
- if ($this->ColActive) {
- if ($this->directionality == 'rtl') { // *RTL*
- $x -= ($this->CurrCol - $tablestartcolumn) * ($this->ColWidth+$this->ColGap); // *RTL*
- } // *RTL*
- else { // *RTL*
- $x += ($this->CurrCol - $tablestartcolumn) * ($this->ColWidth+$this->ColGap);
- } // *RTL*
- }
-/*-- END COLUMNS --*/
-
- if ($colctr==1) { $x0 = $x; }
-
- // mPDF ITERATION
- if ($this->iterationCounter) {
- foreach($tablehf['textbuffer'] AS $k=>$t) { // mPDF 5.3.78
- if (preg_match('/{iteration ([a-zA-Z0-9_]+)}/',$t, $m)) {
- $vname = '__'.$m[1].'_';
- if (!isset($this->$vname)) { $this->$vname = 1; }
- else { $this->$vname++; }
- $tablehf['textbuffer'][$k][0] = preg_replace('/{iteration '.$m[1].'}/', $this->$vname, $tablehf['textbuffer'][$k][0]);
- }
- }
- }
-
-
- $w = $tablehf['w'];
- $h = $tablehf['h'];
- $va = $tablehf['va'];
- $R = $tablehf['R'];
- $mih = $tablehf['mih'];
- $border = $tablehf['border'];
- $border_details = $tablehf['border_details'];
- $padding = $tablehf['padding'];
- $this->tabletheadjustfinished = true;
-
- $textbuffer = $tablehf['textbuffer'];
-
- $align = $tablehf['a'];
- //Align
- $this->divalign=$align;
- $this->x = $x;
-
- if ($this->ColActive) {
- if ($table['borders_separate']) {
- $tablefill = isset($table['bgcolor'][-1]) ? $table['bgcolor'][-1] : 0;
- if ($tablefill) {
- $color = $this->ConvertColor($tablefill);
- if ($color) {
- $xadj = ($table['border_spacing_H']/2);
- $yadj = ($table['border_spacing_V']/2);
- $wadj = $table['border_spacing_H'];
- $hadj = $table['border_spacing_V'];
- if ($i == $firstrow && $horf=='H') { // Top
- $yadj += $table['padding']['T'] + $table['border_details']['T']['w'] ;
- $hadj += $table['padding']['T'] + $table['border_details']['T']['w'] ;
- }
- if (($i == ($lastrow) || (isset($tablehf['rowspan']) && ($i+$tablehf['rowspan']) == ($lastrow+1)) || (!isset($tablehf['rowspan']) && ($i+1) == ($lastrow+1))) && $horf=='F') { // Bottom
- $hadj += $table['padding']['B'] + $table['border_details']['B']['w'] ;
- }
- if ($colctr == 1) { // Left
- $xadj += $table['padding']['L'] + $table['border_details']['L']['w'] ;
- $wadj += $table['padding']['L'] + $table['border_details']['L']['w'] ;
- }
- if ($colctr == count($content[$i]) ) { // Right
- $wadj += $table['padding']['R'] + $table['border_details']['R']['w'] ;
- }
- $this->SetFColor($color);
- $this->Rect($x - $xadj, $y - $yadj, $w + $wadj, $h + $hadj, 'F');
- }
- }
- }
- }
-
- if ($table['empty_cells']!='hide' || !empty($textbuffer) || !$table['borders_separate']) { $paintcell = true; }
- else { $paintcell = false; }
-
- //Vertical align
- if ($R && INTVAL($R) > 0 && isset($va) && $va!='B') { $va='B';}
-
- if (!isset($va) || empty($va) || $va=='M') $this->y += ($h-$mih)/2;
- elseif (isset($va) && $va=='B') $this->y += $h-$mih;
-
-
- //TABLE ROW OR CELL FILL BGCOLOR
- $fill = 0;
- if (isset($tablehf['bgcolor']) && $tablehf['bgcolor'] && $tablehf['bgcolor']!='transparent') {
- $fill = $tablehf['bgcolor'];
- $leveladj = 6;
- }
- else if (isset($content[$i][0]['trbgcolor']) && $content[$i][0]['trbgcolor'] && $content[$i][0]['trbgcolor']!='transparent') { // Row color
- $fill = $content[$i][0]['trbgcolor'];
- $leveladj = 3;
- }
- if ($fill && $paintcell) {
- $color = $this->ConvertColor($fill);
- if ($color) {
- if ($table['borders_separate']) {
- if ($this->ColActive) {
- $this->SetFColor($color);
- $this->Rect($x+ ($table['border_spacing_H']/2), $y+ ($table['border_spacing_V']/2), $w- $table['border_spacing_H'], $h- $table['border_spacing_V'], 'F');
- }
- else {
- $this->tableBackgrounds[$level*9+$leveladj][] = array('gradient'=>false, 'x'=>($x + ($table['border_spacing_H']/2)), 'y'=>($y + ($table['border_spacing_V']/2)), 'w'=>($w - $table['border_spacing_H']), 'h'=>($h - $table['border_spacing_V']), 'col'=>$color);
- }
- }
- else {
- if ($this->ColActive) {
- $this->SetFColor($color);
- $this->Rect($x, $y, $w, $h, 'F');
- }
- else {
- $this->tableBackgrounds[$level*9+$leveladj][] = array('gradient'=>false, 'x'=>$x, 'y'=>$y, 'w'=>$w, 'h'=>$h, 'col'=>$color);
- }
- }
- }
- }
-
-
-/*-- BACKGROUNDS --*/
- if (isset($tablehf['gradient']) && $tablehf['gradient'] && $paintcell){
- $g = $this->grad->parseBackgroundGradient($tablehf['gradient']);
- if ($g) {
- if ($table['borders_separate']) {
- $px = $x+ ($table['border_spacing_H']/2);
- $py = $y+ ($table['border_spacing_V']/2);
- $pw = $w- $table['border_spacing_H'];
- $ph = $h- $table['border_spacing_V'];
- }
- else {
- $px = $x;
- $py = $y;
- $pw = $w;
- $ph = $h;
- }
- if ($this->ColActive) {
- $this->grad->Gradient($px, $py, $pw, $ph, $g['type'], $g['stops'], $g['colorspace'], $g['coords'], $g['extend']);
- }
- else {
- $this->tableBackgrounds[$level*9+7][] = array('gradient'=>true, 'x'=>$px, 'y'=>$py, 'w'=>$pw, 'h'=>$ph, 'gradtype'=>$g['type'], 'stops'=>$g['stops'], 'colorspace'=>$g['colorspace'], 'coords'=>$g['coords'], 'extend'=>$g['extend'], 'clippath'=>'');
- }
- }
- }
-
- if (isset($tablehf['background-image']) && $paintcell){
- if ($tablehf['background-image']['gradient'] && preg_match('/(-moz-)*(repeating-)*(linear|radial)-gradient/', $tablehf['background-image']['gradient'] )) {
- $g = $this->grad->parseMozGradient( $tablehf['background-image']['gradient'] );
- if ($g) {
- if ($table['borders_separate']) {
- $px = $x+ ($table['border_spacing_H']/2);
- $py = $y+ ($table['border_spacing_V']/2);
- $pw = $w- $table['border_spacing_H'];
- $ph = $h- $table['border_spacing_V'];
- }
- else {
- $px = $x;
- $py = $y;
- $pw = $w;
- $ph = $h;
- }
- if ($this->ColActive) {
- $this->grad->Gradient($px, $py, $pw, $ph, $g['type'], $g['stops'], $g['colorspace'], $g['coords'], $g['extend']);
- }
- else {
- $this->tableBackgrounds[$level*9+7][] = array('gradient'=>true, 'x'=>$px, 'y'=>$py, 'w'=>$pw, 'h'=>$ph, 'gradtype'=>$g['type'], 'stops'=>$g['stops'], 'colorspace'=>$g['colorspace'], 'coords'=>$g['coords'], 'extend'=>$g['extend'], 'clippath'=>'');
- }
- }
- }
- else if ($tablehf['background-image']['image_id']) { // Background pattern
- $n = count($this->patterns)+1;
- if ($table['borders_separate']) {
- $px = $x+ ($table['border_spacing_H']/2);
- $py = $y+ ($table['border_spacing_V']/2);
- $pw = $w- $table['border_spacing_H'];
- $ph = $h- $table['border_spacing_V'];
- }
- else {
- $px = $x;
- $py = $y;
- $pw = $w;
- $ph = $h;
- }
- if ($this->ColActive) {
- list($orig_w, $orig_h, $x_repeat, $y_repeat) = $this->_resizeBackgroundImage($tablehf['background-image']['orig_w'], $tablehf['background-image']['orig_h'], $pw, $ph, $tablehf['background-image']['resize'], $tablehf['background-image']['x_repeat'] , $tablehf['background-image']['y_repeat']);
- $this->patterns[$n] = array('x'=>$px, 'y'=>$py, 'w'=>$pw, 'h'=>$ph, 'pgh'=>$this->h, 'image_id'=>$tablehf['background-image']['image_id'], 'orig_w'=>$orig_w, 'orig_h'=>$orig_h, 'x_pos'=>$tablehf['background-image']['x_pos'] , 'y_pos'=>$tablehf['background-image']['y_pos'] , 'x_repeat'=>$x_repeat, 'y_repeat'=>$y_repeat, 'itype'=>$tablehf['background-image']['itype']);
- if ($tablehf['background-image']['opacity']>0 && $tablehf['background-image']['opacity']<1) { $opac = $this->SetAlpha($tablehf['background-image']['opacity'],'Normal',true); }
- else { $opac = ''; }
- $this->_out(sprintf('q /Pattern cs /P%d scn %s %.3F %.3F %.3F %.3F re f Q', $n, $opac, $px*_MPDFK, ($this->h-$py)*_MPDFK, $pw*_MPDFK, -$ph*_MPDFK));
- }
- else { // mPDF 5.3.99
- $this->tableBackgrounds[$level*9+8][] = array('x'=>$px, 'y'=>$py, 'w'=>$pw, 'h'=>$ph, 'image_id'=>$tablehf['background-image']['image_id'], 'orig_w'=>$tablehf['background-image']['orig_w'], 'orig_h'=>$tablehf['background-image']['orig_h'], 'x_pos'=>$tablehf['background-image']['x_pos'], 'y_pos'=>$tablehf['background-image']['y_pos'], 'x_repeat'=>$tablehf['background-image']['x_repeat'], 'y_repeat'=>$tablehf['background-image']['y_repeat'], 'clippath'=>'', 'resize'=>$tablehf['background-image']['resize'], 'opacity'=>$tablehf['background-image']['opacity'], 'itype'=>$tablehf['background-image']['itype']);
- }
- }
- }
-/*-- END BACKGROUNDS --*/
-
- //Cell Border
- if ($table['borders_separate'] && $paintcell && $border) {
- $this->_tableRect($x+ ($table['border_spacing_H']/2)+($border_details['L']['w'] /2), $y+ ($table['border_spacing_V']/2)+($border_details['T']['w'] /2), $w-$table['border_spacing_H']-($border_details['L']['w'] /2)-($border_details['R']['w'] /2), $h- $table['border_spacing_V']-($border_details['T']['w'] /2)-($border_details['B']['w']/2), $border, $border_details, false, $table['borders_separate']);
- }
- else if ($paintcell && $border) {
- $this->_tableRect($x, $y, $w, $h, $border, $border_details, true, $table['borders_separate']); // true causes buffer
- }
-
- //Print cell content
- //$this->divheight = $this->table_lineheight*$this->lineheight;
- if (!empty($textbuffer)) {
- if ($horf=='F' && preg_match('/{colsum([0-9]*)[_]*}/', $textbuffer[0][0], $m)) { // mPDF 5.3.92
- $rep = sprintf("%01.".intval($m[1])."f", $this->colsums[$colctr-1]);
- $textbuffer[0][0] = preg_replace('/{colsum[0-9_]*}/', $rep ,$textbuffer[0][0]);
- }
-
- if ($R) {
- $cellPtSize = $textbuffer[0][11] / $this->shrin_k;
- if (!$cellPtSize) { $cellPtSize = $this->default_font_size; }
- $cellFontHeight = ($cellPtSize/_MPDFK);
- $opx = $this->x;
- $opy = $this->y;
- $angle = INTVAL($R);
- // Only allow 45 - 90 degrees (when bottom-aligned) or -90
- if ($angle > 90) { $angle = 90; }
- else if ($angle > 0 && (isset($va) && $va!='B')) { $angle = 90; }
- else if ($angle > 0 && $angle <45) { $angle = 45; }
- else if ($angle < 0) { $angle = -90; }
- $offset = ((sin(deg2rad($angle))) * 0.37 * $cellFontHeight);
- if (isset($align) && $align =='R') {
- $this->x += ($w) + ($offset) - ($cellFontHeight/3) - ($padding['R'] + $border_details['R']['w']);
- }
- else if (!isset($align ) || $align =='C') {
- $this->x += ($w/2) + ($offset);
- }
- else {
- $this->x += ($offset) + ($cellFontHeight/3)+($padding['L'] + $border_details['L']['w']);
- }
- // mPDF 5.3.78
- $str = '';
- foreach($tablehf['textbuffer'] AS $t) { $str .= $t[0].' '; }
- $str = trim($str);
-
- if (!isset($va) || $va=='M') {
- $this->y -= ($h-$mih)/2; //Undo what was added earlier VERTICAL ALIGN
- if ($angle > 0) { $this->y += (($h-$mih)/2)+($padding['T'] + $border_details['T']['w']) + ($mih-($padding['T'] + $border_details['T']['w']+$border_details['B']['w']+$padding['B'])); }
- else if ($angle < 0) { $this->y += (($h-$mih)/2)+($padding['T'] + $border_details['T']['w']); }
- }
- else if (isset($va) && $va=='B') {
- $this->y -= $h-$mih; //Undo what was added earlier VERTICAL ALIGN
- if ($angle > 0) { $this->y += $h-($border_details['B']['w']+$padding['B']); }
- else if ($angle < 0) { $this->y += $h-$mih+($padding['T'] + $border_details['T']['w']); }
- }
- else if (isset($va) && $va=='T') {
- if ($angle > 0) { $this->y += $mih-($border_details['B']['w']+$padding['B']); }
- else if ($angle < 0) { $this->y += ($padding['T'] + $border_details['T']['w']); }
- }
-
- $this->Rotate($angle,$this->x,$this->y);
- $s_fs = $this->FontSizePt;
- $s_f = $this->FontFamily;
- $s_st = $this->FontStyle;
- // mPDF 5.3.54
- if (!empty($textbuffer[0][3])) { //Font Color
- $cor = $textbuffer[0][3];
- $this->SetTColor($cor);
- }
- $s_str = $this->strike;
- $this->strike = $textbuffer[0][8]; //Strikethrough
- $this->SetFont($textbuffer[0][4],$textbuffer[0][2],$cellPtSize,true,true);
- $this->Text($this->x,$this->y,$str);
- $this->Rotate(0);
- $this->SetFont($s_f,$s_st,$s_fs,true,true);
- $this->SetTColor(0); // mPDF 5.3.54
- $this->strike = $s_str; // mPDF 5.3.54
- $this->x = $opx;
- $this->y = $opy;
- }
- else {
- if ($table['borders_separate']) { // NB twice border width
- $xadj = $border_details['L']['w'] + $padding['L'] +($table['border_spacing_H']/2);
- $wadj = $border_details['L']['w'] + $border_details['R']['w'] + $padding['L'] +$padding['R'] + $table['border_spacing_H'];
- $yadj = $border_details['T']['w'] + $padding['T'] + ($table['border_spacing_H']/2);
- }
- else {
- $xadj = $border_details['L']['w']/2 + $padding['L'];
- $wadj = ($border_details['L']['w'] + $border_details['R']['w'])/2 + $padding['L'] + $padding['R'];
- $yadj = $border_details['T']['w']/2 + $padding['T'];
- }
-
- $this->divwidth=$w-($wadj);
- $this->x += $xadj;
- $this->y += $yadj;
- $this->printbuffer($textbuffer,'',true);
- }
-
- }
- $textbuffer = array();
-
-/*-- BACKGROUNDS --*/
- if (!$this->ColActive) {
- if (isset($content[$i][0]['trgradients']) && ($colctr==1 || $table['borders_separate'])) {
- $g = $this->grad->parseBackgroundGradient($content[$i][0]['trgradients']);
- if ($g) {
- $gx = $x0;
- $gy = $y;
- $gh = $h;
- $gw = $table['w'] - ($table['max_cell_border_width']['L']/2) - ($table['max_cell_border_width']['R']/2) - $table['margin']['L'] - $table['margin']['R'];
- if ($table['borders_separate']) {
- $gw -= ($table['padding']['L'] + $table['border_details']['L']['w'] + $table['padding']['R'] + $table['border_details']['R']['w'] + $table['border_spacing_H']);
- $s = '';
- $clx = $x+ ($table['border_spacing_H']/2);
- $cly = $y+ ($table['border_spacing_V']/2);
- $clw = $w- $table['border_spacing_H'];
- $clh = $h- $table['border_spacing_V'];
- // Set clipping path
- $s = ' q 0 w '; // Line width=0
- $s .= sprintf('%.3F %.3F m ', ($clx)*_MPDFK, ($this->h-($cly))*_MPDFK); // start point TL before the arc
- $s .= sprintf('%.3F %.3F l ', ($clx)*_MPDFK, ($this->h-($cly+$clh))*_MPDFK); // line to BL
- $s .= sprintf('%.3F %.3F l ', ($clx+$clw)*_MPDFK, ($this->h-($cly+$clh))*_MPDFK); // line to BR
- $s .= sprintf('%.3F %.3F l ', ($clx+$clw)*_MPDFK, ($this->h-($cly))*_MPDFK); // line to TR
- $s .= sprintf('%.3F %.3F l ', ($clx)*_MPDFK, ($this->h-($cly))*_MPDFK); // line to TL
- $s .= ' W n '; // Ends path no-op & Sets the clipping path
- $this->tableBackgrounds[$level*9+4][] = array('gradient'=>true, 'x'=>$gx + ($table['border_spacing_H']/2), 'y'=>$gy + ($table['border_spacing_V']/2), 'w'=>$gw - $table['border_spacing_V'], 'h'=>$gh - $table['border_spacing_H'], 'gradtype'=>$g['type'], 'stops'=>$g['stops'], 'colorspace'=>$g['colorspace'], 'coords'=>$g['coords'], 'extend'=>$g['extend'], 'clippath'=>$s);
- }
- else {
- $this->tableBackgrounds[$level*9+4][] = array('gradient'=>true, 'x'=>$gx, 'y'=>$gy, 'w'=>$gw, 'h'=>$gh, 'gradtype'=>$g['type'], 'stops'=>$g['stops'], 'colorspace'=>$g['colorspace'], 'coords'=>$g['coords'], 'extend'=>$g['extend'], 'clippath'=>'');
- }
- }
- }
-
- if (isset($content[$i][0]['trbackground-images']) && ($colctr==1 || $table['borders_separate'])) {
- if ($content[$i][0]['trbackground-images']['gradient'] && preg_match('/(-moz-)*(repeating-)*(linear|radial)-gradient/', $content[$i][0]['trbackground-images']['gradient'] )) {
- $g = $this->grad->parseMozGradient( $content[$i][0]['trbackground-images']['gradient'] );
- if ($g) {
- $gx = $x0;
- $gy = $y;
- $gh = $h;
- $gw = $table['w'] - ($table['max_cell_border_width']['L']/2) - ($table['max_cell_border_width']['R']/2) - $table['margin']['L'] - $table['margin']['R'];
- if ($table['borders_separate']) {
- $gw -= ($table['padding']['L'] + $table['border_details']['L']['w'] + $table['padding']['R'] + $table['border_details']['R']['w'] + $table['border_spacing_H']);
- $s = '';
- $clx = $x+ ($table['border_spacing_H']/2);
- $cly = $y+ ($table['border_spacing_V']/2);
- $clw = $w- $table['border_spacing_H'];
- $clh = $h- $table['border_spacing_V'];
- // Set clipping path
- $s = ' q 0 w '; // Line width=0
- $s .= sprintf('%.3F %.3F m ', ($clx)*_MPDFK, ($this->h-($cly))*_MPDFK); // start point TL before the arc
- $s .= sprintf('%.3F %.3F l ', ($clx)*_MPDFK, ($this->h-($cly+$clh))*_MPDFK); // line to BL
- $s .= sprintf('%.3F %.3F l ', ($clx+$clw)*_MPDFK, ($this->h-($cly+$clh))*_MPDFK); // line to BR
- $s .= sprintf('%.3F %.3F l ', ($clx+$clw)*_MPDFK, ($this->h-($cly))*_MPDFK); // line to TR
- $s .= sprintf('%.3F %.3F l ', ($clx)*_MPDFK, ($this->h-($cly))*_MPDFK); // line to TL
- $s .= ' W n '; // Ends path no-op & Sets the clipping path
- $this->tableBackgrounds[$level*9+4][] = array('gradient'=>true, 'x'=>$gx + ($table['border_spacing_H']/2), 'y'=>$gy + ($table['border_spacing_V']/2), 'w'=>$gw - $table['border_spacing_V'], 'h'=>$gh - $table['border_spacing_H'], 'gradtype'=>$g['type'], 'stops'=>$g['stops'], 'colorspace'=>$g['colorspace'], 'coords'=>$g['coords'], 'extend'=>$g['extend'], 'clippath'=>$s);
- }
- else {
- $this->tableBackgrounds[$level*9+4][] = array('gradient'=>true, 'x'=>$gx, 'y'=>$gy, 'w'=>$gw, 'h'=>$gh, 'gradtype'=>$g['type'], 'stops'=>$g['stops'], 'colorspace'=>$g['colorspace'], 'coords'=>$g['coords'], 'extend'=>$g['extend'], 'clippath'=>'');
- }
- }
- }
- else {
- $image_id = $content[$i][0]['trbackground-images']['image_id'];
- $orig_w = $content[$i][0]['trbackground-images']['orig_w'];
- $orig_h = $content[$i][0]['trbackground-images']['orig_h'];
- $x_pos = $content[$i][0]['trbackground-images']['x_pos'];
- $y_pos = $content[$i][0]['trbackground-images']['y_pos'];
- $x_repeat = $content[$i][0]['trbackground-images']['x_repeat'];
- $y_repeat = $content[$i][0]['trbackground-images']['y_repeat'];
- $resize = $content[$i][0]['trbackground-images']['resize'];
- $opacity = $content[$i][0]['trbackground-images']['opacity'];
- $itype = $content[$i][0]['trbackground-images']['itype']; // mPDF 5.3.99
-
- $clippath = '';
- $gx = $x0;
- $gy = $y;
- $gh = $h;
- $gw = $table['w'] - ($table['max_cell_border_width']['L']/2) - ($table['max_cell_border_width']['R']/2) - $table['margin']['L'] - $table['margin']['R'];
- if ($table['borders_separate']) {
- $gw -= ($table['padding']['L'] + $table['border_details']['L']['w'] + $table['padding']['R'] + $table['border_details']['R']['w'] + $table['border_spacing_H']);
- $s = '';
- $clx = $x+ ($table['border_spacing_H']/2);
- $cly = $y+ ($table['border_spacing_V']/2);
- $clw = $w- $table['border_spacing_H'];
- $clh = $h- $table['border_spacing_V'];
- // Set clipping path
- $s = ' q 0 w '; // Line width=0
- $s .= sprintf('%.3F %.3F m ', ($clx)*_MPDFK, ($this->h-($cly))*_MPDFK); // start point TL before the arc
- $s .= sprintf('%.3F %.3F l ', ($clx)*_MPDFK, ($this->h-($cly+$clh))*_MPDFK); // line to BL
- $s .= sprintf('%.3F %.3F l ', ($clx+$clw)*_MPDFK, ($this->h-($cly+$clh))*_MPDFK); // line to BR
- $s .= sprintf('%.3F %.3F l ', ($clx+$clw)*_MPDFK, ($this->h-($cly))*_MPDFK); // line to TR
- $s .= sprintf('%.3F %.3F l ', ($clx)*_MPDFK, ($this->h-($cly))*_MPDFK); // line to TL
- $s .= ' W n '; // Ends path no-op & Sets the clipping path
- $this->tableBackgrounds[$level*9+5][] = array('x'=>$gx + ($table['border_spacing_H']/2), 'y'=>$gy + ($table['border_spacing_V']/2), 'w'=>$gw - $table['border_spacing_V'], 'h'=>$gh - $table['border_spacing_H'], 'image_id'=>$image_id, 'orig_w'=>$orig_w, 'orig_h'=>$orig_h, 'x_pos'=>$x_pos, 'y_pos'=>$y_pos, 'x_repeat'=>$x_repeat, 'y_repeat'=>$y_repeat, 'clippath'=>$s, 'resize'=>$resize, 'opacity'=>$opacity, 'itype'=>$itype);
- }
- else {
- $this->tableBackgrounds[$level*9+5][] = array('x'=>$gx, 'y'=>$gy, 'w'=>$gw, 'h'=>$gh, 'image_id'=>$image_id, 'orig_w'=>$orig_w, 'orig_h'=>$orig_h, 'x_pos'=>$x_pos, 'y_pos'=>$y_pos, 'x_repeat'=>$x_repeat, 'y_repeat'=>$y_repeat, 'clippath'=>'', 'resize'=>$resize, 'opacity'=>$opacity, 'itype'=>$itype);
- }
- }
- }
- }
-/*-- END BACKGROUNDS --*/
-
- // TABLE BORDER - if separate OR collapsed and only table border
- // mPDF 5.3.15
- if (($table['borders_separate'] || ($this->simpleTables && !$table['simple']['border'])) && $table['border']) {
- $halfspaceL = $table['padding']['L'] + ($table['border_spacing_H']/2);
- $halfspaceR = $table['padding']['R'] + ($table['border_spacing_H']/2);
- $halfspaceT = $table['padding']['T'] + ($table['border_spacing_V']/2);
- $halfspaceB = $table['padding']['B'] + ($table['border_spacing_V']/2);
- $tbx = $x;
- $tby = $y;
- $tbw = $w;
- $tbh = $h;
- $tab_bord = 0;
- $corner = '';
- if ($i == $firstrow && $horf=='H') { // Top
- $tby -= $halfspaceT + ($table['border_details']['T']['w']/2);
- $tbh += $halfspaceT + ($table['border_details']['T']['w']/2);
- $this->setBorder($tab_bord , _BORDER_TOP);
- $corner .= 'T';
- }
- // mPDF 5.3.15
- if (($i == ($lastrow) || (isset($tablehf['rowspan']) && ($i+$tablehf['rowspan']) == ($lastrow+1))) && $horf=='F') { // Bottom
- $tbh += $halfspaceB + ($table['border_details']['B']['w']/2);
- $this->setBorder($tab_bord , _BORDER_BOTTOM);
- $corner .= 'B';
- }
- if ($colctr == 1 && $firstSpread) { // Left // mPDF 5.3.36
- $tbx -= $halfspaceL + ($table['border_details']['L']['w']/2);
- $tbw += $halfspaceL + ($table['border_details']['L']['w']/2);
- $this->setBorder($tab_bord , _BORDER_LEFT);
- $corner .= 'L';
- }
- if ($colctr == count($content[$i]) && $finalSpread) { // Right // mPDF 5.3.36
- $tbw += $halfspaceR + ($table['border_details']['R']['w']/2);
- $this->setBorder($tab_bord , _BORDER_RIGHT);
- $corner .= 'R';
- }
- $this->_tableRect($tbx, $tby, $tbw, $tbh, $tab_bord , $table['border_details'], false, $table['borders_separate'], 'table', $corner, $table['border_spacing_V'], $table['border_spacing_H'] );
- }
-
-
- }// end column $content
- $this->y = $y + $h; //Update y coordinate
- }// end row $i
- unset($table );
- $this->colsums = array(); // mPDF 5.3.92
- }
-}
-/*-- END TABLES --*/
-
-/*-- HTMLHEADERS-FOOTERS --*/
-function SetHTMLHeader($header='',$OE='',$write=false) {
-
- $height = 0;
- if (is_array($header) && isset($header['html']) && $header['html']) {
- $Hhtml = $header['html'];
- if ($this->setAutoTopMargin) {
- if (isset($header['h'])) { $height = $header['h']; }
- else { $height = $this->_gethtmlheight($Hhtml); }
- }
- }
- else if (!is_array($header) && $header) {
- $Hhtml = $header;
- if ($this->setAutoTopMargin) { $height = $this->_gethtmlheight($Hhtml); }
- }
- else { $Hhtml = ''; }
-
- if ($OE != 'E') { $OE = 'O'; }
- if ($OE == 'E') {
-
- if ($Hhtml) {
- $this->HTMLHeaderE['html'] = $Hhtml;
- $this->HTMLHeaderE['h'] = $height;
- }
- else { $this->HTMLHeaderE = ''; }
- }
- else {
-
- if ($Hhtml) {
- $this->HTMLHeader['html'] = $Hhtml;
- $this->HTMLHeader['h'] = $height;
- }
- else { $this->HTMLHeader = ''; }
- }
- if (!$this->mirrorMargins && $OE == 'E') { return; }
- if ($Hhtml=='') { return; }
- if ($OE == 'E') {
- $this->headerDetails['even'] = array(); // override and clear any other non-HTML header/footer
- }
- else {
- $this->headerDetails['odd'] = array(); // override and clear any non-HTML other header/footer
- }
-
- if ($this->setAutoTopMargin=='pad') {
- $this->tMargin = $this->margin_header + $height + $this->orig_tMargin;
- if (isset($this->saveHTMLHeader[$this->page][$OE]['mt'])) { $this->saveHTMLHeader[$this->page][$OE]['mt'] = $this->tMargin; }
- }
- else if ($this->setAutoTopMargin=='stretch') {
- $this->tMargin = max($this->orig_tMargin, $this->margin_header + $height + $this->autoMarginPadding);
- if (isset($this->saveHTMLHeader[$this->page][$OE]['mt'])) { $this->saveHTMLHeader[$this->page][$OE]['mt'] = $this->tMargin; }
- }
- if ($write && $this->state!=0 && (($this->mirrorMargins && $OE == 'E' && ($this->page)%2==0) || ($this->mirrorMargins && $OE != 'E' && ($this->page)%2==1) || !$this->mirrorMargins)) { $this->writeHTMLHeaders(); }
-}
-
-function SetHTMLFooter($footer='',$OE='') {
-
- $height = 0;
- if (is_array($footer) && isset($footer['html']) && $footer['html']) {
- $Fhtml = $footer['html'];
- if ($this->setAutoBottomMargin) {
- if (isset($footer['h'])) { $height = $footer['h']; }
- else { $height = $this->_gethtmlheight($Fhtml); }
- }
- }
- else if (!is_array($footer) && $footer) {
- $Fhtml = $footer;
- if ($this->setAutoBottomMargin) { $height = $this->_gethtmlheight($Fhtml); }
- }
- else { $Fhtml = ''; }
-
- if ($OE != 'E') { $OE = 'O'; }
- if ($OE == 'E') {
-
- if ($Fhtml) {
- $this->HTMLFooterE['html'] = $Fhtml;
- $this->HTMLFooterE['h'] = $height;
- }
- else { $this->HTMLFooterE = ''; }
- }
- else {
-
- if ($Fhtml) {
- $this->HTMLFooter['html'] = $Fhtml;
- $this->HTMLFooter['h'] = $height;
- }
- else { $this->HTMLFooter = ''; }
- }
- if (!$this->mirrorMargins && $OE == 'E') { return; }
- if ($Fhtml=='') { return false; }
- if ($OE == 'E') {
- $this->footerDetails['even'] = array(); // override and clear any other header/footer
- }
- else {
- $this->footerDetails['odd'] = array(); // override and clear any other header/footer
- }
-
- if ($this->setAutoBottomMargin=='pad') {
- $this->bMargin = $this->margin_footer + $height + $this->orig_bMargin;
- $this->PageBreakTrigger=$this->h-$this->bMargin ;
- if (isset($this->saveHTMLHeader[$this->page][$OE]['mb'])) { $this->saveHTMLHeader[$this->page][$OE]['mb'] = $this->bMargin; }
- }
- else if ($this->setAutoBottomMargin=='stretch') {
- $this->bMargin = max($this->orig_bMargin, $this->margin_footer + $height + $this->autoMarginPadding);
- $this->PageBreakTrigger=$this->h-$this->bMargin ;
- if (isset($this->saveHTMLHeader[$this->page][$OE]['mb'])) { $this->saveHTMLHeader[$this->page][$OE]['mb'] = $this->bMargin; }
- }
-}
-
-
-function _getHtmlHeight($html) {
- $save_state = $this->state;
- if($this->state==0) {
- $this->AddPage($this->CurOrientation);
- }
- $this->state = 2;
- $this->Reset();
- $this->pageoutput[$this->page] = array();
- $save_x = $this->x;
- $save_y = $this->y;
- $this->x = $this->lMargin;
- $this->y = $this->margin_header;
- $html = str_replace('{PAGENO}',$this->pagenumPrefix.$this->docPageNum($this->page).$this->pagenumSuffix,$html);
- $html = str_replace($this->aliasNbPgGp,$this->nbpgPrefix.$this->docPageNumTotal($this->page).$this->nbpgSuffix,$html );
- $html = str_replace($this->aliasNbPg,$this->page,$html );
- $html = preg_replace('/\{DATE\s+(.*?)\}/e',"date('\\1')",$html );
- $this->HTMLheaderPageLinks = array();
- $this->HTMLheaderPageAnnots = array();
- $this->HTMLheaderPageForms = array();
- $savepb = $this->pageBackgrounds;
- $this->writingHTMLheader = true;
- $this->WriteHTML($html , 4); // parameter 4 saves output to $this->headerbuffer
- $this->writingHTMLheader = false;
- $h = ($this->y - $this->margin_header);
- $this->Reset();
- $this->pageoutput[$this->page] = array();
- $this->headerbuffer = '';
- $this->pageBackgrounds = $savepb;
- $this->x = $save_x;
- $this->y = $save_y;
- $this->state = $save_state;
- if($save_state==0) {
- unset($this->pages[1]);
- $this->page = 0;
- }
- return $h;
-}
-
-
-// Called internally from Header
-function writeHTMLHeaders() {
-
- if ($this->mirrorMargins && ($this->page)%2==0) { $OE = 'E'; } // EVEN
- else { $OE = 'O'; }
- if ($OE == 'E') {
- $this->saveHTMLHeader[$this->page][$OE]['html'] = $this->HTMLHeaderE['html'] ;
- }
- else {
- $this->saveHTMLHeader[$this->page][$OE]['html'] = $this->HTMLHeader['html'] ;
- }
- if ($this->forcePortraitHeaders && $this->CurOrientation=='L' && $this->CurOrientation!=$this->DefOrientation) {
- $this->saveHTMLHeader[$this->page][$OE]['rotate'] = true;
- $this->saveHTMLHeader[$this->page][$OE]['ml'] = $this->tMargin;
- $this->saveHTMLHeader[$this->page][$OE]['mr'] = $this->bMargin;
- $this->saveHTMLHeader[$this->page][$OE]['mh'] = $this->margin_header;
- $this->saveHTMLHeader[$this->page][$OE]['mf'] = $this->margin_footer;
- $this->saveHTMLHeader[$this->page][$OE]['pw'] = $this->h;
- $this->saveHTMLHeader[$this->page][$OE]['ph'] = $this->w;
- }
- else {
- $this->saveHTMLHeader[$this->page][$OE]['ml'] = $this->lMargin;
- $this->saveHTMLHeader[$this->page][$OE]['mr'] = $this->rMargin;
- $this->saveHTMLHeader[$this->page][$OE]['mh'] = $this->margin_header;
- $this->saveHTMLHeader[$this->page][$OE]['mf'] = $this->margin_footer;
- $this->saveHTMLHeader[$this->page][$OE]['pw'] = $this->w;
- $this->saveHTMLHeader[$this->page][$OE]['ph'] = $this->h;
- }
-}
-
-function writeHTMLFooters() {
-
- if ($this->mirrorMargins && ($this->page)%2==0) { $OE = 'E'; } // EVEN
- else { $OE = 'O'; }
- if ($OE == 'E') {
- $this->saveHTMLFooter[$this->page][$OE]['html'] = $this->HTMLFooterE['html'] ;
- }
- else {
- $this->saveHTMLFooter[$this->page][$OE]['html'] = $this->HTMLFooter['html'] ;
- }
- if ($this->forcePortraitHeaders && $this->CurOrientation=='L' && $this->CurOrientation!=$this->DefOrientation) {
- $this->saveHTMLFooter[$this->page][$OE]['rotate'] = true;
- $this->saveHTMLFooter[$this->page][$OE]['ml'] = $this->tMargin;
- $this->saveHTMLFooter[$this->page][$OE]['mr'] = $this->bMargin;
- $this->saveHTMLFooter[$this->page][$OE]['mt'] = $this->rMargin;
- $this->saveHTMLFooter[$this->page][$OE]['mb'] = $this->lMargin;
- $this->saveHTMLFooter[$this->page][$OE]['mh'] = $this->margin_header;
- $this->saveHTMLFooter[$this->page][$OE]['mf'] = $this->margin_footer;
- $this->saveHTMLFooter[$this->page][$OE]['pw'] = $this->h;
- $this->saveHTMLFooter[$this->page][$OE]['ph'] = $this->w;
- }
- else {
- $this->saveHTMLFooter[$this->page][$OE]['ml'] = $this->lMargin;
- $this->saveHTMLFooter[$this->page][$OE]['mr'] = $this->rMargin;
- $this->saveHTMLFooter[$this->page][$OE]['mt'] = $this->tMargin;
- $this->saveHTMLFooter[$this->page][$OE]['mb'] = $this->bMargin;
- $this->saveHTMLFooter[$this->page][$OE]['mh'] = $this->margin_header;
- $this->saveHTMLFooter[$this->page][$OE]['mf'] = $this->margin_footer;
- $this->saveHTMLFooter[$this->page][$OE]['pw'] = $this->w;
- $this->saveHTMLFooter[$this->page][$OE]['ph'] = $this->h;
- }
-}
-/*-- END HTMLHEADERS-FOOTERS --*/
-
-function DefHeaderByName($name,$arr) {
- if (!$name) { $name = '_default'; }
- $this->pageheaders[$name] = $arr;
-}
-
-function DefFooterByName($name,$arr) {
- if (!$name) { $name = '_default'; }
- $this->pagefooters[$name] = $arr;
-}
-
-function SetHeaderByName($name,$side='O',$write=false) {
- if (!$name) { $name = '_default'; }
- if ($side=='E') { $this->headerDetails['even'] = $this->pageheaders[$name]; }
- else { $this->headerDetails['odd'] = $this->pageheaders[$name]; }
- if ($write) { $this->Header(); }
-}
-
-function SetFooterByName($name,$side='O') {
- if (!$name) { $name = '_default'; }
- if ($side=='E') { $this->footerDetails['even'] = $this->pagefooters[$name]; }
- else { $this->footerDetails['odd'] = $this->pagefooters[$name]; }
-}
-
-/*-- HTMLHEADERS-FOOTERS --*/
-function DefHTMLHeaderByName($name,$html) {
- if (!$name) { $name = '_default'; }
-
- $this->pageHTMLheaders[$name]['html'] = $html;
- $this->pageHTMLheaders[$name]['h'] = $this->_gethtmlheight($html);
-}
-
-function DefHTMLFooterByName($name,$html) {
- if (!$name) { $name = '_default'; }
-
- $this->pageHTMLfooters[$name]['html'] = $html;
- $this->pageHTMLfooters[$name]['h'] = $this->_gethtmlheight($html);
-}
-
-function SetHTMLHeaderByName($name,$side='O',$write=false) {
- if (!$name) { $name = '_default'; }
- $this->SetHTMLHeader($this->pageHTMLheaders[$name],$side,$write);
-}
-
-function SetHTMLFooterByName($name,$side='O') {
- if (!$name) { $name = '_default'; }
- $this->SetHTMLFooter($this->pageHTMLfooters[$name],$side,$write);
-}
-/*-- END HTMLHEADERS-FOOTERS --*/
-
-
-function SetHeader($Harray=array(),$side='',$write=false) {
- if (is_string($Harray)) {
- if (strlen($Harray)==0) {
- if ($side=='O') { $this->headerDetails['odd'] = array(); }
- else if ($side=='E') { $this->headerDetails['even'] = array(); }
- else { $this->headerDetails = array(); }
- }
- else if (strpos($Harray,'|') || strpos($Harray,'|')===0) {
- $hdet = explode('|',$Harray);
- $this->headerDetails = array (
- 'odd' => array (
- 'L' => array ('content' => $hdet[0], 'font-size' => $this->defaultheaderfontsize, 'font-style' => $this->defaultheaderfontstyle),
- 'C' => array ('content' => $hdet[1], 'font-size' => $this->defaultheaderfontsize, 'font-style' => $this->defaultheaderfontstyle),
- 'R' => array ('content' => $hdet[2], 'font-size' => $this->defaultheaderfontsize, 'font-style' => $this->defaultheaderfontstyle),
- 'line' => $this->defaultheaderline,
- ),
- 'even' => array (
- 'R' => array ('content' => $hdet[0], 'font-size' => $this->defaultheaderfontsize, 'font-style' => $this->defaultheaderfontstyle),
- 'C' => array ('content' => $hdet[1], 'font-size' => $this->defaultheaderfontsize, 'font-style' => $this->defaultheaderfontstyle),
- 'L' => array ('content' => $hdet[2], 'font-size' => $this->defaultheaderfontsize, 'font-style' => $this->defaultheaderfontstyle),
- 'line' => $this->defaultheaderline,
- )
- );
- }
- else {
- $this->headerDetails = array (
- 'odd' => array (
- 'R' => array ('content' => $Harray, 'font-size' => $this->defaultheaderfontsize, 'font-style' => $this->defaultheaderfontstyle),
- 'line' => $this->defaultheaderline,
- ),
- 'even' => array (
- 'L' => array ('content' => $Harray, 'font-size' => $this->defaultheaderfontsize, 'font-style' => $this->defaultheaderfontstyle),
- 'line' => $this->defaultheaderline,
- )
- );
- }
- }
- else if (is_array($Harray)) {
- if ($side=='O') { $this->headerDetails['odd'] = $Harray; }
- else if ($side=='E') { $this->headerDetails['even'] = $Harray; }
- else { $this->headerDetails = $Harray; }
- }
-/*-- HTMLHEADERS-FOOTERS --*/
- // Overwrite any HTML Header previously set
- if ($side=='E') { $this->SetHTMLHeader('','E'); }
- else if ($side=='O') { $this->SetHTMLHeader(''); }
- else {
- $this->SetHTMLHeader('');
- $this->SetHTMLHeader('','E');
- }
-/*-- END HTMLHEADERS-FOOTERS --*/
-
- if ($write) {
- $save_y = $this->y;
- $this->Header();
- $this->SetY($save_y) ;
- }
-}
-
-
-
-
-function SetFooter($Farray=array(),$side='') {
- if (is_string($Farray)) {
- if (strlen($Farray)==0) {
- if ($side=='O') { $this->footerDetails['odd'] = array(); }
- else if ($side=='E') { $this->footerDetails['even'] = array(); }
- else { $this->footerDetails = array(); }
- }
- else if (strpos($Farray,'|') || strpos($Farray,'|')===0) {
- $fdet = explode('|',$Farray);
- $this->footerDetails = array (
- 'odd' => array (
- 'L' => array ('content' => $fdet[0], 'font-size' => $this->defaultfooterfontsize, 'font-style' => $this->defaultfooterfontstyle),
- 'C' => array ('content' => $fdet[1], 'font-size' => $this->defaultfooterfontsize, 'font-style' => $this->defaultfooterfontstyle),
- 'R' => array ('content' => $fdet[2], 'font-size' => $this->defaultfooterfontsize, 'font-style' => $this->defaultfooterfontstyle),
- 'line' => $this->defaultfooterline,
- ),
- 'even' => array (
- 'R' => array ('content' => $fdet[0], 'font-size' => $this->defaultfooterfontsize, 'font-style' => $this->defaultfooterfontstyle),
- 'C' => array ('content' => $fdet[1], 'font-size' => $this->defaultfooterfontsize, 'font-style' => $this->defaultfooterfontstyle),
- 'L' => array ('content' => $fdet[2], 'font-size' => $this->defaultfooterfontsize, 'font-style' => $this->defaultfooterfontstyle),
- 'line' => $this->defaultfooterline,
- )
- );
- }
- else {
- $this->footerDetails = array (
- 'odd' => array (
- 'R' => array ('content' => $Farray, 'font-size' => $this->defaultfooterfontsize, 'font-style' => $this->defaultfooterfontstyle),
- 'line' => $this->defaultfooterline,
- ),
- 'even' => array (
- 'L' => array ('content' => $Farray, 'font-size' => $this->defaultfooterfontsize, 'font-style' => $this->defaultfooterfontstyle),
- 'line' => $this->defaultfooterline,
- )
- );
- }
- }
- else if (is_array($Farray)) {
- if ($side=='O') { $this->footerDetails['odd'] = $Farray; }
- else if ($side=='E') { $this->footerDetails['even'] = $Farray; }
- else { $this->footerDetails = $Farray; }
- }
-/*-- HTMLHEADERS-FOOTERS --*/
- // Overwrite any HTML Footer previously set
- if ($side=='E') { $this->SetHTMLFooter('','E'); }
- else if ($side=='O') { $this->SetHTMLFooter(''); }
- else {
- $this->SetHTMLFooter('');
- $this->SetHTMLFooter('','E');
- }
-/*-- END HTMLHEADERS-FOOTERS --*/
-}
-
-/*-- WATERMARK --*/
-function setUnvalidatedText($txt='', $alpha=-1) {
- if ($alpha>=0) $this->watermarkTextAlpha = $alpha;
- $this->watermarkText = $txt;
-}
-function SetWatermarkText($txt='', $alpha=-1) {
- if ($alpha>=0) $this->watermarkTextAlpha = $alpha;
- $this->watermarkText = $txt;
-}
-
-function SetWatermarkImage($src, $alpha=-1, $size='D', $pos='F') {
- if ($alpha>=0) $this->watermarkImageAlpha = $alpha;
- $this->watermarkImage = $src;
- $this->watermark_size = $size;
- $this->watermark_pos = $pos;
-}
-/*-- END WATERMARK --*/
-
-
-//Page footer
-function Footer() {
-/*-- CSS-PAGE --*/
- // PAGED MEDIA - CROP / CROSS MARKS from @PAGE
- if ($this->show_marks == 'CROP' || $this->show_marks == 'CROPCROSS') {
- // Show TICK MARKS
- $this->SetLineWidth(0.1); // = 0.1 mm
- $this->SetDColor($this->ConvertColor(0));
- $l = $this->cropMarkLength;
- $m = $this->cropMarkMargin; // Distance of crop mark from margin
- $b = $this->nonPrintMargin; // Non-printable border at edge of paper sheet
- $ax1 = $b;
- $bx = $this->page_box['outer_width_LR'] - $m;
- $ax = max($ax1, $bx-$l);
- $cx1 = $this->w - $b;
- $dx = $this->w - $this->page_box['outer_width_LR'] + $m;
- $cx = min($cx1, $dx+$l);
- $ay1 = $b;
- $by = $this->page_box['outer_width_TB'] - $m;
- $ay = max($ay1, $by-$l);
- $cy1 = $this->h - $b;
- $dy = $this->h - $this->page_box['outer_width_TB'] + $m;
- $cy = min($cy1, $dy+$l);
-
- $this->Line($ax, $this->page_box['outer_width_TB'], $bx, $this->page_box['outer_width_TB']);
- $this->Line($cx, $this->page_box['outer_width_TB'], $dx, $this->page_box['outer_width_TB']);
- $this->Line($ax, $this->h - $this->page_box['outer_width_TB'], $bx, $this->h - $this->page_box['outer_width_TB']);
- $this->Line($cx, $this->h - $this->page_box['outer_width_TB'], $dx, $this->h - $this->page_box['outer_width_TB']);
- $this->Line($this->page_box['outer_width_LR'], $ay, $this->page_box['outer_width_LR'], $by);
- $this->Line($this->page_box['outer_width_LR'], $cy, $this->page_box['outer_width_LR'], $dy);
- $this->Line($this->w - $this->page_box['outer_width_LR'], $ay, $this->w - $this->page_box['outer_width_LR'], $by);
- $this->Line($this->w - $this->page_box['outer_width_LR'], $cy, $this->w - $this->page_box['outer_width_LR'], $dy);
-
- if ($this->printers_info) {
- $hd = date('Y-m-d H:i').' Page '.$this->page.' of {nb}';
- $this->SetTColor($this->ConvertColor(0));
- $this->SetFont('arial','',7.5,true,true);
- $this->x = $this->page_box['outer_width_LR'] + 1.5;
- $this->y = 1;
- $this->Cell($headerpgwidth ,$this->FontSize,$hd,0,0,'L',0,'',0,0,0,'M');
- $this->SetFont($this->default_font,'',$this->original_default_font_size);
- }
-
- }
- if ($this->show_marks == 'CROSS' || $this->show_marks == 'CROPCROSS') {
- $this->SetLineWidth(0.1); // = 0.1 mm
- $this->SetDColor($this->ConvertColor(0));
- $l = 14 /2; // longer length of the cross line (half)
- $w = 6 /2; // shorter width of the cross line (half)
- $r = 1.2; // radius of circle
- $m = $this->crossMarkMargin; // Distance of cross mark from margin
- $x1 = $this->page_box['outer_width_LR'] - $m;
- $x2 = $this->w - $this->page_box['outer_width_LR'] + $m;
- $y1 = $this->page_box['outer_width_TB'] - $m;
- $y2 = $this->h - $this->page_box['outer_width_TB'] + $m;
- // Left
- $this->Circle($x1, $this->h/2, $r, 'S') ;
- $this->Line($x1-$w, $this->h/2, $x1+$w, $this->h/2);
- $this->Line($x1, $this->h/2-$l, $x1, $this->h/2+$l);
- // Right
- $this->Circle($x2, $this->h/2, $r, 'S') ;
- $this->Line($x2-$w, $this->h/2, $x2+$w, $this->h/2);
- $this->Line($x2, $this->h/2-$l, $x2, $this->h/2+$l);
- // Top
- $this->Circle($this->w/2, $y1, $r, 'S') ;
- $this->Line($this->w/2, $y1-$w, $this->w/2, $y1+$w);
- $this->Line($this->w/2-$l, $y1, $this->w/2+$l, $y1);
- // Bottom
- $this->Circle($this->w/2, $y2, $r, 'S') ;
- $this->Line($this->w/2, $y2-$w, $this->w/2, $y2+$w);
- $this->Line($this->w/2-$l, $y2, $this->w/2+$l, $y2);
- }
-
-
- // If @page set non-HTML headers/footers named, they were not read until later in the HTML code - so now set them
- if ($this->page==1) {
- if ($this->firstPageBoxHeader) {
- $this->headerDetails['odd'] = $this->pageheaders[$this->firstPageBoxHeader];
- $this->Header();
- }
- if ($this->firstPageBoxFooter) {
- $this->footerDetails['odd'] = $this->pagefooters[$this->firstPageBoxFooter];
- }
- $this->firstPageBoxHeader='';
- $this->firstPageBoxFooter='';
- }
-/*-- END CSS-PAGE --*/
-
-
-
-/*-- HTMLHEADERS-FOOTERS --*/
- if (($this->mirrorMargins && ($this->page%2==0) && $this->HTMLFooterE) || ($this->mirrorMargins && ($this->page%2==1) && $this->HTMLFooter) || (!$this->mirrorMargins && $this->HTMLFooter)) {
- $this->writeHTMLFooters();
-/*-- WATERMARK --*/
- if (($this->watermarkText) && ($this->showWatermarkText)) {
- $this->watermark( $this->watermarkText, 45, 120, $this->watermarkTextAlpha); // Watermark text
- }
- if (($this->watermarkImage) && ($this->showWatermarkImage)) {
- $this->watermarkImg( $this->watermarkImage, $this->watermarkImageAlpha); // Watermark image
- }
-/*-- END WATERMARK --*/
- return;
- }
-/*-- END HTMLHEADERS-FOOTERS --*/
-
- $this->processingHeader=true;
- $this->ResetMargins(); // necessary after columns
- $this->pgwidth = $this->w - $this->lMargin - $this->rMargin;
-/*-- WATERMARK --*/
- if (($this->watermarkText) && ($this->showWatermarkText)) {
- $this->watermark( $this->watermarkText, 45, 120, $this->watermarkTextAlpha); // Watermark text
- }
- if (($this->watermarkImage) && ($this->showWatermarkImage)) {
- $this->watermarkImg( $this->watermarkImage, $this->watermarkImageAlpha); // Watermark image
- }
-/*-- END WATERMARK --*/
- $h = $this->footerDetails;
- if(count($h)) {
-
- if ($this->forcePortraitHeaders && $this->CurOrientation=='L' && $this->CurOrientation!=$this->DefOrientation) {
- $this->_out(sprintf('q 0 -1 1 0 0 %.3F cm ',($this->h*_MPDFK)));
- $headerpgwidth = $this->h - $this->orig_lMargin - $this->orig_rMargin;
- if (($this->mirrorMargins) && (($this->page)%2==0)) { // EVEN
- $headerlmargin = $this->orig_rMargin;
- }
- else {
- $headerlmargin = $this->orig_lMargin;
- }
- }
- else {
- $yadj = 0;
- $headerpgwidth = $this->pgwidth;
- $headerlmargin = $this->lMargin;
- }
- $this->SetY(-$this->margin_footer);
-
- $this->SetTColor($this->ConvertColor(0));
- $this->SUP = false;
- $this->SUB = false;
- $this->bullet = false;
-
- // only show pagenumber if numbering on
- $pgno = $this->docPageNum($this->page, true);
-
- if (($this->mirrorMargins) && (($this->page)%2==0)) { // EVEN
- $side = 'even';
- }
- else { // ODD // OR NOT MIRRORING MARGINS/FOOTERS = DEFAULT
- $side = 'odd';
- }
- $maxfontheight = 0;
- foreach(array('L','C','R') AS $pos) {
- if (isset($h[$side][$pos]['content']) && $h[$side][$pos]['content']) {
- if (isset($h[$side][$pos]['font-size']) && $h[$side][$pos]['font-size']) { $hfsz = $h[$side][$pos]['font-size']; }
- else { $hfsz = $this->default_font_size; }
- $maxfontheight = max($maxfontheight,$hfsz);
- }
- }
- // LEFT-CENTER-RIGHT
- foreach(array('L','C','R') AS $pos) {
- if (isset($h[$side][$pos]['content']) && $h[$side][$pos]['content']) {
- $hd = str_replace('{PAGENO}',$pgno,$h[$side][$pos]['content']);
- $hd = str_replace($this->aliasNbPgGp,$this->nbpgPrefix.$this->aliasNbPgGp.$this->nbpgSuffix,$hd);
- $hd = preg_replace('/\{DATE\s+(.*?)\}/e',"date('\\1')",$hd);
- if (isset($h[$side][$pos]['font-family']) && $h[$side][$pos]['font-family']) { $hff = $h[$side][$pos]['font-family']; }
- else { $hff = $this->original_default_font; }
- if (isset($h[$side][$pos]['font-size']) && $h[$side][$pos]['font-size']) { $hfsz = $h[$side][$pos]['font-size']; }
- else { $hfsz = $this->original_default_font_size; }
- $maxfontheight = max($maxfontheight,$hfsz);
- if (isset($h[$side][$pos]['font-style']) && $h[$side][$pos]['font-style']) { $hfst = $h[$side][$pos]['font-style']; }
- else { $hfst = ''; }
- if (isset($h[$side][$pos]['color']) && $h[$side][$pos]['color']) {
- $hfcol = $h[$side][$pos]['color'];
- $cor = $this->ConvertColor($hfcol);
- if ($cor) { $this->SetTColor($cor); }
- }
- else { $hfcol = ''; }
- $this->SetFont($hff,$hfst,$hfsz,true,true);
- $this->x = $headerlmargin ;
- $this->y = $this->h - $this->margin_footer - ($maxfontheight/_MPDFK);
- $hd = $this->purify_utf8_text($hd);
- if ($this->text_input_as_HTML) {
- $hd = $this->all_entities_to_utf8($hd);
- }
- // CONVERT CODEPAGE
- if ($this->usingCoreFont) { $hd = mb_convert_encoding($hd,$this->mb_enc,'UTF-8'); }
- // DIRECTIONALITY RTL
- $this->magic_reverse_dir($hd, true, $this->directionality); // *RTL*
- // Font-specific ligature substitution for Indic fonts
- if (isset($this->CurrentFont['indic']) && $this->CurrentFont['indic']) $this->ConvertIndic($hd); // *INDIC*
- $align = $pos;
- if ($this->directionality == 'rtl') {
- if ($pos == 'L') { $align = 'R'; }
- else if ($pos == 'R') { $align = 'L'; }
- }
-
- if ($pos!='L' && (strpos($hd,$this->aliasNbPg)!==false || strpos($hd,$this->aliasNbPgGp)!==false)) {
- if (strpos($hd,$this->aliasNbPgGp)!==false) { $type= 'nbpggp'; } else { $type= 'nbpg'; }
- $this->_out('{mpdfheader'.$type.' '.$pos.' ff='.$hff.' fs='.$hfst.' fz='.$hfsz.'}');
- $this->Cell($headerpgwidth ,$maxfontheight/_MPDFK ,$hd,0,0,$align,0,'',0,0,0,'M');
- $this->_out('Q');
- }
- else {
- $this->Cell($headerpgwidth ,$maxfontheight/_MPDFK ,$hd,0,0,$align,0,'',0,0,0,'M');
- }
- if ($hfcol) { $this->SetTColor($this->ConvertColor(0)); }
- }
- }
- // Return Font to normal
- $this->SetFont($this->default_font,'',$this->original_default_font_size);
-
- // LINE
-
- if (isset($h[$side]['line']) && $h[$side]['line']) {
- $this->SetLineWidth(0.1);
- $this->SetDColor($this->ConvertColor(0));
- $this->Line($headerlmargin , $this->y-($maxfontheight*($this->footer_line_spacing)/_MPDFK), $headerlmargin +$headerpgwidth, $this->y-($maxfontheight*($this->footer_line_spacing)/_MPDFK));
- }
- if ($this->forcePortraitHeaders && $this->CurOrientation=='L' && $this->CurOrientation!=$this->DefOrientation) {
- $this->_out('Q');
- }
- }
- $this->processingHeader=false;
-
-}
-
-/*-- HYPHENATION --*/
-///////////////////
-///////////////////
-// HYPHENATION
-///////////////////
-// Soft hyphs
-function softHyphenate($word, $maxWidth) {
- // Don't hyphenate web addresses
- if (preg_match('/^(http:|www\.)/',$word)) { return array(false,'','',''); }
-
- // Get dictionary
- $poss = array();
- $softhyphens = array();
- $offset = 0;
- $p = true;
- if ($this->usingCoreFont) {
- $wl = strlen($word);
- }
- else {
- $wl = mb_strlen($word,'UTF-8');
- }
- while($offset < $wl) {
- // Soft Hyphens chr(173)
- if (!$this->usingCoreFont) {
- $p = mb_strpos($word, "\xc2\xad", $offset, 'UTF-8');
- }
- else if ($this->FontFamily!='csymbol' && $this->FontFamily!='czapfdingbats') {
- $p = strpos($word, chr(173), $offset);
- }
- if ($p !== false) { $poss[] = $p - count($poss); }
- else { break; }
- $offset = $p+1;
- }
- $success = false;
- foreach($poss AS $i) {
- if ($this->usingCoreFont) {
- $a = substr($word,0,$i);
- if ($this->GetStringWidth($a.'-') > $maxWidth) { break ; }
- $pre = $a;
- $post = substr($word,$i,strlen($word));
- $prelength = strlen($pre);
- }
- else {
- $a = mb_substr($word,0,$i,'UTF-8');
- if ($this->GetStringWidth($a.'-') > $maxWidth) { break ; }
- $pre = $a;
- $post = mb_substr($word,$i,mb_strlen($word,'UTF-8'),'UTF-8');
- $prelength = mb_strlen($pre, 'UTF-8');
- }
- $success = true;
- }
- return array($success,$pre,$post,$prelength);
-}
-
-///////////////////
-// Word hyphenation
-function hyphenateWord($word, $maxWidth) {
- // Do everything inside this function in utf-8
- // Don't hyphenate web addresses
- if (preg_match('/^(http:|www\.)/',$word)) { return array(false,'','',''); }
-
-
- // Get dictionary
- if (!$this->loadedSHYdictionary) {
- if (file_exists(_MPDF_PATH.'patterns/dictionary.txt')) {
- $this->SHYdictionary = file(_MPDF_PATH.'patterns/dictionary.txt',FILE_SKIP_EMPTY_LINES);
- foreach($this->SHYdictionary as $entry) {
- $entry = trim($entry);
- $poss = array();
- $offset = 0;
- $p = true;
- $wl = mb_strlen($entry ,'UTF-8');
- while($offset < $wl) {
- $p = mb_strpos($entry, '/', $offset, 'UTF-8');
- if ($p !== false) { $poss[] = $p - count($poss); }
- else { break; }
- $offset = $p+1;
- }
- if (count($poss)) { $this->SHYdictionaryWords[str_replace('/', '', mb_strtolower($entry))] = $poss; }
- }
- }
- $this->loadedSHYdictionary = true;
- }
-
- if (!in_array($this->SHYlang,$this->SHYlanguages)) { return array(false,'','',''); }
- // If no pattern loaded or not the best one
- if (count($this->SHYpatterns) < 1 || ($this->loadedSHYpatterns && $this->loadedSHYpatterns != $this->SHYlang)) {
- include(_MPDF_PATH."patterns/" . $this->SHYlang . ".php");
- $patterns = explode(' ', $patterns);
- $new_patterns = array();
- for($i = 0; $i < count($patterns); $i++) {
- $value = $patterns[$i];
- $new_patterns[preg_replace('/[0-9]/', '', $value)] = $value;
- }
- $this->SHYpatterns = $new_patterns;
- $this->loadedSHYpatterns = $this->SHYlang;
- }
-
- if ($this->usingCoreFont) { $word = mb_convert_encoding($word,'UTF-8',$this->mb_enc); }
-
- $prepre = '';
- $postpost = '';
- $startpunctuation = "\xc2\xab\xc2\xbf\xe2\x80\x98\xe2\x80\x9b\xe2\x80\x9c\xe2\x80\x9f";
- $endpunctuation = "\xe2\x80\x9e\xe2\x80\x9d\xe2\x80\x9a\xe2\x80\x99\xc2\xbb";
- $pre = '';
- $post = '';
-
-
- if (preg_match('/^(["\''.$startpunctuation .'])+(.{'.$this->SHYcharmin.',})$/u',$word,$m)) {
- $prepre = $m[1];
- $word = $m[2];
- }
- if (preg_match('/^(.{'.$this->SHYcharmin.',})([\'\.,;:!?"'.$endpunctuation .']+)$/u',$word,$m)) {
- $word = $m[1];
- $postpost = $m[2];
- }
- if(mb_strlen($word,'UTF-8') < $this->SHYcharmin) {
- return array(false,'','','');
- }
- $success = false;
-
- if(isset($this->SHYdictionaryWords[mb_strtolower($word)])) {
- foreach($this->SHYdictionaryWords[mb_strtolower($word)] AS $i) {
- $a = $prepre . mb_substr($word,0,$i,'UTF-8');
- if ($this->usingCoreFont) { $testa = mb_convert_encoding($a,$this->mb_enc,'UTF-8'); }
- else { $testa = $a; }
- if ($this->GetStringWidth($testa.'-') > $maxWidth) { break ; }
- $pre = $a;
- $post = mb_substr($word,$i,mb_strlen($word,'UTF-8'),'UTF-8') . $postpost;
- $success = true;
- }
- }
-
- if (!$success) {
- $text_word = '_' . $word . '_';
- $word_length = mb_strlen($text_word,'UTF-8');
-
- $single_character = preg_split('//u', $text_word);
-
- $text_word = mb_strtolower($text_word,'UTF-8');
- $hyphenated_word = array();
- $numb3rs = array('0' => true, '1' => true, '2' => true, '3' => true, '4' => true, '5' => true, '6' => true, '7' => true, '8' => true, '9' => true);
- for($position = 0; $position <= ($word_length - $this->SHYcharmin); $position++) {
- $maxwins = min(($word_length - $position), $this->SHYcharmax);
- for($win = $this->SHYcharmin; $win <= $maxwins; $win++) {
- if(isset($this->SHYpatterns[mb_substr($text_word, $position, $win,'UTF-8')])) {
- $pattern = $this->SHYpatterns[mb_substr($text_word, $position, $win,'UTF-8')];
- $digits = 1;
- $pattern_length = mb_strlen($pattern,'UTF-8');
- for($i = 0; $i < $pattern_length; $i++) {
- $char = $pattern[$i];
- if(isset($numb3rs[$char])) {
- $zero = ($i == 0) ? $position - 1 : $position + $i - $digits;
- if(!isset($hyphenated_word[$zero]) || $hyphenated_word[$zero] != $char) $hyphenated_word[$zero] = $char;
- $digits++;
- }
- }
- }
- }
- }
-
- for($i = $this->SHYleftmin; $i <= (mb_strlen($word,'UTF-8') - $this->SHYrightmin); $i++) {
- if(isset($hyphenated_word[$i]) && $hyphenated_word[$i] % 2 != 0) {
- $a = $prepre . mb_substr($word,0,$i,'UTF-8');
- if ($this->usingCoreFont) { $testa = mb_convert_encoding($a,$this->mb_enc,'UTF-8'); }
- else { $testa = $a; }
- if ($this->GetStringWidth($testa.'-') > $maxWidth + 0.0001) { break ; }
- $pre = $a;
- $post = mb_substr($word,$i,mb_strlen($word,'UTF-8'),'UTF-8') . $postpost;
- $success = true;
- }
- }
- }
- if ($this->usingCoreFont) {
- $pre = mb_convert_encoding($pre,$this->mb_enc,'UTF-8');
- $post = mb_convert_encoding($post,$this->mb_enc,'UTF-8');
- $prelength = strlen($pre);
- }
- else {
- $prelength = mb_strlen($pre);
- }
- return array($success,$pre,$post,$prelength);
-
-}
-/*-- END HYPHENATION --*/
-
-
-/*-- HTML-CSS --*/
-///////////////////
-/// HTML parser ///
-///////////////////
-function WriteHTML($html,$sub=0,$init=true,$close=true) {
- // $sub ADDED - 0 = default; 1=headerCSS only; 2=HTML body (parts) only; 3 - HTML parses only
- // 4 - writes HTML headers
- // $close Leaves buffers etc. in current state, so that it can continue a block etc.
- // $init - Clears and sets buffers to Top level block etc.
-
- if (empty($html)) { $html = ''; }
- if ($this->progressBar) { $this->UpdateProgressBar(1,0,'Parsing CSS & Headers'); } // *PROGRESS-BAR*
-
- if ($init) {
- $this->headerbuffer='';
- $this->textbuffer = array();
- $this->fixedPosBlockSave = array();
- }
- if ($sub == 1) { $html = ''; } // stylesheet only
-
- if ($this->allow_charset_conversion) {
- if ($sub < 1) {
- $this->ReadCharset($html);
- }
- if ($this->charset_in) {
- $success = iconv($this->charset_in,'UTF-8//TRANSLIT',$html);
- if ($success) { $html = $success; }
- }
- }
-
- $html = $this->purify_utf8($html,false);
- if ($init) {
- $this->blklvl = 0;
- $this->lastblocklevelchange = 0;
- $this->blk = array();
- $this->initialiseBlock($this->blk[0]);
- $this->blk[0]['width'] =& $this->pgwidth;
- $this->blk[0]['inner_width'] =& $this->pgwidth;
- $this->blk[0]['blockContext'] = $this->blockContext;
- }
-
- $zproperties = array();
- if ($sub < 2) {
- $this->ReadMetaTags($html);
-
- // NB default stylesheet now in mPDF.css - read on initialising class
- $html = $this->ReadCSS($html);
-
- if ($this->useLang && !$this->usingCoreFont && preg_match('/]*lang=[\'\"](.*?)[\'\"]/ism',$html,$m)) {
- $html_lang = $m[1];
- }
-
- if (preg_match('/]*dir=[\'\"]\s*rtl\s*[\'\"]/ism',$html)) {
- $zproperties['DIRECTION'] = 'rtl';
- }
-
- // allow in-line CSS for body tag to be parsed // Get tag inline CSS
- if (preg_match('/]*)>(.*?)<\/body>/ism',$html,$m) || preg_match('/]*)>(.*)$/ism',$html,$m)) {
- $html = $m[2];
- // Changed to allow style="background: url('bg.jpg')"
- if (preg_match('/style=[\"](.*?)[\"]/ism',$m[1],$mm) || preg_match('/style=[\'](.*?)[\']/ism',$m[1],$mm)) {
- $zproperties = $this->readInlineCSS($mm[1]);
- }
- if (preg_match('/dir=[\'\"]\s*rtl\s*[\'\"]/ism',$m[1])) {
- $zproperties['DIRECTION'] = 'rtl';
- }
- if (isset($html_lang) && $html_lang) { $zproperties['LANG'] = $html_lang; } // mPDF 5.3.99
- if ($this->useLang && !$this->onlyCoreFonts && preg_match('/lang=[\'\"](.*?)[\'\"]/ism',$m[1],$mm)) { // mPDF 5.3.22
- $zproperties['LANG'] = $mm[1];
- }
-
- }
- }
- $properties = $this->MergeCSS('BLOCK','BODY','');
- if ($zproperties) { $properties = $this->array_merge_recursive_unique($properties,$zproperties); }
-
- if (isset($properties['DIRECTION']) && $properties['DIRECTION']) {
- $this->CSS['BODY']['DIRECTION'] = $properties['DIRECTION'];
- }
- if (!isset($this->CSS['BODY']['DIRECTION'])) {
- $this->CSS['BODY']['DIRECTION'] = $this->directionality;
- }
- else { $this->SetDirectionality($this->CSS['BODY']['DIRECTION']); }
-
- $this->setCSS($properties,'','BODY');
- $this->blk[0]['InlineProperties'] = $this->saveInlineProperties();
-
- if ($sub == 1) { return ''; }
- if (!isset($this->CSS['BODY'])) { $this->CSS['BODY'] = array(); }
-
-/*-- BACKGROUNDS --*/
- if (isset($properties['BACKGROUND-GRADIENT'])) {
- $this->bodyBackgroundGradient = $properties['BACKGROUND-GRADIENT'];
- }
-
- if (isset($properties['BACKGROUND-IMAGE']) && $properties['BACKGROUND-IMAGE']) {
- $ret = $this->SetBackground($properties, $this->pgwidth);
- if ($ret) { $this->bodyBackgroundImage = $ret; }
- }
-/*-- END BACKGROUNDS --*/
-
-/*-- CSS-PAGE --*/
- // If page-box is set
- if ($this->state==0 && isset($this->CSS['@PAGE']) && $this->CSS['@PAGE'] ) {
- $this->page_box['current'] = '';
- $this->page_box['using'] = true;
- list($pborientation,$pbmgl,$pbmgr,$pbmgt,$pbmgb,$pbmgh,$pbmgf,$hname,$fname,$bg,$resetpagenum,$pagenumstyle,$suppress,$marks,$newformat) = $this->SetPagedMediaCSS('', false, 'O');
- $this->DefOrientation = $this->CurOrientation = $pborientation;
- $this->orig_lMargin = $this->DeflMargin = $pbmgl;
- $this->orig_rMargin = $this->DefrMargin = $pbmgr;
- $this->orig_tMargin = $this->tMargin = $pbmgt;
- $this->orig_bMargin = $this->bMargin = $pbmgb;
- $this->orig_hMargin = $this->margin_header = $pbmgh;
- $this->orig_fMargin = $this->margin_footer = $pbmgf;
- list($pborientation,$pbmgl,$pbmgr,$pbmgt,$pbmgb,$pbmgh,$pbmgf,$hname,$fname,$bg,$resetpagenum,$pagenumstyle,$suppress,$marks,$newformat) = $this->SetPagedMediaCSS('', true, 'O'); // first page
- $this->show_marks = $marks;
- if ($hname && !preg_match('/^html_(.*)$/i',$hname)) $this->firstPageBoxHeader = $hname;
- if ($fname && !preg_match('/^html_(.*)$/i',$fname)) $this->firstPageBoxFooter = $fname;
- }
-/*-- END CSS-PAGE --*/
-
-
- $parseonly = false;
- $this->bufferoutput = false;
- if ($sub == 3) {
- $parseonly = true;
- // Close any open block tags
- for ($b= $this->blklvl;$b>0;$b--) { $this->CloseTag($this->blk[$b]['tag']); }
- // Output any text left in buffer
- if (count($this->textbuffer)) { $this->printbuffer($this->textbuffer); }
- $this->textbuffer=array();
- }
- else if ($sub == 4) {
- // Close any open block tags
- for ($b= $this->blklvl;$b>0;$b--) { $this->CloseTag($this->blk[$b]['tag']); }
- // Output any text left in buffer
- if (count($this->textbuffer)) { $this->printbuffer($this->textbuffer); }
- $this->bufferoutput = true;
- $this->textbuffer=array();
- $this->headerbuffer='';
- $properties = $this->MergeCSS('BLOCK','BODY','');
- $this->setCSS($properties,'','BODY');
- }
-
- mb_internal_encoding('UTF-8');
-
- $html = $this->AdjustHTML($html, $this->tabSpaces); //Try to make HTML look more like XHTML // mPDF 5.3.60 / 99
-
- if ($this->autoFontGroups) { $html = $this->AutoFont($html); }
-
-/*-- HTMLHEADERS-FOOTERS --*/
- preg_match_all('/]*)>(.*?)<\/htmlpageheader>/si',$html,$h);
- for($i=0;$ipageHTMLheaders[$n[1]]['html'] = $h[2][$i];
- $this->pageHTMLheaders[$n[1]]['h'] = $this->_gethtmlheight($h[2][$i]);
- }
- }
- preg_match_all('/]*)>(.*?)<\/htmlpagefooter>/si',$html,$f);
- for($i=0;$ipageHTMLfooters[$n[1]]['html'] = $f[2][$i];
- $this->pageHTMLfooters[$n[1]]['h'] = $this->_gethtmlheight($f[2][$i]);
- }
- }
-/*-- END HTMLHEADERS-FOOTERS --*/
- $html = preg_replace('//si','',$html);
- $html = preg_replace('//si','',$html);
-
- if($this->state==0 && $sub!=1 && $sub!=3 && $sub!=4) {
- $this->AddPage($this->CurOrientation);
- }
-
-
-/*-- HTMLHEADERS-FOOTERS --*/
-
- if (isset($hname) && preg_match('/^html_(.*)$/i',$hname,$n)) $this->SetHTMLHeader($this->pageHTMLheaders[$n[1]],'O',true);
- if (isset($fname) && preg_match('/^html_(.*)$/i',$fname,$n)) $this->SetHTMLFooter($this->pageHTMLfooters[$n[1]],'O');
-
-/*-- END HTMLHEADERS-FOOTERS --*/
-
- $html=str_replace('','< ',$html); //Fix 'checkSIP = false;
- $this->checkSMP = false;
- $this->checkCJK = false;
- if ($this->onlyCoreFonts) { $html = $this->SubstituteChars($html); }
- else { // mPDF 5.3.18
- if (preg_match("/([".$this->pregRTLchars."])/u", $html)) { $this->biDirectional = true; } // *RTL*
- if (preg_match("/([\x{20000}-\x{2FFFF}])/u", $html)) { $this->checkSIP = true; }
- if (preg_match("/([\x{10000}-\x{1FFFF}])/u", $html)) { $this->checkSMP = true; }
-/*-- CJK-FONTS --*/
- if (preg_match("/([".$this->pregCJKchars."])/u", $html)) { $this->checkCJK = true; }
-/*-- END CJK-FONTS --*/
- }
-
- // Don't allow non-breaking spaces that are converted to substituted chars or will break anyway and mess up table width calc.
- $html = str_replace('160 ',chr(32),$html);
- $html = str_replace('','|',$html);
- $html = str_replace('','|',$html);
- $html = str_replace('','|',$html);
-
- //Add new supported tags in the DisableTags function
- $html=strip_tags($html,$this->enabledtags); //remove all unsupported tags, but the ones inside the 'enabledtags' string
-
- //Explode the string in order to parse the HTML code
- $a=preg_split('/<(.*?)>/ms',$html,-1,PREG_SPLIT_DELIM_CAPTURE);
- // ? more accurate regexp that allows e.g.
- // if changing - also change in fn.SubstituteChars()
- // $a = preg_split ('/<((?:[^<>]+(?:"[^"]*"|\'[^\']*\')?)+)>/ms', $html, -1, PREG_SPLIT_DELIM_CAPTURE);
-
- if ($this->mb_enc) {
- mb_internal_encoding($this->mb_enc);
- }
- $pbc = 0;
- if ($this->progressBar) { $this->UpdateProgressBar(1,0); } // *PROGRESS-BAR*
- $this->subPos = -1;
- $cnt = count($a);
- for($i=0;$i<$cnt; $i++) {
- $e = $a[$i];
- if($i%2==0) {
- //TEXT
- if ($this->blk[$this->blklvl]['hide']) { continue; }
- if ($this->inlineDisplayOff) { continue; }
-
- if ($this->inFixedPosBlock) { $this->fixedPosBlock .= $e; continue; } // *CSS-POSITION*
- if (strlen($e) == 0) { continue; }
-
- $e = strcode2utf($e);
- $e = $this->lesser_entity_decode($e);
-
- if ($this->usingCoreFont) {
- // mPDF 5.3.22
- // If core font is selected in document which is not onlyCoreFonts - substitute with non-core font
- if ($this->useSubstitutions && !$this->onlyCoreFonts && $this->subPos<$i && !$this->specialcontent) {
- $cnt += $this->SubstituteCharsNonCore($a, $i, $e);
- }
- // CONVERT ENCODING
- $e = mb_convert_encoding($e,$this->mb_enc,'UTF-8');
- if ($this->toupper) { $e = strtoupper($e); }
- if ($this->tolower) { $e = strtolower($e); }
- if ($this->capitalize) { $e = ucwords($e); }
- }
- // mPDF 5.3.21
- else {
- if ($this->checkSIP && $this->CurrentFont['sipext'] && $this->subPos<$i && !$this->specialcontent) {
- $cnt += $this->SubstituteCharsSIP($a, $i, $e);
- }
- if ($this->useSubstitutions && !$this->onlyCoreFonts && $this->CurrentFont['type']!='Type0' && $this->subPos<$i && !$this->specialcontent) {
- $cnt += $this->SubstituteCharsMB($a, $i, $e);
- }
- if ($this->biDirectional) { // *RTL*
- $e = preg_replace("/([".$this->pregRTLchars."]+)/ue", '$this->ArabJoin(stripslashes(\'\\1\'))', $e); // *RTL*
- } // *RTL*
- // Font-specific ligature substitution for Indic fonts
- if (isset($this->CurrentFont['indic']) && $this->CurrentFont['indic']) $this->ConvertIndic($e); // *INDIC*
-
- if ($this->toupper) { $e = mb_strtoupper($e,$this->mb_enc); }
- if ($this->tolower) { $e = mb_strtolower($e,$this->mb_enc); }
- if ($this->capitalize) { $e = mb_convert_case($e, MB_CASE_TITLE, "UTF-8"); }
- }
- if (($this->tts) || ($this->ttz) || ($this->tta)) {
- $es = explode('|',$e);
- $e = '';
- foreach($es AS $val) {
- $e .= chr($val);
- }
- }
- //Adjust lineheight
-
- // FORM ELEMENTS
- if ($this->specialcontent) {
-/*-- FORMS --*/
- //SELECT tag (form element)
- if ($this->specialcontent == "type=select") {
- $e = ltrim($e);
- $stringwidth = $this->GetStringWidth($e);
- if (!isset($this->selectoption['MAXWIDTH']) || $stringwidth > $this->selectoption['MAXWIDTH']) { $this->selectoption['MAXWIDTH'] = $stringwidth; }
- if (!isset($this->selectoption['SELECTED']) || $this->selectoption['SELECTED'] == '') { $this->selectoption['SELECTED'] = $e; }
- // mPDD 1.4 Active Forms
- if (isset($this->selectoption['ACTIVE']) && $this->selectoption['ACTIVE']) {
- $this->selectoption['ITEMS'][]=array('exportValue'=>$this->selectoption['currentVAL'], 'content'=>$e, 'selected'=>$this->selectoption['currentSEL']);
- }
- }
- // TEXTAREA
- else {
- $objattr = unserialize($this->specialcontent);
- $objattr['text'] = $e;
- $te = "\xbb\xa4\xactype=textarea,objattr=".serialize($objattr)."\xbb\xa4\xac";
- if ($this->tdbegin) {
- $this->_saveCellTextBuffer($te, $this->HREF); // mPDF 5.3.99
- }
- else {
- $this->_saveTextBuffer($te, $this->HREF); // mPDF 5.3.99
- }
- }
-/*-- END FORMS --*/
- }
-
- // TABLE
- else if ($this->tableLevel) {
-/*-- TABLES --*/
- if ($this->tdbegin) {
- if (($this->ignorefollowingspaces) && !$this->ispre) { $e = ltrim($e); }
- if ($e || $e==='0') {
- if (($this->blockjustfinished || $this->listjustfinished) && $this->cell[$this->row][$this->col]['s']>0) {
- $this->_saveCellTextBuffer("\n"); // mPDF 5.3.99
- if (!isset($this->cell[$this->row][$this->col]['maxs'])) {
- $this->cell[$this->row][$this->col]['maxs'] = $this->cell[$this->row][$this->col]['s'];
- }
- elseif($this->cell[$this->row][$this->col]['maxs'] < $this->cell[$this->row][$this->col]['s']) {
- $this->cell[$this->row][$this->col]['maxs'] = $this->cell[$this->row][$this->col]['s'];
- }
- $this->cell[$this->row][$this->col]['s'] = 0;// reset
- }
- $this->blockjustfinished=false;
- $this->listjustfinished=false;
-
- // mPDF 5.3.76
- $this->_saveCellTextBuffer($e, $this->HREF); // mPDF 5.3.99
-
- if (!isset($this->cell[$this->row][$this->col]['R']) || !$this->cell[$this->row][$this->col]['R']) {
- if (isset($this->cell[$this->row][$this->col]['s'])) {
- $this->cell[$this->row][$this->col]['s'] += $this->GetStringWidth($e, false);
- }
- else { $this->cell[$this->row][$this->col]['s'] = $this->GetStringWidth($e, false); }
- // mPDF 5.3.61
- if (!empty($this->spanborddet)) {
- $this->cell[$this->row][$this->col]['s'] += $this->spanborddet['L']['w'] + $this->spanborddet['R']['w'];
- }
- }
-
- if ($this->checkCJK && preg_match("/([".$this->pregCJKchars."])/u", $e)) { $this->tableCJK = true; } // *CJK-FONTS*
-
- if ($this->tableLevel==1 && $this->useGraphs) {
- $this->graphs[$this->currentGraphId]['data'][$this->row][$this->col] = $e;
- }
- $this->nestedtablejustfinished = false;
- $this->linebreakjustfinished=false;
- }
- }
-/*-- END TABLES --*/
- }
- // ALL ELSE
- else {
- if ($this->ignorefollowingspaces and !$this->ispre) { $e = ltrim($e); }
- if ($e || $e==='0') $this->_saveTextBuffer($e, $this->HREF); // mPDF 5.3.99
- }
- }
-
-
- else { // TAG **
-
- if($e[0]=='/') {
-/*-- PROGRESS-BAR --*/
- if ($this->progressBar) { // 10% increments
- if (intval($i*10/$cnt) != $pbc) { $pbc = intval($i*10/$cnt); $this->UpdateProgressBar(1,$pbc*10,$tag); }
- }
-/*-- END PROGRESS-BAR --*/
-
-
- // Check for tags where HTML specifies optional end tags,
- // and/or does not allow nesting e.g. P inside P, or
- $endtag = strtoupper(substr($e,1));
- if($this->blk[$this->blklvl]['hide']) {
- if (in_array($endtag, $this->outerblocktags) || in_array($endtag, $this->innerblocktags)) {
- unset($this->blk[$this->blklvl]);
- $this->blklvl--;
- }
- continue;
- }
-
-/*-- CSS-POSITION --*/
- if ($this->inFixedPosBlock) {
- if (in_array($endtag, $this->outerblocktags) || in_array($endtag, $this->innerblocktags)) { $this->fixedPosBlockDepth--; }
- if ($this->fixedPosBlockDepth == 0) {
- $this->fixedPosBlockSave[] = array($this->fixedPosBlock, $this->fixedPosBlockBBox, $this->page);
- $this->fixedPosBlock = '';
- $this->inFixedPosBlock = false;
- continue;
- }
- $this->fixedPosBlock .= '<'.$e.'>';
- continue;
- }
-/*-- END CSS-POSITION --*/
- if ($this->allow_html_optional_endtags && !$parseonly) {
- if (($endtag == 'DIV' || $endtag =='FORM' || $endtag =='CENTER') && $this->lastoptionaltag == 'P') { $this->CloseTag($this->lastoptionaltag ); }
- if ($this->lastoptionaltag == 'LI' && $endtag == 'OL') { $this->CloseTag($this->lastoptionaltag ); }
- if ($this->lastoptionaltag == 'LI' && $endtag == 'UL') { $this->CloseTag($this->lastoptionaltag ); }
- if ($this->lastoptionaltag == 'DD' && $endtag == 'DL') { $this->CloseTag($this->lastoptionaltag ); }
- if ($this->lastoptionaltag == 'DT' && $endtag == 'DL') { $this->CloseTag($this->lastoptionaltag ); }
- if ($this->lastoptionaltag == 'OPTION' && $endtag == 'SELECT') { $this->CloseTag($this->lastoptionaltag ); }
-/*-- TABLES --*/
- if ($endtag == 'TABLE') {
- if ($this->lastoptionaltag == 'THEAD' || $this->lastoptionaltag == 'TBODY' || $this->lastoptionaltag == 'TFOOT') {
- $this->CloseTag($this->lastoptionaltag);
- }
- if ($this->lastoptionaltag == 'TR') { $this->CloseTag('TR'); }
- if ($this->lastoptionaltag == 'TD' || $this->lastoptionaltag == 'TH') { $this->CloseTag($this->lastoptionaltag ); $this->CloseTag('TR'); }
- }
- if ($endtag == 'THEAD' || $endtag == 'TBODY' || $endtag == 'TFOOT') {
- if ($this->lastoptionaltag == 'TR') { $this->CloseTag('TR'); }
- if ($this->lastoptionaltag == 'TD' || $this->lastoptionaltag == 'TH') { $this->CloseTag($this->lastoptionaltag ); $this->CloseTag('TR'); }
- }
- if ($endtag == 'TR') {
- if ($this->lastoptionaltag == 'TD' || $this->lastoptionaltag == 'TH') { $this->CloseTag($this->lastoptionaltag ); }
- }
-/*-- END TABLES --*/
- }
- $this->CloseTag($endtag);
- }
-
- else { // OPENING TAG
- if($this->blk[$this->blklvl]['hide']) {
- if (strpos($e,' ')) { $te = strtoupper(substr($e,0,strpos($e,' '))); }
- else { $te = strtoupper($e); }
- if (in_array($te, $this->outerblocktags) || in_array($te, $this->innerblocktags)) {
- $this->blklvl++;
- $this->blk[$this->blklvl]['hide']=true;
- }
- continue;
- }
-
-/*-- CSS-POSITION --*/
- if ($this->inFixedPosBlock) {
- if (strpos($e,' ')) { $te = strtoupper(substr($e,0,strpos($e,' '))); }
- else { $te = strtoupper($e); }
- $this->fixedPosBlock .= '<'.$e.'>';
- if (in_array($te, $this->outerblocktags) || in_array($te, $this->innerblocktags)) { $this->fixedPosBlockDepth++; }
- continue;
- }
-/*-- END CSS-POSITION --*/
- $regexp = '|=\'(.*?)\'|s'; // eliminate single quotes, if any
- $e = preg_replace($regexp,"=\"\$1\"",$e);
- // changes anykey=anyvalue to anykey="anyvalue" (only do this inside tags)
- if (substr($e,0,10)!='pageheader' && substr($e,0,10)!='pagefooter') {
- $regexp = '| (\\w+?)=([^\\s>"]+)|si';
- $e = preg_replace($regexp," \$1=\"\$2\"",$e);
- }
-
- $e = preg_replace('/ (\\S+?)\s*=\s*"/i', " \\1=\"", $e);
-
- //Fix path values, if needed
- $orig_srcpath = '';
- if ((stristr($e,"href=") !== false) or (stristr($e,"src=") !== false) ) {
- $regexp = '/ (href|src)\s*=\s*"(.*?)"/i';
- preg_match($regexp,$e,$auxiliararray);
- if (isset($auxiliararray[2])) { $path = $auxiliararray[2]; }
- else { $path = ''; }
- if (trim($path) != '' && !(stristr($e,"src=") !== false && substr($path,0,4)=='var:')) {
- $orig_srcpath = $path;
- $this->GetFullPath($path);
- $regexp = '/ (href|src)="(.*?)"/i';
- $e = preg_replace($regexp,' \\1="'.$path.'"',$e);
- }
- }//END of Fix path values
-
-
- //Extract attributes
- $contents=array();
- // Changed to allow style="background: url('bg.jpg')"
- preg_match_all('/\\S*=["][^"]*["]/',$e,$contents1);
- preg_match_all('/\\S*=[\'][^\']*[\']/',$e,$contents2);
- $contents = array_merge($contents1, $contents2);
- preg_match('/\\S+/',$e,$a2);
- $tag=strtoupper($a2[0]);
- $attr=array();
- if ($orig_srcpath) { $attr['ORIG_SRC'] = $orig_srcpath; }
- if (!empty($contents)) {
- foreach($contents[0] as $v) {
- // Changed to allow style="background: url('bg.jpg')"
- if(preg_match('/^([^=]*)=["]?([^"]*)["]?$/',$v,$a3) || preg_match('/^([^=]*)=[\']?([^\']*)[\']?$/',$v,$a3)) {
- if (strtoupper($a3[1])=='ID' || strtoupper($a3[1])=='CLASS') { // 4.2.013 Omits STYLE
- $attr[strtoupper($a3[1])]=trim(strtoupper($a3[2]));
- }
- // includes header-style-right etc. used for
- else if (preg_match('/^(HEADER|FOOTER)-STYLE/i',$a3[1])) {
- $attr[strtoupper($a3[1])]=trim(strtoupper($a3[2]));
- }
- else {
- $attr[strtoupper($a3[1])]=trim($a3[2]);
- }
- }
- }
- }
- $this->OpenTag($tag,$attr);
-/*-- CSS-POSITION --*/
- if ($this->inFixedPosBlock) {
- $this->fixedPosBlockBBox = array($tag,$attr, $this->x, $this->y);
- $this->fixedPosBlock = '';
- $this->fixedPosBlockDepth = 1;
- }
-/*-- END CSS-POSITION --*/
- }
-
- } // end TAG
- } //end of foreach($a as $i=>$e)
-
- if ($close) {
-
- // Close any open block tags
- for ($b= $this->blklvl;$b>0;$b--) { $this->CloseTag($this->blk[$b]['tag']); }
-
- // Output any text left in buffer
- if (count($this->textbuffer) && !$parseonly) { $this->printbuffer($this->textbuffer); }
- if (!$parseonly) $this->textbuffer=array();
-
-/*-- CSS-FLOAT --*/
- // If ended with a float, need to move to end page
- $currpos = $this->page*1000 + $this->y;
- if (isset($this->blk[$this->blklvl]['float_endpos']) && $this->blk[$this->blklvl]['float_endpos'] > $currpos) {
- $old_page = $this->page;
- $new_page = intval($this->blk[$this->blklvl]['float_endpos'] /1000);
- if ($old_page != $new_page) {
- $s = $this->PrintPageBackgrounds();
- // Writes after the marker so not overwritten later by page background etc.
- $this->pages[$this->page] = preg_replace('/(___BACKGROUND___PATTERNS'.date('jY').')/', '\\1'."\n".$s."\n", $this->pages[$this->page]);
- $this->pageBackgrounds = array();
- $this->page = $new_page;
- $this->ResetMargins();
- $this->Reset();
- $this->pageoutput[$this->page] = array();
- }
- $this->y = (($this->blk[$this->blklvl]['float_endpos'] *1000) % 1000000)/1000; // mod changes operands to integers before processing
- }
-/*-- END CSS-FLOAT --*/
-
-/*-- CSS-IMAGE-FLOAT --*/
- $this->printfloatbuffer();
-/*-- END CSS-IMAGE-FLOAT --*/
-
- //Create Internal Links, if needed
- if (!empty($this->internallink) ) {
- foreach($this->internallink as $k=>$v) {
- if (strpos($k,"#") !== false ) { continue; } //ignore
- $ypos = $v['Y'];
- $pagenum = $v['PAGE'];
- $sharp = "#";
- while (array_key_exists($sharp.$k,$this->internallink)) {
- $internallink = $this->internallink[$sharp.$k];
- $this->SetLink($internallink,$ypos,$pagenum);
- $sharp .= "#";
- }
- }
- }
-
- $this->linemaxfontsize = '';
- $this->lineheight_correction = $this->default_lineheight_correction;
-
- $this->bufferoutput = false;
-
-/*-- CSS-POSITION --*/
- if (count($this->fixedPosBlockSave) && $sub != 4) {
- foreach($this->fixedPosBlockSave AS $fpbs) {
- $old_page = $this->page;
- $this->page = $fpbs[2];
- $this->WriteFixedPosHTML($fpbs[0], 0, 0, 100, 100,'auto', $fpbs[1]); // 0,0,10,10 are overwritten by bbox
- $this->page = $old_page;
- }
- }
-/*-- END CSS-POSITION --*/
-
- }
-}
-
-/*-- CSS-POSITION --*/
-
-function WriteFixedPosHTML($html='',$x, $y, $w, $h, $overflow='visible', $bounding=array()) {
- // $overflow can be 'hidden', 'visible' or 'auto' - 'auto' causes autofit to size
- // Annotations disabled - enabled in mPDF 5.0
- // Links do work
- // Will always go on current page (or start Page 1 if required)
- // Probably INCOMPATIBLE WITH keep with table, columns etc.
- // Called externally or interally via
- // When used internally, $x $y $w $h and $overflow are all overridden by $bounding
-
- $overflow = strtolower($overflow);
- if($this->state==0) {
- $this->AddPage($this->CurOrientation);
- }
- $save_y = $this->y;
- $save_x = $this->x;
- $this->fullImageHeight = $this->h;
- $save_cols = false;
-/*-- COLUMNS --*/
- if ($this->ColActive) {
- $save_cols = true;
- $save_nbcol = $this->NbCol; // other values of gap and vAlign will not change by setting Columns off
- $this->SetColumns(0);
- }
-/*-- END COLUMNS --*/
- $save_annots = $this->title2annots; // *ANNOTATIONS*
- $this->writingHTMLheader = true; // a FIX to stop pagebreaks etc.
- $this->writingHTMLfooter = true;
- $this->InFooter = true; // suppresses autopagebreaks
- $save_bgs = $this->pageBackgrounds;
- $checkinnerhtml = preg_replace('/\s/','',$html);
-
- if ($w > $this->w) { $x = 0; $w = $this->w; }
- if ($h > $this->h) { $y = 0; $h = $this->h; }
- if ($x > $this->w) { $x = $this->w - $w; }
- if ($y > $this->h) { $y = $this->h - $h; }
-
- if (!empty($bounding)) {
- // $cont_ containing block = full physical page (position: absolute) or page inside margins (position: fixed)
- // $bbox_ Bounding box is the
which is positioned absolutely/fixed
- // top/left/right/bottom/width/height/background*/border*/padding*/margin* are taken from bounding
- // font*[family/size/style/weight]/line-height/text*[align/decoration/transform/indent]/color are transferred to $inner
- // as an enclosing
(after having checked ID/CLASS)
- // $x, $y, $w, $h are inside of $bbox_ = containing box for $inner_
- // $inner_ InnerHTML is the contents of that block to be output
- $tag = $bounding[0];
- $attr = $bounding[1];
- $orig_x0 = $bounding[2];
- $orig_y0 = $bounding[3];
-
- // As in WriteHTML() initialising
- $this->blklvl = 0;
- $this->lastblocklevelchange = 0;
- $this->blk = array();
- $this->initialiseBlock($this->blk[0]);
-
- $this->blk[0]['width'] =& $this->pgwidth;
- $this->blk[0]['inner_width'] =& $this->pgwidth;
-
- $this->blk[0]['blockContext'] = $this->blockContext;
-
- $properties = $this->MergeCSS('BLOCK','BODY','');
- $this->setCSS($properties,'','BODY');
- $this->blklvl = 1;
- $this->initialiseBlock($this->blk[1]);
- $this->blk[1]['tag'] = $tag;
- $this->blk[1]['attr'] = $attr;
- $this->Reset();
- $p = $this->MergeCSS('BLOCK',$tag,$attr);
- if (isset($p['ROTATE']) && ($p['ROTATE']==90 || $p['ROTATE']==-90)) { $rotate = $p['ROTATE']; }
- else { $rotate = 0; }
- if (isset($p['OVERFLOW'])) { $overflow = strtolower($p['OVERFLOW']); }
- if (strtolower($p['POSITION']) == 'fixed') {
- $cont_w = $this->pgwidth; // $this->blk[0]['inner_width'];
- $cont_h = $this->h - $this->tMargin - $this->bMargin;
- $cont_x = $this->lMargin;
- $cont_y = $this->tMargin;
- }
- else {
- $cont_w = $this->w; // ABSOLUTE;
- $cont_h = $this->h;
- $cont_x = 0;
- $cont_y = 0;
- }
-
- // Pass on in-line properties to the innerhtml
- $css = '';
- if (isset($p['TEXT-ALIGN'])) { $css .= 'text-align: '.strtolower($p['TEXT-ALIGN']).'; '; }
- if (isset($p['TEXT-TRANSFORM'])) { $css .= 'text-transform: '.strtolower($p['TEXT-TRANSFORM']).'; '; }
- if (isset($p['TEXT-INDENT'])) { $css .= 'text-indent: '.strtolower($p['TEXT-INDENT']).'; '; }
- if (isset($p['TEXT-DECORATION'])) { $css .= 'text-decoration: '.strtolower($p['TEXT-DECORATION']).'; '; }
- if (isset($p['FONT-FAMILY'])) { $css .= 'font-family: '.strtolower($p['FONT-FAMILY']).'; '; }
- if (isset($p['FONT-STYLE'])) { $css .= 'font-style: '.strtolower($p['FONT-STYLE']).'; '; }
- if (isset($p['FONT-WEIGHT'])) { $css .= 'font-weight: '.strtolower($p['FONT-WEIGHT']).'; '; }
- if (isset($p['FONT-SIZE'])) { $css .= 'font-size: '.strtolower($p['FONT-SIZE']).'; '; }
- if (isset($p['LINE-HEIGHT'])) { $css .= 'line-height: '.strtolower($p['LINE-HEIGHT']).'; '; }
- if (isset($p['TEXT-ALIGN'])) { $css .= 'text-align: '.strtolower($p['TEXT-ALIGN']).'; '; }
- if (isset($p['TEXT-SHADOW'])) { $css .= 'text-shadow: '.strtolower($p['TEXT-SHADOW']).'; '; } // mPDF 5.3.A4
- if (isset($p['FONT-VARIANT'])) { $css .= 'font-variant: '.strtolower($p['FONT-VARIANT']).'; '; }
- if (isset($p['COLOR'])) { $css .= 'color: '.strtolower($p['COLOR']).'; '; }
- if ($css) {
- $html = '
'.$html.'
';
- }
- // Copy over (only) the properties to set for border and background
- $pb = array();
- $pb['MARGIN-TOP'] = $p['MARGIN-TOP'];
- $pb['MARGIN-RIGHT'] = $p['MARGIN-RIGHT'];
- $pb['MARGIN-BOTTOM'] = $p['MARGIN-BOTTOM'];
- $pb['MARGIN-LEFT'] = $p['MARGIN-LEFT'];
- $pb['PADDING-TOP'] = $p['PADDING-TOP'];
- $pb['PADDING-RIGHT'] = $p['PADDING-RIGHT'];
- $pb['PADDING-BOTTOM'] = $p['PADDING-BOTTOM'];
- $pb['PADDING-LEFT'] = $p['PADDING-LEFT'];
- $pb['BORDER-TOP'] = $p['BORDER-TOP'];
- $pb['BORDER-RIGHT'] = $p['BORDER-RIGHT'];
- $pb['BORDER-BOTTOM'] = $p['BORDER-BOTTOM'];
- $pb['BORDER-LEFT'] = $p['BORDER-LEFT'];
- // mPDF 5.3.66
- $pb['BORDER-TOP-LEFT-RADIUS-H'] = $p['BORDER-TOP-LEFT-RADIUS-H'];
- $pb['BORDER-TOP-LEFT-RADIUS-V'] = $p['BORDER-TOP-LEFT-RADIUS-V'];
- $pb['BORDER-TOP-RIGHT-RADIUS-H'] = $p['BORDER-TOP-RIGHT-RADIUS-H'];
- $pb['BORDER-TOP-RIGHT-RADIUS-V'] = $p['BORDER-TOP-RIGHT-RADIUS-V'];
- $pb['BORDER-BOTTOM-LEFT-RADIUS-H'] = $p['BORDER-BOTTOM-LEFT-RADIUS-H'];
- $pb['BORDER-BOTTOM-LEFT-RADIUS-V'] = $p['BORDER-BOTTOM-LEFT-RADIUS-V'];
- $pb['BORDER-BOTTOM-RIGHT-RADIUS-H'] = $p['BORDER-BOTTOM-RIGHT-RADIUS-H'];
- $pb['BORDER-BOTTOM-RIGHT-RADIUS-V'] = $p['BORDER-BOTTOM-RIGHT-RADIUS-V'];
- if (isset($p['BACKGROUND-COLOR'])) { $pb['BACKGROUND-COLOR'] = $p['BACKGROUND-COLOR']; }
- if (isset($p['BOX-SHADOW'])) { $pb['BOX-SHADOW'] = $p['BOX-SHADOW']; } // mPDF 5.3.A4
-/*-- BACKGROUNDS --*/
- if (isset($p['BACKGROUND-IMAGE'])) { $pb['BACKGROUND-IMAGE'] = $p['BACKGROUND-IMAGE']; }
- if (isset($p['BACKGROUND-IMAGE-RESIZE'])) { $pb['BACKGROUND-IMAGE-RESIZE'] = $p['BACKGROUND-IMAGE-RESIZE']; }
- if (isset($p['BACKGROUND-IMAGE-OPACITY'])) { $pb['BACKGROUND-IMAGE-OPACITY'] = $p['BACKGROUND-IMAGE-OPACITY']; }
- if (isset($p['BACKGROUND-REPEAT'])) { $pb['BACKGROUND-REPEAT'] = $p['BACKGROUND-REPEAT']; }
- if (isset($p['BACKGROUND-POSITION'])) { $pb['BACKGROUND-POSITION'] = $p['BACKGROUND-POSITION']; }
- if (isset($p['BACKGROUND-GRADIENT'])) { $pb['BACKGROUND-GRADIENT'] = $p['BACKGROUND-GRADIENT']; }
-/*-- END BACKGROUNDS --*/
-
- $this->setCSS($pb,'BLOCK',$tag);
-
- //================================================================
- $bbox_br = $this->blk[1]['border_right']['w'];
- $bbox_bl = $this->blk[1]['border_left']['w'];
- $bbox_bt = $this->blk[1]['border_top']['w'];
- $bbox_bb = $this->blk[1]['border_bottom']['w'];
- $bbox_pr = $this->blk[1]['padding_right'];
- $bbox_pl = $this->blk[1]['padding_left'];
- $bbox_pt = $this->blk[1]['padding_top'];
- $bbox_pb = $this->blk[1]['padding_bottom'];
- $bbox_mr = $this->blk[1]['margin_right'];
- if (strtolower($p['MARGIN-RIGHT'])=='auto') { $bbox_mr = 'auto'; }
- $bbox_ml = $this->blk[1]['margin_left'];
- if (strtolower($p['MARGIN-LEFT'])=='auto') { $bbox_ml = 'auto'; }
- $bbox_mt = $this->blk[1]['margin_top'];
- if (strtolower($p['MARGIN-TOP'])=='auto') { $bbox_mt = 'auto'; }
- $bbox_mb = $this->blk[1]['margin_bottom'];
- if (strtolower($p['MARGIN-BOTTOM'])=='auto') { $bbox_mb = 'auto'; }
- if (isset($p['LEFT']) && strtolower($p['LEFT'])!='auto') { $bbox_left = $this->ConvertSize($p['LEFT'], $cont_w, $this->FontSize,false); }
- else { $bbox_left = 'auto'; }
- if (isset($p['TOP']) && strtolower($p['TOP'])!='auto') { $bbox_top = $this->ConvertSize($p['TOP'], $cont_h, $this->FontSize,false); }
- else { $bbox_top = 'auto'; }
- if (isset($p['RIGHT']) && strtolower($p['RIGHT'])!='auto') { $bbox_right = $this->ConvertSize($p['RIGHT'], $cont_w, $this->FontSize,false); }
- else { $bbox_right = 'auto'; }
- if (isset($p['BOTTOM']) && strtolower($p['BOTTOM'])!='auto') { $bbox_bottom = $this->ConvertSize($p['BOTTOM'], $cont_h, $this->FontSize,false); }
- else { $bbox_bottom = 'auto'; }
- if (isset($p['WIDTH']) && strtolower($p['WIDTH'])!='auto') { $inner_w = $this->ConvertSize($p['WIDTH'], $cont_w, $this->FontSize,false); }
- else { $inner_w = 'auto'; }
- if (isset($p['HEIGHT']) && strtolower($p['HEIGHT'])!='auto') { $inner_h = $this->ConvertSize($p['HEIGHT'], $cont_h, $this->FontSize,false); }
- else { $inner_h = 'auto'; }
-
- // If bottom or right pos are set and not left / top - save this to adjust rotated block later
- if ($rotate) {
- if ($bbox_left === 'auto' && $bbox_right !== 'auto') { $rot_rpos = $bbox_right; }
- else { $rot_rpos = false; }
- if ($bbox_top === 'auto' && $bbox_bottom !== 'auto') { $rot_bpos = $bbox_bottom; }
- else { $rot_bpos = false; }
- }
-
- //================================================================
- if ($checkinnerhtml=='' && $inner_h==='auto') { $inner_h = 0.0001; }
- if ($checkinnerhtml=='' && $inner_w==='auto') { $inner_w = 2*$this->GetCharWidth('W',false); } // mPDF 5.3.04
- //================================================================
- // Algorithm from CSS2.1 See http://www.w3.org/TR/CSS21/visudet.html#abs-non-replaced-height
- // mPD 5.3.14
- // Special case (not CSS) if all not specified, centre vertically on page
- if ($bbox_top==='auto' && $inner_h==='auto' && $bbox_bottom==='auto' && $bbox_mt==='auto' && $bbox_mb==='auto') {
- $bbox_top_orig = $bbox_top;
- if ($bbox_mt==='auto') { $bbox_mt = 0; }
- if ($bbox_mb==='auto') { $bbox_mb = 0; }
- $bbox_top = $orig_y0 - $bbox_mt - $cont_y;
- // solve for $bbox_bottom when content_h known - $inner_h=='auto' && $bbox_bottom=='auto'
- }
- // mPD 5.3.14
- else if ($bbox_top==='auto' && $inner_h==='auto' && $bbox_bottom==='auto') {
- $bbox_top_orig = $bbox_top = $orig_y0 - $cont_y;
- if ($bbox_mt==='auto') { $bbox_mt = 0; }
- if ($bbox_mb==='auto') { $bbox_mb = 0; }
- // solve for $bbox_bottom when content_h known - $inner_h=='auto' && $bbox_bottom=='auto'
- }
- else if ($bbox_top!=='auto' && $inner_h!=='auto' && $bbox_bottom!=='auto') {
- if ($bbox_mt==='auto' && $bbox_mb==='auto') {
- $x = $cont_h - $bbox_top - $bbox_bt - $bbox_pt - $inner_h - $bbox_pb - $bbox_bb - $bbox_bottom;
- $bbox_mt = $bbox_mb = ($x/2);
- }
- else if ($bbox_mt==='auto') {
- $bbox_mt = $cont_h - $bbox_top - $bbox_bt - $bbox_pt - $inner_h - $bbox_pb - $bbox_bb - $bbox_mb - $bbox_bottom;
- }
- else if ($bbox_mb==='auto') {
- $bbox_mb = $cont_h - $bbox_top - $bbox_mt - $bbox_bt - $bbox_pt - $inner_h - $bbox_pb - $bbox_bb - $bbox_bottom;
- }
- else {
- $bbox_bottom = $cont_h - $bbox_top - $bbox_mt - $bbox_bt - $bbox_pt - $inner_h - $bbox_pb - $bbox_bb - $bbox_mt;
- }
- }
- else {
- if ($bbox_mt==='auto') { $bbox_mt = 0; }
- if ($bbox_mb==='auto') { $bbox_mb = 0; }
- if ($bbox_top==='auto' && $inner_h==='auto' && $bbox_bottom!=='auto') {
- // solve for $bbox_top when content_h known - $inner_h=='auto' && $bbox_top =='auto'
- }
- else if ($bbox_top==='auto' && $bbox_bottom==='auto' && $inner_h!=='auto') {
- $bbox_top = $orig_y0 - $bbox_mt - $cont_y;
- $bbox_bottom = $cont_h - $bbox_top - $bbox_mt - $bbox_bt - $bbox_pt - $inner_h - $bbox_pb - $bbox_bb - $bbox_mt;
- }
- else if ($inner_h==='auto' && $bbox_bottom==='auto' && $bbox_top!=='auto') {
- // solve for $bbox_bottom when content_h known - $inner_h=='auto' && $bbox_bottom=='auto'
- }
- else if ($bbox_top==='auto' && $inner_h!=='auto' && $bbox_bottom!=='auto') {
- $bbox_top = $cont_h - $bbox_mt - $bbox_bt - $bbox_pt - $inner_h - $bbox_pb - $bbox_bb - $bbox_mt - $bbox_bottom;
- }
- else if ($inner_h==='auto' && $bbox_top!=='auto' && $bbox_bottom!=='auto') {
- $inner_h = $cont_h - $bbox_top - $bbox_mt - $bbox_bt - $bbox_pt - $bbox_pb - $bbox_bb - $bbox_mt - $bbox_bottom;
- }
- else if ($bbox_bottom==='auto' && $bbox_top!=='auto' && $inner_h!=='auto') {
- $bbox_bottom = $cont_h - $bbox_top - $bbox_mt - $bbox_bt - $bbox_pt - $inner_h - $bbox_pb - $bbox_bb - $bbox_mt;
- }
- }
-
- // THEN DO SAME FOR WIDTH
- // http://www.w3.org/TR/CSS21/visudet.html#abs-non-replaced-width
- if ($bbox_left==='auto' && $inner_w==='auto' && $bbox_right==='auto') {
- if ($bbox_ml==='auto') { $bbox_ml = 0; }
- if ($bbox_mr==='auto') { $bbox_mr = 0; }
- // IF containing element RTL, should set $bbox_right
- $bbox_left = $orig_x0 - $bbox_ml - $cont_x;
- // solve for $bbox_right when content_w known - $inner_w=='auto' && $bbox_right=='auto'
- }
- else if ($bbox_left!=='auto' && $inner_w!=='auto' && $bbox_right!=='auto') {
- if ($bbox_ml==='auto' && $bbox_mr==='auto') {
- $x = $cont_w - $bbox_left - $bbox_bl - $bbox_pl - $inner_w - $bbox_pr - $bbox_br - $bbox_right;
- $bbox_ml = $bbox_mr = ($x/2);
- }
- else if ($bbox_ml==='auto') {
- $bbox_ml = $cont_w - $bbox_left - $bbox_bl - $bbox_pl - $inner_w - $bbox_pr - $bbox_br - $bbox_mr - $bbox_right;
- }
- else if ($bbox_mr==='auto') {
- $bbox_mr = $cont_w - $bbox_left - $bbox_ml - $bbox_bl - $bbox_pl - $inner_w - $bbox_pr - $bbox_br - $bbox_right;
- }
- else {
- $bbox_right = $cont_w - $bbox_left - $bbox_ml - $bbox_bl - $bbox_pl - $inner_w - $bbox_pr - $bbox_br - $bbox_ml;
- }
- }
- else {
- if ($bbox_ml==='auto') { $bbox_ml = 0; }
- if ($bbox_mr==='auto') { $bbox_mr = 0; }
- if ($bbox_left==='auto' && $inner_w==='auto' && $bbox_right!=='auto') {
- // solve for $bbox_left when content_w known - $inner_w=='auto' && $bbox_left =='auto'
- }
- else if ($bbox_left==='auto' && $bbox_right==='auto' && $inner_w!=='auto') {
- // IF containing element RTL, should set $bbox_right
- $bbox_left = $orig_x0 - $bbox_ml - $cont_x;
- $bbox_right = $cont_w - $bbox_left - $bbox_ml - $bbox_bl - $bbox_pl - $inner_w - $bbox_pr - $bbox_br - $bbox_ml;
- }
- else if ($inner_w==='auto' && $bbox_right==='auto' && $bbox_left!=='auto') {
- // solve for $bbox_right when content_w known - $inner_w=='auto' && $bbox_right=='auto'
- }
- else if ($bbox_left==='auto' && $inner_w!=='auto' && $bbox_right!=='auto') {
- $bbox_left = $cont_w - $bbox_ml - $bbox_bl - $bbox_pl - $inner_w - $bbox_pr - $bbox_br - $bbox_ml - $bbox_right;
- }
- else if ($inner_w==='auto' && $bbox_left!=='auto' && $bbox_right!=='auto') {
- $inner_w = $cont_w - $bbox_left - $bbox_ml - $bbox_bl - $bbox_pl - $bbox_pr - $bbox_br - $bbox_ml - $bbox_right;
- }
- else if ($bbox_right==='auto' && $bbox_left!=='auto' && $inner_w!=='auto') {
- $bbox_right = $cont_w - $bbox_left - $bbox_ml - $bbox_bl - $bbox_pl - $inner_w - $bbox_pr - $bbox_br - $bbox_ml;
- }
- }
-
- //================================================================
- //================================================================
-/*-- BACKGROUNDS --*/
- if (isset($pb['BACKGROUND-IMAGE']) && $pb['BACKGROUND-IMAGE']) {
- $ret = $this->SetBackground($pb, $this->blk[1]['inner_width']);
- if ($ret) { $this->blk[1]['background-image'] = $ret; }
- }
-/*-- END BACKGROUNDS --*/
-
- //================================================================
- $y = $cont_y + $bbox_top + $bbox_mt + $bbox_bt + $bbox_pt;
- $h = $cont_h - $bbox_top - $bbox_mt - $bbox_bt - $bbox_pt - $bbox_pb - $bbox_bb - $bbox_mb - $bbox_bottom;
- $x = $cont_x + $bbox_left + $bbox_ml + $bbox_bl + $bbox_pl;
- $w = $cont_w - $bbox_left - $bbox_ml - $bbox_bl - $bbox_pl - $bbox_pr - $bbox_br - $bbox_mr - $bbox_right;
- // Set (temporary) values for x y w h to do first paint, if values are auto
- if ($inner_h==='auto' && $bbox_top==='auto') {
- $y = $cont_y + $bbox_mt + $bbox_bt + $bbox_pt;
- $h = $cont_h - ($bbox_bottom + $bbox_mt + $bbox_mb + $bbox_bt + $bbox_bb + $bbox_pt + $bbox_pb);
- }
- else if ($inner_h==='auto' && $bbox_bottom==='auto') {
- $y = $cont_y + $bbox_top + $bbox_mt + $bbox_bt + $bbox_pt;
- $h = $cont_h - ($bbox_top + $bbox_mt + $bbox_mb + $bbox_bt + $bbox_bb + $bbox_pt + $bbox_pb);
- }
- if ($inner_w==='auto' && $bbox_left==='auto') {
- $x = $cont_x + $bbox_ml + $bbox_bl + $bbox_pl;
- $w = $cont_w - ($bbox_right + $bbox_ml + $bbox_mr + $bbox_bl + $bbox_br + $bbox_pl + $bbox_pr);
- }
- else if ($inner_w==='auto' && $bbox_right==='auto') {
- $x = $cont_x + $bbox_left + $bbox_ml + $bbox_bl + $bbox_pl;
- $w = $cont_w - ($bbox_left + $bbox_ml + $bbox_mr + $bbox_bl + $bbox_br + $bbox_pl + $bbox_pr);
- }
- $bbox_y = $cont_y + $bbox_top + $bbox_mt;
- $bbox_x = $cont_x + $bbox_left + $bbox_ml;
- $saved_block1 = $this->blk[1];
- unset($p);
- unset($pb);
- //================================================================
- if ($inner_w==='auto') { // do a first write
- $this->lMargin=$x;
- $this->rMargin=$this->w - $w - $x;
- // SET POSITION & FONT VALUES
- $this->pgwidth = $this->w - $this->lMargin - $this->rMargin;
- $this->pageoutput[$this->page]=array();
- $this->x = $x;
- $this->y = $y;
- $this->HTMLheaderPageLinks = array();
- $this->HTMLheaderPageAnnots = array();
- $this->HTMLheaderPageForms = array();
- $this->pageBackgrounds = array();
- $this->maxPosR = 0;
- $this->maxPosL = $this->w; // For RTL
- $this->WriteHTML($html , 4);
- $inner_w = $this->maxPosR - $this->lMargin;
- if ($bbox_right==='auto') {
- $bbox_right = $cont_w - $bbox_left - $bbox_ml - $bbox_bl - $bbox_pl - $inner_w - $bbox_pr - $bbox_br - $bbox_ml;
- }
- else if ($bbox_left==='auto') {
- $bbox_left = $cont_w - $bbox_ml - $bbox_bl - $bbox_pl - $inner_w - $bbox_pr - $bbox_br - $bbox_ml - $bbox_right;
- $bbox_x = $cont_x + $bbox_left + $bbox_ml ;
- $inner_x = $bbox_x + $bbox_bl + $bbox_pl;
- $x = $inner_x;
- }
- $w = $inner_w;
- $bbox_y = $cont_y + $bbox_top + $bbox_mt;
- $bbox_x = $cont_x + $bbox_left + $bbox_ml;
- }
-
- if ($inner_h==='auto') { // do a first write
- $this->lMargin=$x;
- $this->rMargin=$this->w - $w - $x;
- // SET POSITION & FONT VALUES
- $this->pgwidth = $this->w - $this->lMargin - $this->rMargin;
- $this->pageoutput[$this->page]=array();
- $this->x = $x;
- $this->y = $y;
- $this->HTMLheaderPageLinks = array();
- $this->HTMLheaderPageAnnots = array();
- $this->HTMLheaderPageForms = array();
- $this->pageBackgrounds = array();
- $this->WriteHTML($html , 4);
- $inner_h = $this->y - $y;
- if ($overflow!='hidden' && $overflow!='visible') { // constrained
- if (($this->y + $bbox_pb + $bbox_bb) > ($cont_y + $cont_h)) {
- $adj = ($this->y + $bbox_pb + $bbox_bb) - ($cont_y + $cont_h);
- $inner_h -= $adj;
- }
- }
- if ($bbox_bottom==='auto' && $bbox_top_orig==='auto') {
- $bbox_bottom = $bbox_top = ($cont_h - $bbox_mt - $bbox_bt - $bbox_pt - $inner_h - $bbox_pb - $bbox_bb - $bbox_mb)/2;
- if ($overflow!='hidden' && $overflow!='visible') { // constrained
- if ($bbox_top < 0) {
- $bbox_top = 0;
- $inner_h = $cont_h - $bbox_top - $bbox_mt - $bbox_bt - $bbox_pt - $bbox_pb - $bbox_bb - $bbox_mb - $bbox_bottom;
- }
- }
- $bbox_y = $cont_y + $bbox_top + $bbox_mt;
- $inner_y = $bbox_y + $bbox_bt + $bbox_pt;
- $y = $inner_y;
-
- }
- else if ($bbox_bottom==='auto') {
- $bbox_bottom = $cont_h - $bbox_top - $bbox_mt - $bbox_bt - $bbox_pt - $inner_h - $bbox_pb - $bbox_bb - $bbox_mb;
- }
- else if ($bbox_top==='auto') {
- $bbox_top = $cont_h - $bbox_mt - $bbox_bt - $bbox_pt - $inner_h - $bbox_pb - $bbox_bb - $bbox_mb - $bbox_bottom;
- if ($overflow!='hidden' && $overflow!='visible') { // constrained
- if ($bbox_top < 0) {
- $bbox_top = 0;
- $inner_h = $cont_h - $bbox_top - $bbox_mt - $bbox_bt - $bbox_pt - $bbox_pb - $bbox_bb - $bbox_mb - $bbox_bottom;
- }
- }
- $bbox_y = $cont_y + $bbox_top + $bbox_mt;
- $inner_y = $bbox_y + $bbox_bt + $bbox_pt;
- $y = $inner_y;
- }
- $h = $inner_h;
- $bbox_y = $cont_y + $bbox_top + $bbox_mt;
- $bbox_x = $cont_x + $bbox_left + $bbox_ml;
- }
- $inner_w = $w;
- $inner_h = $h;
-
- }
-
- $this->lMargin=$x;
- $this->rMargin=$this->w - $w - $x;
- // SET POSITION & FONT VALUES
- $this->pgwidth = $this->w - $this->lMargin - $this->rMargin;
- $this->pageoutput[$this->page]=array();
- $this->x = $x;
- $this->y = $y;
- $this->HTMLheaderPageLinks = array();
- $this->HTMLheaderPageAnnots = array();
- $this->HTMLheaderPageForms = array();
- $this->pageBackgrounds = array();
- $this->WriteHTML($html , 4); // parameter 4 saves output to $this->headerbuffer
- $actual_h = $this->y - $y;
- $use_w = $w;
- $use_h = $h;
- $ratio = $actual_h / $use_w;
-
- if ($overflow!='hidden' && $overflow!='visible') {
- $target = $h/$w;
- if (($ratio / $target ) > 1) {
- $nl = CEIL($actual_h / $this->lineheight);
- $l = $use_w * $nl;
- $est_w = sqrt(($l * $this->lineheight) / $target) * 0.8;
- $use_w += ($est_w - $use_w) - ($w/100);
- }
- $bpcstart = ($ratio / $target);
- $bpcctr = 1;
- while(($ratio / $target ) > 1) {
-
- if ($this->progressBar) { $this->UpdateProgressBar(4,intval(100/($ratio/$target)),('Auto-sizing fixed-position block: '.$bpcctr++)); } // *PROGRESS-BAR*
-
- $this->x = $x;
- $this->y = $y;
-
- if (($ratio / $target) > 1.5 || ($ratio / $target) < 0.6) {
- $use_w += ($w/$this->incrementFPR1);
- }
- else if (($ratio / $target) > 1.2 || ($ratio / $target) < 0.85) {
- $use_w += ($w/$this->incrementFPR2);
- }
- else if (($ratio / $target) > 1.1 || ($ratio / $target) < 0.91) {
- $use_w += ($w/$this->incrementFPR3);
- }
- else {
- $use_w += ($w/$this->incrementFPR4);
- }
-
- $use_h = $use_w * $target ;
- $this->rMargin=$this->w - $use_w - $x;
- $this->pgwidth = $this->w - $this->lMargin - $this->rMargin;
- $this->HTMLheaderPageLinks = array();
- $this->HTMLheaderPageAnnots = array();
- $this->HTMLheaderPageForms = array();
- $this->pageBackgrounds = array();
- $this->WriteHTML($html , 4); // parameter 4 saves output to $this->headerbuffer
- $actual_h = $this->y - $y;
- $ratio = $actual_h / $use_w;
- }
- if ($this->progressBar) { $this->UpdateProgressBar(4,'100',' '); } // *PROGRESS-BAR*
- }
- $shrink_f = $w/$use_w;
-
- //================================================================
-
- $this->pages[$this->page] .= '___BEFORE_BORDERS___';
- $block_s = $this->PrintPageBackgrounds(); // Save to print later inside clipping path
- $this->pageBackgrounds = array();
-
- //================================================================
-
- if ($rotate) {
- $prerotw = $bbox_bl + $bbox_pl + $inner_w + $bbox_pr + $bbox_br;
- $preroth = $bbox_bt + $bbox_pt + $inner_h + $bbox_pb + $bbox_bb;
- $rot_start = " q\n";
- if ($rotate == 90) {
- if ($rot_rpos !== false) { $adjw = $prerotw; } // width before rotation
- else { $adjw = $preroth; } // height before rotation
- if ($rot_bpos !== false) { $adjh = -$prerotw + $preroth; }
- else { $adjh = 0; }
- }
- else {
- if ($rot_rpos !== false) { $adjw = $prerotw - $preroth; }
- else { $adjw = 0; }
- if ($rot_bpos !== false) { $adjh = $preroth; } // height before rotation
- else { $adjh = $prerotw; } // width before rotation
- }
- $rot_start .= $this->transformTranslate($adjw, $adjh, true)."\n";
- $rot_start .= $this->transformRotate($rotate, $bbox_x, $bbox_y, true)."\n";
- $rot_end = " Q\n";
- }
- else {
- $rot_start = '';
- $rot_end = '';
- }
-
- //================================================================
- if (!empty($bounding)) {
- // WHEN HEIGHT // BOTTOM EDGE IS KNOWN and $this->y is set to the bottom
- // Re-instate saved $this->blk[1]
- $this->blk[1] = $saved_block1;
-
- // These are only needed when painting border/background
- $this->blk[1]['width'] = $bbox_w = $cont_w - $bbox_left - $bbox_ml - $bbox_mr - $bbox_right;
- $this->blk[1]['x0'] = $bbox_x;
- $this->blk[1]['y0'] = $bbox_y;
- $this->blk[1]['startpage'] = $this->page;
- $this->blk[1]['y1'] = $bbox_y + $bbox_bt + $bbox_pt + $inner_h + $bbox_pb + $bbox_bb ;
- $this->_out($rot_start); // mPDF 5.0
- $this->PaintDivBB('',0,1); // Prints borders and sets backgrounds in $this->pageBackgrounds
- $this->_out($rot_end);
- }
-
- $s = $this->PrintPageBackgrounds();
- $s = $rot_start.$s.$rot_end;
- $this->pages[$this->page] = preg_replace('/___BEFORE_BORDERS___/', "\n".$s."\n", $this->pages[$this->page]);
- $this->pageBackgrounds = array();
-
- $this->_out($rot_start);
-
- // Clipping Output
- if ($overflow=='hidden') {
- //Bounding rectangle to clip
- $clip_y1 = $this->y;
- if (!empty($bounding) && ($this->y + $bbox_pb + $bbox_bb) > ($bbox_y + $bbox_bt + $bbox_pt + $inner_h + $bbox_pb + $bbox_bb )) {
- $clip_y1 = ($bbox_y + $bbox_bt + $bbox_pt + $inner_h + $bbox_pb + $bbox_bb ) - ($bbox_pb + $bbox_bb);
- }
- //$op = 'W* n'; // Clipping
- $op = 'W n'; // Clipping alternative mode
- $this->_out("q");
- $ch = $clip_y1 - $y;
- $this->_out(sprintf('%.3F %.3F %.3F %.3F re %s',$x*_MPDFK,($this->h-$y)*_MPDFK,$w*_MPDFK,-$ch*_MPDFK,$op));
- if (!empty($block_s)) {
- $tmp = "q\n".sprintf('%.3F %.3F %.3F %.3F re %s',$x*_MPDFK,($this->h-$y)*_MPDFK,$w*_MPDFK,-$ch*_MPDFK,$op);
- $tmp .= "\n".$block_s."\nQ";
- $block_s = $tmp ;
- }
- }
-
-
- if (!empty($block_s)) {
- if ($shrink_f != 1) { // i.e. autofit has resized the box
- $tmp = "q\n".$this->transformScale(($shrink_f*100),($shrink_f*100), $x, $y, true);
- $tmp .= "\n".$block_s."\nQ";
- $block_s = $tmp ;
- }
- $this->_out($block_s);
- }
-
-
-
- if ($shrink_f != 1) { // i.e. autofit has resized the box
- $this->StartTransform();
- $this->transformScale(($shrink_f*100),($shrink_f*100), $x, $y);
- }
-
- $this->_out($this->headerbuffer);
-
- if ($shrink_f != 1) { // i.e. autofit has resized the box
- $this->StopTransform();
- }
-
- if ($overflow=='hidden') {
- //End clipping
- $this->_out("Q");
- }
-
- $this->_out($rot_end);
-
-
- // Page Links
- foreach($this->HTMLheaderPageLinks AS $lk) {
- if ($rotate) {
- $tmp = $lk[2]; // Switch h - w
- $lk[2] = $lk[3];
- $lk[3] = $tmp;
-
- $lx1 = (($lk[0]/_MPDFK));
- $ly1 = (($this->h-($lk[1]/_MPDFK)));
- if ($rotate == 90) {
- $adjx = -($lx1-$bbox_x) + ($preroth - ($ly1-$bbox_y));
- $adjy = -($ly1-$bbox_y) + ($lx1-$bbox_x);
- $lk[2] = -$lk[2];
- }
- else if ($rotate == -90) {
- $adjx = -($lx1-$bbox_x) + ($ly1-$bbox_y);
- $adjy = -($ly1-$bbox_y) - ($lx1-$bbox_x) + $prerotw;
- $lk[3] = -$lk[3];
- }
- if ($rot_rpos !== false) { $adjx += $prerotw - $preroth; }
- if ($rot_bpos !== false) { $adjy += $preroth - $prerotw; }
- $lx1 += $adjx;
- $ly1 += $adjy;
-
- $lk[0] = $lx1*_MPDFK;
- $lk[1] = ($this->h-$ly1)*_MPDFK;
- }
- if ($shrink_f != 1) { // i.e. autofit has resized the box
- $lx1 = (($lk[0]/_MPDFK)-$x);
- $lx2 = $x + ($lx1 * $shrink_f);
- $lk[0] = $lx2*_MPDFK;
- $ly1 = (($this->h-($lk[1]/_MPDFK))-$y);
- $ly2 = $y + ($ly1 * $shrink_f);
- $lk[1] = ($this->h-$ly2)*_MPDFK;
- $lk[2] *= $shrink_f; // width
- $lk[3] *= $shrink_f; // height
- }
- $this->PageLinks[$this->page][]=$lk;
- }
-
- foreach($this->HTMLheaderPageForms AS $n=>$f) {
- if ($shrink_f != 1) { // i.e. autofit has resized the box
- $f['x'] = $x + (($f['x'] -$x) * $shrink_f);
- $f['y'] = $y + (($f['y'] -$y) * $shrink_f);
- $f['w'] *= $shrink_f;
- $f['h'] *= $shrink_f;
- $f['style']['fontsize'] *= $shrink_f;
- }
- $this->form->forms[$f['n']] = $f;
- }
- // Page Annotations
- foreach($this->HTMLheaderPageAnnots AS $lk) {
- if ($rotate) {
- if ($rotate == 90) {
- $adjx = -($lk['x']-$bbox_x) + ($preroth - ($lk['y']-$bbox_y));
- $adjy = -($lk['y']-$bbox_y) + ($lk['x']-$bbox_x);
- }
- else if ($rotate == -90) {
- $adjx = -($lk['x']-$bbox_x) + ($lk['y']-$bbox_y);
- $adjy = -($lk['y']-$bbox_y) - ($lk['x']-$bbox_x) + $prerotw;
- }
- if ($rot_rpos !== false) { $adjx += $prerotw - $preroth; }
- if ($rot_bpos !== false) { $adjy += $preroth - $prerotw; }
- $lk['x'] += $adjx;
- $lk['y'] += $adjy;
- }
- if ($shrink_f != 1) { // i.e. autofit has resized the box
- $lk['x'] = $x + (($lk['x']-$x) * $shrink_f);
- $lk['y'] = $y + (($lk['y']-$y) * $shrink_f);
- }
- $this->PageAnnots[$this->page][]=$lk;
- }
-
- // Restore
- $this->headerbuffer = '';
- $this->HTMLheaderPageLinks = array();
- $this->HTMLheaderPageAnnots = array();
- $this->HTMLheaderPageForms = array();
- $this->pageBackgrounds = $save_bgs;
- $this->writingHTMLheader = false;
-
- $this->writingHTMLfooter = false;
- $this->fullImageHeight = false;
- $this->ResetMargins();
- $this->pgwidth = $this->w - $this->lMargin - $this->rMargin;
- $this->SetXY($save_x,$save_y) ;
- $this->title2annots = $save_annots; // *ANNOTATIONS*
- $this->InFooter = false; // turns back on autopagebreaks
- $this->pageoutput[$this->page]=array();
- $this->pageoutput[$this->page]['Font']='';
-/*-- COLUMNS --*/
- if ($save_cols) {
- $this->SetColumns($save_nbcol,$this->colvAlign,$this->ColGap);
- }
-/*-- END COLUMNS --*/
-}
-/*-- END CSS-POSITION --*/
-
-
-
-function initialiseBlock(&$blk) {
- $blk['margin_top'] = 0;
- $blk['margin_left'] = 0;
- $blk['margin_bottom'] = 0;
- $blk['margin_right'] = 0;
- $blk['padding_top'] = 0;
- $blk['padding_left'] = 0;
- $blk['padding_bottom'] = 0;
- $blk['padding_right'] = 0;
- $blk['border_top']['w'] = 0;
- $blk['border_left']['w'] = 0;
- $blk['border_bottom']['w'] = 0;
- $blk['border_right']['w'] = 0;
- $blk['hide'] = false;
- $blk['outer_left_margin'] = 0;
- $blk['outer_right_margin'] = 0;
- $blk['cascadeCSS'] = array();
- $blk['block-align'] = false;
- $blk['bgcolor'] = false;
- $blk['page_break_after_avoid'] = false;
- $blk['keep_block_together'] = false;
- $blk['float'] = false;
- $blk['line_height'] = '';
- $blk['margin_collapse'] = false;
-}
-
-
-function border_details($bd) {
- $prop = preg_split('/\s+/',trim($bd));
-
- if (isset($this->blk[$this->blklvl]['inner_width'])) { $refw = $this->blk[$this->blklvl]['inner_width']; }
- else if (isset($this->blk[$this->blklvl-1]['inner_width'])) { $refw = $this->blk[$this->blklvl-1]['inner_width']; }
- else { $refw = $this->w; }
- if ( count($prop) == 1 ) {
- $bsize = $this->ConvertSize($prop[0],$refw,$this->FontSize,false);
- if ($bsize > 0) {
- return array('s' => 1, 'w' => $bsize, 'c' => $this->ConvertColor(0), 'style'=>'solid');
- }
- else { return array('w' => 0, 's' => 0); }
- }
-
- else if (count($prop) == 2 ) {
- // 1px solid
- if (in_array($prop[1],$this->borderstyles) || $prop[1] == 'none' || $prop[1] == 'hidden' ) { $prop[2] = ''; }
- // solid #000000
- else if (in_array($prop[0],$this->borderstyles) || $prop[0] == 'none' || $prop[0] == 'hidden' ) { $prop[0] = ''; $prop[1] = $prop[0]; $prop[2] = $prop[1]; }
- // 1px #000000
- else { $prop[1] = ''; $prop[2] = $prop[1]; }
- }
- else if ( count($prop) == 3 ) {
- // Change #000000 1px solid to 1px solid #000000 (proper)
- if (substr($prop[0],0,1) == '#') { $tmp = $prop[0]; $prop[0] = $prop[1]; $prop[1] = $prop[2]; $prop[2] = $tmp; }
- // Change solid #000000 1px to 1px solid #000000 (proper)
- else if (substr($prop[0],1,1) == '#') { $tmp = $prop[1]; $prop[0] = $prop[2]; $prop[1] = $prop[0]; $prop[2] = $tmp; }
- // Change solid 1px #000000 to 1px solid #000000 (proper)
- else if (in_array($prop[0],$this->borderstyles) || $prop[0] == 'none' || $prop[0] == 'hidden' ) {
- $tmp = $prop[0]; $prop[0] = $prop[1]; $prop[1] = $tmp;
- }
- }
- else { return array(); }
- // Size
- $bsize = $this->ConvertSize($prop[0],$refw,$this->FontSize,false);
- //color
- $coul = $this->ConvertColor($prop[2]); // returns array
- // Style
- $prop[1] = strtolower($prop[1]);
- if (in_array($prop[1],$this->borderstyles) && $bsize > 0) { $on = 1; }
- else if ($prop[1] == 'hidden') { $on = 1; $bsize = 0; $coul = ''; }
- else if ($prop[1] == 'none') { $on = 0; $bsize = 0; $coul = ''; }
- else { $on = 0; $bsize = 0; $coul = ''; $prop[1] = ''; }
- return array('s' => $on, 'w' => $bsize, 'c' => $coul, 'style'=> $prop[1] );
-}
-
-
-function _fix_borderStr($bd) {
- $prop = preg_split('/\s+/',trim($bd));
- $w = 'medium';
- $c = '#000000';
- $s = 'none';
-
- if ( count($prop) == 1 ) {
- // solid
- if (in_array($prop[0],$this->borderstyles) || $prop[0] == 'none' || $prop[0] == 'hidden' ) { $s = $prop[0]; }
- // #000000
- else if (is_array($this->ConvertColor($prop[0]))) { $c = $prop[0]; }
- // 1px
- else { $w = $prop[0]; }
- }
- else if (count($prop) == 2 ) {
- // 1px solid
- if (in_array($prop[1],$this->borderstyles) || $prop[1] == 'none' || $prop[1] == 'hidden' ) { $w = $prop[0]; $s = $prop[1]; }
- // solid #000000
- else if (in_array($prop[0],$this->borderstyles) || $prop[0] == 'none' || $prop[0] == 'hidden' ) { $s = $prop[0]; $c = $prop[1]; }
- // 1px #000000
- else { $w = $prop[0]; $c = $prop[1]; }
- }
- else if ( count($prop) == 3 ) {
- // Change #000000 1px solid to 1px solid #000000 (proper)
- if (substr($prop[0],0,1) == '#') { $c = $prop[0]; $w = $prop[1]; $s = $prop[2]; }
- // Change solid #000000 1px to 1px solid #000000 (proper)
- else if (substr($prop[0],1,1) == '#') { $s = $prop[0]; $c = $prop[1]; $w = $prop[2]; }
- // Change solid 1px #000000 to 1px solid #000000 (proper)
- else if (in_array($prop[0],$this->borderstyles) || $prop[0] == 'none' || $prop[0] == 'hidden' ) {
- $s = $prop[0]; $w = $prop[1]; $c = $prop[2];
- }
- else { $w = $prop[0]; $s = $prop[1]; $c = $prop[2]; }
- }
- else { return ''; }
- $s = strtolower($s);
- return $w.' '.$s.' '.$c;
-}
-
-
-
-// NEW FUNCTION FOR CSS MARGIN or PADDING called from SetCSS
-function fixCSS($prop) {
- if (!is_array($prop) || (count($prop)==0)) return array();
- $newprop = array();
- foreach($prop AS $k => $v) {
- if ($k != 'BACKGROUND-IMAGE' && $k != 'BACKGROUND' && $k != 'ODD-HEADER-NAME' && $k != 'EVEN-HEADER-NAME' && $k != 'ODD-FOOTER-NAME' && $k != 'EVEN-FOOTER-NAME' && $k != 'HEADER' && $k != 'FOOTER') {
- $v = strtolower($v);
- }
-
- if ($k == 'FONT') {
- $s = trim($v);
- preg_match_all('/\"(.*?)\"/',$s,$ff);
- if (count($ff[1])) {
- foreach($ff[1] AS $ffp) {
- $w = preg_split('/\s+/',$ffp);
- $s = preg_replace('/\"'.$ffp.'\"/',$w[0],$s);
- }
- }
- preg_match_all('/\'(.*?)\'/',$s,$ff);
- if (count($ff[1])) {
- foreach($ff[1] AS $ffp) {
- $w = preg_split('/\s+/',$ffp);
- $s = preg_replace('/\''.$ffp.'\'/',$w[0],$s);
- }
- }
- $s = preg_replace('/\s*,\s*/',',',$s);
- $bits = preg_split('/\s+/',$s);
- if (count($bits)>1) {
- $k = 'FONT-FAMILY'; $v = $bits[(count($bits)-1)];
- $fs = $bits[(count($bits)-2)];
- if (preg_match('/(.*?)\/(.*)/',$fs, $fsp)) {
- $newprop['FONT-SIZE'] = $fsp[1];
- $newprop['LINE-HEIGHT'] = $fsp[2];
- }
- else { $newprop['FONT-SIZE'] = $fs; }
- if (preg_match('/(italic|oblique)/i',$s)) { $newprop['FONT-STYLE'] = 'italic'; }
- else { $newprop['FONT-STYLE'] = 'normal'; }
- if (preg_match('/bold/i',$s)) { $newprop['FONT-WEIGHT'] = 'bold'; }
- else { $newprop['FONT-WEIGHT'] = 'normal'; }
- if (preg_match('/small-caps/i',$s)) { $newprop['TEXT-TRANSFORM'] = 'uppercase'; }
- }
- }
- if ($k == 'FONT-FAMILY') {
- $aux_fontlist = explode(",",$v);
- $found = 0;
- foreach($aux_fontlist AS $f) {
- $fonttype = trim($f);
- $fonttype = preg_replace('/["\']*(.*?)["\']*/','\\1',$fonttype);
- $fonttype = preg_replace('/ /','',$fonttype);
- $v = strtolower(trim($fonttype));
- if (isset($this->fonttrans[$v]) && $this->fonttrans[$v]) { $v = $this->fonttrans[$v]; }
- if ((!$this->onlyCoreFonts && in_array($v,$this->available_unifonts)) ||
- in_array($v,array('ccourier','ctimes','chelvetica')) || /* mPDF 5.3.21 & 22 */
- ($this->onlyCoreFonts && in_array($v,array('courier','times','helvetica','arial'))) ||
- in_array($v, array('sjis','uhc','big5','gb'))) {
- $newprop[$k] = $v;
- $found = 1;
- break;
- }
- }
- if (!$found) {
- foreach($aux_fontlist AS $f) {
- $fonttype = trim($f);
- $fonttype = preg_replace('/["\']*(.*?)["\']*/','\\1',$fonttype);
- $fonttype = preg_replace('/ /','',$fonttype);
- $v = strtolower(trim($fonttype));
- if (isset($this->fonttrans[$v]) && $this->fonttrans[$v]) { $v = $this->fonttrans[$v]; }
- if (in_array($v,$this->sans_fonts) || in_array($v,$this->serif_fonts) || in_array($v,$this->mono_fonts) ) {
- $newprop[$k] = $v;
- break;
- }
- }
- }
- }
- else if ($k == 'MARGIN') {
- $tmp = $this->expand24($v);
- $newprop['MARGIN-TOP'] = $tmp['T'];
- $newprop['MARGIN-RIGHT'] = $tmp['R'];
- $newprop['MARGIN-BOTTOM'] = $tmp['B'];
- $newprop['MARGIN-LEFT'] = $tmp['L'];
- }
-/*-- BORDER-RADIUS --*/
- else if ($k == 'BORDER-RADIUS' || $k == 'BORDER-TOP-LEFT-RADIUS' || $k == 'BORDER-TOP-RIGHT-RADIUS' || $k == 'BORDER-BOTTOM-LEFT-RADIUS' || $k == 'BORDER-BOTTOM-RIGHT-RADIUS') {
- $tmp = $this->border_radius_expand($v,$k);
- if (isset($tmp['TL-H'])) $newprop['BORDER-TOP-LEFT-RADIUS-H'] = $tmp['TL-H'];
- if (isset($tmp['TL-V'])) $newprop['BORDER-TOP-LEFT-RADIUS-V'] = $tmp['TL-V'];
- if (isset($tmp['TR-H'])) $newprop['BORDER-TOP-RIGHT-RADIUS-H'] = $tmp['TR-H'];
- if (isset($tmp['TR-V'])) $newprop['BORDER-TOP-RIGHT-RADIUS-V'] = $tmp['TR-V'];
- if (isset($tmp['BL-H'])) $newprop['BORDER-BOTTOM-LEFT-RADIUS-H'] = $tmp['BL-H'];
- if (isset($tmp['BL-V'])) $newprop['BORDER-BOTTOM-LEFT-RADIUS-V'] = $tmp['BL-V'];
- if (isset($tmp['BR-H'])) $newprop['BORDER-BOTTOM-RIGHT-RADIUS-H'] = $tmp['BR-H'];
- if (isset($tmp['BR-V'])) $newprop['BORDER-BOTTOM-RIGHT-RADIUS-V'] = $tmp['BR-V'];
- }
-/*-- END BORDER-RADIUS --*/
- else if ($k == 'PADDING') {
- $tmp = $this->expand24($v);
- $newprop['PADDING-TOP'] = $tmp['T'];
- $newprop['PADDING-RIGHT'] = $tmp['R'];
- $newprop['PADDING-BOTTOM'] = $tmp['B'];
- $newprop['PADDING-LEFT'] = $tmp['L'];
- }
- else if ($k == 'BORDER') {
- if ($v == '1') { $v = '1px solid #000000'; }
- else { $v = $this->_fix_borderStr($v); }
- $newprop['BORDER-TOP'] = $v;
- $newprop['BORDER-RIGHT'] = $v;
- $newprop['BORDER-BOTTOM'] = $v;
- $newprop['BORDER-LEFT'] = $v;
- }
- else if ($k == 'BORDER-TOP') {
- $newprop['BORDER-TOP'] = $this->_fix_borderStr($v);
- }
- else if ($k == 'BORDER-RIGHT') {
- $newprop['BORDER-RIGHT'] = $this->_fix_borderStr($v);
- }
- else if ($k == 'BORDER-BOTTOM') {
- $newprop['BORDER-BOTTOM'] = $this->_fix_borderStr($v);
- }
- else if ($k == 'BORDER-LEFT') {
- $newprop['BORDER-LEFT'] = $this->_fix_borderStr($v);
- }
- else if ($k == 'BORDER-STYLE') {
- $e = $this->expand24($v);
- $newprop['BORDER-TOP-STYLE'] = $e['T'];
- $newprop['BORDER-RIGHT-STYLE'] = $e['R'];
- $newprop['BORDER-BOTTOM-STYLE'] = $e['B'];
- $newprop['BORDER-LEFT-STYLE'] = $e['L'];
- }
- else if ($k == 'BORDER-WIDTH') {
- $e = $this->expand24($v);
- $newprop['BORDER-TOP-WIDTH'] = $e['T'];
- $newprop['BORDER-RIGHT-WIDTH'] = $e['R'];
- $newprop['BORDER-BOTTOM-WIDTH'] = $e['B'];
- $newprop['BORDER-LEFT-WIDTH'] = $e['L'];
- }
- else if ($k == 'BORDER-COLOR') {
- $e = $this->expand24($v);
- $newprop['BORDER-TOP-COLOR'] = $e['T'];
- $newprop['BORDER-RIGHT-COLOR'] = $e['R'];
- $newprop['BORDER-BOTTOM-COLOR'] = $e['B'];
- $newprop['BORDER-LEFT-COLOR'] = $e['L'];
- }
-
- else if ($k == 'BORDER-SPACING') {
- $prop = preg_split('/\s+/',trim($v));
- if (count($prop) == 1 ) {
- $newprop['BORDER-SPACING-H'] = $prop[0];
- $newprop['BORDER-SPACING-V'] = $prop[0];
- }
- else if (count($prop) == 2 ) {
- $newprop['BORDER-SPACING-H'] = $prop[0];
- $newprop['BORDER-SPACING-V'] = $prop[1];
- }
- }
- else if ($k == 'SIZE') {
- $prop = preg_split('/\s+/',trim($v));
- if (preg_match('/(auto|portrait|landscape)/',$prop[0])) {
- $newprop['SIZE'] = strtoupper($prop[0]);
- }
- else if (count($prop) == 1 ) {
- $newprop['SIZE']['W'] = $this->ConvertSize($prop[0]);
- $newprop['SIZE']['H'] = $this->ConvertSize($prop[0]);
- }
- else if (count($prop) == 2 ) {
- $newprop['SIZE']['W'] = $this->ConvertSize($prop[0]);
- $newprop['SIZE']['H'] = $this->ConvertSize($prop[1]);
- }
- }
- else if ($k == 'SHEET-SIZE') {
- $prop = preg_split('/\s+/',trim($v));
- if (count($prop) == 2 ) {
- $newprop['SHEET-SIZE'] = array($this->ConvertSize($prop[0]), $this->ConvertSize($prop[1]));
- }
- else {
- if(preg_match('/([0-9a-zA-Z]*)-L/i',$v,$m)) { // e.g. A4-L = A$ landscape
- $ft = $this->_getPageFormat($m[1]);
- $format = array($ft[1],$ft[0]);
- }
- else { $format = $this->_getPageFormat($v); }
- if ($format) { $newprop['SHEET-SIZE'] = array($format[0]/_MPDFK, $format[1]/_MPDFK); }
- }
- }
- else if ($k == 'BACKGROUND') {
- $bg = $this->parseCSSbackground($v);
- if ($bg['c']) { $newprop['BACKGROUND-COLOR'] = $bg['c']; }
- else { $newprop['BACKGROUND-COLOR'] = 'transparent'; }
-/*-- BACKGROUNDS --*/
- if ($bg['i']) {
- $newprop['BACKGROUND-IMAGE'] = $bg['i'];
- if ($bg['r']) { $newprop['BACKGROUND-REPEAT'] = $bg['r']; }
- if ($bg['p']) { $newprop['BACKGROUND-POSITION'] = $bg['p']; }
- }
- else { $newprop['BACKGROUND-IMAGE'] = ''; }
-/*-- END BACKGROUNDS --*/
- }
-/*-- BACKGROUNDS --*/
- else if ($k == 'BACKGROUND-IMAGE') {
- if (preg_match('/(-moz-)*(repeating-)*(linear|radial)-gradient\(.*\)/i',$v,$m)) {
- $newprop['BACKGROUND-IMAGE'] = $m[0];
- continue;
- }
- if (preg_match('/url\([\'\"]{0,1}(.*?)[\'\"]{0,1}\)/i',$v,$m)) {
- $newprop['BACKGROUND-IMAGE'] = $m[1];
- }
-
- else if (strtolower($v)=='none') { $newprop['BACKGROUND-IMAGE'] = ''; }
-
- }
- else if ($k == 'BACKGROUND-REPEAT') {
- if (preg_match('/(repeat-x|repeat-y|no-repeat|repeat)/i',$v,$m)) {
- $newprop['BACKGROUND-REPEAT'] = strtolower($m[1]);
- }
- }
- else if ($k == 'BACKGROUND-POSITION') {
- $s = $v;
- $bits = preg_split('/\s+/',trim($s));
- // These should be Position x1 or x2
- if (count($bits)==1) {
- if (preg_match('/bottom/',$bits[0])) { $bg['p'] = '50% 100%'; }
- else if (preg_match('/top/',$bits[0])) { $bg['p'] = '50% 0%'; }
- else { $bg['p'] = $bits[0] . ' 50%'; }
- }
- else if (count($bits)==2) {
- // Can be either right center or center right
- if (preg_match('/(top|bottom)/',$bits[0]) || preg_match('/(left|right)/',$bits[1])) {
- $bg['p'] = $bits[1] . ' '.$bits[0];
- }
- else {
- $bg['p'] = $bits[0] . ' '.$bits[1];
- }
- }
- if ($bg['p']) {
- $bg['p'] = preg_replace('/(left|top)/','0%',$bg['p']);
- $bg['p'] = preg_replace('/(right|bottom)/','100%',$bg['p']);
- $bg['p'] = preg_replace('/(center)/','50%',$bg['p']);
- if (!preg_match('/[\-]{0,1}\d+(in|cm|mm|pt|pc|em|ex|px|%)* [\-]{0,1}\d+(in|cm|mm|pt|pc|em|ex|px|%)*/',$bg['p'])) {
- $bg['p'] = false;
- }
- }
- if ($bg['p']) { $newprop['BACKGROUND-POSITION'] = $bg['p']; }
- }
-/*-- END BACKGROUNDS --*/
- else if ($k == 'IMAGE-ORIENTATION') {
- if (preg_match('/([\-]*[0-9\.]+)(deg|grad|rad)/i',$v,$m)) {
- $angle = $m[1] + 0;
- if (strtolower($m[2])=='deg') { $angle = $angle; }
- else if (strtolower($m[2])=='grad') { $angle *= (360/400); }
- else if (strtolower($m[2])=='rad') { $angle = rad2deg($angle); }
- while($angle < 0) { $angle += 360; }
- $angle = ($angle % 360);
- $angle /= 90;
- $angle = round($angle) * 90;
- $newprop['IMAGE-ORIENTATION'] = $angle;
- }
- }
- else {
- $newprop[$k] = $v;
- }
- }
-
- return $newprop;
-}
-
-// mPDF 5.3.A1
-function setCSSboxshadow($v) {
- $sh = array();
- $c = preg_match_all('/(rgba|rgb|cmyka|cmyk|hsla|hsl)\(.*?\)/',$v,$x);
- for($i=0; $i<$c; $i++) {
- $col = preg_replace('/,/','*',$x[0][$i]);
- $v = preg_replace('/'.preg_quote($x[0][$i],'/').'/',$col,$v);
- }
- $ss = explode(',',$v);
- foreach ($ss AS $s) {
- $new = array('inset'=>false, 'blur'=>0, 'spread'=>0);
- if (preg_match('/inset/i',$s)) { $new['inset'] = true; $s = preg_replace('/\s*inset\s*/','',$s); }
- $p = explode(' ',trim($s));
- if (isset($p[0])) { $new['x'] = $this->ConvertSize(trim($p[0]),$this->blk[$this->blklvl-1]['inner_width'],$this->FontSize,false); }
- if (isset($p[1])) { $new['y'] = $this->ConvertSize(trim($p[1]),$this->blk[$this->blklvl-1]['inner_width'],$this->FontSize,false); }
- if (isset($p[2])) {
- if (preg_match('/^\s*[\.\-0-9]/',$p[2])) {
- $new['blur'] = $this->ConvertSize(trim($p[2]),$this->blk[$this->blklvl-1]['inner_width'],$this->FontSize,false);
- }
- else { $new['col'] = $this->ConvertColor(preg_replace('/\*/',',',$p[2])); }
- if (isset($p[3])) {
- if (preg_match('/^\s*[\.\-0-9]/',$p[3])) {
- $new['spread'] = $this->ConvertSize(trim($p[3]),$this->blk[$this->blklvl-1]['inner_width'],$this->FontSize,false);
- }
- else { $new['col'] = $this->ConvertColor(preg_replace('/\*/',',',$p[3])); }
- if (isset($p[4])) {
- $new['col'] = $this->ConvertColor(preg_replace('/\*/',',',$p[4]));
- }
- }
- }
- if (!$new['col']) { $new['col'] = $this->ConvertColor('#888888'); }
- if (isset($new['y'])) { array_unshift($sh, $new); }
- }
- return $sh;
-}
-
-// mPDF 5.3.A2
-function setCSStextshadow($v) {
- $sh = array();
- $c = preg_match_all('/(rgba|rgb|cmyka|cmyk|hsla|hsl)\(.*?\)/',$v,$x);
- for($i=0; $i<$c; $i++) {
- $col = preg_replace('/,/','*',$x[0][$i]);
- $v = preg_replace('/'.preg_quote($x[0][$i],'/').'/',$col,$v);
- }
- $ss = explode(',',$v);
- foreach ($ss AS $s) {
- $new = array('blur'=>0);
- $p = explode(' ',trim($s));
- if (isset($p[0])) { $new['x'] = $this->ConvertSize(trim($p[0]),$this->blk[$this->blklvl-1]['inner_width'],$this->FontSize,false); }
- if (isset($p[1])) { $new['y'] = $this->ConvertSize(trim($p[1]),$this->blk[$this->blklvl-1]['inner_width'],$this->FontSize,false); }
- if (isset($p[2])) {
- if (preg_match('/^\s*[\.\-0-9]/',$p[2])) {
- $new['blur'] = $this->ConvertSize(trim($p[2]),$this->blk[$this->blklvl-1]['inner_width'],$this->FontSize,false);
- }
- else { $new['col'] = $this->ConvertColor(preg_replace('/\*/',',',$p[2])); }
- if (isset($p[3])) {
- $new['col'] = $this->ConvertColor(preg_replace('/\*/',',',$p[3]));
- }
- }
- if (!$new['col']) { $new['col'] = $this->ConvertColor('#888888'); }
- if (isset($new['y'])) { array_unshift($sh, $new); }
- }
- return $sh;
-}
-
-function parseCSSbackground($s) {
- $bg = array('c'=>false, 'i'=>false, 'r'=>false, 'p'=>false, );
-/*-- BACKGROUNDS --*/
- if (preg_match('/(-moz-)*(repeating-)*(linear|radial)-gradient\(.*\)/i',$s,$m)) {
- $bg['i'] = $m[0];
- }
- else
-/*-- END BACKGROUNDS --*/
- if (preg_match('/url\(/i',$s)) {
- // If color, set and strip it off
- if (preg_match('/^\s*(#[0-9a-fA-F]{3,6}|(rgba|rgb|cmyka|cmyk|hsla|hsl|spot)\(.*?\)|[a-zA-Z]{3,})\s+(url\(.*)/i',$s,$m)) { // mPDF 5.3.68
- $bg['c'] = strtolower($m[1]);
- $s = $m[3]; // mPDF 5.3.74
- }
-/*-- BACKGROUNDS --*/
- if (preg_match('/url\([\'\"]{0,1}(.*?)[\'\"]{0,1}\)\s*(.*)/i',$s,$m)) {
- $bg['i'] = $m[1];
- $s = strtolower($m[2]);
- if (preg_match('/(repeat-x|repeat-y|no-repeat|repeat)/',$s,$m)) {
- $bg['r'] = $m[1];
- }
- // Remove repeat, attachment (discarded) and also any inherit
- $s = preg_replace('/(repeat-x|repeat-y|no-repeat|repeat|scroll|fixed|inherit)/','',$s);
- $bits = preg_split('/\s+/',trim($s));
- // These should be Position x1 or x2
- if (count($bits)==1) {
- if (preg_match('/bottom/',$bits[0])) { $bg['p'] = '50% 100%'; }
- else if (preg_match('/top/',$bits[0])) { $bg['p'] = '50% 0%'; }
- else { $bg['p'] = $bits[0] . ' 50%'; }
- }
- else if (count($bits)==2) {
- // Can be either right center or center right
- if (preg_match('/(top|bottom)/',$bits[0]) || preg_match('/(left|right)/',$bits[1])) {
- $bg['p'] = $bits[1] . ' '.$bits[0];
- }
- else {
- $bg['p'] = $bits[0] . ' '.$bits[1];
- }
- }
- if ($bg['p']) {
- $bg['p'] = preg_replace('/(left|top)/','0%',$bg['p']);
- $bg['p'] = preg_replace('/(right|bottom)/','100%',$bg['p']);
- $bg['p'] = preg_replace('/(center)/','50%',$bg['p']);
- if (!preg_match('/[\-]{0,1}\d+(in|cm|mm|pt|pc|em|ex|px|%)* [\-]{0,1}\d+(in|cm|mm|pt|pc|em|ex|px|%)*/',$bg['p'])) {
- $bg['p'] = false;
- }
- }
- }
-/*-- END BACKGROUNDS --*/
- }
- else if (preg_match('/^\s*(#[0-9a-fA-F]{3,6}|(rgba|rgb|cmyka|cmyk|hsla|hsl|spot)\(.*?\)|[a-zA-Z]{3,})/i',$s,$m)) { $bg['c'] = strtolower($m[1]); } // mPDF 5.3.68
- return ($bg);
-}
-
-
-function expand24($mp) {
- $prop = preg_split('/\s+/',trim($mp));
- if (count($prop) == 1 ) {
- return array('T' => $prop[0], 'R' => $prop[0], 'B' => $prop[0], 'L'=> $prop[0]);
- }
- if (count($prop) == 2 ) {
- return array('T' => $prop[0], 'R' => $prop[1], 'B' => $prop[0], 'L'=> $prop[1]);
- }
-
- if (count($prop) == 3 ) {
- return array('T' => $prop[0], 'R' => $prop[1], 'B' => $prop[2], 'L'=> $prop[1]);
- }
- if (count($prop) == 4 ) {
- return array('T' => $prop[0], 'R' => $prop[1], 'B' => $prop[2], 'L'=> $prop[3]);
- }
- return array();
-}
-
-/*-- BORDER-RADIUS --*/
-function border_radius_expand($val,$k) {
- $b = array();
- if ($k == 'BORDER-RADIUS') {
- $hv = explode('/',trim($val));
- $prop = preg_split('/\s+/',trim($hv[0]));
- if (count($prop)==1) {
- $b['TL-H'] = $b['TR-H'] = $b['BR-H'] = $b['BL-H'] = $prop[0];
- }
- else if (count($prop)==2) {
- $b['TL-H'] = $b['BR-H'] = $prop[0];
- $b['TR-H'] = $b['BL-H'] = $prop[1];
- }
- else if (count($prop)==3) {
- $b['TL-H'] = $prop[0];
- $b['TR-H'] = $b['BL-H'] = $prop[1];
- $b['BR-H'] = $prop[2];
- }
- else if (count($prop)==4) {
- $b['TL-H'] = $prop[0];
- $b['TR-H'] = $prop[1];
- $b['BR-H'] = $prop[2];
- $b['BL-H'] = $prop[3];
- }
- if (count($hv)==2) {
- $prop = preg_split('/\s+/',trim($hv[1]));
- if (count($prop)==1) {
- $b['TL-V'] = $b['TR-V'] = $b['BR-V'] = $b['BL-V'] = $prop[0];
- }
- else if (count($prop)==2) {
- $b['TL-V'] = $b['BR-V'] = $prop[0];
- $b['TR-V'] = $b['BL-V'] = $prop[1];
- }
- else if (count($prop)==3) {
- $b['TL-V'] = $prop[0];
- $b['TR-V'] = $b['BL-V'] = $prop[1];
- $b['BR-V'] = $prop[2];
- }
- else if (count($prop)==4) {
- $b['TL-V'] = $prop[0];
- $b['TR-V'] = $prop[1];
- $b['BR-V'] = $prop[2];
- $b['BL-V'] = $prop[3];
- }
- }
- else {
- $b['TL-V'] = $b['TL-H'];
- $b['TR-V'] = $b['TR-H'];
- $b['BL-V'] = $b['BL-H'];
- $b['BR-V'] = $b['BR-H'];
- }
- return $b;
- }
-
- // Parse 2
- $h = 0;
- $v = 0;
- $prop = preg_split('/\s+/',trim($val));
- if (count($prop)==1) { $h = $v = $val; }
- else { $h = $prop[0]; $v = $prop[1]; }
- if ($h==0 || $v==0) { $h = $v = 0; }
- if ($k == 'BORDER-TOP-LEFT-RADIUS') {
- $b['TL-H'] = $h;
- $b['TL-V'] = $v;
- }
- else if ($k == 'BORDER-TOP-RIGHT-RADIUS') {
- $b['TR-H'] = $h;
- $b['TR-V'] = $v;
- }
- else if ($k == 'BORDER-BOTTOM-LEFT-RADIUS') {
- $b['BL-H'] = $h;
- $b['BL-V'] = $v;
- }
- else if ($k == 'BORDER-BOTTOM-RIGHT-RADIUS') {
- $b['BR-H'] = $h;
- $b['BR-V'] = $v;
- }
- return $b;
-
-}
-/*-- END BORDER-RADIUS --*/
-
-
-/*-- END HTML-CSS --*/
-
-
-// Return either a number (factor) - based on current set fontsize (if % or em) - or exact lineheight (with 'mm' after it)
-function fixLineheight($v) {
- $lh = false;
- if (preg_match('/^[0-9\.,]*$/',$v) && $v >= 0) { return ($v + 0); }
- else if (strtoupper($v) == 'NORMAL') {
- return $this->normalLineheight;
- }
- else {
- $tlh = $this->ConvertSize($v,$this->FontSize,$this->FontSize,true);
- if ($tlh) { return ($tlh.'mm'); }
- }
- return $this->normalLineheight;
-}
-
-
-/*-- BORDER-RADIUS --*/
-function _borderPadding($a, $b, &$px, &$py) {
- // $px and py are padding long axis (x) and short axis (y)
- $added = 0; // extra padding
-
- $x = $a-$px;
- $y = $b-$py;
- // Check if Falls within ellipse of border radius
- if ( ( (($x+$added)*($x+$added))/($a*$a) + (($y+$added)*($y+$added))/($b*$b) ) <=1 ) { return false; }
-
- $t = atan2($y,$x);
-
- $newx = $b / sqrt((($b*$b)/($a*$a)) + ( tan($t) * tan($t) ) );
- $newy = $a / sqrt((($a*$a)/($b*$b)) + ( (1/tan($t)) * (1/tan($t)) ) );
- $px = max($px, $a - $newx + $added);
- $py = max($py, $b - $newy + $added);
-}
-/*-- END BORDER-RADIUS --*/
-
-
-/*-- TABLES --*/
-function setBorderDominance($prop, $val) {
- if (isset($prop['BORDER-LEFT']) && $prop['BORDER-LEFT']) { $this->cell_border_dominance_L = $val; }
- if (isset($prop['BORDER-RIGHT']) && $prop['BORDER-RIGHT']) { $this->cell_border_dominance_R = $val; }
- if (isset($prop['BORDER-TOP']) && $prop['BORDER-TOP']) { $this->cell_border_dominance_T = $val; }
- if (isset($prop['BORDER-BOTTOM']) && $prop['BORDER-BOTTOM']) { $this->cell_border_dominance_B = $val; }
-}
-/*-- END TABLES --*/
-
-
-/*-- HTML-CSS --*/
-function _mergeCSS($p, &$t) { // mPDF 5.3.82 $p changed to &$p
- // Save Cascading CSS e.g. "div.topic p" at this block level
- if (isset($p) && $p) {
- if ($t) {
- $t = $this->array_merge_recursive_unique($t, $p); // mPDF 5.3.96
- }
- else { $t = $p; }
- }
-}
-
-// for CSS handling
-function array_merge_recursive_unique($array1, $array2) {
- $arrays = func_get_args();
- $narrays = count($arrays);
- $ret = $arrays[0];
- for ($i = 1; $i < $narrays; $i ++) {
- foreach ($arrays[$i] as $key => $value) {
- if (((string) $key) === ((string) intval($key))) { // integer or string as integer key - append
- $ret[] = $value;
- }
- else { // string key - merge
- if (is_array($value) && isset($ret[$key])) {
- $ret[$key] = $this->array_merge_recursive_unique($ret[$key], $value);
- }
- else {
- $ret[$key] = $value;
- }
- }
- }
- }
- return $ret;
-}
-
-
-
-function _mergeFullCSS($p, &$t, $tag, $classes, $id) { // mPDF 5.3.82 $p changed to &$p
- $this->_mergeCSS($p[$tag], $t);
- // STYLESHEET CLASS e.g. .smallone{} .redletter{}
- foreach($classes AS $class) {
- $this->_mergeCSS($p['CLASS>>'.$class], $t);
- }
- // STYLESHEET nth-child SELECTOR e.g. tr:nth-child(odd) td:nth-child(2n+1)
- // mPDF 5.3.82
- if ($tag=='TR' && isset($p) && $p) {
- foreach($p AS $k=>$val) {
- if (preg_match('/'.$tag.'>>SELECTORNTHCHILD>>(.*)/',$k, $m)) {
- $select = false;
- if ($tag=='TR') {
- $row = $this->row; // mPDF 5.3.84
- $thnr = (isset($this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['is_thead']) ? count($this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['is_thead']) : 0);
- $tfnr = (isset($this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['is_tfoot']) ? count($this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['is_tfoot']) : 0);
- if ($this->tabletfoot) { $row -= $thnr; }
- else if (!$this->tablethead) { $row -= ($thnr + $tfnr); }
- if ($m[1]=='ODD' && ($row % 2) == 0) { $select = true; }
- else if ($m[1]=='EVEN' && ($row % 2) == 1) { $select = true; }
- else if (preg_match('/(\d+)N\+(\d+)/',$m[1],$a)) {
- if ((($row + 1) % $a[1]) == $a[2]) { $select = true; }
- }
- }
- else if ($tag=='TD' || $tag=='TH') {
- if ($m[1]=='ODD' && ($this->col % 2) == 0) { $select = true; }
- else if ($m[1]=='EVEN' && ($this->col % 2) == 1) { $select = true; }
- else if (preg_match('/(\d+)N\+(\d+)/',$m[1],$a)) {
- if ((($this->col + 1) % $a[1]) == $a[2]) { $select = true; }
- }
- }
- if ($select) {
- $this->_mergeCSS($p[$tag.'>>SELECTORNTHCHILD>>'.$m[1]], $t);
- }
- }
- }
- }
- // STYLESHEET CLASS e.g. #smallone{} #redletter{}
- if (isset($id) && $id) {
- $this->_mergeCSS($p['ID>>'.$id], $t);
- }
- // STYLESHEET CLASS e.g. .smallone{} .redletter{}
- foreach($classes AS $class) {
- $this->_mergeCSS($p[$tag.'>>CLASS>>'.$class], $t);
- }
- // STYLESHEET CLASS e.g. #smallone{} #redletter{}
- if (isset($id)) {
- $this->_mergeCSS($p[$tag.'>>ID>>'.$id], $t);
- }
-}
-
-
-function _set_mergedCSS(&$m, &$p, $d=true, $bd=false) {
- if (isset($m)) {
- if ((isset($m['depth']) && $m['depth']>1) || $d==false) { // include check for 'depth'
- if ($bd) { $this->setBorderDominance($m, $bd); } // *TABLES*
- if (is_array($m)) {
- $p = array_merge($p,$m);
- $this->_mergeBorders($p,$m);
- }
- }
- }
-}
-
-
-function _mergeBorders(&$b, &$a) { // Merges $a['BORDER-TOP-STYLE'] to $b['BORDER-TOP'] etc.
- foreach(array('TOP','RIGHT','BOTTOM','LEFT') AS $side) {
- foreach(array('STYLE','WIDTH','COLOR') AS $el) {
- if (isset($a['BORDER-'.$side.'-'.$el])) { // e.g. $b['BORDER-TOP-STYLE']
- $s = trim($a['BORDER-'.$side.'-'.$el]);
- if (isset($b['BORDER-'.$side])) { // e.g. $b['BORDER-TOP']
- $p = trim($b['BORDER-'.$side]);
- }
- else { $p = ''; }
- if ($el=='STYLE') {
- if ($p) { $b['BORDER-'.$side] = preg_replace('/(\S+)\s+(\S+)\s+(\S+)/', '\\1 '.$s.' \\3', $p); }
- else { $b['BORDER-'.$side] = '0px '.$s.' #000000'; }
- }
- else if ($el=='WIDTH') {
- if ($p) { $b['BORDER-'.$side] = preg_replace('/(\S+)\s+(\S+)\s+(\S+)/', $s.' \\2 \\3', $p); }
- else { $b['BORDER-'.$side] = $s.' none #000000'; }
- }
- else if ($el=='COLOR') {
- if ($p) { $b['BORDER-'.$side] = preg_replace('/(\S+)\s+(\S+)\s+(\S+)/', '\\1 \\2 '.$s, $p); }
- else { $b['BORDER-'.$side] = '0px none '.$s; }
- }
- }
- }
- }
-}
-
-
-function MergeCSS($inherit,$tag,$attr) {
- $p = array();
- $zp = array();
-
- $classes = array();
- if (isset($attr['CLASS'])) {
- $classes = preg_split('/\s+/',$attr['CLASS']);
- }
- if (!isset($attr['ID'])) { $attr['ID']=''; }
- //===============================================
-/*-- TABLES --*/
- // Set Inherited properties
- if ($inherit == 'TOPTABLE') { // $tag = TABLE
- //===============================================
- // Save Cascading CSS e.g. "div.topic p" at this block level
-
- if (isset($this->blk[$this->blklvl]['cascadeCSS'])) {
- $this->tablecascadeCSS[0] = $this->blk[$this->blklvl]['cascadeCSS'];
- }
- else {
- $this->tablecascadeCSS[0] = $this->cascadeCSS;
- }
- }
- //===============================================
- // Set Inherited properties
- if ($inherit == 'TOPTABLE' || $inherit == 'TABLE') {
- //Cascade everything from last level that is not an actual property, or defined by current tag/attributes
- if (isset($this->tablecascadeCSS[$this->tbCSSlvl-1]) && is_array($this->tablecascadeCSS[$this->tbCSSlvl-1])) {
- foreach($this->tablecascadeCSS[$this->tbCSSlvl-1] AS $k=>$v) {
- $this->tablecascadeCSS[$this->tbCSSlvl][$k] = $v;
- }
- }
- $this->_mergeFullCSS($this->cascadeCSS, $this->tablecascadeCSS[$this->tbCSSlvl], $tag, $classes, $attr['ID']);
- //===============================================
- // Cascading forward CSS e.g. "table.topic td" for this table in $this->tablecascadeCSS
- //===============================================
- // STYLESHEET TAG e.g. table
- $this->_mergeFullCSS($this->tablecascadeCSS[$this->tbCSSlvl-1], $this->tablecascadeCSS[$this->tbCSSlvl], $tag, $classes, $attr['ID']);
- //===============================================
- }
-/*-- END TABLES --*/
- //===============================================
-/*-- LISTS --*/
- // Set Inherited properties
- if ($inherit == 'TOPLIST') { // $tag = UL,OL
- //===============================================
- // Save Cascading CSS e.g. "div.topic p" at this block level
- if (isset($this->blk[$this->blklvl]['cascadeCSS'])) {
- $this->listcascadeCSS[0] = $this->blk[$this->blklvl]['cascadeCSS'];
- }
- else {
- $this->listcascadeCSS[0] = $this->cascadeCSS;
- }
- }
- //===============================================
- // Set Inherited properties
- if ($inherit == 'TOPLIST' || $inherit == 'LIST') {
- //Cascade everything from last level that is not an actual property, or defined by current tag/attributes
- if (isset($this->listcascadeCSS[$this->listCSSlvl-1]) && is_array($this->listcascadeCSS[$this->listCSSlvl-1])) {
- foreach($this->listcascadeCSS[$this->listCSSlvl-1] AS $k=>$v) {
- $this->listcascadeCSS[$this->listCSSlvl][$k] = $v;
- }
- }
- $this->_mergeFullCSS($this->cascadeCSS, $this->listcascadeCSS[$this->listCSSlvl], $tag, $classes, $attr['ID']);
- //===============================================
- // Cascading forward CSS e.g. "table.topic td" for this list in $this->listcascadeCSS
- //===============================================
- // STYLESHEET TAG e.g. table
- $this->_mergeFullCSS($this->listcascadeCSS[$this->listCSSlvl-1], $this->listcascadeCSS[$this->listCSSlvl], $tag, $classes, $attr['ID']);
- //===============================================
- }
-/*-- END LISTS --*/
- //===============================================
- // Set Inherited properties
- if ($inherit == 'BLOCK') {
- if (isset($this->blk[$this->blklvl-1]['cascadeCSS']) && is_array($this->blk[$this->blklvl-1]['cascadeCSS'])) {
- foreach($this->blk[$this->blklvl-1]['cascadeCSS'] AS $k=>$v) {
- $this->blk[$this->blklvl]['cascadeCSS'][$k] = $v;
-
- }
- }
-
- //===============================================
- // Save Cascading CSS e.g. "div.topic p" at this block level
- $this->_mergeFullCSS($this->cascadeCSS, $this->blk[$this->blklvl]['cascadeCSS'], $tag, $classes, $attr['ID']);
- //===============================================
- // Cascading forward CSS
- //===============================================
- $this->_mergeFullCSS($this->blk[$this->blklvl-1]['cascadeCSS'], $this->blk[$this->blklvl]['cascadeCSS'], $tag, $classes, $attr['ID']);
- //===============================================
- // Block properties
- if (isset($this->blk[$this->blklvl-1]['margin_collapse']) && $this->blk[$this->blklvl-1]['margin_collapse']) { $p['MARGIN-COLLAPSE'] = 'COLLAPSE'; } // custom tag, but follows CSS principle that border-collapse is inherited
- if (isset($this->blk[$this->blklvl-1]['line_height']) && $this->blk[$this->blklvl-1]['line_height']) { $p['LINE-HEIGHT'] = $this->blk[$this->blklvl-1]['line_height']; }
-
- if (isset($this->blk[$this->blklvl-1]['direction']) && $this->blk[$this->blklvl-1]['direction']) { $p['DIRECTION'] = $this->blk[$this->blklvl-1]['direction']; }
-
- if (isset($this->blk[$this->blklvl-1]['align']) && $this->blk[$this->blklvl-1]['align']) {
- if ($this->blk[$this->blklvl-1]['align'] == 'L') { $p['TEXT-ALIGN'] = 'left'; }
- else if ($this->blk[$this->blklvl-1]['align'] == 'J') { $p['TEXT-ALIGN'] = 'justify'; }
- else if ($this->blk[$this->blklvl-1]['align'] == 'R') { $p['TEXT-ALIGN'] = 'right'; }
- else if ($this->blk[$this->blklvl-1]['align'] == 'C') { $p['TEXT-ALIGN'] = 'center'; }
- }
- if ($this->ColActive || $this->keep_block_together) {
- if (isset($this->blk[$this->blklvl-1]['bgcolor']) && $this->blk[$this->blklvl-1]['bgcolor']) { // Doesn't officially inherit, but default value is transparent (?=inherited)
- $cor = $this->blk[$this->blklvl-1]['bgcolorarray' ];
- $p['BACKGROUND-COLOR'] = $this->_colAtoString($cor);
- }
- }
-
- if (isset($this->blk[$this->blklvl-1]['text_indent']) && ($this->blk[$this->blklvl-1]['text_indent'] || $this->blk[$this->blklvl-1]['text_indent']===0)) { $p['TEXT-INDENT'] = $this->blk[$this->blklvl-1]['text_indent']; }
- if (isset($this->blk[$this->blklvl-1]['InlineProperties'])) {
- $biilp = $this->blk[$this->blklvl-1]['InlineProperties'];
- }
- else { $biilp = null; }
- if (isset($biilp[ 'family' ]) && $biilp[ 'family' ]) { $p['FONT-FAMILY'] = $biilp[ 'family' ]; }
- if (isset($biilp[ 'I' ]) && $biilp[ 'I' ]) { $p['FONT-STYLE'] = 'italic'; }
- if (isset($biilp[ 'sizePt' ]) && $biilp[ 'sizePt' ]) { $p['FONT-SIZE'] = $biilp[ 'sizePt' ] . 'pt'; }
- if (isset($biilp[ 'B' ]) && $biilp[ 'B' ]) { $p['FONT-WEIGHT'] = 'bold'; }
- if (isset($biilp[ 'colorarray' ]) && $biilp[ 'colorarray' ]) {
- $cor = $biilp[ 'colorarray' ];
- $p['COLOR'] = $this->_colAtoString($cor);
- }
- if (isset($biilp[ 'fontkerning' ])) {
- if ($biilp[ 'fontkerning' ]) { $p['FONT-KERNING'] = 'normal'; }
- else { $p['FONT-KERNING'] = 'none'; }
- }
- if (isset($biilp[ 'lSpacingCSS' ]) && $biilp[ 'lSpacingCSS' ]) { $p['LETTER-SPACING'] = $biilp[ 'lSpacingCSS' ]; }
- if (isset($biilp[ 'wSpacingCSS' ]) && $biilp[ 'wSpacingCSS' ]) { $p['WORD-SPACING'] = $biilp[ 'wSpacingCSS' ]; }
- if (isset($biilp[ 'toupper' ]) && $biilp[ 'toupper' ]) { $p['TEXT-TRANSFORM'] = 'uppercase'; }
- else if (isset($biilp[ 'tolower' ]) && $biilp[ 'tolower' ]) { $p['TEXT-TRANSFORM'] = 'lowercase'; }
- else if (isset($biilp[ 'capitalize' ]) && $biilp[ 'capitalize' ]) { $p['TEXT-TRANSFORM'] = 'capitalize'; }
- // CSS says text-decoration is not inherited, but IE7 does??
- if (isset($biilp[ 'underline' ]) && $biilp[ 'underline' ]) { $p['TEXT-DECORATION'] = 'underline'; }
- if (isset($biilp[ 'smCaps' ]) && $biilp[ 'smCaps' ]) { $p['FONT-VARIANT'] = 'small-caps'; }
-
- }
- //===============================================
- //===============================================
-/*-- LISTS --*/
- // Set Inherited properties
- if ($inherit == 'TOPLIST') {
- if ($this->listCSSlvl == 1) {
- $bilp = $this->blk[$this->blklvl]['InlineProperties'];
- if (isset($bilp[ 'family' ]) && $bilp[ 'family' ]) { $p['FONT-FAMILY'] = $bilp[ 'family' ]; }
- if (isset($bilp[ 'I' ]) && $bilp[ 'I' ]) { $p['FONT-STYLE'] = 'italic'; }
- if (isset($bilp[ 'sizePt' ]) && $bilp[ 'sizePt' ]) { $p['FONT-SIZE'] = $bilp[ 'sizePt' ] . 'pt'; }
- if (isset($bilp[ 'B' ]) && $bilp[ 'B' ]) { $p['FONT-WEIGHT'] = 'bold'; }
- if (isset($bilp[ 'colorarray' ]) && $bilp[ 'colorarray' ]) {
- $cor = $bilp[ 'colorarray' ];
- $p['COLOR'] = $this->_colAtoString($cor);
- }
- if (isset($bilp[ 'toupper' ]) && $bilp[ 'toupper' ]) { $p['TEXT-TRANSFORM'] = 'uppercase'; }
- else if (isset($bilp[ 'tolower' ]) && $bilp[ 'tolower' ]) { $p['TEXT-TRANSFORM'] = 'lowercase'; }
- else if (isset($bilp[ 'capitalize' ]) && $bilp[ 'capitalize' ]) { $p['TEXT-TRANSFORM'] = 'capitalize'; }
- if (isset($bilp[ 'fontkerning' ])) {
- if ($bilp[ 'fontkerning' ]) { $p['FONT-KERNING'] = 'normal'; }
- else { $p['FONT-KERNING'] = 'none'; }
- }
- if (isset($bilp[ 'lSpacingCSS' ]) && $bilp[ 'lSpacingCSS' ]) { $p['LETTER-SPACING'] = $bilp[ 'lSpacingCSS' ]; }
- if (isset($bilp[ 'wSpacingCSS' ]) && $bilp[ 'wSpacingCSS' ]) { $p['WORD-SPACING'] = $bilp[ 'wSpacingCSS' ]; }
- // CSS says text-decoration is not inherited, but IE7 does??
- if (isset($bilp[ 'underline' ]) && $bilp[ 'underline' ]) { $p['TEXT-DECORATION'] = 'underline'; }
- if (isset($bilp[ 'smCaps' ]) && $bilp[ 'smCaps' ]) { $p['FONT-VARIANT'] = 'small-caps'; }
- if ($tag=='LI') { // mPDF 5.3.99
- // Note to self - this should never work, as TOPLIST is not called when LI (see code removed in v5.3)
- $this->Error("If you see this message, please report this as a bug to the mPDF Forum.");
- }
- }
- }
-/*-- END LISTS --*/
- //===============================================
- //===============================================
- // DEFAULT for this TAG set in DefaultCSS
- if (isset($this->defaultCSS[$tag])) {
- $zp = $this->fixCSS($this->defaultCSS[$tag]);
- if (is_array($zp)) { // Default overwrites Inherited
- $p = array_merge($p,$zp); // !! Note other way round !!
- $this->_mergeBorders($p,$zp);
- }
- }
- //===============================================
-/*-- TABLES --*/
- // cellPadding overwrites TD/TH default but not specific CSS set on cell
- if (($tag=='TD' || $tag=='TH') && isset($this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['cell_padding']) && ($this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['cell_padding'] || $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['cell_padding']===0)) {
- $p['PADDING-LEFT'] = $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['cell_padding'];
- $p['PADDING-RIGHT'] = $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['cell_padding'];
- $p['PADDING-TOP'] = $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['cell_padding'];
- $p['PADDING-BOTTOM'] = $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['cell_padding'];
- }
-/*-- END TABLES --*/
- //===============================================
- // STYLESHEET TAG e.g. h1 p div table
- if (isset($this->CSS[$tag]) && $this->CSS[$tag]) {
- $zp = $this->CSS[$tag];
- if ($tag=='TD' || $tag=='TH') { $this->setBorderDominance($zp, 9); } // *TABLES* // *TABLES-ADVANCED-BORDERS*
- if (is_array($zp)) {
- $p = array_merge($p,$zp);
- $this->_mergeBorders($p,$zp);
- }
- }
- //===============================================
- // STYLESHEET CLASS e.g. .smallone{} .redletter{}
- foreach($classes AS $class) {
- $zp = array();
- if (isset($this->CSS['CLASS>>'.$class]) && $this->CSS['CLASS>>'.$class]) { $zp = $this->CSS['CLASS>>'.$class]; }
- if ($tag=='TD' || $tag=='TH') { $this->setBorderDominance($zp, 9); } // *TABLES* // *TABLES-ADVANCED-BORDERS*
- if (is_array($zp)) {
- $p = array_merge($p,$zp);
- $this->_mergeBorders($p,$zp);
- }
- }
- //===============================================
-/*-- TABLES --*/
- // mPDF 5.3.82
- // STYLESHEET nth-child SELECTOR e.g. tr:nth-child(odd) td:nth-child(2n+1)
- if ($tag=='TR' || $tag=='TD' || $tag=='TH') {
- foreach($this->CSS AS $k=>$val) {
- if (preg_match('/'.$tag.'>>SELECTORNTHCHILD>>(.*)/',$k, $m)) {
- $select = false;
- if ($tag=='TR') {
- $row = $this->row; // mPDF 5.3.84
- $thnr = (isset($this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['is_thead']) ? count($this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['is_thead']) : 0);
- $tfnr = (isset($this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['is_tfoot']) ? count($this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['is_tfoot']) : 0);
- if ($this->tabletfoot) { $row -= $thnr; }
- else if (!$this->tablethead) { $row -= ($thnr + $tfnr); }
- if ($m[1]=='ODD' && ($row % 2) == 0) { $select = true; }
- else if ($m[1]=='EVEN' && ($row % 2) == 1) { $select = true; }
- else if (preg_match('/(\d+)N\+(\d+)/',$m[1],$a)) {
- if ((($row + 1) % $a[1]) == $a[2]) { $select = true; }
- }
- }
- else if ($tag=='TD' || $tag=='TH') {
- if ($m[1]=='ODD' && ($this->col % 2) == 0) { $select = true; }
- else if ($m[1]=='EVEN' && ($this->col % 2) == 1) { $select = true; }
- else if (preg_match('/(\d+)N\+(\d+)/',$m[1],$a)) {
- if ((($this->col+1) % $a[1]) == $a[2]) { $select = true; }
- }
- }
- if ($select) {
- $zp = $this->CSS[$tag.'>>SELECTORNTHCHILD>>'.$m[1]];
- if ($tag=='TD' || $tag=='TH') { $this->setBorderDominance($zp, 9); }
- if (is_array($zp)) {
- $p = array_merge($p,$zp);
- $this->_mergeBorders($p,$zp);
- }
- }
- }
- }
- }
-/*-- END TABLES --*/
- //===============================================
- // STYLESHEET ID e.g. #smallone{} #redletter{}
- if (isset($attr['ID']) && isset($this->CSS['ID>>'.$attr['ID']]) && $this->CSS['ID>>'.$attr['ID']]) {
- $zp = $this->CSS['ID>>'.$attr['ID']];
- if ($tag=='TD' || $tag=='TH') { $this->setBorderDominance($zp, 9); } // *TABLES* // *TABLES-ADVANCED-BORDERS*
- if (is_array($zp)) {
- $p = array_merge($p,$zp);
- $this->_mergeBorders($p,$zp);
- }
- }
- //===============================================
- // STYLESHEET CLASS e.g. p.smallone{} div.redletter{}
- foreach($classes AS $class) {
- $zp = array();
- if (isset($this->CSS[$tag.'>>CLASS>>'.$class]) && $this->CSS[$tag.'>>CLASS>>'.$class]) { $zp = $this->CSS[$tag.'>>CLASS>>'.$class]; }
- if ($tag=='TD' || $tag=='TH') { $this->setBorderDominance($zp, 9); } // *TABLES* // *TABLES-ADVANCED-BORDERS*
- if (is_array($zp)) {
- $p = array_merge($p,$zp);
- $this->_mergeBorders($p,$zp);
- }
- }
- //===============================================
- // STYLESHEET CLASS e.g. p#smallone{} div#redletter{}
- if (isset($attr['ID']) && isset($this->CSS[$tag.'>>ID>>'.$attr['ID']]) && $this->CSS[$tag.'>>ID>>'.$attr['ID']]) {
- $zp = $this->CSS[$tag.'>>ID>>'.$attr['ID']];
- if ($tag=='TD' || $tag=='TH') { $this->setBorderDominance($zp, 9); } // *TABLES* // *TABLES-ADVANCED-BORDERS*
- if (is_array($zp)) {
- $p = array_merge($p,$zp);
- $this->_mergeBorders($p,$zp);
- }
- }
- //===============================================
- // Cascaded e.g. div.class p only works for block level
- if ($inherit == 'BLOCK') {
- $this->_set_mergedCSS($this->blk[$this->blklvl-1]['cascadeCSS'][$tag], $p);
- foreach($classes AS $class) {
- $this->_set_mergedCSS($this->blk[$this->blklvl-1]['cascadeCSS']['CLASS>>'.$class], $p);
- }
- $this->_set_mergedCSS($this->blk[$this->blklvl-1]['cascadeCSS']['ID>>'.$attr['ID']], $p);
- foreach($classes AS $class) {
- $this->_set_mergedCSS($this->blk[$this->blklvl-1]['cascadeCSS'][$tag.'>>CLASS>>'.$class], $p);
- }
- $this->_set_mergedCSS($this->blk[$this->blklvl-1]['cascadeCSS'][$tag.'>>ID>>'.$attr['ID']], $p);
- }
- else if ($inherit == 'INLINE') {
- $this->_set_mergedCSS($this->blk[$this->blklvl]['cascadeCSS'][$tag], $p);
- foreach($classes AS $class) {
- $this->_set_mergedCSS($this->blk[$this->blklvl]['cascadeCSS']['CLASS>>'.$class], $p);
- }
- $this->_set_mergedCSS($this->blk[$this->blklvl]['cascadeCSS']['ID>>'.$attr['ID']], $p);
- foreach($classes AS $class) {
- $this->_set_mergedCSS($this->blk[$this->blklvl]['cascadeCSS'][$tag.'>>CLASS>>'.$class], $p);
- }
- $this->_set_mergedCSS($this->blk[$this->blklvl]['cascadeCSS'][$tag.'>>ID>>'.$attr['ID']], $p);
- }
-/*-- TABLES --*/
- else if ($inherit == 'TOPTABLE' || $inherit == 'TABLE') { // NB looks at $this->tablecascadeCSS-1 for cascading CSS
- // false, 9 = don't check for 'depth' and do set border dominance
- $this->_set_mergedCSS($this->tablecascadeCSS[$this->tbCSSlvl-1][$tag], $p, false, 9);
- foreach($classes AS $class) {
- $this->_set_mergedCSS($this->tablecascadeCSS[$this->tbCSSlvl-1]['CLASS>>'.$class], $p, false, 9);
- }
- // STYLESHEET nth-child SELECTOR e.g. tr:nth-child(odd) td:nth-child(2n+1)
- // mPDF 5.3.82
- if ($tag=='TR' || $tag=='TD' || $tag=='TH') {
- foreach($this->tablecascadeCSS[$this->tbCSSlvl-1] AS $k=>$val) {
- if (preg_match('/'.$tag.'>>SELECTORNTHCHILD>>(.*)/',$k, $m)) {
- $select = false;
- if ($tag=='TR') {
- $row = $this->row; // mPDF 5.3.84
- $thnr = (isset($this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['is_thead']) ? count($this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['is_thead']) : 0);
- $tfnr = (isset($this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['is_tfoot']) ? count($this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['is_tfoot']) : 0);
- if ($this->tabletfoot) { $row -= $thnr; }
- else if (!$this->tablethead) { $row -= ($thnr + $tfnr); }
- if ($m[1]=='ODD' && ($row % 2) == 0) { $select = true; }
- else if ($m[1]=='EVEN' && ($row % 2) == 1) { $select = true; }
- else if (preg_match('/(\d+)N\+(\d+)/',$m[1],$a)) {
- if ((($row + 1) % $a[1]) == $a[2]) { $select = true; }
- }
- }
- else if ($tag=='TD' || $tag=='TH') {
- if ($m[1]=='ODD' && ($this->col % 2) == 0) { $select = true; }
- else if ($m[1]=='EVEN' && ($this->col % 2) == 1) { $select = true; }
- else if (preg_match('/(\d+)N\+(\d+)/',$m[1],$a)) {
- if ((($this->col + 1) % $a[1]) == $a[2]) { $select = true; }
- }
- }
- if ($select) {
- $this->_set_mergedCSS($this->tablecascadeCSS[$this->tbCSSlvl-1][$tag.'>>SELECTORNTHCHILD>>'.$m[1]], $p, false, 9);
- }
- }
- }
- }
- $this->_set_mergedCSS($this->tablecascadeCSS[$this->tbCSSlvl-1]['ID>>'.$attr['ID']], $p, false, 9);
- foreach($classes AS $class) {
- $this->_set_mergedCSS($this->tablecascadeCSS[$this->tbCSSlvl-1][$tag.'>>CLASS>>'.$class], $p, false, 9);
- }
- $this->_set_mergedCSS($this->tablecascadeCSS[$this->tbCSSlvl-1][$tag.'>>ID>>'.$attr['ID']], $p, false, 9);
- }
-/*-- END TABLES --*/
- //===============================================
-/*-- LISTS --*/
- else if ($inherit == 'TOPLIST' || $inherit == 'LIST') { // NB looks at $this->listcascadeCSS-1 for cascading CSS
- // false = don't check for 'depth'
- $this->_set_mergedCSS($this->listcascadeCSS[$this->listCSSlvl-1][$tag], $p, false);
- foreach($classes AS $class) {
- $this->_set_mergedCSS($this->listcascadeCSS[$this->listCSSlvl-1]['CLASS>>'.$class], $p, false);
- }
- $this->_set_mergedCSS($this->listcascadeCSS[$this->listCSSlvl-1]['ID>>'.$attr['ID']], $p, false);
- foreach($classes AS $class) {
- $this->_set_mergedCSS($this->listcascadeCSS[$this->listCSSlvl-1][$tag.'>>CLASS>>'.$class], $p, false);
- }
- $this->_set_mergedCSS($this->listcascadeCSS[$this->listCSSlvl-1][$tag.'>>ID>>'.$attr['ID']], $p, false);
- }
-/*-- END LISTS --*/
- //===============================================
- //===============================================
- // INLINE STYLE e.g. style="CSS:property"
- if (isset($attr['STYLE'])) {
- $zp = $this->readInlineCSS($attr['STYLE']);
- if ($tag=='TD' || $tag=='TH') { $this->setBorderDominance($zp, 9); } // *TABLES* // *TABLES-ADVANCED-BORDERS*
- if (is_array($zp)) {
- $p = array_merge($p,$zp);
- $this->_mergeBorders($p,$zp);
- }
- }
- //===============================================
- //===============================================
- // INLINE ATTRIBUTES e.g. .. ALIGN="CENTER">
- if (isset($attr['LANG']) and $attr['LANG']!='') {
- $p['LANG'] = $attr['LANG'];
- }
- if (isset($attr['COLOR']) and $attr['COLOR']!='') {
- $p['COLOR'] = $attr['COLOR'];
- }
- if ($tag != 'INPUT') {
- if (isset($attr['WIDTH']) and $attr['WIDTH']!='') {
- $p['WIDTH'] = $attr['WIDTH'];
- }
- if (isset($attr['HEIGHT']) and $attr['HEIGHT']!='') {
- $p['HEIGHT'] = $attr['HEIGHT'];
- }
- }
- if ($tag == 'FONT') {
- if (isset($attr['FACE'])) {
- $p['FONT-FAMILY'] = $attr['FACE'];
- }
- if (isset($attr['SIZE']) and $attr['SIZE']!='') {
- $s = '';
- if ($attr['SIZE'] === '+1') { $s = '120%'; }
- else if ($attr['SIZE'] === '-1') { $s = '86%'; }
- else if ($attr['SIZE'] === '1') { $s = 'XX-SMALL'; }
- else if ($attr['SIZE'] == '2') { $s = 'X-SMALL'; }
- else if ($attr['SIZE'] == '3') { $s = 'SMALL'; }
- else if ($attr['SIZE'] == '4') { $s = 'MEDIUM'; }
- else if ($attr['SIZE'] == '5') { $s = 'LARGE'; }
- else if ($attr['SIZE'] == '6') { $s = 'X-LARGE'; }
- else if ($attr['SIZE'] == '7') { $s = 'XX-LARGE'; }
- if ($s) $p['FONT-SIZE'] = $s;
- }
- }
- if (isset($attr['VALIGN']) and $attr['VALIGN']!='') {
- $p['VERTICAL-ALIGN'] = $attr['VALIGN'];
- }
- if (isset($attr['VSPACE']) and $attr['VSPACE']!='') {
- $p['MARGIN-TOP'] = $attr['VSPACE'];
- $p['MARGIN-BOTTOM'] = $attr['VSPACE'];
- }
- if (isset($attr['HSPACE']) and $attr['HSPACE']!='') {
- $p['MARGIN-LEFT'] = $attr['HSPACE'];
- $p['MARGIN-RIGHT'] = $attr['HSPACE'];
- }
- //===============================================
- return $p;
-}
-
-
-/*-- CSS-PAGE --*/
-function SetPagedMediaCSS($name='', $first, $oddEven) {
- if ($oddEven == 'E') {
- if ($this->directionality=='rtl') { $side = 'R'; }
- else { $side = 'L'; }
- }
- else {
- if ($this->directionality=='rtl') { $side = 'L'; }
- else { $side = 'R'; }
- }
- $name = strtoupper($name);
- $p = array();
- $p['SIZE'] = 'AUTO';
-
- // Uses mPDF original margins as default
- $p['MARGIN-RIGHT'] = strval($this->orig_rMargin).'mm';
- $p['MARGIN-LEFT'] = strval($this->orig_lMargin).'mm';
- $p['MARGIN-TOP'] = strval($this->orig_tMargin).'mm';
- $p['MARGIN-BOTTOM'] = strval($this->orig_bMargin).'mm';
- $p['MARGIN-HEADER'] = strval($this->orig_hMargin).'mm';
- $p['MARGIN-FOOTER'] = strval($this->orig_fMargin).'mm';
-
- // Basic page + selector
- if (isset($this->CSS['@PAGE'])) { $zp = $this->CSS['@PAGE']; }
- else { $zp = array(); }
- if (is_array($zp) && !empty($zp)) { $p = array_merge($p,$zp); }
-
- if (isset($p['EVEN-HEADER-NAME']) && $oddEven=='E') {
- $p['HEADER'] = $p['EVEN-HEADER-NAME']; unset($p['EVEN-HEADER-NAME']);
- }
- if (isset($p['ODD-HEADER-NAME']) && $oddEven!='E') {
- $p['HEADER'] = $p['ODD-HEADER-NAME']; unset($p['ODD-HEADER-NAME']);
- }
- if (isset($p['EVEN-FOOTER-NAME']) && $oddEven=='E') {
- $p['FOOTER'] = $p['EVEN-FOOTER-NAME']; unset($p['EVEN-FOOTER-NAME']);
- }
- if (isset($p['ODD-FOOTER-NAME']) && $oddEven!='E') {
- $p['FOOTER'] = $p['ODD-FOOTER-NAME']; unset($p['ODD-FOOTER-NAME']);
- }
-
- // If right/Odd page
- if (isset($this->CSS['@PAGE>>PSEUDO>>RIGHT']) && $side=='R') {
- $zp = $this->CSS['@PAGE>>PSEUDO>>RIGHT'];
- }
- else { $zp = array(); }
- if (isset($zp['SIZE'])) { unset($zp['SIZE']); }
- if (isset($zp['SHEET-SIZE'])) { unset($zp['SHEET-SIZE']); }
- // Disallow margin-left or -right on :LEFT or :RIGHT
- if (isset($zp['MARGIN-LEFT'])) { unset($zp['MARGIN-LEFT']); }
- if (isset($zp['MARGIN-RIGHT'])) { unset($zp['MARGIN-RIGHT']); }
- if (is_array($zp) && !empty($zp)) { $p = array_merge($p,$zp); }
-
- // If left/Even page
- if (isset($this->CSS['@PAGE>>PSEUDO>>LEFT']) && $side=='L') {
- $zp = $this->CSS['@PAGE>>PSEUDO>>LEFT'];
- }
- else { $zp = array(); }
- if (isset($zp['SIZE'])) { unset($zp['SIZE']); }
- if (isset($zp['SHEET-SIZE'])) { unset($zp['SHEET-SIZE']); }
- // Disallow margin-left or -right on :LEFT or :RIGHT
- if (isset($zp['MARGIN-LEFT'])) { unset($zp['MARGIN-LEFT']); }
- if (isset($zp['MARGIN-RIGHT'])) { unset($zp['MARGIN-RIGHT']); }
- if (is_array($zp) && !empty($zp)) { $p = array_merge($p,$zp); }
-
- // If first page
- if (isset($this->CSS['@PAGE>>PSEUDO>>FIRST']) && $first) { $zp = $this->CSS['@PAGE>>PSEUDO>>FIRST']; }
- else { $zp = array(); }
- if (isset($zp['SIZE'])) { unset($zp['SIZE']); }
- if (isset($zp['SHEET-SIZE'])) { unset($zp['SHEET-SIZE']); }
- if (is_array($zp) && !empty($zp)) { $p = array_merge($p,$zp); }
-
- // If named page
- if ($name) {
- if (isset($this->CSS['@PAGE>>NAMED>>'.$name])) { $zp = $this->CSS['@PAGE>>NAMED>>'.$name]; }
- else { $zp = array(); }
- if (is_array($zp) && !empty($zp)) { $p = array_merge($p,$zp); }
-
- if (isset($p['EVEN-HEADER-NAME']) && $oddEven=='E') {
- $p['HEADER'] = $p['EVEN-HEADER-NAME']; unset($p['EVEN-HEADER-NAME']);
- }
- if (isset($p['ODD-HEADER-NAME']) && $oddEven!='E') {
- $p['HEADER'] = $p['ODD-HEADER-NAME']; unset($p['ODD-HEADER-NAME']);
- }
- if (isset($p['EVEN-FOOTER-NAME']) && $oddEven=='E') {
- $p['FOOTER'] = $p['EVEN-FOOTER-NAME']; unset($p['EVEN-FOOTER-NAME']);
- }
- if (isset($p['ODD-FOOTER-NAME']) && $oddEven!='E') {
- $p['FOOTER'] = $p['ODD-FOOTER-NAME']; unset($p['ODD-FOOTER-NAME']);
- }
-
- // If named right/Odd page
- if (isset($this->CSS['@PAGE>>NAMED>>'.$name.'>>PSEUDO>>RIGHT']) && $side=='R') { $zp = $this->CSS['@PAGE>>NAMED>>'.$name.'>>PSEUDO>>RIGHT']; }
- else { $zp = array(); }
- if (isset($zp['SIZE'])) { unset($zp['SIZE']); }
- if (isset($zp['SHEET-SIZE'])) { unset($zp['SHEET-SIZE']); }
- // Disallow margin-left or -right on :LEFT or :RIGHT
- if (isset($zp['MARGIN-LEFT'])) { unset($zp['MARGIN-LEFT']); }
- if (isset($zp['MARGIN-RIGHT'])) { unset($zp['MARGIN-RIGHT']); }
- if (is_array($zp) && !empty($zp)) { $p = array_merge($p,$zp); }
-
- // If named left/Even page
- if (isset($this->CSS['@PAGE>>NAMED>>'.$name.'>>PSEUDO>>LEFT']) && $side=='L') { $zp = $this->CSS['@PAGE>>NAMED>>'.$name.'>>PSEUDO>>LEFT']; }
- else { $zp = array(); }
- if (isset($zp['SIZE'])) { unset($zp['SIZE']); }
- if (isset($zp['SHEET-SIZE'])) { unset($zp['SHEET-SIZE']); }
- // Disallow margin-left or -right on :LEFT or :RIGHT
- if (isset($zp['MARGIN-LEFT'])) { unset($zp['MARGIN-LEFT']); }
- if (isset($zp['MARGIN-RIGHT'])) { unset($zp['MARGIN-RIGHT']); }
- if (is_array($zp) && !empty($zp)) { $p = array_merge($p,$zp); }
-
- // If named first page
- if (isset($this->CSS['@PAGE>>NAMED>>'.$name.'>>PSEUDO>>FIRST']) && $first) { $zp = $this->CSS['@PAGE>>NAMED>>'.$name.'>>PSEUDO>>FIRST']; }
- else { $zp = array(); }
- if (isset($zp['SIZE'])) { unset($zp['SIZE']); }
- if (isset($zp['SHEET-SIZE'])) { unset($zp['SHEET-SIZE']); }
- if (is_array($zp) && !empty($zp)) { $p = array_merge($p,$zp); }
- }
-
- $orientation = $mgl = $mgr = $mgt = $mgb = $mgh = $mgf = '';
- $header = $footer = '';
- $resetpagenum = $pagenumstyle = $suppress = '';
- $marks = '';
- $bg = array();
-
- $newformat = '';
-
-
- if (isset($p['SHEET-SIZE']) && is_array($p['SHEET-SIZE'])) {
- $newformat = $p['SHEET-SIZE'];
- if ($newformat[0] > $newformat[1]) { // landscape
- $newformat = array_reverse($newformat);
- $p['ORIENTATION'] = 'L';
- }
- else { $p['ORIENTATION'] = 'P'; }
- $this->_setPageSize($newformat, $p['ORIENTATION']);
- }
-
- if (isset($p['SIZE']) && is_array($p['SIZE']) && !$newformat) {
- if ($p['SIZE']['W'] > $p['SIZE']['H']) { $p['ORIENTATION'] = 'L'; }
- else { $p['ORIENTATION'] = 'P'; }
- }
- if (is_array($p['SIZE'])) {
- if ($p['SIZE']['W'] > $this->fw) { $p['SIZE']['W'] = $this->fw; } // mPD 4.2 use fw not fPt
- if ($p['SIZE']['H'] > $this->fh) { $p['SIZE']['H'] = $this->fh; }
- if (($p['ORIENTATION']==$this->DefOrientation && !$newformat) || ($newformat && $p['ORIENTATION']=='P')) {
- $outer_width_LR = ($this->fw - $p['SIZE']['W'])/2;
- $outer_width_TB = ($this->fh - $p['SIZE']['H'])/2;
- }
- else {
- $outer_width_LR = ($this->fh - $p['SIZE']['W'])/2;
- $outer_width_TB = ($this->fw - $p['SIZE']['H'])/2;
- }
- $pgw = $p['SIZE']['W'];
- $pgh = $p['SIZE']['H'];
- }
- else { // AUTO LANDSCAPE PORTRAIT
- $outer_width_LR = 0;
- $outer_width_TB = 0;
- if (!$newformat) {
- if (strtoupper($p['SIZE']) == 'AUTO') { $p['ORIENTATION']=$this->DefOrientation; }
- else if (strtoupper($p['SIZE']) == 'LANDSCAPE') { $p['ORIENTATION']='L'; }
- else { $p['ORIENTATION']='P'; }
- }
- if (($p['ORIENTATION']==$this->DefOrientation && !$newformat) || ($newformat && $p['ORIENTATION']=='P')) {
- $pgw = $this->fw;
- $pgh = $this->fh;
- }
- else {
- $pgw = $this->fh;
- $pgh = $this->fw;
- }
- }
-
- if (isset($p['HEADER']) && $p['HEADER']) { $header = $p['HEADER']; }
- if (isset($p['FOOTER']) && $p['FOOTER']) { $footer = $p['FOOTER']; }
- if (isset($p['RESETPAGENUM']) && $p['RESETPAGENUM']) { $resetpagenum = $p['RESETPAGENUM']; }
- if (isset($p['PAGENUMSTYLE']) && $p['PAGENUMSTYLE']) { $pagenumstyle = $p['PAGENUMSTYLE']; }
- if (isset($p['SUPPRESS']) && $p['SUPPRESS']) { $suppress = $p['SUPPRESS']; }
-
- if (preg_match('/cross/i', $p['MARKS']) && preg_match('/crop/i', $p['MARKS'])) { $marks = 'CROPCROSS'; }
- else if (strtoupper($p['MARKS']) == 'CROP') { $marks = 'CROP'; }
- else if (strtoupper($p['MARKS']) == 'CROSS') { $marks = 'CROSS'; }
-
-
- if (isset($p['BACKGROUND-COLOR']) && $p['BACKGROUND-COLOR']) { $bg['BACKGROUND-COLOR'] = $p['BACKGROUND-COLOR']; }
-/*-- BACKGROUNDS --*/
- if (isset($p['BACKGROUND-GRADIENT']) && $p['BACKGROUND-GRADIENT']) { $bg['BACKGROUND-GRADIENT'] = $p['BACKGROUND-GRADIENT']; }
- if (isset($p['BACKGROUND-IMAGE']) && $p['BACKGROUND-IMAGE']) { $bg['BACKGROUND-IMAGE'] = $p['BACKGROUND-IMAGE']; }
- if (isset($p['BACKGROUND-REPEAT']) && $p['BACKGROUND-REPEAT']) { $bg['BACKGROUND-REPEAT'] = $p['BACKGROUND-REPEAT']; }
- if (isset($p['BACKGROUND-POSITION']) && $p['BACKGROUND-POSITION']) { $bg['BACKGROUND-POSITION'] = $p['BACKGROUND-POSITION']; }
- if (isset($p['BACKGROUND-IMAGE-RESIZE']) && $p['BACKGROUND-IMAGE-RESIZE']) { $bg['BACKGROUND-IMAGE-RESIZE'] = $p['BACKGROUND-IMAGE-RESIZE']; }
- if (isset($p['BACKGROUND-IMAGE-OPACITY'])) { $bg['BACKGROUND-IMAGE-OPACITY'] = $p['BACKGROUND-IMAGE-OPACITY']; } // mPDF 5.3.12
-/*-- END BACKGROUNDS --*/
-
- if (isset($p['MARGIN-LEFT'])) { $mgl = $this->ConvertSize($p['MARGIN-LEFT'],$pgw) + $outer_width_LR; }
- if (isset($p['MARGIN-RIGHT'])) { $mgr = $this->ConvertSize($p['MARGIN-RIGHT'],$pgw) + $outer_width_LR; }
- if (isset($p['MARGIN-BOTTOM'])) { $mgb = $this->ConvertSize($p['MARGIN-BOTTOM'],$pgh) + $outer_width_TB; }
- if (isset($p['MARGIN-TOP'])) { $mgt = $this->ConvertSize($p['MARGIN-TOP'],$pgh) + $outer_width_TB; }
- if (isset($p['MARGIN-HEADER'])) { $mgh = $this->ConvertSize($p['MARGIN-HEADER'],$pgh) + $outer_width_TB; }
- if (isset($p['MARGIN-FOOTER'])) { $mgf = $this->ConvertSize($p['MARGIN-FOOTER'],$pgh) + $outer_width_TB; }
-
- if (isset($p['ORIENTATION']) && $p['ORIENTATION']) { $orientation = $p['ORIENTATION']; }
- $this->page_box['outer_width_LR'] = $outer_width_LR; // Used in MARKS:crop etc.
- $this->page_box['outer_width_TB'] = $outer_width_TB;
-
- return array($orientation,$mgl,$mgr,$mgt,$mgb,$mgh,$mgf,$header,$footer,$bg,$resetpagenum,$pagenumstyle,$suppress,$marks,$newformat);
-}
-/*-- END CSS-PAGE --*/
-
-function PreviewBlockCSS($tag,$attr) {
- // Looks ahead from current block level to a new level
- $p = array();
- $zp = array();
- $oldcascadeCSS = $this->blk[$this->blklvl]['cascadeCSS'];
- $classes = array();
- if (isset($attr['CLASS'])) { $classes = preg_split('/\s+/',$attr['CLASS']); }
- //===============================================
- // DEFAULT for this TAG set in DefaultCSS
- if (isset($this->defaultCSS[$tag])) {
- $zp = $this->fixCSS($this->defaultCSS[$tag]);
- if (is_array($zp)) { $p = array_merge($zp,$p); } // Inherited overwrites default
- }
- // STYLESHEET TAG e.g. h1 p div table
- if (isset($this->CSS[$tag])) {
- $zp = $this->CSS[$tag];
- if (is_array($zp)) { $p = array_merge($p,$zp); }
- }
- // STYLESHEET CLASS e.g. .smallone{} .redletter{}
- foreach($classes AS $class) {
- $zp = array();
- if (isset($this->CSS['CLASS>>'.$class])) { $zp = $this->CSS['CLASS>>'.$class]; }
- if (is_array($zp)) { $p = array_merge($p,$zp); }
- }
- // STYLESHEET ID e.g. #smallone{} #redletter{}
- if (isset($attr['ID']) && isset($this->CSS['ID>>'.$attr['ID']])) {
- $zp = $this->CSS['ID>>'.$attr['ID']];
- if (is_array($zp)) { $p = array_merge($p,$zp); }
- }
- // STYLESHEET CLASS e.g. p.smallone{} div.redletter{}
- foreach($classes AS $class) {
- $zp = array();
- if (isset($this->CSS[$tag.'>>CLASS>>'.$class])) { $zp = $this->CSS[$tag.'>>CLASS>>'.$class]; }
- if (is_array($zp)) { $p = array_merge($p,$zp); }
- }
- // STYLESHEET CLASS e.g. p#smallone{} div#redletter{}
- if (isset($attr['ID']) && isset($this->CSS[$tag.'>>ID>>'.$attr['ID']])) {
- $zp = $this->CSS[$tag.'>>ID>>'.$attr['ID']];
- if (is_array($zp)) { $p = array_merge($p,$zp); }
- }
- //===============================================
- // STYLESHEET TAG e.g. div h1 div p
-
- $this->_set_mergedCSS($oldcascadeCSS[$tag], $p);
- // STYLESHEET CLASS e.g. .smallone{} .redletter{}
- foreach($classes AS $class) {
-
- $this->_set_mergedCSS($oldcascadeCSS['CLASS>>'.$class], $p);
- }
- // STYLESHEET CLASS e.g. #smallone{} #redletter{}
- if (isset($attr['ID'])) {
-
- $this->_set_mergedCSS($oldcascadeCSS['ID>>'.$attr['ID']], $p);
- }
- // STYLESHEET CLASS e.g. div.smallone{} p.redletter{}
- foreach($classes AS $class) {
-
- $this->_set_mergedCSS($oldcascadeCSS[$tag.'>>CLASS>>'.$class], $p);
- }
- // STYLESHEET CLASS e.g. div#smallone{} p#redletter{}
- if (isset($attr['ID'])) {
-
- $this->_set_mergedCSS($oldcascadeCSS[$tag.'>>ID>>'.$attr['ID']], $p);
- }
- //===============================================
- // INLINE STYLE e.g. style="CSS:property"
- if (isset($attr['STYLE'])) {
- $zp = $this->readInlineCSS($attr['STYLE']);
- if (is_array($zp)) { $p = array_merge($p,$zp); }
- }
- //===============================================
- return $p;
-}
-
-
-
-/*-- CSS-FLOAT --*/
-// Added mPDF 3.0 Float DIV - CLEAR
-function ClearFloats($clear, $blklvl=0) {
- list($l_exists, $r_exists, $l_max, $r_max, $l_width, $r_width) = $this->GetFloatDivInfo($blklvl,true);
- $end = $currpos = ($this->page*1000 + $this->y);
- if ($clear == 'BOTH' && ($l_exists || $r_exists)) {
- $this->pageoutput[$this->page] = array();
- $end = max($l_max, $r_max, $currpos);
- }
- else if ($clear == 'RIGHT' && $r_exists) {
- $this->pageoutput[$this->page] = array();
- $end = max($r_max, $currpos);
- }
- else if ($clear == 'LEFT' && $l_exists ) {
- $this->pageoutput[$this->page] = array();
- $end = max($l_max, $currpos);
- }
- else { return; }
- $old_page = $this->page;
- $new_page = intval($end/1000);
- if ($old_page != $new_page) {
- $s = $this->PrintPageBackgrounds();
- // Writes after the marker so not overwritten later by page background etc.
- $this->pages[$this->page] = preg_replace('/(___BACKGROUND___PATTERNS'.date('jY').')/', '\\1'."\n".$s."\n", $this->pages[$this->page]);
- $this->pageBackgrounds = array();
- $this->page = $new_page;
- }
- $this->ResetMargins();
- $this->pageoutput[$this->page] = array();
- $this->y = (($end*1000) % 1000000)/1000; // mod changes operands to integers before processing
-}
-
-
-// Added mPDF 3.0 Float DIV
-function GetFloatDivInfo($blklvl=0,$clear=false) {
- // If blklvl specified, only returns floats at that level - for ClearFloats
- $l_exists = false;
- $r_exists = false;
- $l_max = 0;
- $r_max = 0;
- $l_width = 0;
- $r_width = 0;
- if (count($this->floatDivs)) {
- $currpos = ($this->page*1000 + $this->y);
- foreach($this->floatDivs AS $f) {
- if (($clear && $f['blockContext'] == $this->blk[$blklvl]['blockContext']) || (!$clear && $currpos >= $f['startpos'] && $currpos < ($f['endpos']-0.001) && $f['blklvl'] > $blklvl && $f['blockContext'] == $this->blk[$blklvl]['blockContext'])) {
- if ($f['side']=='L') {
- $l_exists= true;
- $l_max = max($l_max, $f['endpos']);
- $l_width = max($l_width , $f['w']);
- }
- if ($f['side']=='R') {
- $r_exists= true;
- $r_max = max($r_max, $f['endpos']);
- $r_width = max($r_width , $f['w']);
- }
- }
- }
- }
- return array($l_exists, $r_exists, $l_max, $r_max, $l_width, $r_width);
-}
-/*-- END CSS-FLOAT --*/
-
-
-
-
-function OpenTag($tag,$attr)
-{
-
- // What this gets: < $tag $attr['WIDTH']="90px" > does not get content here
- // Correct tags where HTML specifies optional end tags,
- // and/or does not allow nesting e.g. P inside P, or
- if ($this->allow_html_optional_endtags) {
- if (($tag == 'P' || $tag == 'DIV' || $tag == 'H1' || $tag == 'H2' || $tag == 'H3' || $tag == 'H4' || $tag == 'H5' || $tag == 'H6' || $tag == 'UL' || $tag == 'OL' || $tag == 'TABLE' || $tag=='PRE' || $tag=='FORM' || $tag=='ADDRESS' || $tag=='BLOCKQUOTE' || $tag=='CENTER' || $tag=='DL' || $tag == 'HR' ) && $this->lastoptionaltag == 'P') { $this->CloseTag($this->lastoptionaltag ); }
- if ($tag == 'DD' && $this->lastoptionaltag == 'DD') { $this->CloseTag($this->lastoptionaltag ); }
- if ($tag == 'DD' && $this->lastoptionaltag == 'DT') { $this->CloseTag($this->lastoptionaltag ); }
- if ($tag == 'DT' && $this->lastoptionaltag == 'DD') { $this->CloseTag($this->lastoptionaltag ); }
- if ($tag == 'DT' && $this->lastoptionaltag == 'DT') { $this->CloseTag($this->lastoptionaltag ); }
- if ($tag == 'LI' && $this->lastoptionaltag == 'LI') { $this->CloseTag($this->lastoptionaltag ); }
- if (($tag == 'TD' || $tag == 'TH') && $this->lastoptionaltag == 'TD') { $this->CloseTag($this->lastoptionaltag ); } // *TABLES*
- if (($tag == 'TD' || $tag == 'TH') && $this->lastoptionaltag == 'TH') { $this->CloseTag($this->lastoptionaltag ); } // *TABLES*
- if ($tag == 'TR' && $this->lastoptionaltag == 'TR') { $this->CloseTag($this->lastoptionaltag ); } // *TABLES*
- if ($tag == 'TR' && $this->lastoptionaltag == 'TD') { $this->CloseTag($this->lastoptionaltag ); $this->CloseTag('TR'); $this->CloseTag('THEAD'); } // *TABLES*
- if ($tag == 'TR' && $this->lastoptionaltag == 'TH') { $this->CloseTag($this->lastoptionaltag ); $this->CloseTag('TR'); $this->CloseTag('THEAD'); } // *TABLES*
- if ($tag == 'OPTION' && $this->lastoptionaltag == 'OPTION') { $this->CloseTag($this->lastoptionaltag ); }
- }
-
- $align = array('left'=>'L','center'=>'C','right'=>'R','top'=>'T','text-top'=>'TT','middle'=>'M','baseline'=>'BS','bottom'=>'B','text-bottom'=>'TB','justify'=>'J');
-
- $this->ignorefollowingspaces=false;
-
- //Opening tag
- switch($tag){
-
- case 'DOTTAB':
- $objattr = array();
- $objattr['type'] = 'dottab';
- $dots=str_repeat('.', 3)." "; // minimum number of dots
- $objattr['width'] = $this->GetStringWidth($dots);
- $objattr['margin_top'] = 0;
- $objattr['margin_bottom'] = 0;
- $objattr['margin_left'] = 0;
- $objattr['margin_right'] = 0;
- $objattr['height'] = 0;
- $objattr['colorarray'] = $this->colorarray;
- $objattr['border_top']['w'] = 0;
- $objattr['border_bottom']['w'] = 0;
- $objattr['border_left']['w'] = 0;
- $objattr['border_right']['w'] = 0;
- $e = "\xbb\xa4\xactype=dottab,objattr=".serialize($objattr)."\xbb\xa4\xac";
-/*-- TABLES --*/
- // Output it to buffers
- if ($this->tableLevel) {
- if (!isset($this->cell[$this->row][$this->col]['maxs'])) {
- $this->cell[$this->row][$this->col]['maxs'] = $this->cell[$this->row][$this->col]['s'];
- }
- elseif($this->cell[$this->row][$this->col]['maxs'] < $this->cell[$this->row][$this->col]['s']) {
- $this->cell[$this->row][$this->col]['maxs'] = $this->cell[$this->row][$this->col]['s'];
- }
- $this->cell[$this->row][$this->col]['s'] = 0 ;// reset
- $this->_saveCellTextBuffer($e); // mPDF 5.3.99
- }
- else {
-/*-- END TABLES --*/
- $this->_saveTextBuffer($e); // mPDF 5.3.99
- } // *TABLES*
- break;
-
- case 'PAGEHEADER':
- case 'PAGEFOOTER':
- $this->ignorefollowingspaces = true;
- if ($attr['NAME']) { $pname = $attr['NAME']; }
- else { $pname = '_default'; }
-
- if ($tag=='PAGEHEADER') { $p = &$this->pageheaders[$pname]; }
- else { $p = &$this->pagefooters[$pname]; }
-
- $p['L']=array();
- $p['C']=array();
- $p['R']=array();
- $p['L']['font-style'] = '';
- $p['C']['font-style'] = '';
- $p['R']['font-style'] = '';
-
- if (isset($attr['CONTENT-LEFT'])) {
- $p['L']['content'] = $attr['CONTENT-LEFT'];
- }
- if (isset($attr['CONTENT-CENTER'])) {
- $p['C']['content'] = $attr['CONTENT-CENTER'];
- }
- if (isset($attr['CONTENT-RIGHT'])) {
- $p['R']['content'] = $attr['CONTENT-RIGHT'];
- }
-
- if (isset($attr['HEADER-STYLE']) || isset($attr['FOOTER-STYLE'])) { // font-family,size,weight,style,color
- if ($tag=='PAGEHEADER') { $properties = $this->readInlineCSS($attr['HEADER-STYLE']); }
- else { $properties = $this->readInlineCSS($attr['FOOTER-STYLE']); }
- if (isset($properties['FONT-FAMILY'])) {
- $p['L']['font-family'] = $properties['FONT-FAMILY'];
- $p['C']['font-family'] = $properties['FONT-FAMILY'];
- $p['R']['font-family'] = $properties['FONT-FAMILY'];
- }
- if (isset($properties['FONT-SIZE'])) {
- $p['L']['font-size'] = $this->ConvertSize($properties['FONT-SIZE']) * _MPDFK;
- $p['C']['font-size'] = $this->ConvertSize($properties['FONT-SIZE']) * _MPDFK;
- $p['R']['font-size'] = $this->ConvertSize($properties['FONT-SIZE']) * _MPDFK;
- }
- if (isset($properties['FONT-WEIGHT']) && $properties['FONT-WEIGHT']=='bold') { // mPDF 5.3.86
- $p['L']['font-style'] = 'B';
- $p['C']['font-style'] = 'B';
- $p['R']['font-style'] = 'B';
- }
- if (isset($properties['FONT-STYLE']) && $properties['FONT-STYLE']=='italic') { // mPDF 5.3.86
- $p['L']['font-style'] .= 'I';
- $p['C']['font-style'] .= 'I';
- $p['R']['font-style'] .= 'I';
- }
- if (isset($properties['COLOR'])) {
- $p['L']['color'] = $properties['COLOR'];
- $p['C']['color'] = $properties['COLOR'];
- $p['R']['color'] = $properties['COLOR'];
- }
- }
- if (isset($attr['HEADER-STYLE-LEFT']) || isset($attr['FOOTER-STYLE-LEFT'])) {
- if ($tag=='PAGEHEADER') { $properties = $this->readInlineCSS($attr['HEADER-STYLE-LEFT']); }
- else { $properties = $this->readInlineCSS($attr['FOOTER-STYLE-LEFT']); }
- if (isset($properties['FONT-FAMILY'])) { $p['L']['font-family'] = $properties['FONT-FAMILY']; }
- if (isset($properties['FONT-SIZE'])) { $p['L']['font-size'] = $this->ConvertSize($properties['FONT-SIZE']) * _MPDFK; }
- if (isset($properties['FONT-WEIGHT']) && $properties['FONT-WEIGHT']=='bold') { $p['L']['font-style'] ='B'; } // mPDF 5.3.86
- if (isset($properties['FONT-STYLE']) && $properties['FONT-STYLE']=='italic') { $p['L']['font-style'] .='I'; } // mPDF 5.3.86
- if (isset($properties['COLOR'])) { $p['L']['color'] = $properties['COLOR']; }
- }
- if (isset($attr['HEADER-STYLE-CENTER']) || isset($attr['FOOTER-STYLE-CENTER'])) {
- if ($tag=='PAGEHEADER') { $properties = $this->readInlineCSS($attr['HEADER-STYLE-CENTER']); }
- else { $properties = $this->readInlineCSS($attr['FOOTER-STYLE-CENTER']); }
- if (isset($properties['FONT-FAMILY'])) { $p['C']['font-family'] = $properties['FONT-FAMILY']; }
- if (isset($properties['FONT-SIZE'])) { $p['C']['font-size'] = $this->ConvertSize($properties['FONT-SIZE']) * _MPDFK; }
- if (isset($properties['FONT-WEIGHT']) && $properties['FONT-WEIGHT']=='bold') { $p['C']['font-style'] = 'B'; } // mPDF 5.3.86
- if (isset($properties['FONT-STYLE']) && $properties['FONT-STYLE']=='italic') { $p['C']['font-style'] .= 'I'; } // mPDF 5.3.86
- if (isset($properties['COLOR'])) { $p['C']['color'] = $properties['COLOR']; }
- }
- if (isset($attr['HEADER-STYLE-RIGHT']) || isset($attr['FOOTER-STYLE-RIGHT'])) {
- if ($tag=='PAGEHEADER') { $properties = $this->readInlineCSS($attr['HEADER-STYLE-RIGHT']); }
- else { $properties = $this->readInlineCSS($attr['FOOTER-STYLE-RIGHT']); }
- if (isset($properties['FONT-FAMILY'])) { $p['R']['font-family'] = $properties['FONT-FAMILY']; }
- if (isset($properties['FONT-SIZE'])) { $p['R']['font-size'] = $this->ConvertSize($properties['FONT-SIZE']) * _MPDFK; }
- if (isset($properties['FONT-WEIGHT']) && $properties['FONT-WEIGHT']=='bold') { $p['R']['font-style'] = 'B'; } // mPDF 5.3.86
- if (isset($properties['FONT-STYLE']) && $properties['FONT-STYLE']=='italic') { $p['R']['font-style'] .= 'I'; } // mPDF 5.3.86
- if (isset($properties['COLOR'])) { $p['R']['color'] = $properties['COLOR']; }
- }
- if (isset($attr['LINE']) && $attr['LINE']) { // 0|1|on|off
- if ($attr['LINE']=='1' || strtoupper($attr['LINE'])=='ON') { $lineset=1; }
- else { $lineset=0; }
- $p['line'] = $lineset;
- }
- break;
-
-
-/*-- HTMLHEADERS-FOOTERS --*/
- case 'SETHTMLPAGEHEADER':
- case 'SETHTMLPAGEFOOTER':
- $this->ignorefollowingspaces = true;
- if (isset($attr['NAME']) && $attr['NAME']) { $pname = $attr['NAME']; }
- else { $pname = '_default'; }
- if (isset($attr['PAGE']) && $attr['PAGE']) { // O|odd|even|E|ALL|[blank]
- if (strtoupper($attr['PAGE'])=='O' || strtoupper($attr['PAGE'])=='ODD') { $side='odd'; }
- else if (strtoupper($attr['PAGE'])=='E' || strtoupper($attr['PAGE'])=='EVEN') { $side='even'; }
- else if (strtoupper($attr['PAGE'])=='ALL') { $side='both'; }
- else { $side='odd'; }
- }
- else { $side='odd'; }
- if (isset($attr['VALUE']) && $attr['VALUE']) { // -1|1|on|off
- if ($attr['VALUE']=='1' || strtoupper($attr['VALUE'])=='ON') { $set=1; }
- else if ($attr['VALUE']=='-1' || strtoupper($attr['VALUE'])=='OFF') { $set=0; }
- else { $set=1; }
- }
- else { $set=1; }
- if (isset($attr['SHOW-THIS-PAGE']) && $attr['SHOW-THIS-PAGE'] && $tag=='SETHTMLPAGEHEADER') { $write = 1; }
- else { $write = 0; }
- if ($side=='odd' || $side=='both') {
- if ($set && $tag=='SETHTMLPAGEHEADER') { $this->SetHTMLHeader($this->pageHTMLheaders[$pname],'O',$write); }
- else if ($set && $tag=='SETHTMLPAGEFOOTER') { $this->SetHTMLFooter($this->pageHTMLfooters[$pname],'O'); }
- else if ($tag=='SETHTMLPAGEHEADER') { $this->SetHTMLHeader('','O'); }
- else { $this->SetHTMLFooter('','O'); }
- }
- if ($side=='even' || $side=='both') {
- if ($set && $tag=='SETHTMLPAGEHEADER') { $this->SetHTMLHeader($this->pageHTMLheaders[$pname],'E',$write); }
- else if ($set && $tag=='SETHTMLPAGEFOOTER') { $this->SetHTMLFooter($this->pageHTMLfooters[$pname],'E'); }
- else if ($tag=='SETHTMLPAGEHEADER') { $this->SetHTMLHeader('','E'); }
- else { $this->SetHTMLFooter('','E'); }
- }
- break;
-/*-- END HTMLHEADERS-FOOTERS --*/
-
- case 'SETPAGEHEADER':
- case 'SETPAGEFOOTER':
- $this->ignorefollowingspaces = true;
- if (isset($attr['NAME']) && $attr['NAME']) { $pname = $attr['NAME']; }
- else { $pname = '_default'; }
- if (isset($attr['PAGE']) && $attr['PAGE']) { // O|odd|even|E|ALL|[blank]
- if (strtoupper($attr['PAGE'])=='O' || strtoupper($attr['PAGE'])=='ODD') { $side='odd'; }
- else if (strtoupper($attr['PAGE'])=='E' || strtoupper($attr['PAGE'])=='EVEN') { $side='even'; }
- else if (strtoupper($attr['PAGE'])=='ALL') { $side='both'; }
- else { $side='odd'; }
- }
- else { $side='odd'; }
- if (isset($attr['VALUE']) && $attr['VALUE']) { // -1|1|on|off
- if ($attr['VALUE']=='1' || strtoupper($attr['VALUE'])=='ON') { $set=1; }
- else if ($attr['VALUE']=='-1' || strtoupper($attr['VALUE'])=='OFF') { $set=0; }
- else { $set=1; }
- }
- else { $set=1; }
- if ($side=='odd' || $side=='both') {
- if ($set && $tag=='SETPAGEHEADER') { $this->headerDetails['odd'] = $this->pageheaders[$pname]; }
- else if ($set && $tag=='SETPAGEFOOTER') { $this->footerDetails['odd'] = $this->pagefooters[$pname]; }
- else if ($tag=='SETPAGEHEADER') { $this->headerDetails['odd'] = array(); }
- else { $this->footerDetails['odd'] = array(); }
- if (!$this->mirrorMargins || ($this->page)%2!=0) { // ODD
- if ($tag=='SETPAGEHEADER') { $this->_setAutoHeaderHeight($this->headerDetails['odd'],$this->HTMLHeader); }
- if ($tag=='SETPAGEFOOTER') { $this->_setAutoFooterHeight($this->footerDetails['odd'],$this->HTMLFooter); }
- }
- }
- if ($side=='even' || $side=='both') {
- if ($set && $tag=='SETPAGEHEADER') { $this->headerDetails['even'] = $this->pageheaders[$pname]; }
- else if ($set && $tag=='SETPAGEFOOTER') { $this->footerDetails['even'] = $this->pagefooters[$pname]; }
- else if ($tag=='SETPAGEHEADER') { $this->headerDetails['even'] = array(); }
- else { $this->footerDetails['even'] = array(); }
- if ($this->mirrorMargins && ($this->page)%2==0) { // EVEN
- if ($tag=='SETPAGEHEADER') { $this->_setAutoHeaderHeight($this->headerDetails['even'],$this->HTMLHeaderE); }
- if ($tag=='SETPAGEFOOTER') { $this->_setAutoFooterHeight($this->footerDetails['even'],$this->HTMLFooterE); }
- }
- }
- if (isset($attr['SHOW-THIS-PAGE']) && $attr['SHOW-THIS-PAGE'] && $tag=='SETPAGEHEADER') {
- $this->Header();
- }
- break;
-
-
-/*-- TOC --*/
- case 'TOC': //added custom-tag - set Marker for insertion later of ToC
- if (!class_exists('tocontents', false)) { include(_MPDF_PATH.'classes/tocontents.php'); }
- if (empty($this->tocontents)) { $this->tocontents = new tocontents($this); }
- $this->tocontents->openTagTOC($attr);
- break;
-
-
-
- case 'TOCPAGEBREAK': // custom-tag - set Marker for insertion later of ToC AND adds PAGEBREAK
- if (!class_exists('tocontents', false)) { include(_MPDF_PATH.'classes/tocontents.php'); }
- if (empty($this->tocontents)) { $this->tocontents = new tocontents($this); }
- list($isbreak,$toc_id) = $this->tocontents->openTagTOCPAGEBREAK($attr);
- if ($isbreak) break;
- // No break - continues as PAGEBREAK...
-/*-- END TOC --*/
-
-
- case 'PAGE_BREAK': //custom-tag
- case 'PAGEBREAK': //custom-tag
- case 'NEWPAGE': //custom-tag
- case 'FORMFEED': //custom-tag
-
- $save_blklvl = $this->blklvl;
- $save_blk = $this->blk;
- $save_silp = $this->saveInlineProperties();
- $save_spanlvl = $this->spanlvl;
- $save_ilp = $this->InlineProperties;
-
- // Close any open block tags
- for ($b= $this->blklvl;$b>0;$b--) { $this->CloseTag($this->blk[$b]['tag']); }
- if(!empty($this->textbuffer)) { //Output previously buffered content
- $this->printbuffer($this->textbuffer);
- $this->textbuffer=array();
- }
- $this->ignorefollowingspaces = true;
- $save_cols = false;
-/*-- COLUMNS --*/
- if ($this->ColActive) {
- $save_cols = true;
- $save_nbcol = $this->NbCol; // other values of gap and vAlign will not change by setting Columns off
- $this->SetColumns(0);
- }
-/*-- END COLUMNS --*/
-
-
- if (isset($attr['SHEET-SIZE']) && $tag != 'FORMFEED' && !$this->restoreBlockPageBreaks) {
- // Convert to same types as accepted in initial mPDF() A4, A4-L, or array(w,h)
- $prop = preg_split('/\s+/',trim($attr['SHEET-SIZE']));
- if (count($prop) == 2 ) {
- $newformat = array($this->ConvertSize($prop[0]), $this->ConvertSize($prop[1]));
- }
- else { $newformat = $attr['SHEET-SIZE']; }
- }
- else { $newformat = ''; }
-
-
- $mgr = $mgl = $mgt = $mgb = $mgh = $mgf = '';
- if (isset($attr['MARGIN-RIGHT'])) { $mgr = $this->ConvertSize($attr['MARGIN-RIGHT'],$this->w,$this->FontSize,false); }
- if (isset($attr['MARGIN-LEFT'])) { $mgl = $this->ConvertSize($attr['MARGIN-LEFT'],$this->w,$this->FontSize,false); }
- if (isset($attr['MARGIN-TOP'])) { $mgt = $this->ConvertSize($attr['MARGIN-TOP'],$this->w,$this->FontSize,false); }
- if (isset($attr['MARGIN-BOTTOM'])) { $mgb = $this->ConvertSize($attr['MARGIN-BOTTOM'],$this->w,$this->FontSize,false); }
- if (isset($attr['MARGIN-HEADER'])) { $mgh = $this->ConvertSize($attr['MARGIN-HEADER'],$this->w,$this->FontSize,false); }
- if (isset($attr['MARGIN-FOOTER'])) { $mgf = $this->ConvertSize($attr['MARGIN-FOOTER'],$this->w,$this->FontSize,false); }
- $ohname = $ehname = $ofname = $efname = '';
- if (isset($attr['ODD-HEADER-NAME'])) { $ohname = $attr['ODD-HEADER-NAME']; }
- if (isset($attr['EVEN-HEADER-NAME'])) { $ehname = $attr['EVEN-HEADER-NAME']; }
- if (isset($attr['ODD-FOOTER-NAME'])) { $ofname = $attr['ODD-FOOTER-NAME']; }
- if (isset($attr['EVEN-FOOTER-NAME'])) { $efname = $attr['EVEN-FOOTER-NAME']; }
- $ohvalue = $ehvalue = $ofvalue = $efvalue = 0;
- if (isset($attr['ODD-HEADER-VALUE']) && ($attr['ODD-HEADER-VALUE']=='1' || strtoupper($attr['ODD-HEADER-VALUE'])=='ON')) { $ohvalue = 1; }
- else if (isset($attr['ODD-HEADER-VALUE']) && ($attr['ODD-HEADER-VALUE']=='-1' || strtoupper($attr['ODD-HEADER-VALUE'])=='OFF')) { $ohvalue = -1; }
- if (isset($attr['EVEN-HEADER-VALUE']) && ($attr['EVEN-HEADER-VALUE']=='1' || strtoupper($attr['EVEN-HEADER-VALUE'])=='ON')) { $ehvalue = 1; }
- else if (isset($attr['EVEN-HEADER-VALUE']) && ($attr['EVEN-HEADER-VALUE']=='-1' || strtoupper($attr['EVEN-HEADER-VALUE'])=='OFF')) { $ehvalue = -1; }
- if (isset($attr['ODD-FOOTER-VALUE']) && ($attr['ODD-FOOTER-VALUE']=='1' || strtoupper($attr['ODD-FOOTER-VALUE'])=='ON')) { $ofvalue = 1; }
- else if (isset($attr['ODD-FOOTER-VALUE']) && ($attr['ODD-FOOTER-VALUE']=='-1' || strtoupper($attr['ODD-FOOTER-VALUE'])=='OFF')) { $ofvalue = -1; }
- if (isset($attr['EVEN-FOOTER-VALUE']) && ($attr['EVEN-FOOTER-VALUE']=='1' || strtoupper($attr['EVEN-FOOTER-VALUE'])=='ON')) { $efvalue = 1; }
- else if (isset($attr['EVEN-FOOTER-VALUE']) && ($attr['EVEN-FOOTER-VALUE']=='-1' || strtoupper($attr['EVEN-FOOTER-VALUE'])=='OFF')) { $efvalue = -1; }
-
- if (isset($attr['ORIENTATION']) && (strtoupper($attr['ORIENTATION'])=='L' || strtoupper($attr['ORIENTATION'])=='LANDSCAPE')) { $orient = 'L'; }
- else if (isset($attr['ORIENTATION']) && (strtoupper($attr['ORIENTATION'])=='P' || strtoupper($attr['ORIENTATION'])=='PORTRAIT')) { $orient = 'P'; }
- else { $orient = $this->CurOrientation; }
-
- if (isset($attr['PAGE-SELECTOR']) && $attr['PAGE-SELECTOR']) { $pagesel = $attr['PAGE-SELECTOR']; }
- else { $pagesel = ''; }
-
- $resetpagenum = '';
- $pagenumstyle = '';
- $suppress = '';
- if (isset($attr['RESETPAGENUM'])) { $resetpagenum = $attr['RESETPAGENUM']; }
- if (isset($attr['PAGENUMSTYLE'])) { $pagenumstyle = $attr['PAGENUMSTYLE']; }
- if (isset($attr['SUPPRESS'])) { $suppress = $attr['SUPPRESS']; }
-
- if ($tag == 'TOCPAGEBREAK') { $type = 'NEXT-ODD'; }
- else if(isset($attr['TYPE'])) { $type = strtoupper($attr['TYPE']); }
- else { $type = ''; }
-
- if ($type == 'E' || $type == 'EVEN') { $this->AddPage($orient,'E', $resetpagenum, $pagenumstyle, $suppress,$mgl,$mgr,$mgt,$mgb,$mgh,$mgf,$ohname,$ehname,$ofname,$efname,$ohvalue,$ehvalue,$ofvalue,$efvalue,$pagesel,$newformat); }
- else if ($type == 'O' || $type == 'ODD') { $this->AddPage($orient,'O', $resetpagenum, $pagenumstyle, $suppress,$mgl,$mgr,$mgt,$mgb,$mgh,$mgf,$ohname,$ehname,$ofname,$efname,$ohvalue,$ehvalue,$ofvalue,$efvalue,$pagesel,$newformat); }
- else if ($type == 'NEXT-ODD') { $this->AddPage($orient,'NEXT-ODD', $resetpagenum, $pagenumstyle, $suppress,$mgl,$mgr,$mgt,$mgb,$mgh,$mgf,$ohname,$ehname,$ofname,$efname,$ohvalue,$ehvalue,$ofvalue,$efvalue,$pagesel,$newformat); }
- else if ($type == 'NEXT-EVEN') { $this->AddPage($orient,'NEXT-EVEN', $resetpagenum, $pagenumstyle, $suppress,$mgl,$mgr,$mgt,$mgb,$mgh,$mgf,$ohname,$ehname,$ofname,$efname,$ohvalue,$ehvalue,$ofvalue,$efvalue,$pagesel,$newformat); }
- else { $this->AddPage($orient,'', $resetpagenum, $pagenumstyle, $suppress,$mgl,$mgr,$mgt,$mgb,$mgh,$mgf,$ohname,$ehname,$ofname,$efname,$ohvalue,$ehvalue,$ofvalue,$efvalue,$pagesel,$newformat); }
-
-/*-- TOC --*/
- if ($tag == 'TOCPAGEBREAK') {
- if ($toc_id) { $this->tocontents->m_TOC[$toc_id]['TOCmark'] = $this->page; }
- else { $this->tocontents->TOCmark = $this->page; }
- }
-/*-- END TOC --*/
-
-/*-- COLUMNS --*/
- if ($save_cols) {
- // Restore columns
- $this->SetColumns($save_nbcol,$this->colvAlign,$this->ColGap);
- }
-/*-- END COLUMNS --*/
- if (($tag == 'FORMFEED' || $this->restoreBlockPagebreaks) && !$this->tableLevel && !$this->listlvl) {
- $this->blk = $save_blk;
- // Re-open block tags
- $t = $this->blk[0]['tag'];
- $a = $this->blk[0]['attr'];
- $this->blklvl = 0;
- for ($b=0; $b<=$save_blklvl;$b++) {
- $tc = $t;
- $ac = $a;
- $t = $this->blk[$b+1]['tag'];
- $a = $this->blk[$b+1]['attr'];
- unset($this->blk[$b+1]);
- $this->OpenTag($tc,$ac);
- }
- $this->spanlvl = $save_spanlvl;
- $this->InlineProperties = $save_ilp;
- $this->restoreInlineProperties($save_silp);
- }
-
- break;
-
-
-/*-- TOC --*/
- case 'TOCENTRY':
- if (isset($attr['CONTENT']) && $attr['CONTENT']) {
- $objattr = array();
- $objattr['CONTENT'] = htmlspecialchars_decode($attr['CONTENT'],ENT_QUOTES);
- $objattr['type'] = 'toc';
- if (isset($attr['LEVEL']) && $attr['LEVEL']) { $objattr['toclevel'] = $attr['LEVEL']; } else { $objattr['toclevel'] = 0; }
- if (isset($attr['NAME']) && $attr['NAME']) { $objattr['toc_id'] = $attr['NAME']; } else { $objattr['toc_id'] = 0; }
- $e = "\xbb\xa4\xactype=toc,objattr=".serialize($objattr)."\xbb\xa4\xac";
- if($this->tableLevel) { $this->cell[$this->row][$this->col]['textbuffer'][] = array($e); } // *TABLES*
- else { // *TABLES*
- $this->textbuffer[] = array($e);
- } // *TABLES*
- }
- break;
-/*-- END TOC --*/
-
-/*-- INDEX --*/
- case 'INDEXENTRY':
- if (isset($attr['CONTENT']) && $attr['CONTENT']) {
- if (isset($attr['XREF']) && $attr['XREF']) {
- $this->IndexEntry(htmlspecialchars_decode($attr['CONTENT'],ENT_QUOTES),$attr['XREF']);
- break;
- }
- $objattr = array();
- $objattr['CONTENT'] = htmlspecialchars_decode($attr['CONTENT'],ENT_QUOTES);
- $objattr['type'] = 'indexentry';
- $e = "\xbb\xa4\xactype=indexentry,objattr=".serialize($objattr)."\xbb\xa4\xac";
- if($this->tableLevel) { $this->cell[$this->row][$this->col]['textbuffer'][] = array($e); } // *TABLES*
- else { // *TABLES*
- $this->textbuffer[] = array($e);
- } // *TABLES*
- }
- break;
-
-
- case 'INDEXINSERT':
- if (isset($attr['FONT-SIZE'])) { $reffontsize = $attr['FONT-SIZE']; } else { $reffontsize = ''; }
- if (isset($attr['LINE-SPACING']) && $attr['LINE-SPACING']) { $linespacing = $attr['LINE-SPACING']; } else { $linespacing = ''; }
- if (isset($attr['DIV-FONT-SIZE']) && $attr['DIV-FONT-SIZE']) { $divlettfontsize = $attr['DIV-FONT-SIZE']; } else { $divlettfontsize = ''; }
- if (isset($attr['FONT']) && $attr['FONT']) { $reffont = $attr['FONT']; } else { $reffont = ''; }
- if (isset($attr['DIV-FONT']) && $attr['DIV-FONT']) { $divlettfont = $attr['DIV-FONT']; } else { $divlettfont = ''; }
- if (isset($attr['COLS']) && $attr['COLS']) { $cols = $attr['COLS']; } else { $cols = 1; }
- if (isset($attr['OFFSET']) && $attr['OFFSET']) { $offset = $attr['OFFSET']; } else { $offset = 3; }
- if (isset($attr['GAP']) && $attr['GAP']) { $gap = $attr['GAP']; } else { $gap = 5; }
-
- if (isset($attr['USEDIVLETTERS']) && (strtoupper($attr['USEDIVLETTERS'])=='OFF' || $attr['USEDIVLETTERS']==-1 || $attr['USEDIVLETTERS']==='0')) { $usedivletters = 0; }
- else { $usedivletters = 1; }
-
- if (isset($attr['LINKS']) && (strtoupper($attr['LINKS'])=='ON' || $attr['LINKS']==1)) { $links = true; }
- else { $links = false; }
- $this->CreateIndex($cols, $reffontsize, $linespacing, $offset, $usedivletters, $divlettfontsize, $gap, $reffont,$divlettfont, $links);
- break;
-/*-- END INDEX --*/
-
-/*-- WATERMARK --*/
-
- case 'WATERMARKTEXT':
- if (isset($attr['CONTENT']) && $attr['CONTENT']) { $txt = htmlspecialchars_decode($attr['CONTENT'],ENT_QUOTES); } else { $txt = ''; }
- if (isset($attr['ALPHA']) && $attr['ALPHA']>0) { $alpha = $attr['ALPHA']; } else { $alpha = -1; }
- $this->SetWatermarkText($txt, $alpha);
- break;
-
-
- case 'WATERMARKIMAGE':
- if (isset($attr['SRC'])) { $src = $attr['SRC']; } else { $src = ''; }
- if (isset($attr['ALPHA']) && $attr['ALPHA']>0) { $alpha = $attr['ALPHA']; } else { $alpha = -1; }
- if (isset($attr['SIZE']) && $attr['SIZE']) {
- $size = $attr['SIZE'];
- if (strpos($size,',')) { $size = explode(',',$size); }
- }
- else { $size = 'D'; }
- if (isset($attr['POS']) && $attr['POS']) {
- $pos = $attr['POS'];
- if (strpos($pos,',')) { $pos = explode(',',$pos); }
- }
- else { $pos = 'P'; }
- $this->SetWatermarkImage($src, $alpha, $size, $pos);
- break;
-/*-- END WATERMARK --*/
-
-/*-- BOOKMARKS --*/
- case 'BOOKMARK':
- if (isset($attr['CONTENT'])) {
- $objattr = array();
- $objattr['CONTENT'] = htmlspecialchars_decode($attr['CONTENT'],ENT_QUOTES);
- $objattr['type'] = 'bookmark';
- if (isset($attr['LEVEL']) && $attr['LEVEL']) { $objattr['bklevel'] = $attr['LEVEL']; } else { $objattr['bklevel'] = 0; }
- $e = "\xbb\xa4\xactype=bookmark,objattr=".serialize($objattr)."\xbb\xa4\xac";
- if($this->tableLevel) { $this->cell[$this->row][$this->col]['textbuffer'][] = array($e); } // *TABLES*
- else { // *TABLES*
- $this->textbuffer[] = array($e);
- } // *TABLES*
- }
- break;
-/*-- END BOOKMARKS --*/
-
-/*-- ANNOTATIONS --*/
- case 'ANNOTATION':
-
- //if (isset($attr['CONTENT']) && !$this->writingHTMLheader && !$this->writingHTMLfooter) { // Stops annotations in FixedPos
- if (isset($attr['CONTENT'])) {
- $objattr = array();
- $objattr['margin_top'] = 0;
- $objattr['margin_bottom'] = 0;
- $objattr['margin_left'] = 0;
- $objattr['margin_right'] = 0;
- $objattr['width'] = 0;
- $objattr['height'] = 0;
- $objattr['border_top']['w'] = 0;
- $objattr['border_bottom']['w'] = 0;
- $objattr['border_left']['w'] = 0;
- $objattr['border_right']['w'] = 0;
- $objattr['CONTENT'] = htmlspecialchars_decode($attr['CONTENT'],ENT_QUOTES);
- $objattr['type'] = 'annot';
- $objattr['POPUP'] = '';
- }
- else { break; }
- if (isset($attr['POS-X'])) { $objattr['POS-X'] = $attr['POS-X']; } else { $objattr['POS-X'] = 0; }
- if (isset($attr['POS-Y'])) { $objattr['POS-Y'] = $attr['POS-Y']; } else { $objattr['POS-Y'] = 0; }
- if (isset($attr['ICON'])) { $objattr['ICON'] = $attr['ICON']; } else { $objattr['ICON'] = 'Note'; }
- if (isset($attr['AUTHOR'])) { $objattr['AUTHOR'] = $attr['AUTHOR']; }
- else if (isset($attr['TITLE'])) { $objattr['AUTHOR'] = $attr['TITLE']; } else { $objattr['AUTHOR'] = ''; }
- if (isset($attr['FILE'])) { $objattr['FILE'] = $attr['FILE']; } else { $objattr['FILE'] = ''; }
- if (isset($attr['SUBJECT'])) { $objattr['SUBJECT'] = $attr['SUBJECT']; } else { $objattr['SUBJECT'] = ''; }
- if (isset($attr['OPACITY']) && $attr['OPACITY']>0 && $attr['OPACITY']<=1) { $objattr['OPACITY'] = $attr['OPACITY']; }
- else if ($this->annotMargin) { $objattr['OPACITY'] = 1; }
- else { $objattr['OPACITY'] = $this->annotOpacity; }
- if (isset($attr['COLOR'])) {
- $cor = $this->ConvertColor($attr['COLOR']);
- if ($cor) { $objattr['COLOR'] = $cor; }
- else { $objattr['COLOR'] = $this->ConvertColor('yellow'); }
- }
- else { $objattr['COLOR'] = $this->ConvertColor('yellow'); }
-
- if (isset($attr['POPUP']) && !empty($attr['POPUP'])) {
- $pop = preg_split('/\s+/',trim($attr['POPUP']));
- if (count($pop)>1) { $objattr['POPUP'] = $pop; }
- else { $objattr['POPUP'] = true; }
- }
- $e = "\xbb\xa4\xactype=annot,objattr=".serialize($objattr)."\xbb\xa4\xac";
- if($this->tableLevel) { $this->cell[$this->row][$this->col]['textbuffer'][] = array($e); } // *TABLES*
- else { // *TABLES*
- $this->textbuffer[] = array($e);
- } // *TABLES*
- break;
-/*-- END ANNOTATIONS --*/
-
-
-/*-- COLUMNS --*/
- case 'COLUMNS': //added custom-tag
- if (isset($attr['COLUMN-COUNT']) && ($attr['COLUMN-COUNT'] || $attr['COLUMN-COUNT']==='0')) {
- // Close any open block tags
- for ($b= $this->blklvl;$b>0;$b--) { $this->CloseTag($this->blk[$b]['tag']); }
- if(!empty($this->textbuffer)) { //Output previously buffered content
- $this->printbuffer($this->textbuffer);
- $this->textbuffer=array();
- }
-
- if (isset($attr['VALIGN']) && $attr['VALIGN']) {
- if ($attr['VALIGN'] == 'J') { $valign = 'J'; }
- else { $valign = $align[$attr['VALIGN']]; }
- }
- else { $valign = ''; }
- if (isset($attr['COLUMN-GAP']) && $attr['COLUMN-GAP']) { $this->SetColumns($attr['COLUMN-COUNT'],$valign,$attr['COLUMN-GAP']); }
- else { $this->SetColumns($attr['COLUMN-COUNT'],$valign); }
- }
- $this->ignorefollowingspaces = true;
- break;
-
- case 'COLUMN_BREAK': //custom-tag
- case 'COLUMNBREAK': //custom-tag
- case 'NEWCOLUMN': //custom-tag
- $this->ignorefollowingspaces = true;
- $this->NewColumn();
- $this->ColumnAdjust = false; // disables all column height adjustment for the page.
- break;
-
-/*-- END COLUMNS --*/
-
-
- case 'BDO':
- // $this->biDirectional = true;
- break;
-
-
- case 'TTZ':
- $this->ttz = true;
- $this->InlineProperties[$tag] = $this->saveInlineProperties();
- $this->setCSS(array('FONT-FAMILY'=>'czapfdingbats','FONT-WEIGHT'=>'normal','FONT-STYLE'=>'normal'),'INLINE');
- break;
-
- case 'TTS':
- $this->tts = true;
- $this->InlineProperties[$tag] = $this->saveInlineProperties();
- $this->setCSS(array('FONT-FAMILY'=>'csymbol','FONT-WEIGHT'=>'normal','FONT-STYLE'=>'normal'),'INLINE');
- break;
-
- case 'TTA':
- $this->tta = true;
- $this->InlineProperties[$tag] = $this->saveInlineProperties();
-
- if (in_array($this->FontFamily,$this->mono_fonts)) {
- $this->setCSS(array('FONT-FAMILY'=>'ccourier'),'INLINE');
- }
- else if (in_array($this->FontFamily,$this->serif_fonts)) {
- $this->setCSS(array('FONT-FAMILY'=>'ctimes'),'INLINE');
- }
- else {
- $this->setCSS(array('FONT-FAMILY'=>'chelvetica'),'INLINE');
- }
- break;
-
-
-
- // INLINE PHRASES OR STYLES
- case 'SUB':
- case 'SUP':
- case 'ACRONYM':
- case 'BIG':
- case 'SMALL':
- case 'INS':
- case 'S':
- case 'STRIKE':
- case 'DEL':
- case 'STRONG':
- case 'CITE':
- case 'Q':
- case 'EM':
- case 'B':
- case 'I':
- case 'U':
- case 'SAMP':
- case 'CODE':
- case 'KBD':
- case 'TT':
- case 'VAR':
- case 'FONT':
- case 'SPAN':
-/*-- ANNOTATIONS --*/
- if ($this->title2annots && isset($attr['TITLE'])) {
- $objattr = array();
- $objattr['margin_top'] = 0;
- $objattr['margin_bottom'] = 0;
- $objattr['margin_left'] = 0;
- $objattr['margin_right'] = 0;
- $objattr['width'] = 0;
- $objattr['height'] = 0;
- $objattr['border_top']['w'] = 0;
- $objattr['border_bottom']['w'] = 0;
- $objattr['border_left']['w'] = 0;
- $objattr['border_right']['w'] = 0;
-
- $objattr['CONTENT'] = $attr['TITLE'];
- $objattr['type'] = 'annot';
- $objattr['POS-X'] = 0;
- $objattr['POS-Y'] = 0;
- $objattr['ICON'] = 'Comment';
- $objattr['AUTHOR'] = '';
- $objattr['SUBJECT'] = '';
- $objattr['OPACITY'] = $this->annotOpacity;
- $objattr['COLOR'] = $this->ConvertColor('yellow');
- $annot = "\xbb\xa4\xactype=annot,objattr=".serialize($objattr)."\xbb\xa4\xac";
- }
-/*-- END ANNOTATIONS --*/
-
- if ($tag == 'SPAN') {
- $this->spanlvl++;
- $this->InlineProperties['SPAN'][$this->spanlvl] = $this->saveInlineProperties();
- if (isset($annot)) { $this->InlineAnnots[$tag][$this->spanlvl] = $annot; } // *ANNOTATIONS*
- }
- else {
- $this->InlineProperties[$tag] = $this->saveInlineProperties();
- if (isset($annot)) { $this->InlineAnnots[$tag] = $annot; } // *ANNOTATIONS*
- }
- $properties = $this->MergeCSS('INLINE',$tag,$attr);
- if (!empty($properties)) $this->setCSS($properties,'INLINE');
- break;
-
-
- case 'A':
- if (isset($attr['NAME']) and $attr['NAME'] != '') {
- $e = '';
-/*-- BOOKMARKS --*/
- if ($this->anchor2Bookmark) {
- $objattr = array();
- $objattr['CONTENT'] = htmlspecialchars_decode($attr['NAME'],ENT_QUOTES);
- $objattr['type'] = 'bookmark';
- if (isset($attr['LEVEL']) && $attr['LEVEL']) { $objattr['bklevel'] = $attr['LEVEL']; } else { $objattr['bklevel'] = 0; }
- $e = "\xbb\xa4\xactype=bookmark,objattr=".serialize($objattr)."\xbb\xa4\xac";
- }
-/*-- END BOOKMARKS --*/
- if($this->tableLevel) { // *TABLES*
- $this->_saveCellTextBuffer($e, '', $attr['NAME']); // mPDF 5.3.99 // *TABLES*
- } // *TABLES*
- else { // *TABLES*
- $this->_saveTextBuffer($e, '', $attr['NAME']); // mPDF 5.3.99 //an internal link (adds a space for recognition)
- } // *TABLES*
- }
- if (isset($attr['HREF'])) {
- $this->InlineProperties['A'] = $this->saveInlineProperties();
- $properties = $this->MergeCSS('',$tag,$attr);
- if (!empty($properties)) $this->setCSS($properties,'INLINE');
- $this->HREF=htmlspecialchars_decode(urldecode($attr['HREF'])); // mPDF 5.3.95
- }
- break;
-
-
-
- case 'BR':
- // Added mPDF 3.0 Float DIV - CLEAR
- if (isset($attr['STYLE'])) {
- $properties = $this->readInlineCSS($attr['STYLE']);
- if (isset($properties['CLEAR'])) { $this->ClearFloats(strtoupper($properties['CLEAR']),$this->blklvl); } // *CSS-FLOAT*
- }
-
-
-/*-- TABLES --*/
- if($this->tableLevel) {
-
- if ($this->blockjustfinished || $this->listjustfinished) {
- $this->_saveCellTextBuffer("\n"); // mPDF 5.3.99
- }
-
- $this->_saveCellTextBuffer("\n"); // mPDF 5.3.99
- if (!isset($this->cell[$this->row][$this->col]['maxs'])) {
- $this->cell[$this->row][$this->col]['maxs'] = $this->cell[$this->row][$this->col]['s'];
- }
- elseif($this->cell[$this->row][$this->col]['maxs'] < $this->cell[$this->row][$this->col]['s']) {
- $this->cell[$this->row][$this->col]['maxs'] = $this->cell[$this->row][$this->col]['s'];
- }
- $this->cell[$this->row][$this->col]['s'] = 0 ;// reset
- }
- else {
-/*-- END TABLES --*/
- if (count($this->textbuffer)) {
- $this->textbuffer[count($this->textbuffer)-1][0] = preg_replace('/ $/','',$this->textbuffer[count($this->textbuffer)-1][0]);
- }
- $this->_saveTextBuffer("\n"); // mPDF 5.3.99
- } // *TABLES*
- $this->ignorefollowingspaces = true;
- $this->blockjustfinished=false;
- $this->listjustfinished=false;
-
- $this->linebreakjustfinished=true;
- break;
-
-
- // *********** BLOCKS ********************
-
- //NB $outerblocktags = array('DIV','FORM','CENTER','DL');
- //NB $innerblocktags = array('P','BLOCKQUOTE','ADDRESS','PRE',''H1','H2','H3','H4','H5','H6','DT','DD');
-
- case 'PRE':
- $this->ispre=true; // ADDED - Prevents left trim of textbuffer in printbuffer()
-
- case 'DIV':
- case 'FORM':
- case 'CENTER':
-
- case 'BLOCKQUOTE':
- case 'ADDRESS':
-
- case 'CAPTION': // mPDF 5.3.56
- case 'P':
- case 'H1':
- case 'H2':
- case 'H3':
- case 'H4':
- case 'H5':
- case 'H6':
- case 'DL':
- case 'DT':
- case 'DD':
- $p = $this->PreviewBlockCSS($tag,$attr);
- if(isset($p['DISPLAY']) && strtolower($p['DISPLAY'])=='none') {
- $this->blklvl++;
- $this->blk[$this->blklvl]['hide'] = true;
- return;
- }
- // mPDF 5.3.56
- if($tag == 'CAPTION') {
- // position is written in AdjstHTML
- if (isset($attr['POSITION']) && strtolower($attr['POSITION'])=='bottom') { $divpos = 'B'; }
- else { $divpos = 'T'; }
- if (isset($attr['ALIGN']) && strtolower($attr['ALIGN'])=='bottom') { $cappos = 'B'; }
- else if (isset($p['CAPTION-SIDE']) && strtolower($p['CAPTION-SIDE'])=='bottom') { $cappos = 'B'; }
- else { $cappos = 'T'; }
- if (isset($attr['ALIGN'])) { unset($attr['ALIGN']); } // mPDF 5.3.A8
- if ($cappos != $divpos) {
- $this->blklvl++;
- $this->blk[$this->blklvl]['hide'] = true;
- return;
- }
- }
-
-/*-- FORMS --*/
- if($tag == 'FORM') {
- if (isset($attr['METHOD']) && strtolower($attr['METHOD'])=='get') { $this->form->formMethod = 'GET'; }
- else { $this->form->formMethod = 'POST'; }
- if (isset($attr['ACTION'])) { $this->form->formAction = $attr['ACTION']; }
- else { $this->form->formAction = ''; }
- }
-/*-- END FORMS --*/
-
-
-/*-- CSS-POSITION --*/
- if ((isset($p['POSITION']) && (strtolower($p['POSITION'])=='fixed' || strtolower($p['POSITION'])=='absolute')) && $this->blklvl==0) {
- if ($this->inFixedPosBlock) {
- $this->Error("Cannot nest block with position:fixed or position:absolute");
- }
- $this->inFixedPosBlock = true;
- return;
- }
-/*-- END CSS-POSITION --*/
- // Start Block
- $this->ignorefollowingspaces = true;
-
- if ($this->blockjustfinished && !count($this->textbuffer) && $this->y != $this->tMargin && $this->collapseBlockMargins) { $lastbottommargin = $this->lastblockbottommargin; }
- else { $lastbottommargin = 0; }
- $this->lastblockbottommargin = 0;
- $this->blockjustfinished=false;
-
-/*-- LISTS --*/
- if ($this->listlvl>0) { return; }
-/*-- END LISTS --*/
-
- $this->InlineProperties = array();
- $this->spanlvl = 0;
- $this->listjustfinished=false;
- $this->divbegin=true;
-
- $this->linebreakjustfinished=false;
-
-/*-- TABLES --*/
- if ($this->tableLevel) {
-
- // If already something on the line
- if ($this->cell[$this->row][$this->col]['s'] > 0 && !$this->nestedtablejustfinished ) {
- $this->_saveCellTextBuffer("\n"); // mPDF 5.3.99
- if (!isset($this->cell[$this->row][$this->col]['maxs'])) {
- $this->cell[$this->row][$this->col]['maxs'] = $this->cell[$this->row][$this->col]['s'];
- }
- elseif($this->cell[$this->row][$this->col]['maxs'] < $this->cell[$this->row][$this->col]['s']) {
- $this->cell[$this->row][$this->col]['maxs'] = $this->cell[$this->row][$this->col]['s'];
- }
- $this->cell[$this->row][$this->col]['s'] = 0 ;// reset
- }
- // Cannot set block properties inside table - use Bold to indicate h1-h6
- if ($tag == 'CENTER' && $this->tdbegin) { $this->cell[$this->row][$this->col]['a'] = $align['center']; }
-
- $this->InlineProperties['BLOCKINTABLE'] = $this->saveInlineProperties();
- $properties = $this->MergeCSS('',$tag,$attr);
- if (!empty($properties)) $this->setCSS($properties,'INLINE');
-
-
- break;
- }
-/*-- END TABLES --*/
-
- if ($tag == 'P' || $tag == 'DT' || $tag == 'DD') { $this->lastoptionaltag = $tag; } // Save current HTML specified optional endtag
- else { $this->lastoptionaltag = ''; }
-
- if ($this->lastblocklevelchange == 1) { $blockstate = 1; } // Top margins/padding only
- else if ($this->lastblocklevelchange < 1) { $blockstate = 0; } // NO margins/padding
- $this->printbuffer($this->textbuffer,$blockstate);
- $this->textbuffer=array();
-
- // mPDF 5.3.03
- $save_blklvl = $this->blklvl;
- $save_blk = $this->blk;
- $save_silp = $this->saveInlineProperties();
- $save_spanlvl = $this->spanlvl;
- $save_ilp = $this->InlineProperties;
-
- $this->blklvl++;
-
- $currblk =& $this->blk[$this->blklvl];
- $this->initialiseBlock($currblk);
- $prevblk =& $this->blk[$this->blklvl-1];
-
- $currblk['tag'] = $tag;
- $currblk['attr'] = $attr;
-
- $this->Reset();
- $properties = $this->MergeCSS('BLOCK',$tag,$attr);
- $pagesel = '';
-/*-- CSS-PAGE --*/
-
- if (isset($properties['PAGE'])) { $pagesel = $properties['PAGE']; }
-/*-- END CSS-PAGE --*/
-
- // If page-box has changed AND/OR PAGE-BREAK-BEFORE
- $save_cols = false;
- if (($pagesel && $pagesel != $this->page_box['current']) || (isset($properties['PAGE-BREAK-BEFORE']) && $properties['PAGE-BREAK-BEFORE'])) {
- if ($this->blklvl>1) {
- // Close any open block tags
- for ($b= $this->blklvl;$b>0;$b--) { $this->CloseTag($this->blk[$b]['tag']); }
- // Output any text left in buffer
- if (count($this->textbuffer)) { $this->printbuffer($this->textbuffer); $this->textbuffer=array(); }
- }
-/*-- COLUMNS --*/
- if ($this->ColActive) {
- $save_cols = true;
- $save_nbcol = $this->NbCol; // other values of gap and vAlign will not change by setting Columns off
- $this->SetColumns(0);
- }
-/*-- END COLUMNS --*/
-
-
- // Must Add new page if changed page properties
- if (isset($properties['PAGE-BREAK-BEFORE'])) {
- if (strtoupper($properties['PAGE-BREAK-BEFORE']) == 'RIGHT') { $this->AddPage($this->CurOrientation,'NEXT-ODD','','','','','', '','', '','','','','','',0,0,0,0,$pagesel); }
- else if (strtoupper($properties['PAGE-BREAK-BEFORE']) == 'LEFT') { $this->AddPage($this->CurOrientation,'NEXT-EVEN','','','','','', '','', '','','','','','',0,0,0,0,$pagesel); }
- else if (strtoupper($properties['PAGE-BREAK-BEFORE']) == 'ALWAYS') { $this->AddPage($this->CurOrientation,'','','','','','', '','', '','','','','','',0,0,0,0,$pagesel); }
- else if ($this->page_box['current'] != $pagesel) { $this->AddPage($this->CurOrientation,'','','','','','', '','', '','','','','','',0,0,0,0,$pagesel); } // *CSS-PAGE*
- }
-/*-- CSS-PAGE --*/
- else if ($pagesel != $this->page_box['current']) { $this->AddPage($this->CurOrientation,'','','','','','', '','', '','','','','','',0,0,0,0,$pagesel); }
-/*-- END CSS-PAGE --*/
-
- // if using htmlheaders, the headers need to be rewritten when new page
- // done by calling WriteHTML() within resethtmlheaders
- // so block is reset to 0 - now we need to resurrect it
- // As in WriteHTML() initialising
- // mPDF 5.3.03
- if (!($this->restoreBlockPagebreaks && isset($properties['PAGE-BREAK-BEFORE']) && $properties['PAGE-BREAK-BEFORE'])) {
- $this->blklvl = 0;
- $this->lastblocklevelchange = 0;
- $this->blk = array();
- $this->initialiseBlock($this->blk[0]);
- $this->blk[0]['width'] =& $this->pgwidth;
- $this->blk[0]['inner_width'] =& $this->pgwidth;
- $this->blk[0]['blockContext'] = $this->blockContext;
- $properties = $this->MergeCSS('BLOCK','BODY','');
- $this->setCSS($properties,'','BODY');
- $this->blklvl++;
- $currblk =& $this->blk[$this->blklvl];
- $prevblk =& $this->blk[$this->blklvl-1];
-
- $this->initialiseBlock($currblk);
- $currblk['tag'] = $tag;
- $currblk['attr'] = $attr;
-
- $this->Reset();
- $properties = $this->MergeCSS('BLOCK',$tag,$attr);
- }
-/*-- COLUMNS --*/
- if ($save_cols) {
- // Restore columns
- $this->SetColumns($save_nbcol,$this->colvAlign,$this->ColGap);
- }
-/*-- END COLUMNS --*/
- // mPDF 5.3.03
- if ($this->restoreBlockPagebreaks && isset($properties['PAGE-BREAK-BEFORE']) && $properties['PAGE-BREAK-BEFORE']) {
- $this->blk = $save_blk;
- // Re-open block tags
- $t = $this->blk[0]['tag'];
- $a = $this->blk[0]['attr'];
- $this->blklvl = 0;
- for ($b=0; $b<=$save_blklvl;$b++) {
- $tc = $t;
- $ac = $a;
- $t = $this->blk[$b+1]['tag'];
- $a = $this->blk[$b+1]['attr'];
- unset($this->blk[$b+1]);
- $this->OpenTag($tc,$ac);
- }
- $this->spanlvl = $save_spanlvl;
- $this->InlineProperties = $save_ilp;
- $this->restoreInlineProperties($save_silp);
- }
- }
-
- if (isset($properties['PAGE-BREAK-INSIDE']) && strtoupper($properties['PAGE-BREAK-INSIDE']) == 'AVOID' && !$this->ColActive && !$this->keep_block_together) {
- $currblk['keep_block_together'] = 1;
- $this->kt_y00 = $this->y;
- $this->kt_p00 = $this->page;
- $this->keep_block_together = 1;
- $this->divbuffer = array();
- $this->ktLinks = array();
- $this->ktAnnots = array();
- $this->ktForms = array();
- $this->ktBlock = array();
- $this->ktReference = array();
- $this->ktBMoutlines = array();
- $this->_kttoc = array();
- }
- // mPDF 5.3.76
- if ($lastbottommargin && isset($properties['MARGIN-TOP']) && $properties['MARGIN-TOP'] && empty($properties['FLOAT'])) { $currblk['lastbottommargin'] = $lastbottommargin; }
-
- $this->setCSS($properties,'BLOCK',$tag); //name(id/class/style) found in the CSS array!
- $currblk['InlineProperties'] = $this->saveInlineProperties();
-
- // mPDF 5.3.42 VISIBILITY
- if (isset($properties['VISIBILITY'])) {
- $v = strtolower($properties['VISIBILITY']);
- if (($v == 'hidden' || $v == 'printonly' || $v == 'screenonly') && $this->visibility=='visible' && !$this->tableLevel) {
- $currblk['visibility'] = $v;
- $this->SetVisibility($v);
- }
- }
-
- if(isset($attr['DIR']) && $attr['DIR']) { $currblk['direction'] = strtolower($attr['DIR']); }
- if(isset($attr['ALIGN']) && $attr['ALIGN']) { $currblk['block-align'] = $align[strtolower($attr['ALIGN'])]; }
-
- if (isset($properties['HEIGHT'])) {
- $currblk['css_set_height'] = $this->ConvertSize($properties['HEIGHT'],($this->h - $this->tMargin - $this->bMargin),$this->FontSize,false);
- if (($currblk['css_set_height'] + $this->y) > $this->PageBreakTrigger && $this->y > $this->tMargin+5 && $currblk['css_set_height'] < ($this->h - ($this->tMargin + $this->bMargin))) { $this->AddPage($this->CurOrientation); }
- }
- else { $currblk['css_set_height'] = false; }
-
-
- // Added mPDF 3.0 Float DIV
- if (isset($prevblk['blockContext'])) { $currblk['blockContext'] = $prevblk['blockContext'] ; } // *CSS-FLOAT*
-
- if (isset($properties['CLEAR'])) { $this->ClearFloats(strtoupper($properties['CLEAR']), $this->blklvl-1); } // *CSS-FLOAT*
-
- $container_w = $prevblk['inner_width'];
- $bdr = $currblk['border_right']['w'];
- $bdl = $currblk['border_left']['w'];
- $pdr = $currblk['padding_right'];
- $pdl = $currblk['padding_left'];
-
- if (isset($currblk['css_set_width'])) { $setwidth = $currblk['css_set_width']; }
- else { $setwidth = 0; }
-
-/*-- CSS-FLOAT --*/
- if (isset($properties['FLOAT']) && strtoupper($properties['FLOAT']) == 'RIGHT' && !$this->ColActive) {
- // Cancel Keep-Block-together
- $currblk['keep_block_together'] = false;
- $this->kt_y00 = '';
- $this->keep_block_together = 0;
-
- $this->blockContext++;
- $currblk['blockContext'] = $this->blockContext;
-
- list($l_exists, $r_exists, $l_max, $r_max, $l_width, $r_width) = $this->GetFloatDivInfo($this->blklvl-1);
-
- // DIV is too narrow for text to fit!
- $maxw = $container_w - $l_width - $r_width;
- if (($setwidth + $currblk['margin_right'] + $bdl + $pdl + $bdr + $pdr) > $maxw || ($maxw - ($currblk['margin_right'] + $bdl + $pdl + $bdr + $pdr)) < (2*$this->GetCharWidth('W',false))) { // mPDF 5.3.04
- // Too narrow to fit - try to move down past L or R float
- if ($l_max < $r_max && ($setwidth + $currblk['margin_right'] + $bdl + $pdl + $bdr + $pdr) <= ($container_w - $r_width) && (($container_w - $r_width) - ($currblk['margin_right'] + $bdl + $pdl + $bdr + $pdr)) > (2*$this->GetCharWidth('W',false))) { // mPDF 5.3.04
- $this->ClearFloats('LEFT', $this->blklvl-1);
- }
- else if ($r_max < $l_max && ($setwidth + $currblk['margin_right'] + $bdl + $pdl + $bdr + $pdr) <= ($container_w - $l_width) && (($container_w - $l_width) - ($currblk['margin_right'] + $bdl + $pdl + $bdr + $pdr)) > (2*$this->GetCharWidth('W',false))) { // mPDF 5.3.04
- $this->ClearFloats('RIGHT', $this->blklvl-1);
- }
- else { $this->ClearFloats('BOTH', $this->blklvl-1); }
- list($l_exists, $r_exists, $l_max, $r_max, $l_width, $r_width) = $this->GetFloatDivInfo($this->blklvl-1);
- }
-
- if ($r_exists) { $currblk['margin_right'] += $r_width; }
-
- $currblk['float'] = 'R';
- $currblk['float_start_y'] = $this->y;
- if ($currblk['css_set_width']) {
- $currblk['margin_left'] = $container_w - ($setwidth + $bdl + $pdl + $bdr + $pdr + $currblk['margin_right']);
- $currblk['float_width'] = ($setwidth + $bdl + $pdl + $bdr + $pdr + $currblk['margin_right']);
- }
- else {
- // *** If no width set - would need to buffer and keep track of max width, then Right-align if not full width
- // and do borders and backgrounds - For now - just set to maximum width left
-
- if ($l_exists) { $currblk['margin_left'] += $l_width; }
- $currblk['css_set_width'] = $container_w - ($currblk['margin_left'] + $currblk['margin_right'] + $bdl + $pdl + $bdr + $pdr);
-
- $currblk['float_width'] = ($currblk['css_set_width'] + $bdl + $pdl + $bdr + $pdr + $currblk['margin_right']);
- }
- }
- else if (isset($properties['FLOAT']) && strtoupper($properties['FLOAT']) == 'LEFT' && !$this->ColActive) {
- // Cancel Keep-Block-together
- $currblk['keep_block_together'] = false;
- $this->kt_y00 = '';
- $this->keep_block_together = 0;
-
- $this->blockContext++;
- $currblk['blockContext'] = $this->blockContext;
-
- list($l_exists, $r_exists, $l_max, $r_max, $l_width, $r_width) = $this->GetFloatDivInfo($this->blklvl-1);
-
- // DIV is too narrow for text to fit!
- $maxw = $container_w - $l_width - $r_width;
- if (($setwidth + $currblk['margin_left'] + $bdl + $pdl + $bdr + $pdr) > $maxw || ($maxw - ($currblk['margin_left'] + $bdl + $pdl + $bdr + $pdr)) < (2*$this->GetCharWidth('W',false))) { // mPDF 5.3.04
- // Too narrow to fit - try to move down past L or R float
- if ($l_max < $r_max && ($setwidth + $currblk['margin_right'] + $bdl + $pdl + $bdr + $pdr) <= ($container_w - $r_width) && (($container_w - $r_width) - ($currblk['margin_right'] + $bdl + $pdl + $bdr + $pdr)) > (2*$this->GetCharWidth('W',false))) { // mPDF 5.3.04
- $this->ClearFloats('LEFT', $this->blklvl-1);
- }
- else if ($r_max < $l_max && ($setwidth + $currblk['margin_right'] + $bdl + $pdl + $bdr + $pdr) <= ($container_w - $l_width) && (($container_w - $l_width) - ($currblk['margin_right'] + $bdl + $pdl + $bdr + $pdr)) > (2*$this->GetCharWidth('W',false))) { // mPDF 5.3.04
- $this->ClearFloats('RIGHT', $this->blklvl-1);
- }
- else { $this->ClearFloats('BOTH', $this->blklvl-1); }
- list($l_exists, $r_exists, $l_max, $r_max, $l_width, $r_width) = $this->GetFloatDivInfo($this->blklvl-1);
- }
-
- if ($l_exists) { $currblk['margin_left'] += $l_width; }
-
- $currblk['float'] = 'L';
- $currblk['float_start_y'] = $this->y;
- if ($setwidth) {
- $currblk['margin_right'] = $container_w - ($setwidth + $bdl + $pdl + $bdr + $pdr + $currblk['margin_left']);
- $currblk['float_width'] = ($setwidth + $bdl + $pdl + $bdr + $pdr + $currblk['margin_left']);
- }
- else {
- // *** If no width set - would need to buffer and keep track of max width, then Right-align if not full width
- // and do borders and backgrounds - For now - just set to maximum width left
-
- if ($r_exists) { $currblk['margin_right'] += $r_width; }
- $currblk['css_set_width'] = $container_w - ($currblk['margin_left'] + $currblk['margin_right'] + $bdl + $pdl + $bdr + $pdr);
-
- $currblk['float_width'] = ($currblk['css_set_width'] + $bdl + $pdl + $bdr + $pdr + $currblk['margin_left']);
- }
- }
-
- else {
- // Don't allow overlap - if floats present - adjust padding to avoid overlap with Floats
- list($l_exists, $r_exists, $l_max, $r_max, $l_width, $r_width) = $this->GetFloatDivInfo($this->blklvl-1);
- $maxw = $container_w - $l_width - $r_width;
- if (($setwidth + $currblk['margin_left'] + $currblk['margin_right'] + $bdl + $pdl + $bdr + $pdr) > $maxw || ($maxw - ($currblk['margin_right'] + $currblk['margin_left'] + $bdl + $pdl + $bdr + $pdr)) < (2*$this->GetCharWidth('W',false))) { // mPDF 5.3.04
- // Too narrow to fit - try to move down past L or R float
- if ($l_max < $r_max && ($setwidth + $currblk['margin_left'] + $currblk['margin_right'] + $bdl + $pdl + $bdr + $pdr) <= ($container_w - $r_width) && (($container_w - $r_width) - ($currblk['margin_right'] + $currblk['margin_left'] + $bdl + $pdl + $bdr + $pdr)) > (2*$this->GetCharWidth('W',false))) { // mPDF 5.3.04
- $this->ClearFloats('LEFT', $this->blklvl-1);
- }
- else if ($r_max < $l_max && ($setwidth + $currblk['margin_left'] + $currblk['margin_right'] + $bdl + $pdl + $bdr + $pdr) <= ($container_w - $l_width) && (($container_w - $l_width) - ($currblk['margin_right'] + $currblk['margin_left'] + $bdl + $pdl + $bdr + $pdr)) > (2*$this->GetCharWidth('W',false))) { // mPDF 5.3.04
- $this->ClearFloats('RIGHT', $this->blklvl-1);
- }
- else { $this->ClearFloats('BOTH', $this->blklvl-1); }
- list($l_exists, $r_exists, $l_max, $r_max, $l_width, $r_width) = $this->GetFloatDivInfo($this->blklvl-1);
- }
- if ($r_exists) { $currblk['padding_right'] = max(($r_width-$currblk['margin_right']-$bdr), $pdr); }
- if ($l_exists) { $currblk['padding_left'] = max(($l_width-$currblk['margin_left']-$bdl), $pdl); }
- }
-/*-- END CSS-FLOAT --*/
-
-
-/*-- BORDER-RADIUS --*/
- // Automatically increase padding if required for border-radius
- if ($this->autoPadding && !$this->ColActive && !$this->keep_block_together) {
- if ($currblk['border_radius_TL_H']>$currblk['padding_left'] && $currblk['border_radius_TL_V']>$currblk['padding_top']) {
- if ($currblk['border_radius_TL_H']>$currblk['border_radius_TL_V']) {
- $this->_borderPadding($currblk['border_radius_TL_H'],$currblk['border_radius_TL_V'], $currblk['padding_left'], $currblk['padding_top']);
- }
- else {
- $this->_borderPadding($currblk['border_radius_TL_V'],$currblk['border_radius_TL_H'], $currblk['padding_top'], $currblk['padding_left']);
- }
- }
- if ($currblk['border_radius_TR_H']>$currblk['padding_right'] && $currblk['border_radius_TR_V']>$currblk['padding_top']) {
- if ($currblk['border_radius_TR_H']>$currblk['border_radius_TR_V']) {
- $this->_borderPadding($currblk['border_radius_TR_H'],$currblk['border_radius_TR_V'], $currblk['padding_right'], $currblk['padding_top']);
- }
- else {
- $this->_borderPadding($currblk['border_radius_TR_V'],$currblk['border_radius_TR_H'], $currblk['padding_top'], $currblk['padding_right']);
- }
- }
- if ($currblk['border_radius_BL_H']>$currblk['padding_left'] && $currblk['border_radius_BL_V']>$currblk['padding_bottom']) {
- if ($currblk['border_radius_BL_H']>$currblk['border_radius_BL_V']) {
- $this->_borderPadding($currblk['border_radius_BL_H'],$currblk['border_radius_BL_V'], $currblk['padding_left'], $currblk['padding_bottom']);
- }
- else {
- $this->_borderPadding($currblk['border_radius_BL_V'],$currblk['border_radius_BL_H'], $currblk['padding_bottom'], $currblk['padding_left']);
- }
- }
- if ($currblk['border_radius_BR_H']>$currblk['padding_right'] && $currblk['border_radius_BR_V']>$currblk['padding_bottom']) {
- if ($currblk['border_radius_BR_H']>$currblk['border_radius_BR_V']) {
- $this->_borderPadding($currblk['border_radius_BR_H'],$currblk['border_radius_BR_V'], $currblk['padding_right'], $currblk['padding_bottom']);
- }
- else {
- $this->_borderPadding($currblk['border_radius_BR_V'],$currblk['border_radius_BR_H'], $currblk['padding_bottom'], $currblk['padding_right']);
- }
- }
- }
-/*-- END BORDER-RADIUS --*/
-
-
- // Hanging indent - if negative indent: ensure padding is >= indent
- if(!isset($currblk['text_indent'])) { $currblk['text_indent'] = null; }
- if(!isset($currblk['inner_width'])) { $currblk['inner_width'] = null; }
- $cbti = $this->ConvertSize($currblk['text_indent'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false);
- if ($cbti < 0) {
- $hangind = -($cbti);
- if ($currblk['direction'] == 'rtl') { // *RTL*
- $currblk['padding_right'] = max($currblk['padding_right'],$hangind); // *RTL*
- } // *RTL*
- else { // *RTL*
- $currblk['padding_left'] = max($currblk['padding_left'],$hangind);
- } // *RTL*
- }
-
- if (isset($currblk['css_set_width'])) {
- if (isset($properties['MARGIN-LEFT']) && isset($properties['MARGIN-RIGHT']) && strtolower($properties['MARGIN-LEFT'])=='auto' && strtolower($properties['MARGIN-RIGHT'])=='auto') {
- // Try to reduce margins to accomodate - if still too wide, set margin-right/left=0 (reduces width)
- $anyextra = $prevblk['inner_width'] - ($currblk['css_set_width'] + $currblk['border_left']['w'] + $currblk['padding_left'] + $currblk['border_right']['w'] + $currblk['padding_right']);
- if ($anyextra>0) {
- $currblk['margin_left'] = $currblk['margin_right'] = $anyextra /2;
- }
- else {
- $currblk['margin_left'] = $currblk['margin_right'] = 0;
- }
- }
- else if (isset($properties['MARGIN-LEFT']) && strtolower($properties['MARGIN-LEFT'])=='auto') {
- // Try to reduce margin-left to accomodate - if still too wide, set margin-left=0 (reduces width)
- $currblk['margin_left'] = $prevblk['inner_width'] - ($currblk['css_set_width'] + $currblk['border_left']['w'] + $currblk['padding_left'] + $currblk['border_right']['w'] + $currblk['padding_right'] + $currblk['margin_right']);
- if ($currblk['margin_left'] < 0) {
- $currblk['margin_left'] = 0;
- }
- }
- else if (isset($properties['MARGIN-RIGHT']) && strtolower($properties['MARGIN-RIGHT'])=='auto') {
- // Try to reduce margin-right to accomodate - if still too wide, set margin-right=0 (reduces width)
- $currblk['margin_right'] = $prevblk['inner_width'] - ($currblk['css_set_width'] + $currblk['border_left']['w'] + $currblk['padding_left'] + $currblk['border_right']['w'] + $currblk['padding_right'] + $currblk['margin_left']);
- if ($currblk['margin_right'] < 0) {
- $currblk['margin_right'] = 0;
- }
- }
- else {
- if ($currblk['direction'] == 'rtl') { // *RTL*
- // Try to reduce margin-left to accomodate - if still too wide, set margin-left=0 (reduces width)
- $currblk['margin_left'] = $prevblk['inner_width'] - ($currblk['css_set_width'] + $currblk['border_left']['w'] + $currblk['padding_left'] + $currblk['border_right']['w'] + $currblk['padding_right'] + $currblk['margin_right']); // *RTL*
- if ($currblk['margin_left'] < 0) { // *RTL*
- $currblk['margin_left'] = 0; // *RTL*
- } // *RTL*
- } // *RTL*
- else { // *RTL*
- // Try to reduce margin-right to accomodate - if still too wide, set margin-right=0 (reduces width)
- $currblk['margin_right'] = $prevblk['inner_width'] - ($currblk['css_set_width'] + $currblk['border_left']['w'] + $currblk['padding_left'] + $currblk['border_right']['w'] + $currblk['padding_right'] + $currblk['margin_left']);
- if ($currblk['margin_right'] < 0) {
- $currblk['margin_right'] = 0;
- }
- } // *RTL*
- }
- }
-
- $currblk['outer_left_margin'] = $prevblk['outer_left_margin'] + $currblk['margin_left'] + $prevblk['border_left']['w'] + $prevblk['padding_left'];
- $currblk['outer_right_margin'] = $prevblk['outer_right_margin'] + $currblk['margin_right'] + $prevblk['border_right']['w'] + $prevblk['padding_right'];
-
- $currblk['width'] = $this->pgwidth - ($currblk['outer_right_margin'] + $currblk['outer_left_margin']);
- $currblk['inner_width'] = $currblk['width'] - ($currblk['border_left']['w'] + $currblk['padding_left'] + $currblk['border_right']['w'] + $currblk['padding_right']);
-
- // Check DIV is not now too narrow to fit text
- $mw = 2*$this->GetCharWidth('W',false); // mPDF 5.3.04
- if ($currblk['inner_width'] < $mw) {
- $currblk['padding_left'] = 0;
- $currblk['padding_right'] = 0;
- $currblk['border_left']['w'] = 0.2;
- $currblk['border_right']['w'] = 0.2;
- $currblk['margin_left'] = 0;
- $currblk['margin_right'] = 0;
- $currblk['outer_left_margin'] = $prevblk['outer_left_margin'] + $currblk['margin_left'] + $prevblk['border_left']['w'] + $prevblk['padding_left'];
- $currblk['outer_right_margin'] = $prevblk['outer_right_margin'] + $currblk['margin_right'] + $prevblk['border_right']['w'] + $prevblk['padding_right'];
- $currblk['width'] = $this->pgwidth - ($currblk['outer_right_margin'] + $currblk['outer_left_margin']);
- $currblk['inner_width'] = $this->pgwidth - ($currblk['outer_right_margin'] + $currblk['outer_left_margin'] + $currblk['border_left']['w'] + $currblk['padding_left'] + $currblk['border_right']['w'] + $currblk['padding_right']);
-// if ($currblk['inner_width'] < $mw) { $this->Error("DIV is too narrow for text to fit!"); }
- }
-
- $this->x = $this->lMargin + $currblk['outer_left_margin'];
-
-/*-- BACKGROUNDS --*/
- if (isset($properties['BACKGROUND-IMAGE']) && $properties['BACKGROUND-IMAGE'] && !$this->kwt && !$this->ColActive && !$this->keep_block_together) {
- $ret = $this->SetBackground($properties, $currblk['inner_width']);
- if ($ret) { $currblk['background-image'] = $ret; }
- }
-/*-- END BACKGROUNDS --*/
-
-/*-- TABLES --*/
- if ($this->use_kwt && isset($attr['KEEP-WITH-TABLE']) && !$this->ColActive && !$this->keep_block_together) {
- $this->kwt = true;
- $this->kwt_y0 = $this->y;
- $this->kwt_x0 = $this->x;
- $this->kwt_height = 0;
- $this->kwt_buffer = array();
- $this->kwt_Links = array();
- $this->kwt_Annots = array();
- $this->kwt_moved = false;
- $this->kwt_saved = false;
- $this->kwt_Reference = array();
- $this->kwt_BMoutlines = array();
- $this->kwt_toc = array();
- }
- else {
-/*-- END TABLES --*/
- $this->kwt = false;
- } // *TABLES*
-
- //Save x,y coords in case we need to print borders...
- $currblk['y0'] = $this->y;
- $currblk['x0'] = $this->x;
- $currblk['startpage'] = $this->page;
- $this->oldy = $this->y;
-
- $this->lastblocklevelchange = 1 ;
-
- break;
-
- case 'HR':
- // Added mPDF 3.0 Float DIV - CLEAR
- if (isset($attr['STYLE'])) {
- $properties = $this->readInlineCSS($attr['STYLE']);
- if (isset($properties['CLEAR'])) { $this->ClearFloats(strtoupper($properties['CLEAR']),$this->blklvl); } // *CSS-FLOAT*
- }
-
- $this->ignorefollowingspaces = true;
-
- $objattr = array();
- $objattr['margin_top'] = 0;
- $objattr['margin_bottom'] = 0;
- $objattr['margin_left'] = 0;
- $objattr['margin_right'] = 0;
- $objattr['width'] = 0;
- $objattr['height'] = 0;
- $objattr['border_top']['w'] = 0;
- $objattr['border_bottom']['w'] = 0;
- $objattr['border_left']['w'] = 0;
- $objattr['border_right']['w'] = 0;
- $properties = $this->MergeCSS('',$tag,$attr);
- if (isset($properties['MARGIN-TOP'])) { $objattr['margin_top'] = $this->ConvertSize($properties['MARGIN-TOP'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false); }
- if (isset($properties['MARGIN-BOTTOM'])) { $objattr['margin_bottom'] = $this->ConvertSize($properties['MARGIN-BOTTOM'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false); }
- if (isset($properties['WIDTH'])) { $objattr['width'] = $this->ConvertSize($properties['WIDTH'],$this->blk[$this->blklvl]['inner_width']); }
- if (isset($properties['TEXT-ALIGN'])) { $objattr['align'] = $align[strtolower($properties['TEXT-ALIGN'])]; }
-
- if (isset($properties['MARGIN-LEFT']) && strtolower($properties['MARGIN-LEFT'])=='auto') {
- $objattr['align'] = 'R';
- }
- if (isset($properties['MARGIN-RIGHT']) && strtolower($properties['MARGIN-RIGHT'])=='auto') {
- $objattr['align'] = 'L';
- if (isset($properties['MARGIN-RIGHT']) && strtolower($properties['MARGIN-RIGHT'])=='auto' && isset($properties['MARGIN-LEFT']) && strtolower($properties['MARGIN-LEFT'])=='auto') {
- $objattr['align'] = 'C';
- }
- }
- if (isset($properties['COLOR'])) { $objattr['color'] = $this->ConvertColor($properties['COLOR']); }
- if (isset($properties['HEIGHT'])) { $objattr['linewidth'] = $this->ConvertSize($properties['HEIGHT'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false); }
-
- if(isset($attr['WIDTH']) && $attr['WIDTH'] != '') $objattr['width'] = $this->ConvertSize($attr['WIDTH'],$this->blk[$this->blklvl]['inner_width']);
- if(isset($attr['ALIGN']) && $attr['ALIGN'] != '') $objattr['align'] = $align[strtolower($attr['ALIGN'])];
- if(isset($attr['COLOR']) && $attr['COLOR'] != '') $objattr['color'] = $this->ConvertColor($attr['COLOR']);
-
-/*-- TABLES --*/
- if ($this->tableLevel) {
- $objattr['W-PERCENT'] = 100;
- if (isset($properties['WIDTH']) && stristr($properties['WIDTH'],'%')) {
- $properties['WIDTH'] += 0; //make "90%" become simply "90"
- $objattr['W-PERCENT'] = $properties['WIDTH'];
- }
- if (isset($attr['WIDTH']) && stristr($attr['WIDTH'],'%')) {
- $attr['WIDTH'] += 0; //make "90%" become simply "90"
- $objattr['W-PERCENT'] = $attr['WIDTH'];
- }
- }
-/*-- END TABLES --*/
-
- $objattr['type'] = 'hr';
- $objattr['height'] = $objattr['linewidth'] + $objattr['margin_top'] + $objattr['margin_bottom'];
- $e = "\xbb\xa4\xactype=image,objattr=".serialize($objattr)."\xbb\xa4\xac";
-
- // Clear properties - tidy up
- $properties = array();
-
-/*-- TABLES --*/
- // Output it to buffers
- if ($this->tableLevel) {
- if (!isset($this->cell[$this->row][$this->col]['maxs'])) {
- $this->cell[$this->row][$this->col]['maxs'] = $this->cell[$this->row][$this->col]['s'];
- }
- elseif($this->cell[$this->row][$this->col]['maxs'] < $this->cell[$this->row][$this->col]['s']) {
- $this->cell[$this->row][$this->col]['maxs'] = $this->cell[$this->row][$this->col]['s'];
- }
- $this->cell[$this->row][$this->col]['s'] = 0 ;// reset
- $this->_saveCellTextBuffer($e, $this->HREF); // mPDF 5.3.99
- }
- else {
-/*-- END TABLES --*/
- $this->_saveTextBuffer($e, $this->HREF); // mPDF 5.3.99
- } // *TABLES*
-
- break;
-
-
-/*-- BARCODES --*/
-
- case 'BARCODE':
- if(isset($attr['CODE']) && $attr['CODE']) {
- $objattr = array();
- $objattr['margin_top'] = 0;
- $objattr['margin_bottom'] = 0;
- $objattr['margin_left'] = 0;
- $objattr['margin_right'] = 0;
- $objattr['padding_top'] = 0;
- $objattr['padding_bottom'] = 0;
- $objattr['padding_left'] = 0;
- $objattr['padding_right'] = 0;
- $objattr['width'] = 0;
- $objattr['height'] = 0;
- $objattr['border_top']['w'] = 0;
- $objattr['border_bottom']['w'] = 0;
- $objattr['border_left']['w'] = 0;
- $objattr['border_right']['w'] = 0;
- $objattr['code'] = $attr['CODE'];
-
- if(isset($attr['TYPE'])) {
- $objattr['btype'] = trim(strtoupper($attr['TYPE']));
- }
- else { $objattr['btype'] = 'EAN13'; } // default
- if (preg_match('/^(EAN13|ISBN|ISSN|EAN8|UPCA|UPCE)P([25])$/',$objattr['btype'],$m)) {
- $objattr['btype'] = $m[1];
- $objattr['bsupp'] = $m[2];
- if (preg_match('/^(\S+)\s+(.*)$/',$objattr['code'],$mm)) {
- $objattr['code'] = $mm[1];
- $objattr['bsupp_code'] = $mm[2];
- }
- }
- else { $objattr['bsupp'] = 0; }
-
- if(isset($attr['TEXT']) && $attr['TEXT']==1) { $objattr['showtext'] = 1; }
- else { $objattr['showtext'] = 0; }
- if(isset($attr['SIZE']) && $attr['SIZE']>0) { $objattr['bsize'] = $attr['SIZE']; }
- else { $objattr['bsize'] = 1; }
- if(isset($attr['HEIGHT']) && $attr['HEIGHT']>0) { $objattr['bheight'] = $attr['HEIGHT']; }
- else { $objattr['bheight'] = 1; }
- if(isset($attr['PR']) && $attr['PR']>0) { $objattr['pr_ratio'] = $attr['PR']; }
- else { $objattr['pr_ratio'] = ''; }
- $properties = $this->MergeCSS('',$tag,$attr);
- if(isset($properties ['DISPLAY']) && strtolower($properties ['DISPLAY'])=='none') {
- return;
- }
- if (isset($properties['MARGIN-TOP'])) { $objattr['margin_top']=$this->ConvertSize($properties['MARGIN-TOP'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false); }
- if (isset($properties['MARGIN-BOTTOM'])) { $objattr['margin_bottom'] = $this->ConvertSize($properties['MARGIN-BOTTOM'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false); }
- if (isset($properties['MARGIN-LEFT'])) { $objattr['margin_left'] = $this->ConvertSize($properties['MARGIN-LEFT'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false); }
- if (isset($properties['MARGIN-RIGHT'])) { $objattr['margin_right'] = $this->ConvertSize($properties['MARGIN-RIGHT'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false); }
-
- if (isset($properties['PADDING-TOP'])) { $objattr['padding_top']=$this->ConvertSize($properties['PADDING-TOP'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false); }
- if (isset($properties['PADDING-BOTTOM'])) { $objattr['padding_bottom'] = $this->ConvertSize($properties['PADDING-BOTTOM'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false); }
- if (isset($properties['PADDING-LEFT'])) { $objattr['padding_left'] = $this->ConvertSize($properties['PADDING-LEFT'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false); }
- if (isset($properties['PADDING-RIGHT'])) { $objattr['padding_right'] = $this->ConvertSize($properties['PADDING-RIGHT'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false); }
-
- if (isset($properties['BORDER-TOP'])) { $objattr['border_top'] = $this->border_details($properties['BORDER-TOP']); }
- if (isset($properties['BORDER-BOTTOM'])) { $objattr['border_bottom'] = $this->border_details($properties['BORDER-BOTTOM']); }
- if (isset($properties['BORDER-LEFT'])) { $objattr['border_left'] = $this->border_details($properties['BORDER-LEFT']); }
- if (isset($properties['BORDER-RIGHT'])) { $objattr['border_right'] = $this->border_details($properties['BORDER-RIGHT']); }
-
- if (isset($properties['VERTICAL-ALIGN'])) { $objattr['vertical-align'] = $align[strtolower($properties['VERTICAL-ALIGN'])]; }
- if (isset($properties['COLOR']) && $properties['COLOR'] != '') { $objattr['color'] = $this->ConvertColor($properties['COLOR']); }
- else { $objattr['color'] = false; }
- if (isset($properties['BACKGROUND-COLOR']) && $properties['BACKGROUND-COLOR'] != '') { $objattr['bgcolor'] = $this->ConvertColor($properties['BACKGROUND-COLOR']); }
- else { $objattr['bgcolor'] = false; }
-
- if (!class_exists('PDFBarcode', false)) {
- include(_MPDF_PATH.'classes/barcode.php');
- }
- $this->barcode = new PDFBarcode();
-
- if ($objattr['btype'] == 'EAN13' || $objattr['btype'] == 'ISBN' || $objattr['btype'] == 'ISSN' || $objattr['btype'] == 'UPCA' || $objattr['btype'] == 'UPCE' || $objattr['btype'] == 'EAN8') {
- $code = preg_replace('/\-/','',$objattr['code']);
- if ($objattr['btype'] == 'ISSN' || $objattr['btype'] == 'ISBN') {
- $arrcode = $this->barcode->getBarcodeArray($code, 'EAN13');
- }
- else { $arrcode = $this->barcode->getBarcodeArray($code, $objattr['btype'] ); }
- if ($arrcode === false) { $this->Error('Error in barcode string.'); }
-
- if ($objattr['bsupp'] == 2 || $objattr['bsupp'] == 5) { // EAN-2 or -5 Supplement
- $supparrcode = $this->barcode->getBarcodeArray($objattr['bsupp_code'], 'EAN'.$objattr['bsupp'] );
- $w = ($arrcode["maxw"] + $arrcode['lightmL'] + $arrcode['lightmR'] + $supparrcode["maxw"] + $supparrcode['sepM']) * $arrcode['nom-X'] * $objattr['bsize'];
- }
- else {
- $w = ($arrcode["maxw"] + $arrcode['lightmL'] + $arrcode['lightmR']) * $arrcode['nom-X'] * $objattr['bsize'];
- }
- $h = $arrcode['nom-H'] * $objattr['bsize'] * $objattr['bheight'];
- // Add height for ISBN string + margin from top of bars
- if (($objattr['showtext'] && $objattr['btype'] == 'EAN13') || $objattr['btype'] == 'ISBN' || $objattr['btype'] == 'ISSN') {
- $tisbnm = 1.5 * $objattr['bsize']; // Top margin between TOP TEXT (isbn - if shown) & bars
- $isbn_fontsize = 2.1 * $objattr['bsize'];
- $h += $isbn_fontsize + $tisbnm ;
- }
- }
- // QR-code
- else if ($objattr['btype'] == 'QR') {
- $w = $h = $objattr['bsize']*25; // Factor of 25mm (default)
- $objattr['errorlevel'] = 'L';
- if (isset($attr['ERROR'])) { $objattr['errorlevel'] = $attr['ERROR']; }
- }
- else if ($objattr['btype'] == 'IMB' || $objattr['btype'] == 'RM4SCC' || $objattr['btype'] == 'KIX' || $objattr['btype'] == 'POSTNET' || $objattr['btype'] == 'PLANET') {
- $arrcode = $this->barcode->getBarcodeArray($objattr['code'], $objattr['btype'] );
- if ($arrcode === false) { $this->Error('Error in barcode string.'); }
- $w = ($arrcode["maxw"] * $arrcode['nom-X'] * $objattr['bsize']) + $arrcode['quietL'] + $arrcode['quietR'];
- $h = ($arrcode['nom-H'] * $objattr['bsize']) + (2*$arrcode['quietTB']);
- }
- else if (in_array($objattr['btype'], array('C128A','C128B','C128C','EAN128A','EAN128B','EAN128C','C39','C39+','C39E','C39E+','S25','S25+','I25','I25+','I25B','I25B+','C93','MSI','MSI+','CODABAR','CODE11'))) {
- $arrcode = $this->barcode->getBarcodeArray($objattr['code'], $objattr['btype'], $objattr['pr_ratio'] );
- if ($arrcode === false) { $this->Error('Error in barcode string.'); }
- $w = ($arrcode["maxw"] + $arrcode['lightmL'] + $arrcode['lightmR']) * $arrcode['nom-X'] * $objattr['bsize'];
- $h = ((2*$arrcode['lightTB'] * $arrcode['nom-X']) + $arrcode['nom-H']) * $objattr['bsize'] * $objattr['bheight'];
- }
- else { break; }
-
- $extraheight = $objattr['padding_top'] + $objattr['padding_bottom'] + $objattr['margin_top'] + $objattr['margin_bottom'] + $objattr['border_top']['w'] + $objattr['border_bottom']['w'];
- $extrawidth = $objattr['padding_left'] + $objattr['padding_right'] + $objattr['margin_left'] + $objattr['margin_right'] + $objattr['border_left']['w'] + $objattr['border_right']['w'];
-
- $objattr['type'] = 'barcode';
- $objattr['height'] = $h + $extraheight;
- $objattr['width'] = $w + $extrawidth;
- $objattr['barcode_height'] = $h;
- $objattr['barcode_width'] = $w;
-/*-- CSS-IMAGE-FLOAT --*/
- if (!$this->ColActive && !$this->tableLevel && !$this->listlvl && !$this->kwt && !$this->keep_block_together) {
- if (isset($properties['FLOAT']) && (strtoupper($properties['FLOAT']) == 'RIGHT' || strtoupper($properties['FLOAT']) == 'LEFT')) {
- $objattr['float'] = substr(strtoupper($properties['FLOAT']),0,1);
- }
- }
-/*-- END CSS-IMAGE-FLOAT --*/
-
- $e = "\xbb\xa4\xactype=barcode,objattr=".serialize($objattr)."\xbb\xa4\xac";
-
- // Clear properties - tidy up
- $properties = array();
-
-/*-- TABLES --*/
- // Output it to buffers
- if ($this->tableLevel) {
- $this->_saveCellTextBuffer($e, $this->HREF); // mPDF 5.3.99
- $this->cell[$this->row][$this->col]['s'] += $objattr['width'] ;
- }
- else {
-/*-- END TABLES --*/
- $this->_saveTextBuffer($e, $this->HREF); // mPDF 5.3.99
-
- } // *TABLES*
- }
- break;
-/*-- END BARCODES --*/
-
-
- // *********** FORM ELEMENTS ********************
-
-/*-- FORMS --*/
- case 'SELECT':
- $this->lastoptionaltag = ''; // Save current HTML specified optional endtag
- $this->InlineProperties[$tag] = $this->saveInlineProperties();
- $properties = $this->MergeCSS('',$tag,$attr);
- if (isset($properties['FONT-FAMILY'])) {
- $this->SetFont($properties['FONT-FAMILY'],$this->FontStyle,0,false);
- }
- if (isset($properties['FONT-SIZE'])) {
- $mmsize = $this->ConvertSize($properties['FONT-SIZE'],$this->default_font_size/_MPDFK);
- $this->SetFontSize($mmsize*_MPDFK,false);
- }
- if (isset($attr['SPELLCHECK']) && strtolower($attr['SPELLCHECK'])=='true') {
- $this->selectoption['SPELLCHECK'] = true;
- }
-
- if (isset($properties['COLOR'])) { $this->selectoption['COLOR'] = $this->ConvertColor($properties['COLOR']); }
- $this->specialcontent = "type=select";
- if(isset($attr['DISABLED'])) { $this->selectoption['DISABLED'] = $attr['DISABLED']; }
- if(isset($attr['READONLY'])) { $this->selectoption['READONLY'] = $attr['READONLY']; }
- if(isset($attr['REQUIRED'])) { $this->selectoption['REQUIRED'] = $attr['REQUIRED']; }
- if(isset($attr['EDITABLE'])) { $this->selectoption['EDITABLE'] = $attr['EDITABLE']; }
- if(isset($attr['TITLE'])) { $this->selectoption['TITLE'] = $attr['TITLE']; }
- if(isset($attr['MULTIPLE'])) { $this->selectoption['MULTIPLE'] = $attr['MULTIPLE']; }
- if(isset($attr['SIZE']) && $attr['SIZE']>1) { $this->selectoption['SIZE'] = $attr['SIZE']; }
- if ($this->useActiveForms) {
- if(isset($attr['NAME'])) { $this->selectoption['NAME'] = $attr['NAME']; }
- if (isset($attr['ONCHANGE'])) { $this->selectoption['ONCHANGE'] = $attr['ONCHANGE']; }
- }
-
- $properties = array();
- break;
-
- case 'OPTION':
- $this->lastoptionaltag = 'OPTION'; // Save current HTML specified optional endtag
- $this->selectoption['ACTIVE'] = true;
- $this->selectoption['currentSEL'] = false;
- if (empty($this->selectoption)) {
- $this->selectoption['MAXWIDTH'] = '';
- $this->selectoption['SELECTED'] = '';
- }
- if (isset($attr['SELECTED'])) {
- $this->selectoption['SELECTED'] = '';
- $this->selectoption['currentSEL'] = true;
- }
- // mPDF 5.3.46
- if(isset($attr['VALUE'])) {
- $attr['VALUE'] = strcode2utf($attr['VALUE']);
- $attr['VALUE'] = $this->lesser_entity_decode($attr['VALUE']); // mPDF 5.3.58
- if ($this->onlyCoreFonts)
- $attr['VALUE'] = mb_convert_encoding($attr['VALUE'], $this->mb_enc,'UTF-8');
- // mPDF 5.3.58
- }
- $this->selectoption['currentVAL'] = $attr['VALUE'];
- break;
-
- case 'TEXTAREA':
- $objattr = array();
- $objattr['margin_top'] = 0;
- $objattr['margin_bottom'] = 0;
- $objattr['margin_left'] = 0;
- $objattr['margin_right'] = 0;
- $objattr['width'] = 0;
- $objattr['height'] = 0;
- $objattr['border_top']['w'] = 0;
- $objattr['border_bottom']['w'] = 0;
- $objattr['border_left']['w'] = 0;
- $objattr['border_right']['w'] = 0;
- if(isset($attr['DISABLED'])) { $objattr['disabled'] = true; }
- if(isset($attr['READONLY'])) { $objattr['readonly'] = true; }
- if(isset($attr['REQUIRED'])) { $objattr['required'] = true; }
- if(isset($attr['SPELLCHECK']) && strtolower($attr['SPELLCHECK'])=='true') { $objattr['spellcheck'] = true; }
- if(isset($attr['TITLE'])) { $objattr['title'] = $attr['TITLE']; }
- if ($this->onlyCoreFonts)
- $objattr['title'] = mb_convert_encoding($objattr['title'], $this->mb_enc,'UTF-8');
- if ($this->useActiveForms) {
- if(isset($attr['NAME'])) { $objattr['fieldname'] = $attr['NAME']; }
- $this->form->form_element_spacing['textarea']['outer']['v'] = 0;
- $this->form->form_element_spacing['textarea']['inner']['v'] = 0;
- // mPDF 5.3.25
- if (isset($attr['ONCALCULATE'])) { $objattr['onCalculate'] = $attr['ONCALCULATE']; }
- else if (isset($attr['ONCHANGE'])) { $objattr['onCalculate'] = $attr['ONCHANGE']; }
- if (isset($attr['ONVALIDATE'])) { $objattr['onValidate'] = $attr['ONVALIDATE']; }
- if (isset($attr['ONKEYSTROKE'])) { $objattr['onKeystroke'] = $attr['ONKEYSTROKE']; }
- if (isset($attr['ONFORMAT'])) { $objattr['onFormat'] = $attr['ONFORMAT']; } // mPDF 5.3.37
- }
- $this->InlineProperties[$tag] = $this->saveInlineProperties();
- $properties = $this->MergeCSS('',$tag,$attr);
- if (isset($properties['FONT-FAMILY'])) {
- $this->SetFont($properties['FONT-FAMILY'],'',0,false);
- }
- if (isset($properties['FONT-SIZE'])) {
- $mmsize = $this->ConvertSize($properties['FONT-SIZE'],$this->default_font_size/_MPDFK);
- $this->SetFontSize($mmsize*_MPDFK,false);
- }
- if (isset($properties['COLOR'])) { $objattr['color'] = $this->ConvertColor($properties['COLOR']); }
- $objattr['fontfamily'] = $this->FontFamily;
- $objattr['fontsize'] = $this->FontSizePt;
- if ($this->useActiveForms) {
- if(isset($attr['ALIGN'])) { $objattr['text_align'] = $align[strtolower($attr['ALIGN'])]; }
- else if(isset($properties['TEXT-ALIGN'])) { $objattr['text_align'] = $align[strtolower($properties['TEXT-ALIGN'])]; }
- if (isset($properties['OVERFLOW']) && strtolower($properties['OVERFLOW'])=='hidden') { $objattr['donotscroll'] = true; }
- if (isset($properties['BORDER-TOP-COLOR'])) { $objattr['border-col'] = $this->ConvertColor($properties['BORDER-TOP-COLOR']); }
- if (isset($properties['BACKGROUND-COLOR'])) { $objattr['background-col'] = $this->ConvertColor($properties['BACKGROUND-COLOR']); }
- }
- $this->SetLineHeight('',$this->form->textarea_lineheight);
- $formLineHeight = $this->lineheight;
-
- $w = 0;
- $h = 0;
- if(isset($properties['WIDTH'])) $w = $this->ConvertSize($properties['WIDTH'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false);
- if(isset($properties['HEIGHT'])) $h = $this->ConvertSize($properties['HEIGHT'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false);
- if ($properties['VERTICAL-ALIGN']) { $objattr['vertical-align'] = $align[strtolower($properties['VERTICAL-ALIGN'])]; }
-
- $colsize = 20; //HTML default value
- $rowsize = 2; //HTML default value
- if (isset($attr['COLS'])) $colsize = intval($attr['COLS']);
- if (isset($attr['ROWS'])) $rowsize = intval($attr['ROWS']);
-
- $charsize = $this->GetCharWidth('w',false); // mPDF 5.3.04
- if ($w) { $colsize = round(($w-($this->form->form_element_spacing['textarea']['outer']['h']*2)-($this->form->form_element_spacing['textarea']['inner']['h']*2))/$charsize); }
- if ($h) { $rowsize = round(($h-($this->form->form_element_spacing['textarea']['outer']['v']*2)-($this->form->form_element_spacing['textarea']['inner']['v']*2))/$formLineHeight); }
-
- $objattr['type'] = 'textarea';
- $objattr['width'] = ($colsize * $charsize) + ($this->form->form_element_spacing['textarea']['outer']['h']*2)+($this->form->form_element_spacing['textarea']['inner']['h']*2);
- $objattr['height'] = ($rowsize * $formLineHeight) + ($this->form->form_element_spacing['textarea']['outer']['v']*2)+($this->form->form_element_spacing['textarea']['inner']['v']*2);
- $objattr['rows'] = $rowsize;
- $objattr['cols'] = $colsize;
-
- $this->specialcontent = serialize($objattr);
-
- if ($this->tableLevel) { // *TABLES*
- $this->cell[$this->row][$this->col]['s'] += $objattr['width'] ; // *TABLES*
- } // *TABLES*
-
- // Clear properties - tidy up
- $properties = array();
- break;
-
-
-
- // *********** FORM - INPUT ********************
-
- case 'INPUT':
- if (!isset($attr['TYPE'])) $attr['TYPE'] == 'TEXT';
- $objattr = array();
- $objattr['margin_top'] = 0;
- $objattr['margin_bottom'] = 0;
- $objattr['margin_left'] = 0;
- $objattr['margin_right'] = 0;
- $objattr['width'] = 0;
- $objattr['height'] = 0;
- $objattr['border_top']['w'] = 0;
- $objattr['border_bottom']['w'] = 0;
- $objattr['border_left']['w'] = 0;
- $objattr['border_right']['w'] = 0;
- $objattr['type'] = 'input';
- if(isset($attr['DISABLED'])) { $objattr['disabled'] = true; }
- if(isset($attr['READONLY'])) { $objattr['readonly'] = true; }
- if(isset($attr['REQUIRED'])) { $objattr['required'] = true; }
- if(isset($attr['SPELLCHECK']) && strtolower($attr['SPELLCHECK'])=='true') { $objattr['spellcheck'] = true; }
- if(isset($attr['TITLE'])) { $objattr['title'] = $attr['TITLE']; }
- else if(isset($attr['ALT'])) { $objattr['title'] = $attr['ALT']; }
- // mPDF 5.3.46
- else $objattr['title'] = '';
- $objattr['title'] = strcode2utf($objattr['title']);
- $objattr['title'] = $this->lesser_entity_decode($objattr['title']); // mPDF 5.3.58
- if ($this->onlyCoreFonts)
- $objattr['title'] = mb_convert_encoding($objattr['title'], $this->mb_enc,'UTF-8');
- if ($this->useActiveForms) {
- if(isset($attr['NAME'])) { $objattr['fieldname'] = $attr['NAME']; }
- }
- // mPDF 5.3.46
- if(isset($attr['VALUE'])) {
- $attr['VALUE'] = strcode2utf($attr['VALUE']);
- $attr['VALUE'] = $this->lesser_entity_decode($attr['VALUE']); // mPDF 5.3.58
- if ($this->onlyCoreFonts)
- $attr['VALUE'] = mb_convert_encoding($attr['VALUE'], $this->mb_enc,'UTF-8');
- $objattr['value'] = $attr['VALUE'];
- }
-
- $this->InlineProperties[$tag] = $this->saveInlineProperties();
- $properties = $this->MergeCSS('',$tag,$attr);
- $objattr['vertical-align'] = '';
-
- if (isset($properties['FONT-FAMILY'])) {
- $this->SetFont($properties['FONT-FAMILY'],$this->FontStyle,0,false);
- }
- if (isset($properties['FONT-SIZE'])) {
- $mmsize = $this->ConvertSize($properties['FONT-SIZE'],($this->default_font_size/_MPDFK));
- $this->SetFontSize($mmsize*_MPDFK,false);
- }
- if (isset($properties['COLOR'])) { $objattr['color'] = $this->ConvertColor($properties['COLOR']); }
- $objattr['fontfamily'] = $this->FontFamily;
- $objattr['fontsize'] = $this->FontSizePt;
- if ($this->useActiveForms) {
- if(isset($attr['ALIGN'])) { $objattr['text_align'] = $align[strtolower($attr['ALIGN'])]; }
- else if(isset($properties['TEXT-ALIGN'])) { $objattr['text_align'] = $align[strtolower($properties['TEXT-ALIGN'])]; }
- if (isset($properties['BORDER-TOP-COLOR'])) { $objattr['border-col'] = $this->ConvertColor($properties['BORDER-TOP-COLOR']); }
- if (isset($properties['BACKGROUND-COLOR'])) { $objattr['background-col'] = $this->ConvertColor($properties['BACKGROUND-COLOR']); }
- }
-
- $type = '';
- $texto='';
- $height = $this->FontSize;
- $width = 0;
- $spacesize = $this->GetCharWidth(' ',false); // mPDF 5.3.04
-
- $w = 0;
- if(isset($properties['WIDTH'])) $w = $this->ConvertSize($properties['WIDTH'],$this->blk[$this->blklvl]['inner_width']);
-
- if ($properties['VERTICAL-ALIGN']) { $objattr['vertical-align'] = $align[strtolower($properties['VERTICAL-ALIGN'])]; }
-
- switch(strtoupper($attr['TYPE'])){
- case 'HIDDEN':
- $this->ignorefollowingspaces = true; //Eliminate exceeding left-side spaces
- if ($this->useActiveForms) {
- $this->form->SetFormText( 0, 0, $objattr['fieldname'], $objattr['value'], $objattr['value'], '', 0, '', true );
- }
- if ($this->InlineProperties[$tag]) { $this->restoreInlineProperties($this->InlineProperties[$tag]); }
- unset($this->InlineProperties[$tag]);
- break 2;
- case 'CHECKBOX': //Draw Checkbox
- $type = 'CHECKBOX';
- if (isset($attr['CHECKED'])) { $objattr['checked'] = true; }
- else { $objattr['checked'] = false; }
- $width = $this->FontSize;
- $height = $this->FontSize;
- break;
-
- case 'RADIO': //Draw Radio button
- $type = 'RADIO';
- if (isset($attr['CHECKED'])) $objattr['checked'] = true;
- $width = $this->FontSize;
- $height = $this->FontSize;
- break;
-
-/*-- IMAGES-CORE --*/
- case 'IMAGE': // Draw an Image button
- if(isset($attr['SRC'])) {
- $type = 'IMAGE';
- $srcpath = $attr['SRC'];
- $orig_srcpath = $attr['ORIG_SRC'];
- // VSPACE and HSPACE converted to margins in MergeCSS
- if (isset($properties['MARGIN-TOP'])) { $objattr['margin_top']=$this->ConvertSize($properties['MARGIN-TOP'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false); }
- if (isset($properties['MARGIN-BOTTOM'])) { $objattr['margin_bottom'] = $this->ConvertSize($properties['MARGIN-BOTTOM'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false); }
- if (isset($properties['MARGIN-LEFT'])) { $objattr['margin_left'] = $this->ConvertSize($properties['MARGIN-LEFT'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false); }
- if (isset($properties['MARGIN-RIGHT'])) { $objattr['margin_right'] = $this->ConvertSize($properties['MARGIN-RIGHT'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false); }
-
-
- if (isset($properties['BORDER-TOP'])) { $objattr['border_top'] = $this->border_details($properties['BORDER-TOP']); }
- if (isset($properties['BORDER-BOTTOM'])) { $objattr['border_bottom'] = $this->border_details($properties['BORDER-BOTTOM']); }
- if (isset($properties['BORDER-LEFT'])) { $objattr['border_left'] = $this->border_details($properties['BORDER-LEFT']); }
- if (isset($properties['BORDER-RIGHT'])) { $objattr['border_right'] = $this->border_details($properties['BORDER-RIGHT']); }
-
- $objattr['padding_top'] = 0;
- $objattr['padding_bottom'] = 0;
- $objattr['padding_left'] = 0;
- $objattr['padding_right'] = 0;
-
- if (isset($properties['VERTICAL-ALIGN'])) { $objattr['vertical-align'] = $align[strtolower($properties['VERTICAL-ALIGN'])]; }
-
- $w = 0;
- $h = 0;
- if(isset($properties['WIDTH'])) $w = $this->ConvertSize($properties['WIDTH'],$this->blk[$this->blklvl]['inner_width']);
- if(isset($properties['HEIGHT'])) $h = $this->ConvertSize($properties['HEIGHT'],$this->blk[$this->blklvl]['inner_width']);
-
- $extraheight = $objattr['margin_top'] + $objattr['margin_bottom'] + $objattr['border_top']['w'] + $objattr['border_bottom']['w'];
- $extrawidth = $objattr['margin_left'] + $objattr['margin_right'] + $objattr['border_left']['w'] + $objattr['border_right']['w'];
-
- // Image file
- $info=$this->_getImage($srcpath, true, true, $orig_srcpath);
- if(!$info) {
- $info = $this->_getImage($this->noImageFile);
- if ($info) {
- $srcpath = $this->noImageFile;
- $w = ($info['w'] * (25.4/$this->dpi));
- $h = ($info['h'] * (25.4/$this->dpi));
- }
- }
- if(!$info) break;
- if ($info['cs']=='Indexed') { $objattr['Indexed'] = true; }
- $objattr['file'] = $srcpath;
- //Default width and height calculation if needed
- if($w==0 and $h==0) {
-/*-- IMAGES-WMF --*/
- if ($info['type']=='wmf') {
- // WMF units are twips (1/20pt)
- // divide by 20 to get points
- // divide by k to get user units
- $w = abs($info['w'])/(20*_MPDFK);
- $h = abs($info['h']) / (20*_MPDFK);
- }
- else
-/*-- END IMAGES-WMF --*/
- if ($info['type']=='svg') {
- // SVG units are pixels
- $w = abs($info['w'])/_MPDFK;
- $h = abs($info['h'])/_MPDFK;
- }
- else {
- //Put image at default image dpi
- $w=($info['w']/_MPDFK) * (72/$this->img_dpi);
- $h=($info['h']/_MPDFK) * (72/$this->img_dpi);
- }
- if (isset($properties['IMAGE-RESOLUTION'])) {
- if (preg_match('/from-image/i', $properties['IMAGE-RESOLUTION']) && isset($info['set-dpi']) && $info['set-dpi']>0) {
- $w *= $this->img_dpi / $info['set-dpi'];
- $h *= $this->img_dpi / $info['set-dpi'];
- }
- else if (preg_match('/(\d+)dpi/i', $properties['IMAGE-RESOLUTION'], $m)) {
- $dpi = $m[1];
- if ($dpi > 0) {
- $w *= $this->img_dpi / $dpi;
- $h *= $this->img_dpi / $dpi;
- }
- }
- }
- }
- // IF WIDTH OR HEIGHT SPECIFIED
- if($w==0) $w=$h*$info['w']/$info['h'];
- if($h==0) $h=$w*$info['h']/$info['w'];
- // Resize to maximum dimensions of page
- $maxWidth = $this->blk[$this->blklvl]['inner_width'];
- $maxHeight = $this->h - ($this->tMargin + $this->bMargin + 10) ;
- if ($this->fullImageHeight) { $maxHeight = $this->fullImageHeight; }
- if ($w + $extrawidth > $maxWidth ) {
- $w = $maxWidth - $extrawidth;
- $h=$w*$info['h']/$info['w'];
- }
- if ($h + $extraheight > $maxHeight ) {
- $h = $maxHeight - $extraheight;
- $w=$h*$info['w']/$info['h'];
- }
- $height = $h + $extraheight;
- $width = $w + $extrawidth;
- $objattr['type'] = 'image';
- $objattr['itype'] = $info['type'];
- $objattr['orig_h'] = $info['h'];
- $objattr['orig_w'] = $info['w'];
-/*-- IMAGES-WMF --*/
- if ($info['type']=='wmf') {
- $objattr['wmf_x'] = $info['x'];
- $objattr['wmf_y'] = $info['y'];
- }
- else
-/*-- END IMAGES-WMF --*/
- if ($info['type']=='svg') {
- $objattr['wmf_x'] = $info['x'];
- $objattr['wmf_y'] = $info['y'];
- }
- $objattr['height'] = $h + $extraheight;
- $objattr['width'] = $w + $extrawidth;
-
- $objattr['image_height'] = $h;
- $objattr['image_width'] = $w;
- $objattr['ID'] = $info['i'];
- $texto = 'X';
- if ($this->useActiveForms) {
- if (isset($attr['ONCLICK'])) { $objattr['onClick'] = $attr['ONCLICK']; }
- $objattr['type'] = 'input';
- $type = 'IMAGE';
- }
- break;
- }
-/*-- END IMAGES-CORE --*/
-
- case 'BUTTON': // Draw a button
- case 'SUBMIT':
- case 'RESET':
- $type = strtoupper($attr['TYPE']);
- if ($type=='IMAGE') { $type = 'BUTTON'; } // src path not found
- if(isset($attr['NOPRINT'])) { $objattr['noprint'] = true; }
- // mPDF 5.3.46
- if (!isset($attr['VALUE'])) {
- $objattr['value'] = ucfirst(strtolower($type));
- }
-
- $texto = " " . $objattr['value'] . " ";
- $width = $this->GetStringWidth($texto) + ($this->form->form_element_spacing['button']['outer']['h']*2)+($this->form->form_element_spacing['button']['inner']['h']*2);
- $height = $this->FontSize + ($this->form->form_element_spacing['button']['outer']['v']*2)+($this->form->form_element_spacing['button']['inner']['v']*2);
- if ($this->useActiveForms) {
- if (isset($attr['ONCLICK'])) { $objattr['onClick'] = $attr['ONCLICK']; }
- }
- break;
-
- case 'PASSWORD':
- case 'TEXT':
- default:
- if ($type == '') { $type = 'TEXT'; }
- if(strtoupper($attr['TYPE'])=='PASSWORD') { $type = 'PASSWORD'; }
- if (isset($attr['VALUE'])) {
- if ($type == 'PASSWORD') {
- $num_stars = mb_strlen($attr['VALUE'],$this->mb_enc );
- $texto = str_repeat('*',$num_stars);
- }
- else { $texto = $attr['VALUE']; }
- }
- $xw = ($this->form->form_element_spacing['input']['outer']['h']*2)+($this->form->form_element_spacing['input']['inner']['h']*2);
- $xh = ($this->form->form_element_spacing['input']['outer']['v']*2)+($this->form->form_element_spacing['input']['inner']['v']*2);
- if ($w) { $width = $w + $xw; }
- else { $width = (20 * $spacesize) + $xw; } // Default width in chars
- if (isset($attr['SIZE']) and ctype_digit($attr['SIZE']) ) $width = ($attr['SIZE'] * $spacesize) + $xw;
- $height = $this->FontSize + $xh;
- if (isset($attr['MAXLENGTH']) and ctype_digit($attr['MAXLENGTH']) ) $objattr['maxlength'] = $attr['MAXLENGTH'];
- if ($this->useActiveForms) {
- // mPDF 5.3.25
- if (isset($attr['ONCALCULATE'])) { $objattr['onCalculate'] = $attr['ONCALCULATE']; }
- else if (isset($attr['ONCHANGE'])) { $objattr['onCalculate'] = $attr['ONCHANGE']; }
- if (isset($attr['ONVALIDATE'])) { $objattr['onValidate'] = $attr['ONVALIDATE']; }
- if (isset($attr['ONKEYSTROKE'])) { $objattr['onKeystroke'] = $attr['ONKEYSTROKE']; }
- if (isset($attr['ONFORMAT'])) { $objattr['onFormat'] = $attr['ONFORMAT']; } // mPDF 5.3.37
- }
- break;
- }
-
- $objattr['subtype'] = $type;
- $objattr['text'] = $texto;
- $objattr['width'] = $width;
- $objattr['height'] = $height;
- $e = "\xbb\xa4\xactype=input,objattr=".serialize($objattr)."\xbb\xa4\xac";
-
- // Clear properties - tidy up
- $properties = array();
-
-/*-- TABLES --*/
- // Output it to buffers
- if ($this->tableLevel) {
- $this->_saveCellTextBuffer($e, $this->HREF); // mPDF 5.3.99
- $this->cell[$this->row][$this->col]['s'] += $objattr['width'] ;
-
- }
- else {
-/*-- END TABLES --*/
- $this->_saveTextBuffer($e, $this->HREF); // mPDF 5.3.99
- } // *TABLES*
-
- if ($this->InlineProperties[$tag]) { $this->restoreInlineProperties($this->InlineProperties[$tag]); }
- unset($this->InlineProperties[$tag]);
-
- break; // END of INPUT
-/*-- END FORMS --*/
-
-
- // *********** GRAPH ********************
- case 'JPGRAPH':
- if (!$this->useGraphs) { break; }
- if ($attr['TABLE']) { $gid = strtoupper($attr['TABLE']); }
- else { $gid = '0'; }
- if (!is_array($this->graphs[$gid]) || count($this->graphs[$gid])==0 ) { break; }
- include_once(_MPDF_PATH.'graph.php');
- $this->graphs[$gid]['attr'] = $attr;
-
-
- if (isset($this->graphs[$gid]['attr']['WIDTH']) && $this->graphs[$gid]['attr']['WIDTH']) {
- $this->graphs[$gid]['attr']['cWIDTH']=$this->ConvertSize($this->graphs[$gid]['attr']['WIDTH'],$pgwidth);
- } // mm
- if (isset($this->graphs[$gid]['attr']['HEIGHT']) && $this->graphs[$gid]['attr']['HEIGHT']) {
- $this->graphs[$gid]['attr']['cHEIGHT']=$this->ConvertSize($this->graphs[$gid]['attr']['HEIGHT'],$pgwidth);
- }
-
- $graph_img = print_graph($this->graphs[$gid],$this->blk[$this->blklvl]['inner_width']);
- if ($graph_img) {
- if(isset($attr['ROTATE'])) {
- if ($attr['ROTATE']==90 || $attr['ROTATE']==-90) {
- $tmpw = $graph_img['w'];
- $graph_img['w']= $graph_img['h'];
- $graph_img['h']= $tmpw;
- }
- }
- $attr['SRC'] = $graph_img['file'];
- $attr['WIDTH'] = $graph_img['w'];
- $attr['HEIGHT'] = $graph_img['h'];
- }
- else { break; }
-
- // *********** IMAGE ********************
-/*-- IMAGES-CORE --*/
- case 'IMG':
- if ($this->progressBar) { $this->UpdateProgressBar(1,'','IMG'); } // *PROGRESS-BAR*
- $objattr = array();
- $objattr['margin_top'] = 0;
- $objattr['margin_bottom'] = 0;
- $objattr['margin_left'] = 0;
- $objattr['margin_right'] = 0;
- $objattr['padding_top'] = 0;
- $objattr['padding_bottom'] = 0;
- $objattr['padding_left'] = 0;
- $objattr['padding_right'] = 0;
- $objattr['width'] = 0;
- $objattr['height'] = 0;
- $objattr['border_top']['w'] = 0;
- $objattr['border_bottom']['w'] = 0;
- $objattr['border_left']['w'] = 0;
- $objattr['border_right']['w'] = 0;
- if(isset($attr['SRC'])) {
- $srcpath = $attr['SRC'];
- $orig_srcpath = $attr['ORIG_SRC'];
- $properties = $this->MergeCSS('',$tag,$attr);
- if(isset($properties ['DISPLAY']) && strtolower($properties ['DISPLAY'])=='none') {
- return;
- }
- // mPDF 5.3.42 VISIBILITY
- $objattr['visibility'] = 'visible';
- if (isset($properties['VISIBILITY'])) {
- $v = strtolower($properties['VISIBILITY']);
- if (($v == 'hidden' || $v == 'printonly' || $v == 'screenonly') && $this->visibility=='visible') {
- $objattr['visibility'] = $v;
- }
- }
-
- // VSPACE and HSPACE converted to margins in MergeCSS
- if (isset($properties['MARGIN-TOP'])) { $objattr['margin_top']=$this->ConvertSize($properties['MARGIN-TOP'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false); }
- if (isset($properties['MARGIN-BOTTOM'])) { $objattr['margin_bottom'] = $this->ConvertSize($properties['MARGIN-BOTTOM'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false); }
- if (isset($properties['MARGIN-LEFT'])) { $objattr['margin_left'] = $this->ConvertSize($properties['MARGIN-LEFT'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false); }
- if (isset($properties['MARGIN-RIGHT'])) { $objattr['margin_right'] = $this->ConvertSize($properties['MARGIN-RIGHT'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false); }
-
- if (isset($properties['PADDING-TOP'])) { $objattr['padding_top']=$this->ConvertSize($properties['PADDING-TOP'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false); }
- if (isset($properties['PADDING-BOTTOM'])) { $objattr['padding_bottom'] = $this->ConvertSize($properties['PADDING-BOTTOM'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false); }
- if (isset($properties['PADDING-LEFT'])) { $objattr['padding_left'] = $this->ConvertSize($properties['PADDING-LEFT'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false); }
- if (isset($properties['PADDING-RIGHT'])) { $objattr['padding_right'] = $this->ConvertSize($properties['PADDING-RIGHT'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false); }
-
- if (isset($properties['BORDER-TOP'])) { $objattr['border_top'] = $this->border_details($properties['BORDER-TOP']); }
- if (isset($properties['BORDER-BOTTOM'])) { $objattr['border_bottom'] = $this->border_details($properties['BORDER-BOTTOM']); }
- if (isset($properties['BORDER-LEFT'])) { $objattr['border_left'] = $this->border_details($properties['BORDER-LEFT']); }
- if (isset($properties['BORDER-RIGHT'])) { $objattr['border_right'] = $this->border_details($properties['BORDER-RIGHT']); }
-
- if (isset($properties['VERTICAL-ALIGN'])) { $objattr['vertical-align'] = $align[strtolower($properties['VERTICAL-ALIGN'])]; }
- $w = 0;
- $h = 0;
- if(isset($properties['WIDTH'])) $w = $this->ConvertSize($properties['WIDTH'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false);
- if(isset($properties['HEIGHT'])) $h = $this->ConvertSize($properties['HEIGHT'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false);
-
- if(isset($attr['WIDTH'])) $w = $this->ConvertSize($attr['WIDTH'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false);
- if(isset($attr['HEIGHT'])) $h = $this->ConvertSize($attr['HEIGHT'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false);
- if (isset($properties['OPACITY']) && $properties['OPACITY'] > 0 && $properties['OPACITY'] <= 1) { $objattr['opacity'] = $properties['OPACITY']; }
- if ($this->HREF) { // mPDF 5.3.78
- if (strpos($this->HREF,".") === false && strpos($this->HREF,"@") !== 0) {
- $href = $this->HREF;
- while(array_key_exists($href,$this->internallink)) $href="#".$href;
- $this->internallink[$href] = $this->AddLink();
- $objattr['link'] = $this->internallink[$href];
- }
- else { $objattr['link'] = $this->HREF; }
- }
- $extraheight = $objattr['padding_top'] + $objattr['padding_bottom'] + $objattr['margin_top'] + $objattr['margin_bottom'] + $objattr['border_top']['w'] + $objattr['border_bottom']['w'];
- $extrawidth = $objattr['padding_left'] + $objattr['padding_right'] + $objattr['margin_left'] + $objattr['margin_right'] + $objattr['border_left']['w'] + $objattr['border_right']['w'];
-
-/*-- BACKGROUNDS --*/
- if(isset($properties['GRADIENT-MASK']) && preg_match('/(-moz-)*(repeating-)*(linear|radial)-gradient/',$properties['GRADIENT-MASK'])) {
- $objattr['GRADIENT-MASK'] = $properties['GRADIENT-MASK'];
- }
-/*-- END BACKGROUNDS --*/
-
- // Image file
- $info=$this->_getImage($srcpath, true, true, $orig_srcpath);
- if(!$info) {
- $info = $this->_getImage($this->noImageFile);
- if ($info) {
- $srcpath = $this->noImageFile;
- $w = ($info['w'] * (25.4/$this->dpi));
- $h = ($info['h'] * (25.4/$this->dpi));
- }
- }
- if(!$info) break;
-
- if(isset($attr['ROTATE'])) { $image_orientation = $attr['ROTATE']; }
- else if(isset($properties['IMAGE-ORIENTATION'])) { $image_orientation = $properties['IMAGE-ORIENTATION']; }
- else { $image_orientation = 0; }
- if($image_orientation) {
- if ($image_orientation==90 || $image_orientation==-90 || $image_orientation==270) {
- $tmpw = $info['w'];
- $info['w'] = $info['h'];
- $info['h'] = $tmpw;
- }
- $objattr['ROTATE'] = $image_orientation;
- }
-
- $objattr['file'] = $srcpath;
- //Default width and height calculation if needed
- if($w==0 and $h==0) {
-/*-- IMAGES-WMF --*/
- if ($info['type']=='wmf') {
- // WMF units are twips (1/20pt)
- // divide by 20 to get points
- // divide by k to get user units
- $w = abs($info['w'])/(20*_MPDFK);
- $h = abs($info['h']) / (20*_MPDFK);
- }
- else
-/*-- END IMAGES-WMF --*/
- if ($info['type']=='svg') {
- // SVG units are pixels
- $w = abs($info['w'])/_MPDFK;
- $h = abs($info['h'])/_MPDFK;
- }
- else {
- //Put image at default image dpi
- $w=($info['w']/_MPDFK) * (72/$this->img_dpi);
- $h=($info['h']/_MPDFK) * (72/$this->img_dpi);
- }
- if (isset($properties['IMAGE-RESOLUTION'])) {
- if (preg_match('/from-image/i', $properties['IMAGE-RESOLUTION']) && isset($info['set-dpi']) && $info['set-dpi']>0) {
- $w *= $this->img_dpi / $info['set-dpi'];
- $h *= $this->img_dpi / $info['set-dpi'];
- }
- else if (preg_match('/(\d+)dpi/i', $properties['IMAGE-RESOLUTION'], $m)) {
- $dpi = $m[1];
- if ($dpi > 0) {
- $w *= $this->img_dpi / $dpi;
- $h *= $this->img_dpi / $dpi;
- }
- }
- }
- }
- // IF WIDTH OR HEIGHT SPECIFIED
- if($w==0) $w=abs($h*$info['w']/$info['h']);
- if($h==0) $h=abs($w*$info['h']/$info['w']);
-
- // Resize to maximum dimensions of page
- $maxWidth = $this->blk[$this->blklvl]['inner_width'];
- $maxHeight = $this->h - ($this->tMargin + $this->bMargin + 1) ;
- if ($this->fullImageHeight) { $maxHeight = $this->fullImageHeight; }
- if ($w + $extrawidth > $maxWidth ) {
- $w = $maxWidth - $extrawidth;
- $h=abs($w*$info['h']/$info['w']);
- }
-
- if ($h + $extraheight > $maxHeight ) {
- $h = $maxHeight - $extraheight;
- $w=abs($h*$info['w']/$info['h']);
- }
- $objattr['type'] = 'image';
- $objattr['itype'] = $info['type'];
-
- $objattr['orig_h'] = $info['h'];
- $objattr['orig_w'] = $info['w'];
-/*-- IMAGES-WMF --*/
- if ($info['type']=='wmf') {
- $objattr['wmf_x'] = $info['x'];
- $objattr['wmf_y'] = $info['y'];
- }
- else
-/*-- END IMAGES-WMF --*/
- if ($info['type']=='svg') {
- $objattr['wmf_x'] = $info['x'];
- $objattr['wmf_y'] = $info['y'];
- }
- $objattr['height'] = $h + $extraheight;
- $objattr['width'] = $w + $extrawidth;
- $objattr['image_height'] = $h;
- $objattr['image_width'] = $w;
-/*-- CSS-IMAGE-FLOAT --*/
- if (!$this->ColActive && !$this->tableLevel && !$this->listlvl && !$this->kwt && !$this->keep_block_together) {
- if (isset($properties['FLOAT']) && (strtoupper($properties['FLOAT']) == 'RIGHT' || strtoupper($properties['FLOAT']) == 'LEFT')) {
- $objattr['float'] = substr(strtoupper($properties['FLOAT']),0,1);
- }
- }
-/*-- END CSS-IMAGE-FLOAT --*/
-
- $e = "\xbb\xa4\xactype=image,objattr=".serialize($objattr)."\xbb\xa4\xac";
-
- // Clear properties - tidy up
- $properties = array();
-
-/*-- TABLES --*/
- // Output it to buffers
- if ($this->tableLevel) {
- $this->_saveCellTextBuffer($e, $this->HREF); // mPDF 5.3.99
- $this->cell[$this->row][$this->col]['s'] += $objattr['width'] ;
- }
- else {
-/*-- END TABLES --*/
- $this->_saveTextBuffer($e, $this->HREF); // mPDF 5.3.99
- } // *TABLES*
-/*-- ANNOTATIONS --*/
- if ($this->title2annots && isset($attr['TITLE'])) {
- $objattr = array();
- $objattr['margin_top'] = 0;
- $objattr['margin_bottom'] = 0;
- $objattr['margin_left'] = 0;
- $objattr['margin_right'] = 0;
- $objattr['width'] = 0;
- $objattr['height'] = 0;
- $objattr['border_top']['w'] = 0;
- $objattr['border_bottom']['w'] = 0;
- $objattr['border_left']['w'] = 0;
- $objattr['border_right']['w'] = 0;
- $objattr['CONTENT'] = $attr['TITLE'];
- $objattr['type'] = 'annot';
- $objattr['POS-X'] = 0;
- $objattr['POS-Y'] = 0;
- $objattr['ICON'] = 'Comment';
- $objattr['AUTHOR'] = '';
- $objattr['SUBJECT'] = '';
- $objattr['OPACITY'] = $this->annotOpacity;
- $objattr['COLOR'] = $this->ConvertColor('yellow');
- $e = "\xbb\xa4\xactype=annot,objattr=".serialize($objattr)."\xbb\xa4\xac";
- if($this->tableLevel) { // *TABLES*
- $this->cell[$this->row][$this->col]['textbuffer'][] = array($e); // *TABLES*
- } // *TABLES*
- else { // *TABLES*
- $this->textbuffer[] = array($e);
- } // *TABLES*
- }
-/*-- END ANNOTATIONS --*/
- }
- break;
-/*-- END IMAGES-CORE --*/
-
-
- // *********** CIRCULAR TEXT = TEXTCIRCLE ********************
- // mPDF 5.3.A5
- case 'TEXTCIRCLE':
- $objattr = array();
- $objattr['margin_top'] = 0;
- $objattr['margin_bottom'] = 0;
- $objattr['margin_left'] = 0;
- $objattr['margin_right'] = 0;
- $objattr['padding_top'] = 0;
- $objattr['padding_bottom'] = 0;
- $objattr['padding_left'] = 0;
- $objattr['padding_right'] = 0;
- $objattr['width'] = 0;
- $objattr['height'] = 0;
- $objattr['border_top']['w'] = 0;
- $objattr['border_bottom']['w'] = 0;
- $objattr['border_left']['w'] = 0;
- $objattr['border_right']['w'] = 0;
- $objattr['top-text'] = '';
- $objattr['bottom-text'] = '';
- $objattr['r'] = 20; // radius (default value here for safety)
- $objattr['space-width'] = 120;
- $objattr['char-width'] = 100;
-
- $this->InlineProperties[$tag] = $this->saveInlineProperties();
- $properties = $this->MergeCSS('',$tag,$attr);
- if(isset($properties ['DISPLAY']) && strtolower($properties ['DISPLAY'])=='none') {
- return;
- }
- if (isset($attr['R'])) { $objattr['r']=$this->ConvertSize($attr['R'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false); }
- if(isset($attr['TOP-TEXT'])) {
- $objattr['top-text'] = strcode2utf($attr['TOP-TEXT']);
- $objattr['top-text'] = $this->lesser_entity_decode($objattr['top-text']);
- if ($this->onlyCoreFonts)
- $objattr['top-text'] = mb_convert_encoding($objattr['top-text'], $this->mb_enc,'UTF-8');
- }
- if(isset($attr['BOTTOM-TEXT'])) {
- $objattr['bottom-text'] = strcode2utf($attr['BOTTOM-TEXT']);
- $objattr['bottom-text'] = $this->lesser_entity_decode($objattr['bottom-text']);
- if ($this->onlyCoreFonts)
- $objattr['bottom-text'] = mb_convert_encoding($objattr['bottom-text'], $this->mb_enc,'UTF-8');
- }
- if(isset($attr['SPACE-WIDTH']) && $attr['SPACE-WIDTH']) { $objattr['space-width'] = $attr['SPACE-WIDTH']; }
- if(isset($attr['CHAR-WIDTH']) && $attr['CHAR-WIDTH']) { $objattr['char-width'] = $attr['CHAR-WIDTH']; }
-
- // VISIBILITY
- $objattr['visibility'] = 'visible';
- if (isset($properties['VISIBILITY'])) {
- $v = strtolower($properties['VISIBILITY']);
- if (($v == 'hidden' || $v == 'printonly' || $v == 'screenonly') && $this->visibility=='visible') {
- $objattr['visibility'] = $v;
- }
- }
- if (isset($properties['FONT-FAMILY'])) {
- $this->SetFont($properties['FONT-FAMILY'],$this->FontStyle,0,false);
- }
- if (isset($properties['FONT-SIZE'])) {
- $mmsize = $this->ConvertSize($properties['FONT-SIZE'],($this->default_font_size/_MPDFK));
- $this->SetFontSize($mmsize*_MPDFK,false);
- }
- if (isset($properties['COLOR'])) { $objattr['color'] = $this->ConvertColor($properties['COLOR']); }
- $objattr['fontfamily'] = $this->FontFamily;
- $objattr['fontsize'] = $this->FontSizePt;
- $objattr['fontstyle'] = '';
- if (isset($properties['FONT-WEIGHT'])) {
- if (strtoupper($properties['FONT-WEIGHT']) == 'BOLD') { $objattr['fontstyle'] .= 'B'; }
- }
- if (isset($properties['FONT-STYLE'])) {
- if (strtoupper($properties['FONT-STYLE']) == 'ITALIC') { $objattr['fontstyle'] .= 'I'; }
- }
-
- // VSPACE and HSPACE converted to margins in MergeCSS
- if (isset($properties['MARGIN-TOP'])) { $objattr['margin_top']=$this->ConvertSize($properties['MARGIN-TOP'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false); }
- if (isset($properties['MARGIN-BOTTOM'])) { $objattr['margin_bottom'] = $this->ConvertSize($properties['MARGIN-BOTTOM'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false); }
- if (isset($properties['MARGIN-LEFT'])) { $objattr['margin_left'] = $this->ConvertSize($properties['MARGIN-LEFT'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false); }
- if (isset($properties['MARGIN-RIGHT'])) { $objattr['margin_right'] = $this->ConvertSize($properties['MARGIN-RIGHT'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false); }
-
- if (isset($properties['PADDING-TOP'])) { $objattr['padding_top']=$this->ConvertSize($properties['PADDING-TOP'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false); }
- if (isset($properties['PADDING-BOTTOM'])) { $objattr['padding_bottom'] = $this->ConvertSize($properties['PADDING-BOTTOM'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false); }
- if (isset($properties['PADDING-LEFT'])) { $objattr['padding_left'] = $this->ConvertSize($properties['PADDING-LEFT'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false); }
- if (isset($properties['PADDING-RIGHT'])) { $objattr['padding_right'] = $this->ConvertSize($properties['PADDING-RIGHT'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false); }
-
- if (isset($properties['BORDER-TOP'])) { $objattr['border_top'] = $this->border_details($properties['BORDER-TOP']); }
- if (isset($properties['BORDER-BOTTOM'])) { $objattr['border_bottom'] = $this->border_details($properties['BORDER-BOTTOM']); }
- if (isset($properties['BORDER-LEFT'])) { $objattr['border_left'] = $this->border_details($properties['BORDER-LEFT']); }
- if (isset($properties['BORDER-RIGHT'])) { $objattr['border_right'] = $this->border_details($properties['BORDER-RIGHT']); }
-
- if (isset($properties['OPACITY']) && $properties['OPACITY'] > 0 && $properties['OPACITY'] <= 1) { $objattr['opacity'] = $properties['OPACITY']; }
- if (isset($properties['BACKGROUND-COLOR']) && $properties['BACKGROUND-COLOR'] != '') { $objattr['bgcolor'] = $this->ConvertColor($properties['BACKGROUND-COLOR']); }
- else { $objattr['bgcolor'] = false; }
- if ($this->HREF) { // mPDF 5.3.78
- if (strpos($this->HREF,".") === false && strpos($this->HREF,"@") !== 0) {
- $href = $this->HREF;
- while(array_key_exists($href,$this->internallink)) $href="#".$href;
- $this->internallink[$href] = $this->AddLink();
- $objattr['link'] = $this->internallink[$href];
- }
- else { $objattr['link'] = $this->HREF; }
- }
- $extraheight = $objattr['padding_top'] + $objattr['padding_bottom'] + $objattr['margin_top'] + $objattr['margin_bottom'] + $objattr['border_top']['w'] + $objattr['border_bottom']['w'];
- $extrawidth = $objattr['padding_left'] + $objattr['padding_right'] + $objattr['margin_left'] + $objattr['margin_right'] + $objattr['border_left']['w'] + $objattr['border_right']['w'];
-
-
- $w = $objattr['r']*2;
- $h = $w;
- $objattr['height'] = $h + $extraheight;
- $objattr['width'] = $w + $extrawidth;
- $objattr['type'] = 'textcircle';
-
- $e = "\xbb\xa4\xactype=image,objattr=".serialize($objattr)."\xbb\xa4\xac";
-
- // Clear properties - tidy up
- $properties = array();
-
-/*-- TABLES --*/
- // Output it to buffers
- if ($this->tableLevel) {
- $this->_saveCellTextBuffer($e, $this->HREF);
- $this->cell[$this->row][$this->col]['s'] += $objattr['width'] ;
- }
- else {
-/*-- END TABLES --*/
- $this->_saveTextBuffer($e, $this->HREF);
- } // *TABLES*
-
- if ($this->InlineProperties[$tag]) { $this->restoreInlineProperties($this->InlineProperties[$tag]); }
- unset($this->InlineProperties[$tag]);
-
- break;
-
-
-/*-- TABLES --*/
-
- case 'TABLE': // TABLE-BEGIN
- $this->tdbegin = false;
- $this->lastoptionaltag = '';
- // Disable vertical justification in columns
- if ($this->ColActive) { $this->colvAlign = ''; } // *COLUMNS*
- if ($this->lastblocklevelchange == 1) { $blockstate = 1; } // Top margins/padding only
- else if ($this->lastblocklevelchange < 1) { $blockstate = 0; } // NO margins/padding
- // called from block after new div e.g.
...
... Outputs block top margin/border and padding
- if (count($this->textbuffer) == 0 && $this->lastblocklevelchange == 1 && !$this->tableLevel && !$this->kwt) {
- $this->newFlowingBlock( $this->blk[$this->blklvl]['width'],$this->lineheight,'',false,false,1,true, $this->blk[$this->blklvl]['direction']);
- $this->finishFlowingBlock(true); // true = END of flowing block
- }
- else if (!$this->tableLevel && count($this->textbuffer)) { $this->printbuffer($this->textbuffer,$blockstate); }
-
- $this->textbuffer=array();
- $this->lastblocklevelchange = -1;
- if ($this->tableLevel) { // i.e. now a nested table coming...
- // Save current level table
- $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['baseProperties']= $this->base_table_properties;
- $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['cells'] = $this->cell;
- $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['currrow'] = $this->row;
- $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['currcol'] = $this->col;
- }
- $this->tableLevel++;
- $this->tbCSSlvl++;
-
- if ($this->tableLevel>1) { // inherit table properties from cell in which nested
- $this->base_table_properties['FONT-KERNING'] = $this->kerning ;
- $this->base_table_properties['LETTER-SPACING'] = $this->lSpacingCSS ;
- $this->base_table_properties['WORD-SPACING'] = $this->wSpacingCSS ;
- }
-
- if (isset($this->tbctr[$this->tableLevel])) { $this->tbctr[$this->tableLevel]++; }
- else { $this->tbctr[$this->tableLevel] = 1; }
-
- $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['level'] = $this->tableLevel;
- $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['levelid'] = $this->tbctr[$this->tableLevel];
-
- if ($this->tableLevel > $this->innermostTableLevel) { $this->innermostTableLevel = $this->tableLevel; }
- if ($this->tableLevel > 1) {
- $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['nestedpos'] = array($this->row,$this->col,$this->tbctr[($this->tableLevel-1)]);
- }
- //++++++++++++++++++++++++++++
-
- $this->cell = array();
- $this->col=-1; //int
- $this->row=-1; //int
- $table = &$this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]];
-
- // mPDF 5.3.79
- // New table - any level
- if ($this->cacheTables) {
- $this->packTableData = true; // required for cacheTables
- $this->simpleTables = false; // Cannot co-exist with cacheTables
- $table['cache'] = _MPDF_TEMP_PATH.'_tempTblCache'.RAND(1,1000000).'.dat';
- $fh = fopen($table['cache'] , "wb") or $this->Error("When using cacheTables, you must have read/write access to cache files (".$table['cache'] .")");
- fwrite($fh, "\x00");
- fclose($fh);
- $table['ptr'] = 1 ; // Must not be 0
- }
-
- $table['direction'] = $this->directionality;
- $table['bgcolor'] = false;
- $table['va'] = false;
- $table['txta'] = false;
- $table['topntail'] = false;
- $table['thead-underline'] = false;
- $table['border'] = false;
- $table['border_details']['R']['w'] = 0;
- $table['border_details']['L']['w'] = 0;
- $table['border_details']['T']['w'] = 0;
- $table['border_details']['B']['w'] = 0;
- $table['border_details']['R']['style'] = '';
- $table['border_details']['L']['style'] = '';
- $table['border_details']['T']['style'] = '';
- $table['border_details']['B']['style'] = '';
- $table['max_cell_border_width']['R'] = 0;
- $table['max_cell_border_width']['L'] = 0;
- $table['max_cell_border_width']['T'] = 0;
- $table['max_cell_border_width']['B'] = 0;
- $table['padding']['L'] = false;
- $table['padding']['R'] = false;
- $table['padding']['T'] = false;
- $table['padding']['B'] = false;
- $table['margin']['L'] = false;
- $table['margin']['R'] = false;
- $table['margin']['T'] = false;
- $table['margin']['B'] = false;
- $table['a'] = false;
- $table['border_spacing_H'] = false;
- $table['border_spacing_V'] = false;
-
- $this->Reset();
- $this->InlineProperties = array();
- $this->spanlvl = 0;
- $table['nc'] = $table['nr'] = 0;
- $this->tablethead = 0;
- $this->tabletfoot = 0;
- $this->tabletheadjustfinished = false;
-
-
- if ($this->blockjustfinished && !count($this->textbuffer) && $this->y != $this->tMargin && $this->collapseBlockMargins && $this->tableLevel==1) { $lastbottommargin = $this->lastblockbottommargin; }
- else { $lastbottommargin = 0; }
- $this->lastblockbottommargin = 0;
- $this->blockjustfinished=false;
-
- if ($this->tableLevel==1) {
- $this->tableCJK = false;
- $this->table_lineheight = $this->normalLineheight;
- $table['headernrows'] = 0; // mPDF 5.3.62
- $table['footernrows'] = 0; // mPDF 5.3.62
- $this->base_table_properties = array();
- }
-
- // ADDED CSS FUNCIONS FOR TABLE
- if ($this->tbCSSlvl==1) {
- $properties = $this->MergeCSS('TOPTABLE',$tag,$attr);
- }
- else {
- $properties = $this->MergeCSS('TABLE',$tag,$attr);
- }
- $w = '';
- if (isset($properties['WIDTH'])) { $w = $properties['WIDTH']; }
-
- if(isset($properties['DIRECTION']) && $properties['DIRECTION']) { $table['direction'] = strtolower($properties['DIRECTION']); }
- if(isset($attr['DIR']) && $attr['DIR']) { $table['direction'] = strtolower($attr['DIR']); }
- else if (!isset($table['direction'])){ $table['direction'] = $this->blk[$this->blklvl]['direction']; }
-
- if (isset($properties['BACKGROUND-COLOR'])) { $table['bgcolor'][-1] = $properties['BACKGROUND-COLOR']; }
- else if (isset($properties['BACKGROUND'])) { $table['bgcolor'][-1] = $properties['BACKGROUND']; }
- if (isset($properties['VERTICAL-ALIGN'])) { $table['va'] = $align[strtolower($properties['VERTICAL-ALIGN'])]; }
- if (isset($properties['TEXT-ALIGN'])) { $table['txta'] = $align[strtolower($properties['TEXT-ALIGN'])]; }
- if (isset($properties['AUTOSIZE']) && $properties['AUTOSIZE'] && $this->tableLevel ==1) {
- $this->shrink_this_table_to_fit = $properties['AUTOSIZE'];
- if ($this->shrink_this_table_to_fit < 1) { $this->shrink_this_table_to_fit = 0; }
- }
- if (isset($properties['ROTATE']) && $properties['ROTATE'] && $this->tableLevel ==1) {
- $this->table_rotate = $properties['ROTATE'];
- }
- if (isset($properties['TOPNTAIL'])) { $table['topntail'] = $properties['TOPNTAIL']; }
- if (isset($properties['THEAD-UNDERLINE'])) { $table['thead-underline'] = $properties['THEAD-UNDERLINE']; }
-
- if (isset($properties['BORDER'])) {
- $bord = $this->border_details($properties['BORDER']);
- if ($bord['s']) {
- $table['border'] = _BORDER_ALL;
- $table['border_details']['R'] = $bord;
- $table['border_details']['L'] = $bord;
- $table['border_details']['T'] = $bord;
- $table['border_details']['B'] = $bord;
- }
- }
- if (isset($properties['BORDER-RIGHT'])) {
- if ($table['direction'] == 'rtl') { // *RTL*
- $table['border_details']['R'] = $this->border_details($properties['BORDER-LEFT']); // *RTL*
- } // *RTL*
- else { // *RTL*
- $table['border_details']['R'] = $this->border_details($properties['BORDER-RIGHT']);
- } // *RTL*
- $this->setBorder($table['border'], _BORDER_RIGHT, $table['border_details']['R']['s']);
- }
- if (isset($properties['BORDER-LEFT'])) {
- if ($table['direction'] == 'rtl') { // *RTL*
- $table['border_details']['L'] = $this->border_details($properties['BORDER-RIGHT']); // *RTL*
- } // *RTL*
- else { // *RTL*
- $table['border_details']['L'] = $this->border_details($properties['BORDER-LEFT']);
- } // *RTL*
- $this->setBorder($table['border'], _BORDER_LEFT, $table['border_details']['L']['s']);
- }
- if (isset($properties['BORDER-BOTTOM'])) {
- $table['border_details']['B'] = $this->border_details($properties['BORDER-BOTTOM']);
- $this->setBorder($table['border'], _BORDER_BOTTOM, $table['border_details']['B']['s']);
- }
- if (isset($properties['BORDER-TOP'])) {
- $table['border_details']['T'] = $this->border_details($properties['BORDER-TOP']);
- $this->setBorder($table['border'], _BORDER_TOP, $table['border_details']['T']['s']);
- }
- if ($table['border']){
- $this->table_border_css_set = 1;
- }
- else {
- $this->table_border_css_set = 0;
- }
-
- if (isset($properties['FONT-FAMILY'])) {
- $this->default_font = $properties['FONT-FAMILY'];
- $this->SetFont($this->default_font,'',0,false);
- $this->base_table_properties['FONT-FAMILY'] = $properties['FONT-FAMILY'];
- }
- if (isset($properties['FONT-SIZE'])) {
- $mmsize = $this->ConvertSize($properties['FONT-SIZE'],$this->default_font_size/_MPDFK);
- if ($mmsize) {
- $this->default_font_size = $mmsize*(_MPDFK);
- $this->SetFontSize($this->default_font_size,false);
- $this->base_table_properties['FONT-SIZE'] = $properties['FONT-SIZE'];
- }
- }
-
- if (isset($properties['FONT-WEIGHT'])) {
- if (strtoupper($properties['FONT-WEIGHT']) == 'BOLD') { $this->base_table_properties['FONT-WEIGHT'] = 'BOLD'; }
- }
- if (isset($properties['FONT-STYLE'])) {
- if (strtoupper($properties['FONT-STYLE']) == 'ITALIC') { $this->base_table_properties['FONT-STYLE'] = 'ITALIC'; }
- }
- if (isset($properties['COLOR'])) {
- $this->base_table_properties['COLOR'] = $properties['COLOR'];
- }
- if (isset($properties['FONT-KERNING'])) {
- $this->base_table_properties['FONT-KERNING'] = $properties['FONT-KERNING'];
- }
- if (isset($properties['LETTER-SPACING'])) {
- $this->base_table_properties['LETTER-SPACING'] = $properties['LETTER-SPACING'];
- }
- if (isset($properties['WORD-SPACING'])) {
- $this->base_table_properties['WORD-SPACING'] = $properties['WORD-SPACING'];
- }
-
- if (isset($properties['PADDING-LEFT'])) {
- $table['padding']['L'] = $this->ConvertSize($properties['PADDING-LEFT'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false);
- }
- if (isset($properties['PADDING-RIGHT'])) {
- $table['padding']['R'] = $this->ConvertSize($properties['PADDING-RIGHT'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false);
- }
- if (isset($properties['PADDING-TOP'])) {
- $table['padding']['T'] = $this->ConvertSize($properties['PADDING-TOP'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false);
- }
- if (isset($properties['PADDING-BOTTOM'])) {
- $table['padding']['B'] = $this->ConvertSize($properties['PADDING-BOTTOM'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false);
- }
-
- if (isset($properties['MARGIN-TOP'])) {
- if ($lastbottommargin) {
- $tmp = $this->ConvertSize($properties['MARGIN-TOP'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false);
- if ($tmp > $lastbottommargin) { $properties['MARGIN-TOP'] -= $lastbottommargin; }
- else { $properties['MARGIN-TOP'] = 0; }
- }
- $table['margin']['T'] = $this->ConvertSize($properties['MARGIN-TOP'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false);
- }
-
- if (isset($properties['MARGIN-BOTTOM'])) {
- $table['margin']['B'] = $this->ConvertSize($properties['MARGIN-BOTTOM'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false);
- }
- if (isset($properties['MARGIN-LEFT'])) {
- $table['margin']['L'] = $this->ConvertSize($properties['MARGIN-LEFT'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false);
- }
-
- if (isset($properties['MARGIN-RIGHT'])) {
- $table['margin']['R'] = $this->ConvertSize($properties['MARGIN-RIGHT'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false);
- }
- if (isset($properties['MARGIN-LEFT']) && isset($properties['MARGIN-RIGHT']) && strtolower($properties['MARGIN-LEFT'])=='auto' && strtolower($properties['MARGIN-RIGHT'])=='auto') {
- $table['a'] = 'C';
- }
- else if (isset($properties['MARGIN-LEFT']) && strtolower($properties['MARGIN-LEFT'])=='auto') {
- $table['a'] = 'R';
- }
- else if (isset($properties['MARGIN-RIGHT']) && strtolower($properties['MARGIN-RIGHT'])=='auto') {
- $table['a'] = 'L';
- }
-
- if (isset($properties['LINE-HEIGHT']) && $this->tableLevel==1) {
- $this->table_lineheight = $this->fixLineheight($properties['LINE-HEIGHT']);
- if (!$this->table_lineheight) { $this->table_lineheight = $this->normalLineheight; }
- }
-
- if (isset($properties['BORDER-COLLAPSE']) && strtoupper($properties['BORDER-COLLAPSE'])=='SEPARATE') {
- $table['borders_separate'] = true;
- }
- else {
- $table['borders_separate'] = false;
- }
-
- if (isset($properties['BORDER-SPACING-H'])) {
- $table['border_spacing_H'] = $this->ConvertSize($properties['BORDER-SPACING-H'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false);
- }
- if (isset($properties['BORDER-SPACING-V'])) {
- $table['border_spacing_V'] = $this->ConvertSize($properties['BORDER-SPACING-V'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false);
- }
-
- if (isset($properties['EMPTY-CELLS'])) {
- $table['empty_cells'] = strtolower($properties['EMPTY-CELLS']); // 'hide' or 'show'
- }
- else { $table['empty_cells'] = ''; }
-
- if (isset($properties['PAGE-BREAK-INSIDE']) && strtoupper($properties['PAGE-BREAK-INSIDE'])=='AVOID' && $this->tableLevel==1 && !$this->writingHTMLfooter) {
- $this->table_keep_together = true;
- }
- else if ($this->tableLevel==1) {
- $this->table_keep_together = false;
- }
- // mPDF 5.3.55
- if (isset($properties['PAGE-BREAK-AFTER']) && $this->tableLevel==1) {
- $table['page_break_after'] = strtoupper($properties['PAGE-BREAK-AFTER']);
- }
-
-/*-- BACKGROUNDS --*/
- if (isset($properties['BACKGROUND-GRADIENT']) && !$this->kwt && !$this->ColActive) { $table['gradient'] = $properties['BACKGROUND-GRADIENT']; }
-
- if (isset($properties['BACKGROUND-IMAGE']) && $properties['BACKGROUND-IMAGE'] && !$this->kwt && !$this->ColActive) {
- $ret = $this->SetBackground($properties, $currblk['inner_width']);
- if ($ret) { $table['background-image'] = $ret; }
- }
-/*-- END BACKGROUNDS --*/
-
- if (isset($properties['OVERFLOW'])) {
- $table['overflow'] = strtolower($properties['OVERFLOW']); // 'hidden' 'wrap' or 'visible' or 'auto'
- if (($this->ColActive || $this->tableLevel>1) && $table['overflow']=='visible') { unset($table['overflow']); } // mPDF 5.3.36
- }
-
- $properties = array();
-
- if (!$table['borders_separate']) { $table['border_spacing_H'] = $table['border_spacing_V'] = 0; }
- else if (isset($attr['CELLSPACING'])) {
- $table['border_spacing_H'] = $table['border_spacing_V'] = $this->ConvertSize($attr['CELLSPACING'],$this->blk[$this->blklvl]['inner_width']);
- }
-
-
- if (isset($attr['CELLPADDING'])) {
- $table['cell_padding'] = $attr['CELLPADDING'];
- }
- else {
- $table['cell_padding'] = false;
- }
-
- if (isset($attr['BORDER'])) {
- $this->table_border_attr_set = 1;
- if ($attr['BORDER']=='1') {
- $bord = $this->border_details('#000000 1px solid');
- if ($bord['s']) {
- $table['border'] = _BORDER_ALL;
- $table['border_details']['R'] = $bord;
- $table['border_details']['L'] = $bord;
- $table['border_details']['T'] = $bord;
- $table['border_details']['B'] = $bord;
- }
- }
- }
- else {
- $this->table_border_attr_set = 0;
- }
- if (isset($attr['ALIGN'])) { $table['a'] = $align[strtolower($attr['ALIGN'])]; }
- if (!$table['a']) {
- if ($table['direction'] == 'rtl' ) { $table['a'] = 'R'; }
- else { $table['a'] = 'L'; }
- }
- if (isset($attr['BGCOLOR'])) { $table['bgcolor'][-1] = $attr['BGCOLOR']; }
-
- if (isset($attr['WIDTH']) && $attr['WIDTH']) { $w = $attr['WIDTH']; }
- if ($w) { // set here or earlier in $properties
- $maxwidth = $this->blk[$this->blklvl]['inner_width'];
- if ($table['borders_separate']) {
- $tblblw = $table['margin']['L'] + $table['margin']['R'] + $table['border_details']['L']['w']/2 + $table['border_details']['R']['w']/2;
- }
- else {
- $tblblw = $table['margin']['L'] + $table['margin']['R'] + $table['max_cell_border_width']['L']/2 + $table['max_cell_border_width']['R']/2;
- }
- if (strpos($w,'%') && $this->tableLevel == 1 && !$this->ignore_table_percents ) {
- // % needs to be of inner box without table margins etc.
- $maxwidth -= $tblblw ;
- $wmm = $this->ConvertSize($w,$maxwidth,$this->FontSize,false);
- $table['w'] = $wmm + $tblblw ;
- }
- if (strpos($w,'%') && $this->tableLevel > 1 && !$this->ignore_table_percents && $this->keep_table_proportions) {
- $table['wpercent'] = $w + 0; // makes 80% -> 80
- }
- if (!strpos($w,'%') && !$this->ignore_table_widths ) {
- $wmm = $this->ConvertSize($w,$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false);
- $table['w'] = $wmm + $tblblw ;
- }
- if (!$this->keep_table_proportions) {
- if (isset($table['w']) && $table['w'] > $this->blk[$this->blklvl]['inner_width']) { $table['w'] = $this->blk[$this->blklvl]['inner_width']; }
- }
- }
-
- if (isset($attr['AUTOSIZE']) && $this->tableLevel==1) {
- $this->shrink_this_table_to_fit = $attr['AUTOSIZE'];
- if ($this->shrink_this_table_to_fit < 1) { $this->shrink_this_table_to_fit = 1; }
- }
- if (isset($attr['ROTATE']) && $this->tableLevel==1) {
- $this->table_rotate = $attr['ROTATE'];
- }
-
- //++++++++++++++++++++++++++++
- // keeping block together on one page
- // Autosize is now forced therefore keep block together disabled
- if ($this->keep_block_together) {
- $this->keep_block_together = 0;
- $this->printdivbuffer();
- $this->blk[$this->blklvl]['keep_block_together'] = 0;
- }
- if ($this->table_rotate) {
- $this->tbrot_Links = array();
- $this->tbrot_Annots = array();
- $this->tbrotForms = array();
- $this->tbrot_Reference = array();
- $this->tbrot_BMoutlines = array();
- $this->tbrot_toc = array();
- }
-
- if ($this->kwt) {
- if ($this->table_rotate) { $this->table_keep_together = true; }
- $this->kwt = false;
- $this->kwt_saved = true;
- }
-
- if ($this->tableLevel==1 && $this->useGraphs) {
- if (isset($attr['ID']) && $attr['ID']) { $this->currentGraphId = strtoupper($attr['ID']); }
- else { $this->currentGraphId = '0'; }
- $this->graphs[$this->currentGraphId] = array();
- }
- //++++++++++++++++++++++++++++
- $this->plainCell_properties = array();
- unset($table); // mPDF 5.3.76
- break;
-
- case 'THEAD':
- $this->lastoptionaltag = $tag; // Save current HTML specified optional endtag
- $this->tbCSSlvl++;
- $this->tablethead = 1;
- $this->tabletfoot = 0;
- $properties = $this->MergeCSS('TABLE',$tag,$attr);
- if (isset($properties['FONT-WEIGHT'])) {
- if (strtoupper($properties['FONT-WEIGHT']) == 'BOLD') { $this->thead_font_weight = 'B'; }
- else { $this->thead_font_weight = ''; }
- }
-
- if (isset($properties['FONT-STYLE'])) {
- if (strtoupper($properties['FONT-STYLE']) == 'ITALIC') { $this->thead_font_style = 'I'; }
- else { $this->thead_font_style = ''; }
- }
- if (isset($properties['FONT-VARIANT'])) {
- if (strtoupper($properties['FONT-VARIANT']) == 'SMALL-CAPS') { $this->thead_font_smCaps = 'S'; }
- else { $this->thead_font_smCaps = ''; }
- }
-
- if (isset($properties['VERTICAL-ALIGN'])) {
- $this->thead_valign_default = $properties['VERTICAL-ALIGN'];
- }
- if (isset($properties['TEXT-ALIGN'])) {
- $this->thead_textalign_default = $properties['TEXT-ALIGN'];
- }
- $properties = array();
- break;
-
- case 'TFOOT':
- $this->lastoptionaltag = $tag; // Save current HTML specified optional endtag
- $this->tbCSSlvl++;
- $this->tabletfoot = 1;
- $this->tablethead = 0;
- $properties = $this->MergeCSS('TABLE',$tag,$attr);
- if (isset($properties['FONT-WEIGHT'])) {
- if (strtoupper($properties['FONT-WEIGHT']) == 'BOLD') { $this->tfoot_font_weight = 'B'; }
- else { $this->tfoot_font_weight = ''; }
- }
-
- if (isset($properties['FONT-STYLE'])) {
- if (strtoupper($properties['FONT-STYLE']) == 'ITALIC') { $this->tfoot_font_style = 'I'; }
- else { $this->tfoot_font_style = ''; }
- }
- if (isset($properties['FONT-VARIANT'])) {
- if (strtoupper($properties['FONT-VARIANT']) == 'SMALL-CAPS') { $this->tfoot_font_smCaps = 'S'; }
- else { $this->tfoot_font_smCaps = ''; }
- }
-
- if (isset($properties['VERTICAL-ALIGN'])) {
- $this->tfoot_valign_default = $properties['VERTICAL-ALIGN'];
- }
- if (isset($properties['TEXT-ALIGN'])) {
- $this->tfoot_textalign_default = $properties['TEXT-ALIGN'];
- }
- $properties = array();
- break;
-
-
- case 'TBODY':
- $this->tablethead = 0;
- $this->tabletfoot = 0;
- $this->lastoptionaltag = $tag; // Save current HTML specified optional endtag
- $this->tbCSSlvl++;
- $this->MergeCSS('TABLE',$tag,$attr);
- break;
-
-
- case 'TR':
- $this->lastoptionaltag = $tag; // Save current HTML specified optional endtag
- $this->tbCSSlvl++;
- $this->row++;
- $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['nr']++;
- $this->col = -1;
- $properties = $this->MergeCSS('TABLE',$tag,$attr);
-
- if (!$this->simpleTables && (!isset($this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['borders_separate']) || !$this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['borders_separate'])) {
- if (isset($properties['BORDER-LEFT']) && $properties['BORDER-LEFT']) { $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['trborder-left'][$this->row] = $properties['BORDER-LEFT']; }
- if (isset($properties['BORDER-RIGHT']) && $properties['BORDER-RIGHT']) { $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['trborder-right'][$this->row] = $properties['BORDER-RIGHT']; }
- if (isset($properties['BORDER-TOP']) && $properties['BORDER-TOP']) { $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['trborder-top'][$this->row] = $properties['BORDER-TOP']; }
- if (isset($properties['BORDER-BOTTOM']) && $properties['BORDER-BOTTOM']) { $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['trborder-bottom'][$this->row] = $properties['BORDER-BOTTOM']; }
- }
-
- if (isset($properties['BACKGROUND-COLOR'])) { $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['bgcolor'][$this->row] = $properties['BACKGROUND-COLOR']; }
-
-/*-- BACKGROUNDS --*/
- if (isset($properties['BACKGROUND-GRADIENT']) && !$this->kwt && !$this->ColActive) { $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['trgradients'][$this->row] = $properties['BACKGROUND-GRADIENT']; }
-
- if (isset($properties['BACKGROUND-IMAGE']) && $properties['BACKGROUND-IMAGE'] && !$this->kwt && !$this->ColActive) {
- $ret = $this->SetBackground($properties, $currblk['inner_width']);
- if ($ret) { $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['trbackground-images'][$this->row] = $ret; }
- }
-/*-- END BACKGROUNDS --*/
-
-
-
-
- if (isset($properties['TEXT-ROTATE'])) {
- $this->trow_text_rotate = $properties['TEXT-ROTATE'];
- }
- if (isset($attr['TEXT-ROTATE'])) $this->trow_text_rotate = $attr['TEXT-ROTATE'];
-
- if (isset($attr['BGCOLOR'])) $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['bgcolor'][$this->row] = $attr['BGCOLOR'];
- if ($this->tablethead) { $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['is_thead'][$this->row] = true; }
- if ($this->tabletfoot) { $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['is_tfoot'][$this->row] = true; }
- $properties = array();
- break;
-
-
- // mPDF 5.3.75
- case 'TH':
- case 'TD':
- $this->ignorefollowingspaces = true;
- $this->lastoptionaltag = $tag; // Save current HTML specified optional endtag
- $this->tbCSSlvl++;
- $this->InlineProperties = array();
- $this->spanlvl = 0;
- $this->tdbegin = true;
- $this->col++;
- while (isset($this->cell[$this->row][$this->col])) { $this->col++; }
-
- //Update number column
- if ($this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['nc'] < $this->col+1) { $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['nc'] = $this->col+1; }
-
- $table = &$this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]];
-
- // mPDF 5.3.77
- $c = array('a' => false,
- 'R' => false,
- 'nowrap' => false,
- 'bgcolor' => false,
- 'padding' => array('L' => false,
- 'R' => false,
- 'T' => false,
- 'B' => false
- )
- );
-
- if ($this->simpleTables && $this->row==0 && $this->col==0){
- $table['simple']['border'] = false;
- $table['simple']['border_details']['R']['w'] = 0;
- $table['simple']['border_details']['L']['w'] = 0;
- $table['simple']['border_details']['T']['w'] = 0;
- $table['simple']['border_details']['B']['w'] = 0;
- $table['simple']['border_details']['R']['style'] = '';
- $table['simple']['border_details']['L']['style'] = '';
- $table['simple']['border_details']['T']['style'] = '';
- $table['simple']['border_details']['B']['style'] = '';
- }
- else if (!$this->simpleTables) {
- $c['border'] = false;
- $c['border_details']['R']['w'] = 0;
- $c['border_details']['L']['w'] = 0;
- $c['border_details']['T']['w'] = 0;
- $c['border_details']['B']['w'] = 0;
- $c['border_details']['mbw']['BL'] = 0;
- $c['border_details']['mbw']['BR'] = 0;
- $c['border_details']['mbw']['RT'] = 0;
- $c['border_details']['mbw']['RB'] = 0;
- $c['border_details']['mbw']['TL'] = 0;
- $c['border_details']['mbw']['TR'] = 0;
- $c['border_details']['mbw']['LT'] = 0;
- $c['border_details']['mbw']['LB'] = 0;
- $c['border_details']['R']['style'] = '';
- $c['border_details']['L']['style'] = '';
- $c['border_details']['T']['style'] = '';
- $c['border_details']['B']['style'] = '';
- $c['border_details']['R']['s'] = 0;
- $c['border_details']['L']['s'] = 0;
- $c['border_details']['T']['s'] = 0;
- $c['border_details']['B']['s'] = 0;
- $c['border_details']['R']['c'] = $this->ConvertColor(0);
- $c['border_details']['L']['c'] = $this->ConvertColor(0);
- $c['border_details']['T']['c'] = $this->ConvertColor(0);
- $c['border_details']['B']['c'] = $this->ConvertColor(0);
- $c['border_details']['R']['dom'] = 0;
- $c['border_details']['L']['dom'] = 0;
- $c['border_details']['T']['dom'] = 0;
- $c['border_details']['B']['dom'] = 0;
- }
-
-
- if ($table['va']) { $c['va'] = $table['va']; }
- if ($table['txta']) { $c['a'] = $table['txta']; }
- if ($this->table_border_attr_set) {
- if ($table['border_details']) {
- if (!$this->simpleTables){
- $c['border_details']['R'] = $table['border_details']['R'];
- $c['border_details']['L'] = $table['border_details']['L'];
- $c['border_details']['T'] = $table['border_details']['T'];
- $c['border_details']['B'] = $table['border_details']['B'];
- $c['border'] = $table['border'];
- $c['border_details']['L']['dom'] = 1;
- $c['border_details']['R']['dom'] = 1;
- $c['border_details']['T']['dom'] = 1;
- $c['border_details']['B']['dom'] = 1;
- }
- else if ($this->simpleTables && $this->row==0 && $this->col==0){
- $table['simple']['border_details']['R'] = $table['border_details']['R'];
- $table['simple']['border_details']['L'] = $table['border_details']['L'];
- $table['simple']['border_details']['T'] = $table['border_details']['T'];
- $table['simple']['border_details']['B'] = $table['border_details']['B'];
- $table['simple']['border'] = $table['border'];
- }
- }
- }
- // INHERITED THEAD CSS Properties
- if ($this->tablethead) {
- if ($this->thead_valign_default) $c['va'] = $align[strtolower($this->thead_valign_default)];
- if ($this->thead_textalign_default) $c['a'] = $align[strtolower($this->thead_textalign_default)];
- if ($this->thead_font_weight == 'B') { $this->SetStyle('B',true); }
- if ($this->thead_font_style == 'I') { $this->SetStyle('I',true); }
- if ($this->thead_font_smCaps == 'S') { $this->SetStyle('S',true); } // mPDF 5.3.76
- }
-
- // INHERITED TFOOT CSS Properties
- if ($this->tabletfoot) {
- if ($this->tfoot_valign_default) $c['va'] = $align[strtolower($this->tfoot_valign_default)];
- if ($this->tfoot_textalign_default) $c['a'] = $align[strtolower($this->tfoot_textalign_default)];
- if ($this->tfoot_font_weight == 'B') { $this->SetStyle('B',true); }
- if ($this->tfoot_font_style == 'I') { $this->SetStyle('I',true); }
- if ($this->tfoot_font_style == 'S') { $this->SetStyle('S',true); }
- }
-
-
- if ($this->trow_text_rotate){
- $c['R'] = $this->trow_text_rotate;
- }
-
- $this->cell_border_dominance_L = 0;
- $this->cell_border_dominance_R = 0;
- $this->cell_border_dominance_T = 0;
- $this->cell_border_dominance_B = 0;
-
- $properties = $this->MergeCSS('TABLE',$tag,$attr);
- $properties = $this->array_merge_recursive_unique($this->base_table_properties, $properties);
-
- if (isset($properties['FONT-KERNING']) && (strtoupper($properties['FONT-KERNING'])=='NORMAL' || strtoupper($properties['FONT-KERNING'])=='AUTO')) {
- $this->kerning = true;
- }
- else { $this->kerning = false; }
-
- if (isset($properties['LETTER-SPACING']) && ($properties['LETTER-SPACING'] || $properties['LETTER-SPACING']==='0') && strtoupper($properties['LETTER-SPACING']) != 'NORMAL') {
- $this->lSpacingCSS = strtoupper($properties['LETTER-SPACING']);
- $this->fixedlSpacing = $this->ConvertSize($this->lSpacingCSS,$this->FontSize);
- }
- else {
- $this->lSpacingCSS = '';
- $this->fixedlSpacing = false;
- }
- if (isset($properties['WORD-SPACING']) && strtoupper($properties['WORD-SPACING']) != 'NORMAL') {
- $this->wSpacingCSS = strtoupper($properties['WORD-SPACING']);
- $this->minwSpacing = $this->ConvertSize($this->wSpacingCSS,$this->FontSize);
- }
- else {
- $this->minwSpacing = 0;
- $this->wSpacingCSS = '';
- }
-
- if (isset($properties['BACKGROUND-COLOR'])) { $c['bgcolor'] = $properties['BACKGROUND-COLOR']; }
- else if (isset($properties['BACKGROUND'])) { $c['bgcolor'] = $properties['BACKGROUND']; }
-
-/*-- BACKGROUNDS --*/
- if (isset($properties['BACKGROUND-GRADIENT'])) { $c['gradient'] = $properties['BACKGROUND-GRADIENT']; }
- else { $c['gradient'] = false; }
-
- if (isset($properties['BACKGROUND-IMAGE']) && $properties['BACKGROUND-IMAGE'] && !$this->keep_block_together) {
- $ret = $this->SetBackground($properties, $this->blk[$this->blklvl]['inner_width']);
- if ($ret) { $c['background-image'] = $ret; }
- }
-/*-- END BACKGROUNDS --*/
-
- if (isset($properties['VERTICAL-ALIGN'])) { $c['va']=$align[strtolower($properties['VERTICAL-ALIGN'])]; }
- if (isset($properties['TEXT-ALIGN'])) { $c['a'] = $align[strtolower($properties['TEXT-ALIGN'])]; }
-
- if (isset($properties['TEXT-ROTATE']) && ($properties['TEXT-ROTATE'] || $properties['TEXT-ROTATE']==="0")){
- $c['R'] = $properties['TEXT-ROTATE'];
- }
- if (isset($properties['BORDER'])) {
- $bord = $this->border_details($properties['BORDER']);
- if ($bord['s']) {
- if (!$this->simpleTables){
- $c['border'] = _BORDER_ALL;
- $c['border_details']['R'] = $bord;
- $c['border_details']['L'] = $bord;
- $c['border_details']['T'] = $bord;
- $c['border_details']['B'] = $bord;
- $c['border_details']['L']['dom'] = $this->cell_border_dominance_L;
- $c['border_details']['R']['dom'] = $this->cell_border_dominance_R;
- $c['border_details']['T']['dom'] = $this->cell_border_dominance_T;
- $c['border_details']['B']['dom'] = $this->cell_border_dominance_B;
- }
- else if ($this->simpleTables && $this->row==0 && $this->col==0){
- $table['simple']['border'] = _BORDER_ALL;
- $table['simple']['border_details']['R'] = $bord;
- $table['simple']['border_details']['L'] = $bord;
- $table['simple']['border_details']['T'] = $bord;
- $table['simple']['border_details']['B'] = $bord;
- }
- }
- }
- if (!$this->simpleTables){
- if (isset($properties['BORDER-RIGHT']) && $properties['BORDER-RIGHT']) {
- $c['border_details']['R'] = $this->border_details($properties['BORDER-RIGHT']);
- $this->setBorder($c['border'], _BORDER_RIGHT, $c['border_details']['R']['s']);
- $c['border_details']['R']['dom'] = $this->cell_border_dominance_R;
- }
- if (isset($properties['BORDER-LEFT']) && $properties['BORDER-LEFT']) {
- $c['border_details']['L'] = $this->border_details($properties['BORDER-LEFT']);
- $this->setBorder($c['border'], _BORDER_LEFT, $c['border_details']['L']['s']);
- $c['border_details']['L']['dom'] = $this->cell_border_dominance_L;
- }
- if (isset($properties['BORDER-BOTTOM']) && $properties['BORDER-BOTTOM']) {
- $c['border_details']['B'] = $this->border_details($properties['BORDER-BOTTOM']);
- $this->setBorder($c['border'], _BORDER_BOTTOM, $c['border_details']['B']['s']);
- $c['border_details']['B']['dom'] = $this->cell_border_dominance_B;
- }
- if (isset($properties['BORDER-TOP']) && $properties['BORDER-TOP']) {
- $c['border_details']['T'] = $this->border_details($properties['BORDER-TOP']);
- $this->setBorder($c['border'], _BORDER_TOP, $c['border_details']['T']['s']);
- $c['border_details']['T']['dom'] = $this->cell_border_dominance_T;
- }
- }
- else if ($this->simpleTables && $this->row==0 && $this->col==0){
- if (isset($properties['BORDER-LEFT']) && $properties['BORDER-LEFT']) {
- $bord = $this->border_details($properties['BORDER-LEFT']);
- if ($bord['s']) { $table['simple']['border'] = _BORDER_ALL; }
- else { $table['simple']['border'] = 0; }
- $table['simple']['border_details']['R'] = $bord;
- $table['simple']['border_details']['L'] = $bord;
- $table['simple']['border_details']['T'] = $bord;
- $table['simple']['border_details']['B'] = $bord;
- }
- }
-
- // mPDF 5.3.15
- if ($this->simpleTables && $this->row==0 && $this->col==0 && !$table['borders_separate'] && $table['simple']['border'] ){
- $table['border_details'] = $table['simple']['border_details'];
- $table['border'] = $table['simple']['border'];
- }
-
- // mPDF 5.3.78
- // Border set on TR (if collapsed only)
- if (!$table['borders_separate'] && !$this->simpleTables && isset($table['trborder-left'][$this->row])) {
- if ($this->col==0) {
- $left = $this->border_details($table['trborder-left'][$this->row]);
- $c['border_details']['L'] = $left;
- $this->setBorder($c['border'], _BORDER_LEFT, $c['border_details']['L']['s']);
- }
- $c['border_details']['B'] = $this->border_details($table['trborder-bottom'][$this->row]);
- $this->setBorder($c['border'], _BORDER_BOTTOM, $c['border_details']['B']['s']);
- $c['border_details']['T'] = $this->border_details($table['trborder-top'][$this->row]);
- $this->setBorder($c['border'], _BORDER_TOP, $c['border_details']['T']['s']);
- }
-
- if ($this->packTableData && !$this->simpleTables) {
- $c['borderbin'] = $this->_packCellBorder($c);
- unset($c['border']);
- unset($c['border_details']);
- }
-
- if (isset($properties['PADDING-LEFT'])) {
- $c['padding']['L'] = $this->ConvertSize($properties['PADDING-LEFT'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false);
- }
- if (isset($properties['PADDING-RIGHT'])) {
- $c['padding']['R'] = $this->ConvertSize($properties['PADDING-RIGHT'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false);
- }
- if (isset($properties['PADDING-BOTTOM'])) {
- $c['padding']['B'] = $this->ConvertSize($properties['PADDING-BOTTOM'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false);
- }
- if (isset($properties['PADDING-TOP'])) {
- $c['padding']['T'] = $this->ConvertSize($properties['PADDING-TOP'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false);
- }
-
- $w = '';
- if (isset($properties['WIDTH'])) { $w = $properties['WIDTH']; }
- if (isset($attr['WIDTH'])) { $w = $attr['WIDTH']; }
- if ($w) {
- if (strpos($w,'%') && !$this->ignore_table_percents ) { $c['wpercent'] = $w + 0; } // makes 80% -> 80
- else if (!strpos($w,'%') && !$this->ignore_table_widths ) { $c['w'] = $this->ConvertSize($w,$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false); }
- }
-
- if (isset($properties['HEIGHT']) && !strpos($properties['HEIGHT'],'%')) { $c['h'] = $this->ConvertSize($properties['HEIGHT'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false); } // mPDF 5.3.57
-
- if (isset($properties['COLOR'])) {
- $cor = $this->ConvertColor($properties['COLOR']);
- if ($cor) {
- $this->colorarray = $cor;
- $this->SetTColor($cor);
- }
- }
- if (isset($properties['FONT-FAMILY'])) {
- $this->SetFont($properties['FONT-FAMILY'],'',0,false);
- }
- if (isset($properties['FONT-SIZE'])) {
- $mmsize = $this->ConvertSize($properties['FONT-SIZE'],$this->default_font_size/_MPDFK);
- if ($mmsize) {
- $this->SetFontSize($mmsize*(_MPDFK),false);
- }
- }
- $c['dfs'] = $this->FontSize; // Default Font size
- if (isset($properties['FONT-WEIGHT'])) {
- if (strtoupper($properties['FONT-WEIGHT']) == 'BOLD') { $this->SetStyle('B',true); }
- }
- if (isset($properties['FONT-STYLE'])) {
- if (strtoupper($properties['FONT-STYLE']) == 'ITALIC') { $this->SetStyle('I',true); }
- }
- if (isset($properties['FONT-VARIANT'])) {
- if (strtoupper($properties['FONT-VARIANT']) == 'SMALL-CAPS') { $this->SetStyle('S',true); }
- }
- // mPDF 5.3.34
- if (isset($properties['TEXT-DECORATION'])) {
- if (strtoupper($properties['TEXT-DECORATION']) == 'LINE-THROUGH') { $this->strike = true; }
- else if (strtoupper($properties['TEXT-DECORATION']) == 'UNDERLINE') { $this->SetStyle('U',true); }
- }
- // mPDF 5.3.A2
- if (isset($properties['TEXT-SHADOW'])) {
- $ts = $this->setCSStextshadow($properties['TEXT-SHADOW']);
- if ($ts) { $this->textshadow = $ts; }
- }
- // mPDF 5.3.80
- if (isset($properties['TEXT-TRANSFORM'])) {
- if (strtoupper($properties['TEXT-TRANSFORM']) == 'CAPITALIZE') { $this->capitalize = true; }
- else if (strtoupper($properties['TEXT-TRANSFORM']) == 'UPPERCASE') { $this->toupper = true; }
- else if (strtoupper($properties['TEXT-TRANSFORM']) == 'LOWERCASE') { $this->tolower = true; }
- }
- if (isset($properties['WHITE-SPACE'])) {
- if (strtoupper($properties['WHITE-SPACE']) == 'NOWRAP') { $c['nowrap']= 1; }
- }
- $properties = array();
-
-
- if (isset($attr['HEIGHT']) && !strpos($attr['HEIGHT'],'%')) $c['h'] = $this->ConvertSize($attr['HEIGHT'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false); // mPDF 5.3.57
-
- if (isset($attr['ALIGN'])) $c['a'] = $align[strtolower($attr['ALIGN'])];
-
- if (!$c['a']) {
- if (isset($table['direction']) && $table['direction'] == 'rtl' ) { $c['a'] = 'R'; }
- else { $c['a'] = 'L'; }
- }
- if (isset($attr['VALIGN'])) $c['va'] = $align[strtolower($attr['VALIGN'])];
-
-
- if (isset($attr['BGCOLOR'])) $c['bgcolor'] = $attr['BGCOLOR'];
- if (isset($attr['TEXT-ROTATE'])) {
- $c['R'] = $attr['TEXT-ROTATE'];
- }
- if (isset($attr['NOWRAP']) && $attr['NOWRAP']) $c['nowrap']= 1;
-
- // mPDF 5.3.77
- $this->cell[$this->row][$this->col] = $c;
- unset($c);
- $this->cell[$this->row][$this->col]['s'] = 0 ;
-
- $cs = $rs = 1;
- if (isset($attr['COLSPAN']) && $attr['COLSPAN']>1) $cs = $this->cell[$this->row][$this->col]['colspan'] = $attr['COLSPAN'];
- if ($this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['nc'] < $this->col+$cs) {
- $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['nc'] = $this->col+$cs;
- } // mPDF 5.3.79 following code moved outside if...
- for($l=$this->col; $l < $this->col+$cs ;$l++) {
- if ($l-$this->col) $this->cell[$this->row][$l] = 0;
- }
- if (isset($attr['ROWSPAN']) && $attr['ROWSPAN']>1) $rs = $this->cell[$this->row][$this->col]['rowspan'] = $attr['ROWSPAN'];
- for ($k=$this->row ; $k < $this->row+$rs ;$k++) {
- for($l=$this->col; $l < $this->col+$cs ;$l++) {
- if ($k-$this->row || $l-$this->col) $this->cell[$k][$l] = 0;
- }
- }
- unset($table); // mPDF 5.3.76
- break;
-/*-- END TABLES --*/
-
-
-/*-- LISTS --*/
- // *********** LISTS ********************
- case 'OL':
- case 'UL':
- $this->listjustfinished = false;
-
- if ($this->blockjustfinished && !count($this->textbuffer) && $this->y != $this->tMargin && $this->collapseBlockMargins) { $lastbottommargin = $this->lastblockbottommargin; }
- else { $lastbottommargin = 0; }
- $this->lastblockbottommargin = 0;
- $this->blockjustfinished=false;
-
- $this->linebreakjustfinished=false;
- $this->lastoptionaltag = ''; // Save current HTML specified optional endtag
- $this->listCSSlvl++;
- if((!$this->tableLevel) && ($this->listlvl == 0)) {
- $blockstate = 0;
- //if ($this->lastblocklevelchange == 1) { $blockstate = -1; } // Top margins/padding only
- //else if ($this->lastblocklevelchange < 1) { $blockstate = 0; } // NO margins/padding
- // called from block after new div e.g. ...
... Outputs block top margin/border and padding
- if (count($this->textbuffer) == 0 && $this->lastblocklevelchange == 1 && !$this->tableLevel && !$this->kwt) {
- $this->newFlowingBlock( $this->blk[$this->blklvl]['width'],$this->lineheight,'',false,false,1,true, $this->blk[$this->blklvl]['direction']);
- $this->finishFlowingBlock(true); // true = END of flowing block
- }
- else if (count($this->textbuffer)) { $this->printbuffer($this->textbuffer,$blockstate); }
- $this->textbuffer=array();
- $this->lastblocklevelchange = -1;
- }
- // ol and ul types are mixed here
- if ($this->listlvl == 0) {
- $this->list_indent = array();
- $this->list_align = array();
- $this->list_lineheight = array();
- $this->InlineProperties['LIST'] = array();
- $this->InlineProperties['LISTITEM'] = array();
- }
-
-/*-- TABLES --*/
- // A simple list for inside a table
- if($this->tableLevel) {
- $this->list_indent[$this->listlvl] = 0; // mm default indent for each level
- if ($tag == 'OL') $this->listtype = '1';
- else if ($tag == 'UL') $this->listtype = 'disc';
- if ($this->listlvl > 0) {
- $this->listlist[$this->listlvl]['MAXNUM'] = $this->listnum; //save previous lvl's maxnum
- }
- $this->listlvl++;
- $this->listnum = 0; // reset
- $this->listlist[$this->listlvl] = array('TYPE'=>$this->listtype,'MAXNUM'=>$this->listnum);
- break;
- }
-/*-- END TABLES --*/
-
-
- if (($this->PDFA || $this->PDFX) && $tag == 'UL') {
- if (($this->PDFA && !$this->PDFAauto) || ($this->PDFX && !$this->PDFXauto)) { $this->PDFAXwarnings[] = "List bullets cannot use core font Zapfdingbats in PDFA1-b or PDFX/1-a. (Substitute characters from current font used if available, otherwise substitutes hyphen '-')"; }
- }
-
- if ($this->listCSSlvl==1) {
- $properties = $this->MergeCSS('TOPLIST',$tag,$attr);
- }
- else {
- $properties = $this->MergeCSS('LIST',$tag,$attr);
- }
- if (!empty($properties)) $this->setCSS($properties,'LIST'); // mPDF 5.3.65
- // List-type
-
- $this->listtype = '';
- if (isset($attr['TYPE']) && $attr['TYPE']) { $this->listtype = $attr['TYPE']; }
- else if (isset($properties['LIST-STYLE-TYPE'])) {
- $this->listtype = $this->_getListStyle($properties['LIST-STYLE-TYPE']);
- }
- else if (isset($properties['LIST-STYLE'])) {
- $this->listtype = $this->_getListStyle($properties['LIST-STYLE']);
- }
- if (!$this->listtype) {
- if ($tag == 'OL') $this->listtype = '1';
- if ($tag == 'UL') {
- if ($this->listlvl % 3 == 0) $this->listtype = 'disc';
- elseif ($this->listlvl % 3 == 1) $this->listtype = 'circle';
- else $this->listtype = 'square';
- }
- }
- if ($this->listlvl == 0) {
- $this->inherit_lineheight = 0;
- $this->listlvl++; // first depth level
- $this->listnum = 0; // reset
- $this->listDir = (isset($this->blk[$this->blklvl]['direction']) ? $this->blk[$this->blklvl]['direction'] : null);
- $occur = $this->listoccur[$this->listlvl] = 1;
- $this->listlist[$this->listlvl][1] = array('TYPE'=>$this->listtype,'MAXNUM'=>$this->listnum);
- }
- else {
- if (!empty($this->textbuffer))
- {
- $this->listitem[] = array($this->listlvl,$this->listnum,$this->textbuffer,$this->listoccur[$this->listlvl],$this->listitemtype);
- $this->listnum++;
- }
- // Save current lineheight to inherit
- $this->textbuffer = array();
- $occur = $this->listoccur[$this->listlvl];
- $this->listlist[$this->listlvl][$occur]['MAXNUM'] = $this->listnum; //save previous lvl's maxnum
- $this->listlvl++;
- $this->listnum = 0; // reset
-
-
- if (!isset($this->listoccur[$this->listlvl]) || $this->listoccur[$this->listlvl] == 0) $this->listoccur[$this->listlvl] = 1;
- else $this->listoccur[$this->listlvl]++;
- $occur = $this->listoccur[$this->listlvl];
- $this->listlist[$this->listlvl][$occur] = array('TYPE'=>$this->listtype,'MAXNUM'=>$this->listnum);
- }
-
-
- // TOP LEVEL ONLY
- if ($this->listlvl == 1) {
- if (isset($properties['MARGIN-TOP'])) {
- if ($lastbottommargin) {
- $tmp = $this->ConvertSize($properties['MARGIN-TOP'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false);
- if ($tmp > $lastbottommargin) { $properties['MARGIN-TOP'] -= $lastbottommargin; }
- else { $properties['MARGIN-TOP'] = 0; }
- }
- $this->DivLn($this->ConvertSize($properties['MARGIN-TOP'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false),$this->blklvl,true,1); // collapsible
- }
- if (isset($properties['MARGIN-BOTTOM'])) {
- $this->list_margin_bottom = $this->ConvertSize($properties['MARGIN-BOTTOM'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false);
- }
-
- if (isset($this->blk[$this->blklvl]['line_height'])) {
- $this->list_lineheight[$this->listlvl][$occur] = $this->blk[$this->blklvl]['line_height'];
- }
-
- if (isset($properties['DIRECTION']) && $properties['DIRECTION']) { $this->listDir = strtolower($properties['DIRECTION']); }
- if (isset($attr['DIR']) && $attr['DIR']) { $this->listDir = strtolower($attr['DIR']); }
-
- }
- $this->list_indent[$this->listlvl][$occur] = 5; // mm default indent for each level
- if (isset($properties['TEXT-INDENT'])) { $this->list_indent[$this->listlvl][$occur] = $this->ConvertSize($properties['TEXT-INDENT'],$this->blk[$this->blklvl]['inner_width'],$this->FontSize,false); }
-
- if (isset($properties['TEXT-ALIGN'])) {
- $this->list_align[$this->listlvl][$occur] = $align[strtolower($properties['TEXT-ALIGN'])];
- }
-
-
- if (isset($properties['LINE-HEIGHT'])) {
- $this->list_lineheight[$this->listlvl][$occur] = $this->fixLineheight($properties['LINE-HEIGHT']);
- }
- else if ($this->listlvl>1 && isset($this->list_lineheight[($this->listlvl - 1)][1])) {
- $this->list_lineheight[$this->listlvl][$occur] = end($this->list_lineheight[($this->listlvl - 1)]);
- }
- if (!isset($this->list_lineheight[$this->listlvl][$occur]) || !$this->list_lineheight[$this->listlvl][$occur]) {
- $this->list_lineheight[$this->listlvl][$occur] = $this->normalLineheight;
- }
-
- $this->InlineProperties['LIST'][$this->listlvl][$occur] = $this->saveInlineProperties();
- $properties = array();
- break;
-
-
-
- case 'LI':
- // Start Block
- $this->lastoptionaltag = $tag; // Save current HTML specified optional endtag
- $this->ignorefollowingspaces = true; //Eliminate exceeding left-side spaces
-/*-- TABLES --*/
- // A simple list for inside a table
- if($this->tableLevel) {
- $this->blockjustfinished=false;
-
- // If already something in the Cell
- if ((isset($this->cell[$this->row][$this->col]['maxs']) && $this->cell[$this->row][$this->col]['maxs'] > 0 ) || $this->cell[$this->row][$this->col]['s'] > 0 ) {
- $this->_saveCellTextBuffer("\n"); // mPDF 5.3.99
- if (!isset($this->cell[$this->row][$this->col]['maxs'])) {
- $this->cell[$this->row][$this->col]['maxs'] = $this->cell[$this->row][$this->col]['s'];
- }
- elseif($this->cell[$this->row][$this->col]['maxs'] < $this->cell[$this->row][$this->col]['s']) {
- $this->cell[$this->row][$this->col]['maxs'] = $this->cell[$this->row][$this->col]['s'];
- }
- $this->cell[$this->row][$this->col]['s'] = 0 ;
- }
- if ($this->listlvl == 0) { //in case of malformed HTML code. Example:(...)Content Paragraph1
(...)
- $this->listlvl++; // first depth level
- $this->listnum = 0; // reset
- $this->listlist[$this->listlvl] = array('TYPE'=>'disc','MAXNUM'=>$this->listnum);
- }
-
- $this->listnum++;
- switch($this->listlist[$this->listlvl]['TYPE']) {
- case 'A':
- $blt = $this->dec2alpha($this->listnum,true).$this->list_number_suffix;
- break;
- case 'a':
- $blt = $this->dec2alpha($this->listnum,false).$this->list_number_suffix;
- break;
- case 'I':
- $blt = $this->dec2roman($this->listnum,true).$this->list_number_suffix;
- break;
- case 'i':
- $blt = $this->dec2roman($this->listnum,false).$this->list_number_suffix;
- break;
- case '1':
- $blt = $this->listnum.$this->list_number_suffix;
- break;
- default:
- if ($this->listlvl % 3 == 1 && $this->_charDefined($this->CurrentFont['cw'],8226)) { $blt = "\xe2\x80\xa2"; } // •
- else if ($this->listlvl % 3 == 2 && $this->_charDefined($this->CurrentFont['cw'],9900)) { $blt = "\xe2\x9a\xac"; } // ⚬
- else if ($this->listlvl % 3 == 0 && $this->_charDefined($this->CurrentFont['cw'],9642)) { $blt = "\xe2\x96\xaa"; } // ▪
- else { $blt = '-'; }
- break;
- }
-
- // change to spaces
- if ($this->usingCoreFont) {
- $ls = str_repeat(chr(160).chr(160),($this->listlvl-1)*2) . $blt . ' ';
- }
- else {
- $ls = str_repeat("\xc2\xa0\xc2\xa0",($this->listlvl-1)*2) . $blt . ' ';
- }
-
- $this->_saveCellTextBuffer($ls, $this->HREF); // mPDF 5.3.99
- $this->cell[$this->row][$this->col]['s'] += $this->GetStringWidth($ls);
- break;
- }
-/*-- END TABLES --*/
- //Observation: is ignored
- if ($this->listlvl == 0) { //in case of malformed HTML code. Example:(...)Content Paragraph1
(...)
- //First of all, skip a line
- $this->listlvl++; // first depth level
- $this->listnum = 0; // reset
- $this->listoccur[$this->listlvl] = 1;
- $this->listlist[$this->listlvl][1] = array('TYPE'=>'disc','MAXNUM'=>$this->listnum);
- }
- if ($this->listnum == 0) {
- $this->listnum++;
- $this->textbuffer = array();
- }
- else {
- if (!empty($this->textbuffer)) {
- if (!$this->listjustfinished) { // mPDF 5.3.11
- $this->listitem[] = array($this->listlvl,$this->listnum,$this->textbuffer,$this->listoccur[$this->listlvl],$this->listitemtype);
- $this->listnum++;
- }
- else { // mPDF 5.3.10
- $this->listitem[] = array($this->listlvl,$this->listnum,$this->textbuffer,$this->listoccur[$this->listlvl],$this->listitemtype, true);
- }
- }
- $this->textbuffer = array();
- }
- $this->listjustfinished = false; // mPDF 5.3.11
-
- $this->listCSSlvl++;
- $properties = $this->MergeCSS('LIST',$tag,$attr);
- if (!empty($properties)) $this->setCSS($properties,'LIST'); // mPDF 5.3.98
- $this->InlineProperties['LISTITEM'][$this->listlvl][$this->listoccur[$this->listlvl]][$this->listnum] = $this->saveInlineProperties();
-
- // List-type
- if (isset($attr['TYPE']) && $attr['TYPE']) { $this->listitemtype = $attr['TYPE']; }
- else if (isset($properties['LIST-STYLE-TYPE'])) {
- $this->listitemtype = $this->_getListStyle($properties['LIST-STYLE-TYPE']);
- }
- else if (isset($properties['LIST-STYLE'])) {
- $this->listitemtype = $this->_getListStyle($properties['LIST-STYLE']);
- }
- else $this->listitemtype = '';
- break;
-/*-- END LISTS --*/
-
- }//end of switch
-}
-
-/*-- LISTS --*/
-
-function _getListStyle($ls) {
- if (stristr($ls,'decimal')) { return '1'; }
-/* CSS3 list-styles numeric (selected) + I added tamil
-arabic-indic | bengali | devanagari | gujarati | gurmukhi | kannada | malayalam | oriya | persian | telugu | thai | urdu
-*/
- else if (preg_match('/(disc|circle|square|arabic-indic|bengali|devanagari|gujarati|gurmukhi|kannada|malayalam|oriya|persian|tamil|telugu|thai|urdu)/i',$ls,$m)) {
- return strtolower(trim($m[1]));
- }
- else if (stristr($ls,'lower-roman')) { return 'i'; }
- else if (stristr($ls,'upper-roman')) { return 'I'; }
- else if (stristr($ls,'lower-latin')|| stristr($ls,'lower-alpha')) { return 'a'; }
- else if (stristr($ls,'upper-latin') || stristr($ls,'upper-alpha')) { return 'A'; }
- else if (stristr($ls,'none')) { return 'none'; }
- else if (preg_match('/U\+([a-fA-F0-9]+)/i',$ls)) { return $ls; }
- else { return ''; }
-}
-/*-- END LISTS --*/
-
-
-
-function CloseTag($tag)
-{
- $this->ignorefollowingspaces = false; //Eliminate exceeding left-side spaces
- //Closing tag
- if($tag=='OPTION') { $this->selectoption['ACTIVE'] = false; $this->lastoptionaltag = ''; }
-
- if($tag=='TTS' or $tag=='TTA' or $tag=='TTZ') {
- if ($this->InlineProperties[$tag]) { $this->restoreInlineProperties($this->InlineProperties[$tag]); }
- unset($this->InlineProperties[$tag]);
- $ltag = strtolower($tag);
- $this->$ltag = false;
- }
-
-
- if($tag=='FONT' || $tag=='SPAN' || $tag=='CODE' || $tag=='KBD' || $tag=='SAMP' || $tag=='TT' || $tag=='VAR'
- || $tag=='INS' || $tag=='STRONG' || $tag=='CITE' || $tag=='SUB' || $tag=='SUP' || $tag=='S' || $tag=='STRIKE' || $tag=='DEL'
- || $tag=='Q' || $tag=='EM' || $tag=='B' || $tag=='I' || $tag=='U' | $tag=='SMALL' || $tag=='BIG' || $tag=='ACRONYM') {
-
-
- if ($tag == 'SPAN') {
- if (isset($this->InlineProperties['SPAN'][$this->spanlvl]) && $this->InlineProperties['SPAN'][$this->spanlvl]) { $this->restoreInlineProperties($this->InlineProperties['SPAN'][$this->spanlvl]); }
- unset($this->InlineProperties['SPAN'][$this->spanlvl]);
- if (isset($this->InlineAnnots['SPAN'][$this->spanlvl]) && $this->InlineAnnots['SPAN'][$this->spanlvl]) { $annot = $this->InlineAnnots['SPAN'][$this->spanlvl]; } // *ANNOTATIONS*
- unset($this->InlineAnnots['SPAN'][$this->spanlvl]); // *ANNOTATIONS*
- $this->spanlvl--;
- }
- else {
- if (isset($this->InlineProperties[$tag]) && $this->InlineProperties[$tag]) { $this->restoreInlineProperties($this->InlineProperties[$tag]); }
- unset($this->InlineProperties[$tag]);
- if (isset($this->InlineAnnots[$tag]) && $this->InlineAnnots[$tag]) { $annot = $this->InlineAnnots[$tag]; } // *ANNOTATIONS*
- unset($this->InlineAnnots[$tag]); // *ANNOTATIONS*
- }
-
-/*-- ANNOTATIONS --*/
- if (isset($annot)) {
- if($this->tableLevel) { // *TABLES*
- $this->cell[$this->row][$this->col]['textbuffer'][] = array($annot); // *TABLES*
- } // *TABLES*
- else { // *TABLES*
- $this->textbuffer[] = array($annot);
- } // *TABLES*
- }
-/*-- END ANNOTATIONS --*/
- }
-
-
- if($tag=='A') {
- $this->HREF='';
- if (isset($this->InlineProperties['A'])) { $this->restoreInlineProperties($this->InlineProperties['A']); }
- unset($this->InlineProperties['A']);
- }
-
-
-
-/*-- FORMS --*/
- // *********** FORM ELEMENTS ********************
-
- if($tag=='TEXTAREA') {
- $this->specialcontent = '';
- if ($this->InlineProperties[$tag]) { $this->restoreInlineProperties($this->InlineProperties[$tag]); }
- unset($this->InlineProperties[$tag]);
- }
-
-
- if($tag=='SELECT') {
- $this->lastoptionaltag = '';
- $texto = '';
- if (isset($this->selectoption['SELECTED'])) { $texto = $this->selectoption['SELECTED']; }
-
- if ($this->useActiveForms) { $w = $this->selectoption['MAXWIDTH']; }
- else { $w = $this->GetStringWidth($texto); }
- if ($w == 0) { $w = 5; }
- $objattr['type'] = 'select';
- $objattr['text'] = $texto;
- if (isset($this->selectoption['NAME'])) { $objattr['fieldname'] = $this->selectoption['NAME']; }
- if (isset($this->selectoption['READONLY'])) { $objattr['readonly'] = true; }
- if (isset($this->selectoption['REQUIRED'])) { $objattr['required'] = true; }
- if (isset($this->selectoption['SPELLCHECK'])) { $objattr['spellcheck'] = true; }
- if (isset($this->selectoption['EDITABLE'])) { $objattr['editable'] = true; }
- if (isset($this->selectoption['ONCHANGE'])) { $objattr['onChange'] = $this->selectoption['ONCHANGE']; }
- if (isset($this->selectoption['ITEMS'])) { $objattr['items'] = $this->selectoption['ITEMS']; }
- if (isset($this->selectoption['MULTIPLE'])) { $objattr['multiple'] = $this->selectoption['MULTIPLE']; }
- if (isset($this->selectoption['DISABLED'])) { $objattr['disabled'] = $this->selectoption['DISABLED']; }
- if (isset($this->selectoption['TITLE'])) { $objattr['title'] = $this->selectoption['TITLE']; }
- if (isset($this->selectoption['COLOR'])) { $objattr['color'] = $this->selectoption['COLOR']; }
- if (isset($this->selectoption['SIZE'])) { $objattr['size'] = $this->selectoption['SIZE']; }
- if (isset($objattr['size']) && $objattr['size']>1) { $rows=$objattr['size']; } else { $rows = 1; }
-
- $objattr['fontfamily'] = $this->FontFamily;
- $objattr['fontsize'] = $this->FontSizePt;
-
- $objattr['width'] = $w + ($this->form->form_element_spacing['select']['outer']['h']*2)+($this->form->form_element_spacing['select']['inner']['h']*2) + ($this->FontSize*1.4);
- $objattr['height'] = ($this->FontSize*$rows) + ($this->form->form_element_spacing['select']['outer']['v']*2)+($this->form->form_element_spacing['select']['inner']['v']*2);
- $e = "\xbb\xa4\xactype=select,objattr=".serialize($objattr)."\xbb\xa4\xac";
-
- // Clear properties - tidy up
- $properties = array();
-
- // Output it to buffers
- if ($this->tableLevel) { // *TABLES*
- $this->_saveCellTextBuffer($e, $this->HREF); // mPDF 5.3.99
- $this->cell[$this->row][$this->col]['s'] += $objattr['width'] ; // *TABLES*
- } // *TABLES*
- else { // *TABLES*
- $this->_saveTextBuffer($e, $this->HREF); // mPDF 5.3.99
- } // *TABLES*
-
- $this->selectoption = array();
- $this->specialcontent = '';
-
- if ($this->InlineProperties[$tag]) { $this->restoreInlineProperties($this->InlineProperties[$tag]); }
- unset($this->InlineProperties[$tag]);
-
- }
-/*-- END FORMS --*/
-
-
- // *********** BLOCKS ********************
-
- if($tag=='P' || $tag=='DIV' || $tag=='H1' || $tag=='H2' || $tag=='H3' || $tag=='H4' || $tag=='H5' || $tag=='H6' || $tag=='PRE'
- || $tag=='FORM' || $tag=='ADDRESS' || $tag=='BLOCKQUOTE' || $tag=='CENTER' || $tag=='DT' || $tag=='DD' || $tag=='DL' || $tag=='CAPTION' ) {
- // mPDF 5.3.56
-
- $this->ignorefollowingspaces = true; //Eliminate exceeding left-side spaces
- $this->blockjustfinished=true;
-
- $this->lastblockbottommargin = $this->blk[$this->blklvl]['margin_bottom'];
-/*-- LISTS --*/
- if ($this->listlvl>0) { return; }
-/*-- END LISTS --*/
-
-/*-- TABLES --*/
- if($this->tableLevel) {
- if ($this->linebreakjustfinished) { $this->blockjustfinished=false; }
- if (isset($this->InlineProperties['BLOCKINTABLE'])) {
- if ($this->InlineProperties['BLOCKINTABLE']) { $this->restoreInlineProperties($this->InlineProperties['BLOCKINTABLE']); }
- unset($this->InlineProperties['BLOCKINTABLE']);
- }
- if($tag=='PRE') { $this->ispre=false; }
- return;
- }
-/*-- END TABLES --*/
- $this->lastoptionaltag = '';
- $this->divbegin=false;
-
- $this->linebreakjustfinished=false;
-
- $this->x = $this->lMargin + $this->blk[$this->blklvl]['outer_left_margin'];
-
-/*-- CSS-FLOAT --*/
- // If float contained in a float, need to extend bottom to allow for it
- $currpos = $this->page*1000 + $this->y;
- if (isset($this->blk[$this->blklvl]['float_endpos']) && $this->blk[$this->blklvl]['float_endpos'] > $currpos) {
- $old_page = $this->page;
- $new_page = intval($this->blk[$this->blklvl]['float_endpos'] /1000);
- if ($old_page != $new_page) {
- $s = $this->PrintPageBackgrounds();
- // Writes after the marker so not overwritten later by page background etc.
- $this->pages[$this->page] = preg_replace('/(___BACKGROUND___PATTERNS'.date('jY').')/', '\\1'."\n".$s."\n", $this->pages[$this->page]);
- $this->pageBackgrounds = array();
- $this->page = $new_page;
- $this->ResetMargins();
- $this->Reset();
- $this->pageoutput[$this->page] = array();
- }
- $this->y = (($this->blk[$this->blklvl]['float_endpos'] *1000) % 1000000)/1000; // mod changes operands to integers before processing
- }
-/*-- END CSS-FLOAT --*/
-
- //Print content
- if ($this->lastblocklevelchange == 1) { $blockstate = 3; } // Top & bottom margins/padding
- else if ($this->lastblocklevelchange == -1) { $blockstate = 2; } // Bottom margins/padding only
- else { $blockstate = 0; }
- // called from after e.g.
... Outputs block margin/border and padding
- if (count($this->textbuffer) && $this->textbuffer[count($this->textbuffer)-1]) {
- if (substr($this->textbuffer[count($this->textbuffer)-1][0],0,3) != "\xbb\xa4\xac") { // not special content
- if ($this->usingCoreFont) {
- $this->textbuffer[count($this->textbuffer)-1][0] = preg_replace('/[ ]+$/', '', $this->textbuffer[count($this->textbuffer)-1][0]);
- }
- else {
- $this->textbuffer[count($this->textbuffer)-1][0] = preg_replace('/[ ]+$/u', '', $this->textbuffer[count($this->textbuffer)-1][0]); }
- }
- }
- if (count($this->textbuffer) == 0 && $this->lastblocklevelchange != 0) {
- //$this->newFlowingBlock( $this->blk[$this->blklvl]['width'],$this->lineheight,'',false,false,2,true, $this->blk[$this->blklvl]['direction']);
- $this->newFlowingBlock( $this->blk[$this->blklvl]['width'],$this->lineheight,'',false,false,$blockstate,true, $this->blk[$this->blklvl]['direction']); // mPDF 5.3.29
- $this->finishFlowingBlock(true); // true = END of flowing block
- $this->PaintDivBB('',$blockstate);
- }
- else {
- $this->printbuffer($this->textbuffer,$blockstate);
- }
-
-
- $this->textbuffer=array();
-
- if ($this->blk[$this->blklvl]['keep_block_together']) {
- $this->printdivbuffer();
- }
-
- if ($this->kwt) {
- $this->kwt_height = $this->y - $this->kwt_y0;
- }
-
-/*-- CSS-IMAGE-FLOAT --*/
- $this->printfloatbuffer();
-/*-- END CSS-IMAGE-FLOAT --*/
-
- if($tag=='PRE') { $this->ispre=false; }
-
-/*-- CSS-FLOAT --*/
- if ($this->blk[$this->blklvl]['float'] == 'R') {
- // If width not set, here would need to adjust and output buffer
- $s = $this->PrintPageBackgrounds();
- // Writes after the marker so not overwritten later by page background etc.
- $this->pages[$this->page] = preg_replace('/(___BACKGROUND___PATTERNS'.date('jY').')/', '\\1'."\n".$s."\n", $this->pages[$this->page]);
- $this->pageBackgrounds = array();
- $this->Reset();
- $this->pageoutput[$this->page] = array();
-
- for($i=($this->blklvl-1); $i >= 0; $i--) {
- if (isset($this->blk[$i]['float_endpos'])) { $this->blk[$i]['float_endpos'] = max($this->blk[$i]['float_endpos'], ($this->page*1000 + $this->y)); }
- else { $this->blk[$i]['float_endpos'] = $this->page*1000 + $this->y; }
- }
-
- $this->floatDivs[] = array(
- 'side'=>'R',
- 'startpage'=>$this->blk[$this->blklvl]['startpage'] ,
- 'y0'=>$this->blk[$this->blklvl]['float_start_y'] ,
- 'startpos'=> ($this->blk[$this->blklvl]['startpage']*1000 + $this->blk[$this->blklvl]['float_start_y']),
- 'endpage'=>$this->page ,
- 'y1'=>$this->y ,
- 'endpos'=> ($this->page*1000 + $this->y),
- 'w'=> $this->blk[$this->blklvl]['float_width'],
- 'blklvl'=>$this->blklvl,
- 'blockContext' => $this->blk[$this->blklvl-1]['blockContext']
- );
-
- $this->y = $this->blk[$this->blklvl]['float_start_y'] ;
- $this->page = $this->blk[$this->blklvl]['startpage'] ;
- $this->ResetMargins();
- $this->pageoutput[$this->page] = array();
- }
- if ($this->blk[$this->blklvl]['float'] == 'L') {
- // If width not set, here would need to adjust and output buffer
- $s = $this->PrintPageBackgrounds();
- // Writes after the marker so not overwritten later by page background etc.
- $this->pages[$this->page] = preg_replace('/(___BACKGROUND___PATTERNS'.date('jY').')/', '\\1'."\n".$s."\n", $this->pages[$this->page]);
- $this->pageBackgrounds = array();
- $this->Reset();
- $this->pageoutput[$this->page] = array();
-
- for($i=($this->blklvl-1); $i >= 0; $i--) {
- if (isset($this->blk[$i]['float_endpos'])) { $this->blk[$i]['float_endpos'] = max($this->blk[$i]['float_endpos'], ($this->page*1000 + $this->y)); }
- else { $this->blk[$i]['float_endpos'] = $this->page*1000 + $this->y; }
- }
-
- $this->floatDivs[] = array(
- 'side'=>'L',
- 'startpage'=>$this->blk[$this->blklvl]['startpage'] ,
- 'y0'=>$this->blk[$this->blklvl]['float_start_y'] ,
- 'startpos'=> ($this->blk[$this->blklvl]['startpage']*1000 + $this->blk[$this->blklvl]['float_start_y']),
- 'endpage'=>$this->page ,
- 'y1'=>$this->y ,
- 'endpos'=> ($this->page*1000 + $this->y),
- 'w'=> $this->blk[$this->blklvl]['float_width'],
- 'blklvl'=>$this->blklvl,
- 'blockContext' => $this->blk[$this->blklvl-1]['blockContext']
- );
-
- $this->y = $this->blk[$this->blklvl]['float_start_y'] ;
- $this->page = $this->blk[$this->blklvl]['startpage'] ;
- $this->ResetMargins();
- $this->pageoutput[$this->page] = array();
- }
-/*-- END CSS-FLOAT --*/
-
- // mPDF 5.3.42 VISIBILITY
- if (isset($this->blk[$this->blklvl]['visibility']) && $this->blk[$this->blklvl]['visibility']!='visible') {
- $this->SetVisibility('visible');
- }
-
-
- // mPDF 5.3.03
- if (isset($this->blk[$this->blklvl]['page_break_after'])) { $page_break_after = $this->blk[$this->blklvl]['page_break_after']; }
- else { $page_break_after = ''; }
-
- //Reset values
- $this->Reset();
-
- if ($this->blklvl > 0) { // ==0 SHOULDN'T HAPPEN - NOT XHTML
- if ($this->blk[$this->blklvl]['tag'] == $tag) {
- unset($this->blk[$this->blklvl]);
- $this->blklvl--;
- }
- //else { echo $tag; exit; } // debug - forces error if incorrectly nested html tags
- }
-
- $this->lastblocklevelchange = -1 ;
- // Reset Inline-type properties
- if (isset($this->blk[$this->blklvl]['InlineProperties'])) { $this->restoreInlineProperties($this->blk[$this->blklvl]['InlineProperties']); }
-
- $this->x = $this->lMargin + $this->blk[$this->blklvl]['outer_left_margin'];
-
- // mPDF 5.3.03
- if ($page_break_after) {
- $save_blklvl = $this->blklvl;
- $save_blk = $this->blk;
- $save_silp = $this->saveInlineProperties();
- $save_spanlvl = $this->spanlvl;
- $save_ilp = $this->InlineProperties;
- if ($this->blklvl>1) {
- // Close any open block tags
- for ($b= $this->blklvl;$b>0;$b--) { $this->CloseTag($this->blk[$b]['tag']); }
- // Output any text left in buffer
- if (count($this->textbuffer)) { $this->printbuffer($this->textbuffer); $this->textbuffer=array(); }
- }
-/*-- COLUMNS --*/
- $save_cols = false;
- if ($this->ColActive) {
- $save_cols = true;
- $save_nbcol = $this->NbCol; // other values of gap and vAlign will not change by setting Columns off
- $this->SetColumns(0);
- }
-/*-- END COLUMNS --*/
- if ($page_break_after == 'RIGHT') { $this->AddPage($this->CurOrientation,'NEXT-ODD','','','','','', '','', '','','','','','',0,0,0,0,$pagesel); }
- else if ($page_break_after == 'LEFT') { $this->AddPage($this->CurOrientation,'NEXT-EVEN','','','','','', '','', '','','','','','',0,0,0,0,$pagesel); }
- else { $this->AddPage($this->CurOrientation,'','','','','','', '','', '','','','','','',0,0,0,0,$pagesel); }
- if (!$this->restoreBlockPagebreaks) {
- $this->blklvl = 0;
- $this->lastblocklevelchange = 0;
- $this->blk = array();
- $this->initialiseBlock($this->blk[0]);
- $this->blk[0]['width'] =& $this->pgwidth;
- $this->blk[0]['inner_width'] =& $this->pgwidth;
- $this->blk[0]['blockContext'] = $this->blockContext;
- $properties = $this->MergeCSS('BLOCK','BODY','');
- $this->setCSS($properties,'','BODY');
- $this->blklvl++;
- $currblk =& $this->blk[$this->blklvl];
- $prevblk =& $this->blk[$this->blklvl-1];
-
- $this->initialiseBlock($currblk);
- $currblk['tag'] = $tag;
- $currblk['attr'] = $attr;
-
- $this->Reset();
- $properties = $this->MergeCSS('BLOCK',$tag,$attr);
- }
-/*-- COLUMNS --*/
- if ($save_cols) {
- // Restore columns
- $this->SetColumns($save_nbcol,$this->colvAlign,$this->ColGap);
- }
-/*-- END COLUMNS --*/
- if ($this->restoreBlockPagebreaks && !$this->tableLevel && !$this->listlvl) {
- $this->blk = $save_blk;
- // Re-open block tags
- $t = $this->blk[0]['tag'];
- $a = $this->blk[0]['attr'];
- $this->blklvl = 0;
- for ($b=0; $b<=$save_blklvl;$b++) {
- $tc = $t;
- $ac = $a;
- $t = $this->blk[$b+1]['tag'];
- $a = $this->blk[$b+1]['attr'];
- unset($this->blk[$b+1]);
- $this->OpenTag($tc,$ac);
- }
- $this->spanlvl = $save_spanlvl;
- $this->InlineProperties = $save_ilp;
- $this->restoreInlineProperties($save_silp);
- }
- }
-
- }
-
-
-/*-- TABLES --*/
-
- if($tag=='TH') $this->SetStyle('B',false);
-
- if(($tag=='TH' or $tag=='TD') && $this->tableLevel) {
- $this->lastoptionaltag = 'TR';
- unset($this->tablecascadeCSS[$this->tbCSSlvl]);
- $this->tbCSSlvl--;
- if (!$this->tdbegin) { return; } // mPDF 5.3.79
- $this->tdbegin = false;
- // Added for correct calculation of cell column width - otherwise misses the last line if not end etc.
- if (!isset($this->cell[$this->row][$this->col]['maxs'])) {
- if (!is_array($this->cell[$this->row][$this->col])) { $this->Error("You may have an error in your HTML code e.g. </td></td>"); }
- $this->cell[$this->row][$this->col]['maxs'] = $this->cell[$this->row][$this->col]['s'];
- }
- elseif($this->cell[$this->row][$this->col]['maxs'] < $this->cell[$this->row][$this->col]['s']) {
- $this->cell[$this->row][$this->col]['maxs'] = $this->cell[$this->row][$this->col]['s'];
- }
-
- // Remove last
if at end of cell
- if (isset($this->cell[$this->row][$this->col]['textbuffer'])) { $ntb = count($this->cell[$this->row][$this->col]['textbuffer']); }
- else { $ntb = 0; }
- if ($ntb>1 && $this->cell[$this->row][$this->col]['textbuffer'][$ntb-1][0] == "\n") {
- unset($this->cell[$this->row][$this->col]['textbuffer'][$ntb-1]);
- }
-
- // mPDF 5.3.79
- if ($this->cacheTables) {
- $clen = $this->_cacheCell($this->cell[$this->row][$this->col], $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['cache']);
- $this->cell[$this->row][$this->col] = $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['ptr'];
- $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['ptr'] += $clen;
- }
-
- // mPDF 5.3.62
- if ($this->tablethead) {
- $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['is_thead'][$this->row] = true;
- if ($this->tableLevel==1) { $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['headernrows'] = max($this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['headernrows'] , ($this->row+1)); }
- }
- if ($this->tabletfoot) {
- $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['is_tfoot'][$this->row] = true;
- if ($this->tableLevel==1) { $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['footernrows'] = max($this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['footernrows'] , ($this->row+1 - $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['headernrows'] )); }
- }
- $this->Reset();
- }
-
- if($tag=='TR' && $this->tableLevel) {
- // mPDF 5.3.78
- // If Border set on TR - Update right border
- if (isset($this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['trborder-left'][$this->row])) {
- // mPDF 5.3.79
- if ($this->cacheTables) {
- $c = $this->_uncacheCell($this->cell[$this->row][$this->col], $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['cache'], null);
- }
- else { $c =& $this->cell[$this->row][$this->col]; }
- if ($c) {
- if ($this->packTableData) {
- $cell = $this->_unpackCellBorder($c['borderbin'] );
- }
- else { $cell = $c; }
- $cell['border_details']['R'] = $this->border_details($this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['trborder-right'][$this->row]);
- $this->setBorder($cell['border'], _BORDER_RIGHT, $cell['border_details']['R']['s']);
- if ($this->packTableData) {
- $c['borderbin'] = $this->_packCellBorder($cell);
- unset($c['border']);
- unset($c['border_details']);
- }
- else { $c = $cell; }
- }
- // mPDF 5.3.79
- if ($this->cacheTables) {
- $fh = fopen($this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['cache'], "r+b");
- $this->_cacheUpdateBorder($c, $fh, $this->cell[$this->row][$this->col]);
- fclose($fh);
- }
- }
- $this->lastoptionaltag = '';
- unset($this->tablecascadeCSS[$this->tbCSSlvl]);
- $this->tbCSSlvl--;
- $this->trow_text_rotate = '';
- $this->tabletheadjustfinished = false;
- }
-
- if($tag=='TBODY') {
- $this->lastoptionaltag = '';
- unset($this->tablecascadeCSS[$this->tbCSSlvl]);
- $this->tbCSSlvl--;
- }
-
- if($tag=='THEAD') {
- $this->lastoptionaltag = '';
- unset($this->tablecascadeCSS[$this->tbCSSlvl]);
- $this->tbCSSlvl--;
- $this->tablethead = 0;
- $this->tabletheadjustfinished = true;
- $this->ResetStyles();
- $this->thead_font_weight = '';
- $this->thead_font_style = '';
- $this->thead_font_smCaps = '';
-
- $this->thead_valign_default = '';
- $this->thead_textalign_default = '';
- }
-
- if($tag=='TFOOT') {
- $this->lastoptionaltag = '';
- unset($this->tablecascadeCSS[$this->tbCSSlvl]);
- $this->tbCSSlvl--;
- $this->tabletfoot = 0;
- $this->ResetStyles();
- $this->tfoot_font_weight = '';
- $this->tfoot_font_style = '';
- $this->tfoot_font_smCaps = '';
-
- $this->tfoot_valign_default = '';
- $this->tfoot_textalign_default = '';
- }
-
- if($tag=='TABLE') { // TABLE-END (
- if ($this->progressBar) { $this->UpdateProgressBar(1,'','TABLE'); } // *PROGRESS-BAR*
- if ($this->progressBar) { $this->UpdateProgressBar(7,0,''); } // *PROGRESS-BAR*
- $this->lastoptionaltag = '';
- unset($this->tablecascadeCSS[$this->tbCSSlvl]);
- $this->tbCSSlvl--;
- $this->ignorefollowingspaces = true; //Eliminate exceeding left-side spaces
- $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['cells'] = $this->cell;
- $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['wc'] = array_pad(array(),$this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['nc'],array('miw'=>0,'maw'=>0));
- $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['hr'] = array_pad(array(),$this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['nr'],0);
-
- // Move table footer
row to end of table
- if (isset($this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['is_tfoot']) && count($this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['is_tfoot'])) {
- $tfrows = array();
- foreach($this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['is_tfoot'] AS $r=>$val) {
- if ($val) { $tfrows[] = $r; }
- }
- $temp = array();
- $temptf = array();
- foreach($this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['cells'] AS $k=>$row) {
- if (in_array($k,$tfrows)) {
- $temptf[] = $row;
- }
- else {
- $temp[] = $row;
- }
- }
- $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['is_tfoot'] = array();
- for($i=count($temp) ; $i<(count($temp)+count($temptf)); $i++) {
- $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['is_tfoot'][$i] = true;
- }
- // Update nestedpos row references
- if (count($this->table[($this->tableLevel+1)])) {
- foreach($this->table[($this->tableLevel+1)] AS $nid=>$nested) {
- $this->table[($this->tableLevel+1)][$nid]['nestedpos'][0] -= count($temptf);
- }
- }
- $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['cells'] = array_merge($temp, $temptf);
-
- // Update other arays set on row number
- // [trbackground-images] [trgradients]
- $temptrbgi = array();
- $temptrbgg = array();
- $temptrbgc = array();
- $temptrbgc[-1] = $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['bgcolor'][-1];
- for($k=0; $k<$this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['nr']; $k++) {
- if (!in_array($k,$tfrows)) {
- $temptrbgi[] = $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['trbackground-images'][$k];
- $temptrbgg[] = $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['trgradients'][$k];
- $temptrbgc[] = $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['bgcolor'][$k];
- }
- }
- for($k=0; $k<$this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['nr']; $k++) {
- if (in_array($k,$tfrows)) {
- $temptrbgi[] = $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['trbackground-images'][$k];
- $temptrbgg[] = $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['trgradients'][$k];
- $temptrbgc[] = $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['bgcolor'][$k];
- }
- }
- $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['trbackground-images'] = $temptrbgi;
- $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['trgradients'] = $temptrbgg;
- $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['bgcolor'] = $temptrbgc ;
- // Should Update all other arays set on row number, but cell properties have been set so not needed
- // [bgcolor] [trborder-left] [trborder-right] [trborder-top] [trborder-bottom]
- }
-
- if ($this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['direction']=='rtl') {
- $this->_reverseTableDir($this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]);
- }
-
- // Fix Borders *********************************************
- $this->_fixTableBorders($this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]);
-
- if ($this->progressBar) { $this->UpdateProgressBar(7,10,' '); } // *PROGRESS-BAR*
-
- if ($this->ColActive) { $this->table_rotate = 0; } // *COLUMNS*
- if ($this->table_rotate <> 0) {
- $this->tablebuffer = '';
- // Max width for rotated table
- $this->tbrot_maxw = $this->h - ($this->y + $this->bMargin + 1);
- $this->tbrot_maxh = $this->blk[$this->blklvl]['inner_width'] ; // Max width for rotated table
- $this->tbrot_align = $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['a'] ;
- }
- $this->shrin_k = 1;
-
- if ($this->shrink_tables_to_fit < 1) { $this->shrink_tables_to_fit = 1; }
- if (!$this->shrink_this_table_to_fit) { $this->shrink_this_table_to_fit = $this->shrink_tables_to_fit; }
-
- if ($this->tableLevel>1) {
- // deal with nested table
-
- $this->_tableColumnWidth($this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]],true);
-
- $tmiw = $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['miw'];
- $tmaw = $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['maw'];
- $tl = $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['tl'];
-
- // Go down to lower table level
- $this->tableLevel--;
-
- // Reset lower level table
- $this->base_table_properties = $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['baseProperties'];
- $this->cell = $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['cells'];
- $this->row = $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['currrow'];
- $this->col = $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['currcol'];
- $objattr = array();
- $objattr['type'] = 'nestedtable';
- $objattr['nestedcontent'] = $this->tbctr[($this->tableLevel+1)];
- $objattr['table'] = $this->tbctr[$this->tableLevel];
- $objattr['row'] = $this->row;
- $objattr['col'] = $this->col;
- $objattr['level'] = $this->tableLevel;
- $e = "\xbb\xa4\xactype=nestedtable,objattr=".serialize($objattr)."\xbb\xa4\xac";
- $this->_saveCellTextBuffer($e); // mPDF 5.3.99
- $this->cell[$this->row][$this->col]['s'] += $tl ;
- if (!isset($this->cell[$this->row][$this->col]['maxs'])) {
- $this->cell[$this->row][$this->col]['maxs'] = $this->cell[$this->row][$this->col]['s'];
- }
- elseif($this->cell[$this->row][$this->col]['maxs'] < $this->cell[$this->row][$this->col]['s']) {
- $this->cell[$this->row][$this->col]['maxs'] = $this->cell[$this->row][$this->col]['s'];
- }
- $this->cell[$this->row][$this->col]['s'] = 0;// reset
- if ((isset($this->cell[$this->row][$this->col]['nestedmaw']) && $this->cell[$this->row][$this->col]['nestedmaw'] < $tmaw) || !isset($this->cell[$this->row][$this->col]['nestedmaw'])) { $this->cell[$this->row][$this->col]['nestedmaw'] = $tmaw ; }
- if ((isset($this->cell[$this->row][$this->col]['nestedmiw']) && $this->cell[$this->row][$this->col]['nestedmiw'] < $tmiw) || !isset($this->cell[$this->row][$this->col]['nestedmiw'])) { $this->cell[$this->row][$this->col]['nestedmiw'] = $tmiw ; }
- // mPDF 5.3.79 ?? Removed as Not needed for anything
- // $this->cell[$this->row][$this->col]['nestedcontent'][] = $this->tbctr[($this->tableLevel+1)];
- $this->tdbegin = true;
- $this->nestedtablejustfinished = true;
- $this->ignorefollowingspaces = true;
- return;
- }
- $this->cMarginL = 0;
- $this->cMarginR = 0;
- $this->cMarginT = 0;
- $this->cMarginB = 0;
- $this->cellPaddingL = 0;
- $this->cellPaddingR = 0;
- $this->cellPaddingT = 0;
- $this->cellPaddingB = 0;
-
- // mPDF 5.3.36 // mPDF 5.3.76
- if (isset($this->table[1][1]['overflow']) && $this->table[1][1]['overflow']=='visible') {
- if ($this->kwt || $this->table_rotate || $this->table_keep_together || $this->ColActive) {
- $this->kwt = false;
- $this->table_rotate = 0;
- $this->table_keep_together = false;
- //die("mPDF Warning: You cannot use CSS overflow:visible together with any of these functions: 'Keep-with-table', rotated tables, page-break-inside:avoid, or columns");
- }
- $this->_tableColumnWidth($this->table[1][1],true);
- $this->_tableWidth($this->table[1][1]);
- }
- else {
- if (!$this->kwt_saved) { $this->kwt_height = 0; }
-
- list($check,$tablemiw) = $this->_tableColumnWidth($this->table[1][1],true);
- $save_table = $this->table;
- // mPDF 5.3.79
- if ($this->cacheTables) { $this->_backupCacheFiles(); }
- $reset_to_minimum_width = false;
- $added_page = false;
-
- if ($check > 1) {
- if ($check > $this->shrink_this_table_to_fit && $this->table_rotate) {
- if ($this->y != $this->tMargin) { // mPDF 5.3.69
- $this->AddPage($this->CurOrientation);
- $this->kwt_moved = true;
- }
- $added_page = true;
- $this->tbrot_maxw = $this->h - ($this->y + $this->bMargin + 5) - $this->kwt_height;
- //$check = $tablemiw/$this->tbrot_maxw; // undo any shrink
- $check = 1; // undo any shrink
- }
- $reset_to_minimum_width = true;
- }
-
- if ($reset_to_minimum_width) {
-
- $this->shrin_k = $check;
-
- $this->default_font_size /= $this->shrin_k;
- $this->SetFontSize($this->default_font_size, false );
-
- $this->shrinkTable($this->table[1][1],$this->shrin_k);
-
- $this->_tableColumnWidth($this->table[1][1],false); // repeat
-
- // Starting at $this->innermostTableLevel
- // Shrink table values - and redo columnWidth
- for($lvl=2;$lvl<=$this->innermostTableLevel;$lvl++) {
- for ($nid=1; $nid<=$this->tbctr[$lvl]; $nid++) {
- $this->shrinkTable($this->table[$lvl][$nid],$this->shrin_k);
- $this->_tableColumnWidth($this->table[$lvl][$nid],false);
- }
- }
- }
-
- // Set table cell widths for top level table
- // Use $shrin_k to resize but don't change again
- $this->SetLineHeight('',$this->table_lineheight);
-
- // Top level table
- $this->_tableWidth($this->table[1][1]);
-
- } // mPDF 5.3.36
-
-
- // mPDF 5.3.79
- // Now work through any nested tables setting child table[w'] = parent cell['w']
- // Now do nested tables _tableWidth
- for($lvl=2;$lvl<=$this->innermostTableLevel;$lvl++) {
- for ($nid=1; $nid<=$this->tbctr[$lvl]; $nid++) {
- // HERE set child table width = cell width
-
- list($parentrow, $parentcol, $parentnid) = $this->table[$lvl][$nid]['nestedpos'];
-
- // mPDF 5.3.79
- if ($this->cacheTables) {
- $c = $this->_uncacheCell($this->table[($lvl-1)][$parentnid]['cells'][$parentrow][$parentcol], $this->table[($lvl-1)][$parentnid]['cache'], null);
- }
- else
- $c =& $this->table[($lvl-1)][$parentnid]['cells'][$parentrow][$parentcol];
-
- if (isset($c['colspan']) && $c['colspan']> 1) {
- $parentwidth = 0;
- for($cs=0;$cs<$c['colspan'] ; $cs++) {
- $parentwidth += $this->table[($lvl-1)][$parentnid]['wc'][$parentcol+$cs];
- }
- }
- else { $parentwidth = $this->table[($lvl-1)][$parentnid]['wc'][$parentcol]; }
-
-
- //$parentwidth -= ALLOW FOR PADDING ETC.in parent cell
- if (!$this->simpleTables){
- if ($this->packTableData) {
- list($bt,$br,$bb,$bl) = $this->_getBorderWidths($c['borderbin']);
- }
- else {
- $br = $c['border_details']['R']['w'];
- $bl = $c['border_details']['L']['w'];
- }
- if ($this->table[$lvl-1][$parentnid]['borders_separate']) {
- $parentwidth -= $br + $bl
- + $c['padding']['L']
- + $c['padding']['R']
- + $this->table[($lvl-1)][$parentnid]['border_spacing_H'];
- }
- else {
- $parentwidth -= $br/2 + $bl/2
- + $c['padding']['L']
- + $c['padding']['R'];
- }
- }
- else if ($this->simpleTables){
- if ($this->table[$lvl-1][$parentnid]['borders_separate']) {
- $parentwidth -= $this->table[($lvl-1)][$parentnid]['simple']['border_details']['L']['w']
- + $this->table[($lvl-1)][$parentnid]['simple']['border_details']['R']['w']
- + $c['padding']['L']
- + $c['padding']['R']
- + $this->table[($lvl-1)][$parentnid]['border_spacing_H'];
- }
- else {
- $parentwidth -= $this->table[($lvl-1)][$parentnid]['simple']['border_details']['L']['w']/2
- + $this->table[($lvl-1)][$parentnid]['simple']['border_details']['R']['w']/2
- + $c['padding']['L']
- + $c['padding']['R'];
- }
- }
- if (isset($this->table[$lvl][$nid]['wpercent']) && $this->table[$lvl][$nid]['wpercent'] && $lvl>1) {
- $this->table[$lvl][$nid]['w'] = $parentwidth;
- }
- else if ($parentwidth > $this->table[$lvl][$nid]['maw']) {
- $this->table[$lvl][$nid]['w'] = $this->table[$lvl][$nid]['maw'];
- }
- else {
- $this->table[$lvl][$nid]['w'] = $parentwidth;
- }
- unset($c); // mPDF 5.3.79
- $this->_tableWidth($this->table[$lvl][$nid]);
- }
- }
-
- // Starting at $this->innermostTableLevel
- // Cascade back up nested tables: setting heights back up the tree
- for($lvl=$this->innermostTableLevel;$lvl>0;$lvl--) {
- for ($nid=1; $nid<=$this->tbctr[$lvl]; $nid++) {
- list($tableheight,$maxrowheight,$fullpage,$remainingpage, $maxfirstrowheight) = $this->_tableHeight($this->table[$lvl][$nid]); }
- }
- if ($this->progressBar) { $this->UpdateProgressBar(7,20,' '); } // *PROGRESS-BAR*
- // mPDF 5.3.36
- if ($this->table[1][1]['overflow']=='visible') {
- if ($maxrowheight > $fullpage) { die("mPDF Warning: A Table row is greater than available height. You cannot use CSS overflow:visible"); }
- if ($maxfirstrowheight > $remainingpage) { $this->AddPage($this->CurOrientation); }
- $r = 0; $c = 0; $p = 0; $y = 0;
- while (!$finished) {
- list($finished,$r,$c,$p,$y,$y0) = $this->_tableWrite($this->table[1][1],true,$r,$c,$p,$y);
- if (!$finished) {
- $this->AddPage($this->CurOrientation); // mPDF 5.3.43
- // If printed something on first spread, set same y
- if ($r==0 && $y0 > -1) { $this->y = $y0; }
- }
- }
- }
- else {
- $recalculate = 1;
- $forcerecalc = false;
- // RESIZING ALGORITHM
- if ($maxrowheight > $fullpage) {
- $recalculate = $this->tbsqrt($maxrowheight / $fullpage, 1);
- $forcerecalc = true;
- }
- else if ($this->table_rotate) { // NB $remainingpage == $fullpage == the width of the page
- if ($tableheight > $remainingpage) {
- // If can fit on remainder of page whilst respecting autsize value..
- if (($this->shrin_k * $this->tbsqrt($tableheight / $remainingpage, 1)) <= $this->shrink_this_table_to_fit) {
- $recalculate = $this->tbsqrt($tableheight / $remainingpage, 1);
- }
- else if (!$added_page) {
- if ($this->y != $this->tMargin) { // mPDF 5.3.69
- $this->AddPage($this->CurOrientation);
- $this->kwt_moved = true;
- }
- $added_page = true;
- $this->tbrot_maxw = $this->h - ($this->y + $this->bMargin + 5) - $this->kwt_height;
- // 0.001 to force it to recalculate
- $recalculate = (1 / $this->shrin_k) + 0.001; // undo any shrink
- }
- }
- else { $recalculate = 1; }
- }
- else if ($this->table_keep_together || ($this->table[1][1]['nr']==1 && !$this->writingHTMLfooter)) {
- if ($tableheight > $fullpage) {
- if (($this->shrin_k * $this->tbsqrt($tableheight / $fullpage, 1)) <= $this->shrink_this_table_to_fit) {
- $recalculate = $this->tbsqrt($tableheight / $fullpage, 1);
- }
- else if ($this->tableMinSizePriority) {
- $this->table_keep_together = false;
- $recalculate = 1.001;
- }
- else {
- if ($this->y != $this->tMargin) { // mPDF 5.1
- $this->AddPage($this->CurOrientation);
- $this->kwt_moved = true;
- }
- $added_page = true;
- $this->tbrot_maxw = $this->h - ($this->y + $this->bMargin + 5) - $this->kwt_height;
- $recalculate = $this->tbsqrt($tableheight / $fullpage, 1);
- }
- }
- else if ($tableheight > $remainingpage) {
- // If can fit on remainder of page whilst respecting autsize value..
- if (($this->shrin_k * $this->tbsqrt($tableheight / $remainingpage, 1)) <= $this->shrink_this_table_to_fit) {
- $recalculate = $this->tbsqrt($tableheight / $remainingpage, 1);
- }
- else {
- if ($this->y != $this->tMargin) {
- $this->AddPage($this->CurOrientation);
- $this->kwt_moved = true;
- }
- $added_page = true;
- $this->tbrot_maxw = $this->h - ($this->y + $this->bMargin + 5) - $this->kwt_height;
- $recalculate = 1.001;
- }
- }
- else { $recalculate = 1; }
- }
- else { $recalculate = 1; }
-
- if ($recalculate > $this->shrink_this_table_to_fit && !$forcerecalc) { $recalculate = $this->shrink_this_table_to_fit; }
-
- $iteration = 1;
-
- // RECALCULATE
- while($recalculate <> 1) {
- $this->shrin_k1 = $recalculate ;
- $this->shrin_k *= $recalculate ;
- $this->default_font_size /= ($this->shrin_k1) ;
- $this->SetFontSize($this->default_font_size, false );
- $this->SetLineHeight('',$this->table_lineheight);
- $this->table = $save_table;
- // mPDF 5.3.79
- if ($this->cacheTables) { $this->_restoreCacheFiles(); }
- if ($this->shrin_k <> 1) { $this->shrinkTable($this->table[1][1],$this->shrin_k); }
- $this->_tableColumnWidth($this->table[1][1],false); // repeat
-
- // Starting at $this->innermostTableLevel
- // Shrink table values - and redo columnWidth
- for($lvl=2;$lvl<=$this->innermostTableLevel;$lvl++) {
- for ($nid=1; $nid<=$this->tbctr[$lvl]; $nid++) {
- if ($this->shrin_k <> 1) { $this->shrinkTable($this->table[$lvl][$nid],$this->shrin_k); }
- $this->_tableColumnWidth($this->table[$lvl][$nid],false);
- }
- }
- // Set table cell widths for top level table
-
- // Top level table
- $this->_tableWidth($this->table[1][1]);
-
- // mPDF 5.3.79
- // Now work through any nested tables setting child table[w'] = parent cell['w']
- // Now do nested tables _tableWidth
- for($lvl=2;$lvl<=$this->innermostTableLevel;$lvl++) {
- for ($nid=1; $nid<=$this->tbctr[$lvl]; $nid++) {
- // HERE set child table width = cell width
-
- list($parentrow, $parentcol, $parentnid) = $this->table[$lvl][$nid]['nestedpos'];
- // mPDF 5.3.79
- if ($this->cacheTables) {
- $c = $this->_uncacheCell($this->table[($lvl-1)][$parentnid]['cells'][$parentrow][$parentcol], $this->table[($lvl-1)][$parentnid]['cache'], null);
- }
- else
- $c =& $this->table[($lvl-1)][$parentnid]['cells'][$parentrow][$parentcol];
-
- if (isset($c['colspan']) && $c['colspan']> 1) {
- $parentwidth = 0;
- for($cs=0;$cs<$c['colspan'] ; $cs++) {
- $parentwidth += $this->table[($lvl-1)][$parentnid]['wc'][$parentcol+$cs];
- }
- }
- else { $parentwidth = $this->table[($lvl-1)][$parentnid]['wc'][$parentcol]; }
-
- //$parentwidth -= ALLOW FOR PADDING ETC.in parent cell
- if (!$this->simpleTables){
- if ($this->packTableData) {
- list($bt,$br,$bb,$bl) = $this->_getBorderWidths($c['borderbin']);
- }
- else {
- $br = $c['border_details']['R']['w'];
- $bl = $c['border_details']['L']['w'];
- }
- if ($this->table[$lvl-1][$parentnid]['borders_separate']) {
- $parentwidth -= $br + $bl
- + $c['padding']['L']
- + $c['padding']['R']
- + $this->table[($lvl-1)][$parentnid]['border_spacing_H'];
- }
- else {
- $parentwidth -= $br/2 + $bl/2
- + $c['padding']['L']
- + $c['padding']['R'];
- }
- }
- else if ($this->simpleTables){
- if ($this->table[$lvl-1][$parentnid]['borders_separate']) {
- $parentwidth -= $this->table[($lvl-1)][$parentnid]['simple']['border_details']['L']['w']
- + $this->table[($lvl-1)][$parentnid]['simple']['border_details']['R']['w']
- + $c['padding']['L']
- + $c['padding']['R']
- + $this->table[($lvl-1)][$parentnid]['border_spacing_H'];
- }
- else {
- $parentwidth -= ($this->table[($lvl-1)][$parentnid]['simple']['border_details']['L']['w']
- + $this->table[($lvl-1)][$parentnid]['simple']['border_details']['R']['w']) /2
- + $c['padding']['L']
- + $c['padding']['R'];
- }
- }
- if (isset($this->table[$lvl][$nid]['wpercent']) && $this->table[$lvl][$nid]['wpercent'] && $lvl>1) {
- $this->table[$lvl][$nid]['w'] = $parentwidth;
- }
- else if ($parentwidth > $this->table[$lvl][$nid]['maw']) {
- $this->table[$lvl][$nid]['w'] = $this->table[$lvl][$nid]['maw'] ;
- }
- else {
- $this->table[$lvl][$nid]['w'] = $parentwidth;
- }
- unset($c); // mPDF 5.3.79
- $this->_tableWidth($this->table[$lvl][$nid]);
- }
- }
-
- // Starting at $this->innermostTableLevel
- // Cascade back up nested tables: setting heights back up the tree
- for($lvl=$this->innermostTableLevel;$lvl>0;$lvl--) {
- for ($nid=1; $nid<=$this->tbctr[$lvl]; $nid++) {
- list($tableheight,$maxrowheight,$fullpage,$remainingpage, $maxfirstrowheight) = $this->_tableHeight($this->table[$lvl][$nid]); }
- }
-
- // RESIZING ALGORITHM
-
- if ($maxrowheight > $fullpage) { $recalculate = $this->tbsqrt($maxrowheight / $fullpage, $iteration); $iteration++; }
- else if ($this->table_rotate && $tableheight > $remainingpage && !$added_page) {
- // If can fit on remainder of page whilst respecting autosize value..
- if (($this->shrin_k * $this->tbsqrt($tableheight / $remainingpage, $iteration)) <= $this->shrink_this_table_to_fit) {
- $recalculate = $this->tbsqrt($tableheight / $remainingpage, $iteration); $iteration++;
- }
- else {
- if (!$added_page) {
- $this->AddPage($this->CurOrientation);
- $added_page = true;
- $this->kwt_moved = true;
- $this->tbrot_maxw = $this->h - ($this->y + $this->bMargin + 5) - $this->kwt_height;
- }
- // 0.001 to force it to recalculate
- $recalculate = (1 / $this->shrin_k) + 0.001; // undo any shrink
- }
- }
- else if ($this->table_keep_together || ($this->table[1][1]['nr']==1 && !$this->writingHTMLfooter)) {
- if ($tableheight > $fullpage) {
- if (($this->shrin_k * $this->tbsqrt($tableheight / $fullpage, $iteration)) <= $this->shrink_this_table_to_fit) {
- $recalculate = $this->tbsqrt($tableheight / $fullpage, $iteration); $iteration++;
- }
- else if ($this->tableMinSizePriority) {
- $this->table_keep_together = false;
- $recalculate = (1 / $this->shrin_k) + 0.001;
- }
- else {
- if (!$added_page && $this->y != $this->tMargin) {
- $this->AddPage($this->CurOrientation);
- $added_page = true;
- $this->kwt_moved = true;
- $this->tbrot_maxw = $this->h - ($this->y + $this->bMargin + 5) - $this->kwt_height;
- }
- $recalculate = $this->tbsqrt($tableheight / $fullpage, $iteration); $iteration++;
- }
- }
- else if ($tableheight > $remainingpage) {
- // If can fit on remainder of page whilst respecting autosize value..
- if (($this->shrin_k * $this->tbsqrt($tableheight / $remainingpage, $iteration)) <= $this->shrink_this_table_to_fit) {
- $recalculate = $this->tbsqrt($tableheight / $remainingpage, $iteration); $iteration++;
- }
- else {
- if (!$added_page) {
- $this->AddPage($this->CurOrientation);
- $added_page = true;
- $this->kwt_moved = true;
- $this->tbrot_maxw = $this->h - ($this->y + $this->bMargin + 5) - $this->kwt_height;
- }
-
- //$recalculate = $this->tbsqrt($tableheight / $fullpage, $iteration); $iteration++;
- $recalculate = (1 / $this->shrin_k) + 0.001; // undo any shrink
- }
- }
- else { $recalculate = 1; }
- }
- else { $recalculate = 1; }
- }
-
-
- if ($maxfirstrowheight > $remainingpage && !$added_page && !$this->table_rotate && !$this->ColActive && !$this->table_keep_together && !$this->writingHTMLheader && !$this->writingHTMLfooter) {
- $this->AddPage($this->CurOrientation);
- $this->kwt_moved = true;
- }
-
- // keep-with-table: if page has advanced, print out buffer now, else done in fn. _Tablewrite()
- if ($this->kwt_saved && $this->kwt_moved) {
- $this->printkwtbuffer();
- $this->kwt_moved = false;
- $this->kwt_saved = false;
- }
-
- if ($this->progressBar) { $this->UpdateProgressBar(7,30,' '); } // *PROGRESS-BAR*
- // Recursively writes all tables starting at top level
- $this->_tableWrite($this->table[1][1]);
-
- if ($this->table_rotate && $this->tablebuffer) {
- $this->PageBreakTrigger=$this->h-$this->bMargin;
- $save_tr = $this->table_rotate;
- $save_y = $this->y;
- $this->table_rotate = 0;
- $this->y = $this->tbrot_y0;
- $h = $this->tbrot_w;
- $this->DivLn($h,$this->blklvl,true);
-
- $this->table_rotate = $save_tr;
- $this->y = $save_y;
-
- $this->printtablebuffer();
- }
- $this->table_rotate = 0;
- } // mPDF 5.3.36
-
-
- $this->x = $this->lMargin + $this->blk[$this->blklvl]['outer_left_margin'];
-
- // mPDF 5.3.91
- $this->maxPosR = max($this->maxPosR , ($this->x + $this->table[1][1]['w']));
-
- $this->blockjustfinished=true;
- $this->lastblockbottommargin = $this->table[1][1]['margin']['B'];
- //Reset values
-
- // mPDF 5.3.55
- if (isset($this->table[1][1]['page_break_after'])) { $page_break_after = $this->table[1][1]['page_break_after']; }
- else { $page_break_after = ''; }
-
- // Keep-with-table
- $this->kwt = false;
- $this->kwt_y0 = 0;
- $this->kwt_x0 = 0;
- $this->kwt_height = 0;
- $this->kwt_buffer = array();
- $this->kwt_Links = array();
- $this->kwt_Annots = array();
- $this->kwt_moved = false;
- $this->kwt_saved = false;
-
- $this->kwt_Reference = array();
- $this->kwt_BMoutlines = array();
- $this->kwt_toc = array();
-
- $this->shrin_k = 1;
- $this->shrink_this_table_to_fit = 0;
-
- unset($this->table);
- $this->table=array(); //array
- $this->tableLevel=0;
- $this->tbctr=array();
- $this->innermostTableLevel=0;
- $this->tbCSSlvl = 0;
- $this->tablecascadeCSS = array();
-
- unset($this->cell);
- $this->cell=array(); //array
-
- $this->col=-1; //int
- $this->row=-1; //int
- $this->Reset();
-
- $this->cellPaddingL = 0;
- $this->cellPaddingT = 0;
- $this->cellPaddingR = 0;
- $this->cellPaddingB = 0;
- $this->cMarginL = 0;
- $this->cMarginT = 0;
- $this->cMarginR = 0;
- $this->cMarginB = 0;
- $this->default_font_size = $this->original_default_font_size;
- $this->default_font = $this->original_default_font;
- $this->SetFontSize($this->default_font_size, false);
- $this->SetFont($this->default_font,'',0,false);
- $this->SetLineHeight();
- if (isset($this->blk[$this->blklvl]['InlineProperties'])) { $this->restoreInlineProperties($this->blk[$this->blklvl]['InlineProperties']);}
- if ($this->progressBar) { $this->UpdateProgressBar(7,100,' '); } // *PROGRESS-BAR*
-
- // mPDF 5.3.55
- if ($page_break_after) {
- $save_blklvl = $this->blklvl;
- $save_blk = $this->blk;
- $save_silp = $this->saveInlineProperties();
- $save_spanlvl = $this->spanlvl;
- $save_ilp = $this->InlineProperties;
- if ($this->blklvl>1) {
- // Close any open block tags
- for ($b= $this->blklvl;$b>0;$b--) { $this->CloseTag($this->blk[$b]['tag']); }
- // Output any text left in buffer
- if (count($this->textbuffer)) { $this->printbuffer($this->textbuffer); $this->textbuffer=array(); }
- }
-/*-- COLUMNS --*/
- $save_cols = false;
- if ($this->ColActive) {
- $save_cols = true;
- $save_nbcol = $this->NbCol; // other values of gap and vAlign will not change by setting Columns off
- $this->SetColumns(0);
- }
-/*-- END COLUMNS --*/
- if ($page_break_after == 'RIGHT') { $this->AddPage($this->CurOrientation,'NEXT-ODD','','','','','', '','', '','','','','','',0,0,0,0,$pagesel); }
- else if ($page_break_after == 'LEFT') { $this->AddPage($this->CurOrientation,'NEXT-EVEN','','','','','', '','', '','','','','','',0,0,0,0,$pagesel); }
- else { $this->AddPage($this->CurOrientation,'','','','','','', '','', '','','','','','',0,0,0,0,$pagesel); }
- if (!$this->restoreBlockPagebreaks) {
- $this->blklvl = 0;
- $this->lastblocklevelchange = 0;
- $this->blk = array();
- $this->initialiseBlock($this->blk[0]);
- $this->blk[0]['width'] =& $this->pgwidth;
- $this->blk[0]['inner_width'] =& $this->pgwidth;
- $this->blk[0]['blockContext'] = $this->blockContext;
- $properties = $this->MergeCSS('BLOCK','BODY','');
- $this->setCSS($properties,'','BODY');
- // mPDF 5.3.70
- }
-
-/*-- COLUMNS --*/
- if ($save_cols) {
- // Restore columns
- $this->SetColumns($save_nbcol,$this->colvAlign,$this->ColGap);
- }
-/*-- END COLUMNS --*/
- if ($this->restoreBlockPagebreaks) {
- $this->blk = $save_blk;
- // Re-open block tags
- $t = $this->blk[0]['tag'];
- $a = $this->blk[0]['attr'];
- $this->blklvl = 0;
- for ($b=0; $b<=$save_blklvl;$b++) {
- $tc = $t;
- $ac = $a;
- $t = $this->blk[$b+1]['tag'];
- $a = $this->blk[$b+1]['attr'];
- unset($this->blk[$b+1]);
- $this->OpenTag($tc,$ac);
- }
- $this->spanlvl = $save_spanlvl;
- $this->InlineProperties = $save_ilp;
- $this->restoreInlineProperties($save_silp);
- }
- }
-
- }
-/*-- END TABLES --*/
-
-/*-- LISTS --*/
- // *********** LISTS ********************
-
- if($tag=='LI') {
- $this->lastoptionaltag = '';
- unset($this->listcascadeCSS[$this->listCSSlvl]);
- $this->listCSSlvl--;
- if (isset($this->listoccur[$this->listlvl]) && isset($this->InlineProperties['LIST'][$this->listlvl][$this->listoccur[$this->listlvl]])) { $this->restoreInlineProperties($this->InlineProperties['LIST'][$this->listlvl][$this->listoccur[$this->listlvl]]); }
- }
-
-
- if(($tag=='UL') or ($tag=='OL')) {
- $this->ignorefollowingspaces = true; //Eliminate exceeding left-side spaces
- unset($this->listcascadeCSS[$this->listCSSlvl]);
- $this->listCSSlvl--;
-
- $this->lastoptionaltag = '';
-/*-- TABLES --*/
- // A simple list for inside a table
- if($this->tableLevel) {
- $this->listlist[$this->listlvl]['MAXNUM'] = $this->listnum; //save previous lvl's maxnum
- unset($this->listlist[$this->listlvl]);
- $this->listlvl--;
- if (isset($this->listlist[$this->listlvl]['MAXNUM'])) { $this->listnum = $this->listlist[$this->listlvl]['MAXNUM']; } // restore previous levels
- if ($this->listlvl == 0) { $this->listjustfinished = true; }
- return;
- }
-/*-- END TABLES --*/
-
- if ($this->listlvl > 1) { // returning one level
- $this->listjustfinished=true;
- if (!empty($this->textbuffer)) {
- $this->listitem[] = array($this->listlvl,$this->listnum,$this->textbuffer,$this->listoccur[$this->listlvl],$this->listitemtype);
- }
- else {
- $this->listnum--;
- }
-
- $this->textbuffer = array();
- $occur = $this->listoccur[$this->listlvl];
- $this->listlist[$this->listlvl][$occur]['MAXNUM'] = $this->listnum; //save previous lvl's maxnum
- $this->listlvl--;
- $occur = $this->listoccur[$this->listlvl];
- $this->listnum = $this->listlist[$this->listlvl][$occur]['MAXNUM']; // recover previous level's number
- $this->listtype = $this->listlist[$this->listlvl][$occur]['TYPE']; // recover previous level's type
- if ($this->InlineProperties['LIST'][$this->listlvl][$occur]) { $this->restoreInlineProperties($this->InlineProperties['LIST'][$this->listlvl][$occur]); }
-
- }
- else { // We are closing the last OL/UL tag
- if (!empty($this->textbuffer)) {
- $this->listitem[] = array($this->listlvl,$this->listnum,$this->textbuffer,$this->listoccur[$this->listlvl],$this->listitemtype);
- }
- else {
- $this->listnum--;
- }
-
- $occur = $this->listoccur[$this->listlvl];
- $this->listlist[$this->listlvl][$occur]['MAXNUM'] = $this->listnum;
- $this->textbuffer = array();
- $this->listlvl--;
-
- $this->printlistbuffer();
- unset($this->InlineProperties['LIST']);
- // SPACING AFTER LIST (Top level only)
- $this->Ln(0);
- if ($this->list_margin_bottom) {
- $this->DivLn($this->list_margin_bottom,$this->blklvl,true,1); // collapsible
- }
- if (isset($this->blk[$this->blklvl]['InlineProperties'])) { $this->restoreInlineProperties($this->blk[$this->blklvl]['InlineProperties']);}
- $this->listjustfinished = true;
- $this->listCSSlvl = 0;
- $this->listcascadeCSS = array();
- $this->blockjustfinished=true;
- $this->lastblockbottommargin = $this->list_margin_bottom;
- }
- }
-/*-- END LISTS --*/
-
-
-}
-
-
-/*-- TABLES --*/
-// This function determines the shrink factor when resizing tables
-// val is the table_height / page_height_available
-// returns a scaling factor used as $shrin_k to resize the table
-// Overcompensating will be quicker but may unnecessarily shrink table too much
-// Undercompensating means it will reiterate more times (taking more processing time)
-function tbsqrt($val, $iteration=3) {
- $k = 4; // Alters number of iterations until it returns $val itself - Must be > 2
- // Probably best guess and most accurate
- if ($iteration==1) return sqrt($val);
- // Faster than using sqrt (because it won't undercompensate), and gives reasonable results
- //return 1+(($val-1)/2);
- $x = 2-(($iteration-2)/($k-2));
- if ($x == 0) { $ret = $val+0.00001; }
- else if ($x < 0) { $ret = 1 + ( pow(2, ($iteration-2-$k))/1000 ); }
- else { $ret = 1+(($val-1)/$x); }
- return $ret;
-}
-/*-- END TABLES --*/
-
-
-/*-- LISTS --*/
-function printlistbuffer() {
- //Save x coordinate
- $x = $this->lMargin + $this->blk[$this->blklvl]['outer_left_margin'];
- $this->cMarginL = 0;
- $this->cMarginR = 0;
- $currIndentLvl = -1;
- $lastIndent = array();
- $bak_page = $this->page;
- $indent = 0;
- foreach($this->listitem as $item)
- {
- // COLS
- $oldcolumn = $this->CurrCol;
-
- $this->bulletarray = array();
- //Get list's buffered data
- $this->listlvl = $lvl = $item[0];
- $num = $item[1];
- $this->textbuffer = $item[2];
- $occur = $item[3];
- if ($item[4]) { $type = $item[4]; } // listitemtype
- else { $type = $this->listlist[$lvl][$occur]['TYPE']; }
- $maxnum = $this->listlist[$lvl][$occur]['MAXNUM'];
- $this->restoreInlineProperties($this->InlineProperties['LIST'][$lvl][$occur]);
- $this->SetFont($this->FontFamily,$this->FontStyle,$this->FontSizePt,true,true); // force to write
- $clh = $this->FontSize;
-
- $this->SetLineHeight($this->FontSizePt,$this->list_lineheight[$lvl][$occur]);
- $this->listOcc = $occur;
- $this->listnum = $num;
-
- if (isset($this->list_align[$this->listlvl][$occur])) { $this->divalign = $this->list_align[$this->listlvl][$occur]; }
- else {
- if (isset($this->blk[$this->blklvl]['direction']) && $this->blk[$this->blklvl]['direction']=='rtl') { $this->divalign = 'R'; }
- else { $this->divalign = 'L'; }
- }
-
- // Set the bullet fontsize
- $bullfs = $this->InlineProperties['LISTITEM'][$lvl][$occur][$num]['size'];
-
- $space_width = $this->GetCharWidth(' ',false) * 1.5; // mPDF 5.3.04
-
- //Set default width & height values
- $this->divwidth = $this->blk[$this->blklvl]['inner_width'];
- $this->divheight = $this->lineheight;
- $typefont = $this->FontFamily;
- if (preg_match('/U\+([a-fA-F0-9]+)/i',$type,$m)) {
- if ($this->_charDefined($this->CurrentFont['cw'],hexdec($m[1]))) { $list_item_marker = codeHex2utf($m[1]); }
- else { $list_item_marker = '-'; }
- $blt_width = $this->GetStringWidth($list_item_marker);
- $typefont = '';
- if (preg_match('/rgb\(.*?\)/',$type,$m)) {
- $list_item_color = $this->ConvertColor($m[0]);
- }
- }
- else {
- $list_item_color = false;
-
- switch($type) //Format type
- {
- case '1':
- if ($this->listDir == 'rtl') { $list_item_marker = $this->list_number_suffix . $num; }
- else { $list_item_marker = $num . $this->list_number_suffix; }
- $blt_width = $this->GetStringWidth(str_repeat('5',strlen($maxnum)).$this->list_number_suffix);
- break;
- case 'none':
- $list_item_marker = '';
- $blt_width = 0;
- break;
- case 'A':
- $anum = $this->dec2alpha($num,true);
- $maxnum = $this->dec2alpha($maxnum,true);
- if ($this->listDir == 'rtl') { $list_item_marker = $this->list_number_suffix . $anum; }
- else { $list_item_marker = $anum . $this->list_number_suffix; }
- $blt_width = $this->GetStringWidth(str_repeat('W',strlen($maxnum)).$this->list_number_suffix);
- break;
- case 'a':
- $anum = $this->dec2alpha($num,false);
- $maxnum = $this->dec2alpha($maxnum,false);
- if ($this->listDir == 'rtl') { $list_item_marker = $this->list_number_suffix . $anum; }
- else { $list_item_marker = $anum . $this->list_number_suffix; }
- $blt_width = $this->GetStringWidth(str_repeat('m',strlen($maxnum)).$this->list_number_suffix);
- break;
- case 'I':
- $anum = $this->dec2roman($num,true);
- if ($this->listDir == 'rtl') { $list_item_marker = $this->list_number_suffix . $anum; }
- else { $list_item_marker = $anum . $this->list_number_suffix; }
-
- if ($maxnum>87) { $bbit = 87; }
- else if ($maxnum>86) { $bbit = 86; }
- else if ($maxnum>37) { $bbit = 38; }
- else if ($maxnum>36) { $bbit = 37; }
- else if ($maxnum>27) { $bbit = 28; }
- else if ($maxnum>26) { $bbit = 27; }
- else if ($maxnum>17) { $bbit = 18; }
- else if ($maxnum>16) { $bbit = 17; }
- else if ($maxnum>7) { $bbit = 8; }
- else if ($maxnum>6) { $bbit = 7; }
- else if ($maxnum>3) { $bbit = 4; }
- else { $bbit = $maxnum; }
- $maxlnum = $this->dec2roman($bbit,true);
- $blt_width = $this->GetStringWidth($maxlnum.$this->list_number_suffix);
- break;
- case 'i':
- $anum = $this->dec2roman($num,false);
- if ($this->listDir == 'rtl') { $list_item_marker = $this->list_number_suffix . $anum; }
- else { $list_item_marker = $anum . $this->list_number_suffix; }
-
- if ($maxnum>87) { $bbit = 87; }
- else if ($maxnum>86) { $bbit = 86; }
- else if ($maxnum>37) { $bbit = 38; }
- else if ($maxnum>36) { $bbit = 37; }
- else if ($maxnum>27) { $bbit = 28; }
- else if ($maxnum>26) { $bbit = 27; }
- else if ($maxnum>17) { $bbit = 18; }
- else if ($maxnum>16) { $bbit = 17; }
- else if ($maxnum>7) { $bbit = 8; }
- else if ($maxnum>6) { $bbit = 7; }
- else if ($maxnum>3) { $bbit = 4; }
- else { $bbit = $maxnum; }
- $maxlnum = $this->dec2roman($bbit,false);
-
- $blt_width = $this->GetStringWidth($maxlnum.$this->list_number_suffix);
- break;
- case 'disc':
- if ($this->PDFA || $this->PDFX) {
- if ($this->_charDefined($this->CurrentFont['cw'],8226)) { $list_item_marker = "\xe2\x80\xa2"; } // •
- else { $list_item_marker = '-'; }
- $blt_width = $this->GetCharWidth($list_item_marker); // mPDF 5.3.04
- break;
- }
- $list_item_marker = chr(108); // bullet disc in Zapfdingbats 'l'
- $typefont = 'czapfdingbats';
- $blt_width = (0.791 * $this->FontSize/2.5);
- break;
- case 'circle':
- if ($this->PDFA || $this->PDFX) {
- if ($this->_charDefined($this->CurrentFont['cw'],9900)) { $list_item_marker = "\xe2\x9a\xac"; } // ⚬
- else { $list_item_marker = '-'; }
- $blt_width = $this->GetCharWidth($list_item_marker); // mPDF 5.3.04
- break;
- }
- $list_item_marker = chr(109); // circle in Zapfdingbats 'm'
- $typefont = 'czapfdingbats';
- $blt_width = (0.873 * $this->FontSize/2.5);
- break;
- case 'square':
- if ($this->PDFA || $this->PDFX) {
- if ($this->_charDefined($this->CurrentFont['cw'],9642)) { $list_item_marker = "\xe2\x96\xaa"; } // ▪
- else { $list_item_marker = '-'; }
- $blt_width = $this->GetCharWidth($list_item_marker); // mPDF 5.3.04
- break;
- }
- $list_item_marker = chr(110); //black square in Zapfdingbats font 'n'
- $typefont = 'czapfdingbats';
- $blt_width = (0.761 * $this->FontSize/2.5);
- break;
-
-/* CSS3 list-styles numeric + I added tamil
-arabic-indic | bengali | cambodian | devanagari | gujarati | gurmukhi | kannada | khmer | lao | malayalam | mongolian | myanmar | oriya | persian | telugu | tibetan | thai | urdu
-*/
- case 'arabic-indic':
- $cp = 0x0660;
- $rnum = $this->dec2other($num, $cp);
- $list_item_marker = $this->list_number_suffix . $rnum; // RTL
- $blt_width = $this->GetStringWidth(str_repeat($this->dec2other(3, $cp),strlen($maxnum)).$this->list_number_suffix);
- break;
- case 'persian':
- case 'urdu':
- $cp = 0x06F0;
- $rnum = $this->dec2other($num, $cp);
- $list_item_marker = $this->list_number_suffix . $rnum; // RTL
- $blt_width = $this->GetStringWidth(str_repeat($this->dec2other(3, $cp),strlen($maxnum)).$this->list_number_suffix);
- break;
- case 'bengali':
- $cp = 0x09E6;
- $rnum = $this->dec2other($num, $cp);
- $list_item_marker = $rnum . $this->list_number_suffix;
- $blt_width = $this->GetStringWidth(str_repeat($this->dec2other(3, $cp),strlen($maxnum)).$this->list_number_suffix);
- break;
- case 'devanagari':
- $cp = 0x0966;
- $rnum = $this->dec2other($num, $cp);
- $list_item_marker = $rnum . $this->list_number_suffix;
- $blt_width = $this->GetStringWidth(str_repeat($this->dec2other(3, $cp),strlen($maxnum)).$this->list_number_suffix);
- break;
- case 'gujarati':
- $cp = 0x0AE6;
- $rnum = $this->dec2other($num, $cp);
- $list_item_marker = $rnum . $this->list_number_suffix;
- $blt_width = $this->GetStringWidth(str_repeat($this->dec2other(3, $cp),strlen($maxnum)).$this->list_number_suffix);
- break;
- case 'gurmukhi':
- $cp = 0x0A66;
- $rnum = $this->dec2other($num, $cp);
- $list_item_marker = $rnum . $this->list_number_suffix;
- $blt_width = $this->GetStringWidth(str_repeat($this->dec2other(3, $cp),strlen($maxnum)).$this->list_number_suffix);
- break;
- case 'kannada':
- $cp = 0x0CE6;
- $rnum = $this->dec2other($num, $cp);
- $list_item_marker = $rnum . $this->list_number_suffix;
- $blt_width = $this->GetStringWidth(str_repeat($this->dec2other(3, $cp),strlen($maxnum)).$this->list_number_suffix);
- break;
- case 'malayalam':
- $cp = 0x0D66;
- $rnum = $this->dec2other($num, $cp);
- $list_item_marker = $rnum . $this->list_number_suffix;
- $blt_width = $this->GetStringWidth(str_repeat($this->dec2other(6, $cp),strlen($maxnum)).$this->list_number_suffix);
- break;
- case 'oriya':
- $cp = 0x0B66;
- $rnum = $this->dec2other($num, $cp);
- $list_item_marker = $rnum . $this->list_number_suffix;
- $blt_width = $this->GetStringWidth(str_repeat($this->dec2other(3, $cp),strlen($maxnum)).$this->list_number_suffix);
- break;
- case 'telugu':
- $cp = 0x0C66;
- $rnum = $this->dec2other($num, $cp);
- $list_item_marker = $rnum . $this->list_number_suffix;
- $blt_width = $this->GetStringWidth(str_repeat($this->dec2other(3, $cp),strlen($maxnum)).$this->list_number_suffix);
- break;
- case 'tamil':
- $cp = 0x0BE6;
- $rnum = $this->dec2other($num, $cp);
- $list_item_marker = $rnum . $this->list_number_suffix;
- $blt_width = $this->GetStringWidth(str_repeat($this->dec2other(9, $cp),strlen($maxnum)).$this->list_number_suffix);
- break;
- case 'thai':
- $cp = 0x0E50;
- $rnum = $this->dec2other($num, $cp);
- $list_item_marker = $rnum . $this->list_number_suffix;
- $blt_width = $this->GetStringWidth(str_repeat($this->dec2other(5, $cp),strlen($maxnum)).$this->list_number_suffix);
- break;
- default:
- if ($this->listDir == 'rtl') { $list_item_marker = $this->list_number_suffix . $num; }
- else { $list_item_marker = $num . $this->list_number_suffix; }
- $blt_width = $this->GetStringWidth(str_repeat('5',strlen($maxnum)).$this->list_number_suffix);
- break;
- }
- }
-
- if (isset($item[5]) && $item[5]) { $list_item_marker = ''; } // mPDF 5.3.11
-
- if ($currIndentLvl < $lvl) {
- if ($lvl > 1 || $this->list_indent_first_level) {
- $indent += $this->list_indent[$lvl][$occur];
- $lastIndent[$lvl] = $this->list_indent[$lvl][$occur];
- }
- }
- else if ($currIndentLvl > $lvl) {
- while ($currIndentLvl > $lvl) {
- $indent -= $lastIndent[$currIndentLvl];
- $currIndentLvl--;
- }
- }
- $currIndentLvl = $lvl;
-
-
-/*-- RTL --*/
-
- if ($this->listDir == 'rtl') {
- // list_align_style Determines alignment of numbers in numbered lists
- if ($this->list_align_style == 'L') { $lalign = 'R'; }
- else { $lalign = 'L'; }
- $this->divwidth = $this->blk[$this->blklvl]['width'] - ($indent + $blt_width + $space_width) ;
- $xb = $this->blk[$this->blklvl]['inner_width'] + $this->blk[$this->blklvl]['border_left']['w'] + $this->blk[$this->blklvl]['padding_left'] - $indent - $blt_width; //Bullet position (relative)
- //Output bullet
- $this->bulletarray = array('w'=>$blt_width,'h'=>$clh,'txt'=>$list_item_marker,'x'=>$xb,'align'=>$lalign,'font'=>$typefont,'level'=>$lvl, 'occur'=>$occur, 'num'=>$num, 'fontsize'=>$bullfs, 'col'=>$list_item_color );
- $this->x = $x;
- }
- else {
-/*-- END RTL --*/
-
- if ($this->list_align_style == 'L') { $lalign = 'L'; }
- else { $lalign = 'R'; }
- $this->divwidth = $this->blk[$this->blklvl]['width'] - ($indent + $blt_width + $space_width) ;
- $xb = $this->blk[$this->blklvl]['padding_left'] + $this->blk[$this->blklvl]['border_left']['w'] - $blt_width - $space_width;
- //Output bullet
- $this->bulletarray = array('w'=>$blt_width,'h'=>$clh,'txt'=>$list_item_marker,'x'=>$xb,'align'=>$lalign,'font'=>$typefont,'level'=>$lvl, 'occur'=>$occur, 'num'=>$num, 'fontsize'=>$bullfs, 'col'=>$list_item_color );
- $this->x = $x + $indent + $blt_width + $space_width;
- } // *RTL*
-
- //Print content
- $this->printbuffer($this->textbuffer,'',false,true);
- $this->textbuffer=array();
-
- // Added to correct for OddEven Margins
- if ($this->page != $bak_page) {
- if (($this->page-$bak_page) % 2 == 1) {
- $x += $this->MarginCorrection;
- }
- $bak_page = $this->page;
- }
-/*-- COLUMNS --*/
- // OR COLUMN CHANGE
- if ($this->CurrCol != $oldcolumn) {
- if ($this->directionality == 'rtl') { // *RTL*
- $x -= ($this->CurrCol - $oldcolumn) * ($this->ColWidth+$this->ColGap); // *RTL*
- } // *RTL*
- else { // *RTL*
- $x += ($this->CurrCol - $oldcolumn) * ($this->ColWidth+$this->ColGap);
- } // *RTL*
- $oldcolumn = $this->CurrCol;
- }
-/*-- END COLUMNS --*/
-
- }
-
- //Reset all used values
- $this->listoccur = array();
- $this->listitem = array();
- $this->listlist = array();
- $this->listlvl = 0;
- $this->listnum = 0;
- $this->listtype = '';
- $this->textbuffer = array();
- $this->divwidth = 0;
- $this->divheight = 0;
- $this->x = $this->lMargin + $this->blk[$this->blklvl]['outer_left_margin'];
-}
-/*-- END LISTS --*/
-
-// mPDF 5.3.99 // mPDF 5.3.A2
-function _saveTextBuffer($t, $link = '', $intlink = '') {
- $this->textbuffer[] = array($t,$link,$this->currentfontstyle,$this->colorarray,$this->currentfontfamily,$this->SUP,$this->SUB,$intlink,$this->strike,$this->outlineparam,$this->spanbgcolorarray,$this->currentfontsize,$this->ReqFontStyle,$this->kerning,$this->lSpacingCSS,$this->wSpacingCSS,$this->spanborddet, $this->textshadow);
-}
-
-// mPDF 5.3.99 // mPDF 5.3.A2
-function _saveCellTextBuffer($t, $link = '', $intlink = '') {
- $this->cell[$this->row][$this->col]['textbuffer'][] = array($t,$link,$this->currentfontstyle,$this->colorarray,$this->currentfontfamily,$this->SUP,$this->SUB,$intlink,$this->strike,$this->outlineparam,$this->spanbgcolorarray,$this->currentfontsize,$this->ReqFontStyle,$this->kerning,$this->lSpacingCSS,$this->wSpacingCSS,$this->spanborddet, $this->textshadow);
-}
-
-
-function printbuffer($arrayaux,$blockstate=0,$is_table=false,$is_list=false)
-{
-// $blockstate = 0; // NO margins/padding
-// $blockstate = 1; // Top margins/padding only
-// $blockstate = 2; // Bottom margins/padding only
-// $blockstate = 3; // Top & bottom margins/padding
- $this->spanbgcolorarray = ''; // mPDF 5.3.76
- $this->spanbgcolor = false;
- // mPDF 5.3.61
- $this->spanborder = false;
- $this->spanborddet = array();
- $paint_ht_corr = 0;
-
-/*-- CSS-FLOAT --*/
- if (count($this->floatDivs)) {
- list($l_exists, $r_exists, $l_max, $r_max, $l_width, $r_width) = $this->GetFloatDivInfo($this->blklvl);
- if (($this->blk[$this->blklvl]['inner_width']-$l_width-$r_width) < (2*$this->GetCharWidth('W',false))) { // mPDF 5.3.04
- // Too narrow to fit - try to move down past L or R float
- if ($l_max < $r_max && ($this->blk[$this->blklvl]['inner_width']-$r_width) > (2*$this->GetCharWidth('W',false))) { // mPDF 5.3.04
- $this->ClearFloats('LEFT', $this->blklvl);
- }
- else if ($r_max < $l_max && ($this->blk[$this->blklvl]['inner_width']-$l_width) > (2*$this->GetCharWidth('W',false))) { // mPDF 5.3.04
- $this->ClearFloats('RIGHT', $this->blklvl);
- }
- else { $this->ClearFloats('BOTH', $this->blklvl); }
- }
- }
-/*-- END CSS-FLOAT --*/
- $bak_y = $this->y;
- $bak_x = $this->x;
- $align = '';
- if (!$is_table && !$is_list) {
- if (isset($this->blk[$this->blklvl]['align']) && $this->blk[$this->blklvl]['align']) { $align = $this->blk[$this->blklvl]['align']; }
- // Block-align is set by e.g. <.. align="center"> Takes priority for this block but not inherited
- if (isset($this->blk[$this->blklvl]['block-align']) && $this->blk[$this->blklvl]['block-align']) { $align = $this->blk[$this->blklvl]['block-align']; }
- // mPDF 5.3.76
- if (isset($this->blk[$this->blklvl]['direction'])) $blockdir = $this->blk[$this->blklvl]['direction'];
- else $blockdir = "";
- $this->divwidth = $this->blk[$this->blklvl]['width'];
- }
- else {
- $align = $this->divalign;
- if ($is_table) { $blockdir = $this->table[$this->tableLevel][$this->tbctr[$this->tableLevel]]['direction']; }
- else { $blockdir = $this->listDir; }
- }
- $oldpage = $this->page;
-
- // ADDED for Out of Block now done as Flowing Block
- if ($this->divwidth == 0) {
- $this->divwidth = $this->pgwidth;
- }
-
- if (!$is_table && !$is_list) { $this->SetLineHeight($this->FontSizePt,$this->blk[$this->blklvl]['line_height']); }
- $this->divheight = $this->lineheight;
- $old_height = $this->divheight;
-
- // As a failsafe - if font has been set but not output to page
- $this->SetFont($this->default_font,'',$this->default_font_size,true,true); // force output to page
-
- $array_size = count($arrayaux);
- $this->newFlowingBlock( $this->divwidth,$this->divheight,$align,$is_table,$is_list,$blockstate,true,$blockdir);
-
- // Added - Otherwise did not output top margins/padding for 1st/2nd div
- if ($array_size == 0) { $this->finishFlowingBlock(true); } // true = END of flowing block
-
- for($i=0;$i < $array_size; $i++)
- {
- // COLS
- $oldcolumn = $this->CurrCol;
-
- $vetor = $arrayaux[$i];
- if ($i == 0 and $vetor[0] != "\n" and !$this->ispre) {
- $vetor[0] = ltrim($vetor[0]);
- }
-
- // FIXED TO ALLOW IT TO SHOW '0'
- if (empty($vetor[0]) && !($vetor[0]==='0') && empty($vetor[7])) { //Ignore empty text and not carrying an internal link
- //Check if it is the last element. If so then finish printing the block
- if ($i == ($array_size-1)) { $this->finishFlowingBlock(true); } // true = END of flowing block
- continue;
- }
-
-
- //Activating buffer properties
- if(isset($vetor[11]) and $vetor[11] != '') { // Font Size
- if ($is_table && $this->shrin_k) {
- $this->SetFontSize($vetor[11]/$this->shrin_k,false);
- }
- else {
- $this->SetFontSize($vetor[11],false);
- }
- }
-
- // mPDF 5.3.A2
- if(isset($vetor[17]) && !empty($vetor[17])) { //TextShadow
- $this->textshadow = $vetor[17];
- }
- // mPDF 5.3.61
- if(isset($vetor[16]) && !empty($vetor[16])) { //Border
- $this->spanborddet = $vetor[16];
- $this->spanborder = true;
- }
-
- if(isset($vetor[15])) { // Word spacing
- $this->wSpacingCSS = $vetor[15];
- if ($this->wSpacingCSS && strtoupper($this->wSpacingCSS) != 'NORMAL') {
- $this->minwSpacing = $this->ConvertSize($this->wSpacingCSS,$this->FontSize);
- }
- }
- if(isset($vetor[14])) { // Letter spacing
- $this->lSpacingCSS = $vetor[14];
- if (($this->lSpacingCSS || $this->lSpacingCSS==='0') && strtoupper($this->lSpacingCSS) != 'NORMAL') {
- $this->fixedlSpacing = $this->ConvertSize($this->lSpacingCSS,$this->FontSize);
- }
- }
- if(isset($vetor[13])) { // Font Kerning
- $this->kerning = $vetor[13];
- }
-
-
- if(isset($vetor[10]) and !empty($vetor[10])) //Background color
- {
- $this->spanbgcolorarray = $vetor[10];
- $this->spanbgcolor = true;
- }
- if(isset($vetor[9]) and !empty($vetor[9])) // Outline parameters
- {
- $cor = $vetor[9]['COLOR'];
- $outlinewidth = $vetor[9]['WIDTH'];
- $this->SetTextOutline($outlinewidth,$cor);
- $this->outline_on = true;
- }
- if(isset($vetor[8]) and $vetor[8] === true) // strike-through the text
- {
- $this->strike = true;
- }
- if(isset($vetor[7]) and $vetor[7] != '') // internal link:
- {
- // mPDF 5.3.01
- // if ($this->ColActive) { $ily = $this->y0; } else { $ily = $this->y; } // use top of columns
- $ily = $this->y;
- if ($this->keep_block_together) { $this->internallink[$vetor[7]] = array("Y"=>$ily,"PAGE"=>$this->page, "kt"=>true ); }
- else if ($this->table_rotate) { $this->internallink[$vetor[7]] = array("Y"=>$ily,"PAGE"=>$this->page, "tbrot"=>true ); }
- else if ($this->kwt) { $this->internallink[$vetor[7]] = array("Y"=>$ily,"PAGE"=>$this->page, "kwt"=>true ); }
- else if ($this->ColActive) { $this->internallink[$vetor[7]] = array("Y"=>$ily,"PAGE"=>$this->page, "col"=>$this->CurrCol ); }
- else
- $this->internallink[$vetor[7]] = array("Y"=>$ily,"PAGE"=>$this->page );
- if (empty($vetor[0])) { //Ignore empty text
- //Check if it is the last element. If so then finish printing the block
- if ($i == ($array_size-1)) { $this->finishFlowingBlock(true); } // true = END of flowing block
- continue;
- }
- }
- if(isset($vetor[6]) and $vetor[6] === true) // Subscript
- {
- $this->SUB = true;
- }
- if(isset($vetor[5]) and $vetor[5] === true) // Superscript
- {
- $this->SUP = true;
- }
- if(isset($vetor[4]) and $vetor[4] != '') { // Font Family
- $font = $this->SetFont($vetor[4],$this->FontStyle,0,false);
- }
- if (!empty($vetor[3])) //Font Color
- {
- $cor = $vetor[3];
- $this->SetTColor($cor);
- }
- if(isset($vetor[2]) and $vetor[2] != '') //Bold,Italic,Underline styles
- {
- $this->SetStyles($vetor[2]);
- }
-
- if(isset($vetor[12]) and $vetor[12] != '') { //Requested Bold,Italic,Underline
- $this->ReqFontStyle = $vetor[12];
- }
- if(isset($vetor[1]) and $vetor[1] != '') //LINK
- {
-
- if (strpos($vetor[1],".") === false && strpos($vetor[1],"@") !== 0) //assuming every external link has a dot indicating extension (e.g: .html .txt .zip www.somewhere.com etc.)
- {
- //Repeated reference to same anchor?
- while(array_key_exists($vetor[1],$this->internallink)) $vetor[1]="#".$vetor[1];
- $this->internallink[$vetor[1]] = $this->AddLink();
- $vetor[1] = $this->internallink[$vetor[1]];
- }
- $this->HREF = $vetor[1]; // HREF link style set here ******
- }
-
- // SPECIAL CONTENT - IMAGES & FORM OBJECTS
- //Print-out special content
-
- if (substr($vetor[0],0,3) == "\xbb\xa4\xac") { //identifier has been identified!
-
- $objattr = $this->_getObjAttr($vetor[0]);
-
-/*-- TABLES --*/
- if ($objattr['type'] == 'nestedtable') {
- // mPDF 5.3.79 NB Following code moved inside the if ...
- if ($objattr['nestedcontent']) {
- $level = $objattr['level'];
- $table = &$this->table[$level][$objattr['table']];
- // mPDF 5.3.79
- if ($this->cacheTables) {
- $fh = fopen($table['cache'], "r+b");
- $cell = $this->_uncacheCell($table['cells'][$objattr['row']][$objattr['col']], '', $fh);
- }
- else {
- $fh = null;
- $cell = &$table['cells'][$objattr['row']][$objattr['col']];
- }
- $this->finishFlowingBlock(false,'nestedtable');
- $save_dw = $this->divwidth ;
- $save_buffer = $this->cellBorderBuffer;
- $this->cellBorderBuffer = array();
- $ncx = $this->x;
- list($dummyx,$w) = $this->_tableGetWidth($table, $objattr['row'], $objattr['col'], $fh); // mPDF 5.3.79
- $ntw = $this->table[($level+1)][$objattr['nestedcontent']]['w']; // nested table width
- if (!$this->simpleTables){
- if ($this->packTableData) {
- list($bt,$br,$bb,$bl) = $this->_getBorderWidths($cell['borderbin']);
- }
- else {
- $br = $cell['border_details']['R']['w'];
- $bl = $cell['border_details']['L']['w'];
- }
- if ($table['borders_separate']) {
- $innerw = $w - $bl - $br - $cell['padding']['L'] - $cell['padding']['R'] - $table['border_spacing_H'];
- }
- else {
- $innerw = $w - $bl/2 - $br/2 - $cell['padding']['L'] - $cell['padding']['R'];
- }
- }
- else if ($this->simpleTables){
- if ($table['borders_separate']) {
- $innerw = $w - $table['simple']['border_details']['L']['w'] - $table['simple']['border_details']['R']['w'] - $cell['padding']['L'] - $cell['padding']['R'] - $table['border_spacing_H'];
- }
- else {
- $innerw = $w - $table['simple']['border_details']['L']['w']/2 - $table['simple']['border_details']['R']['w']/2 - $cell['padding']['L'] - $cell['padding']['R'];
- }
- }
- if ($cell['a']=='C' || $this->table[($level+1)][$objattr['nestedcontent']]['a']=='C') {
- $ncx += ($innerw-$ntw)/2;
- }
- elseif ($cell['a']=='R' || $this->table[($level+1)][$objattr['nestedcontent']]['a']=='R') {
- $ncx += $innerw- $ntw;
- }
- $this->x = $ncx ;
- // mPDF 5.3.79
- if ($this->cacheTables) { fclose($fh); }
-
- $this->_tableWrite($this->table[($level+1)][$objattr['nestedcontent']]);
- $this->cellBorderBuffer = $save_buffer;
- $this->x = $bak_x ;
- $this->divwidth = $save_dw;
- $this->newFlowingBlock( $this->divwidth,$this->divheight,$align,$is_table,$is_list,$blockstate,false,$blockdir);
- }
- }
- else {
-/*-- END TABLES --*/
- if ($is_table) { // *TABLES*
- $maxWidth = $this->divwidth; // *TABLES*
- } // *TABLES*
- else { // *TABLES*
- $maxWidth = $this->divwidth - ($this->blk[$this->blklvl]['padding_left'] + $this->blk[$this->blklvl]['border_left']['w'] + $this->blk[$this->blklvl]['padding_right'] + $this->blk[$this->blklvl]['border_right']['w']);
- } // *TABLES*
-
-/*-- CSS-IMAGE-FLOAT --*/
- // If float (already) exists at this level
- if (isset($this->floatmargins['R']) && $this->y <= $this->floatmargins['R']['y1'] && $this->y >= $this->floatmargins['R']['y0']) { $maxWidth -= $this->floatmargins['R']['w']; }
- if (isset($this->floatmargins['L']) && $this->y <= $this->floatmargins['L']['y1'] && $this->y >= $this->floatmargins['L']['y0']) { $maxWidth -= $this->floatmargins['L']['w']; }
-/*-- END CSS-IMAGE-FLOAT --*/
-
- list($skipln) = $this->inlineObject($objattr['type'], '', $this->y, $objattr,$this->lMargin, ($this->flowingBlockAttr['contentWidth']/_MPDFK), $maxWidth, $this->flowingBlockAttr['height'], false, $is_table);
- // 1 -> New line needed because of width
- // -1 -> Will fit width on line but NEW PAGE REQUIRED because of height
- // -2 -> Will not fit on line therefore needs new line but thus NEW PAGE REQUIRED
- $iby = $this->y;
- $oldpage = $this->page;
- $oldcol = $this->CurrCol;
- if (($skipln == 1 || $skipln == -2) && !isset($objattr['float'])) {
- $this->finishFlowingBlock(false,$objattr['type']);
- $this->newFlowingBlock( $this->divwidth,$this->divheight,$align,$is_table,$is_list,$blockstate,false,$blockdir);
- }
- $thispage = $this->page;
- if ($this->CurrCol!=$oldcol) { $changedcol = true; }
- else { $changedcol=false; }
-
- // the previous lines can already have triggered page break or column change
- if (!$changedcol && $skipln <0 && $this->AcceptPageBreak() && $thispage==$oldpage) {
-
- $this->AddPage($this->CurOrientation);
-
- // Added to correct Images already set on line before page advanced
- // i.e. if second inline image on line is higher than first and forces new page
- if (count($this->objectbuffer)) {
- $yadj = $iby - $this->y;
- foreach($this->objectbuffer AS $ib=>$val) {
- if ($this->objectbuffer[$ib]['OUTER-Y'] ) $this->objectbuffer[$ib]['OUTER-Y'] -= $yadj;
- if ($this->objectbuffer[$ib]['BORDER-Y']) $this->objectbuffer[$ib]['BORDER-Y'] -= $yadj;
- if ($this->objectbuffer[$ib]['INNER-Y']) $this->objectbuffer[$ib]['INNER-Y'] -= $yadj;
- }
- }
- }
-
- // Added to correct for OddEven Margins
- if ($this->page != $oldpage) {
- if (($this->page-$oldpage) % 2 == 1) {
- $bak_x += $this->MarginCorrection;
- }
- $oldpage = $this->page;
- $y = $this->tMargin - $paint_ht_corr ;
- $this->oldy = $this->tMargin - $paint_ht_corr ;
- $old_height = 0;
- }
- $this->x = $bak_x;
-/*-- COLUMNS --*/
- // COLS
- // OR COLUMN CHANGE
- if ($this->CurrCol != $oldcolumn) {
- if ($this->directionality == 'rtl') { // *RTL*
- $bak_x -= ($this->CurrCol - $oldcolumn) * ($this->ColWidth+$this->ColGap); // *RTL*
- } // *RTL*
- else { // *RTL*
- $bak_x += ($this->CurrCol - $oldcolumn) * ($this->ColWidth+$this->ColGap);
- } // *RTL*
- $this->x = $bak_x;
- $oldcolumn = $this->CurrCol;
- $y = $this->y0 - $paint_ht_corr ;
- $this->oldy = $this->y0 - $paint_ht_corr ;
- $old_height = 0;
- }
-/*-- END COLUMNS --*/
-
-/*-- CSS-IMAGE-FLOAT --*/
- if ($objattr['type'] == 'image' && isset($objattr['float'])) {
- $fy = $this->y;
-
- // DIV TOP MARGIN/BORDER/PADDING
- if ($this->flowingBlockAttr['newblock'] && ($this->flowingBlockAttr['blockstate']==1 || $this->flowingBlockAttr['blockstate']==3) && $this->flowingBlockAttr['lineCount']== 0) {
- $fy += $this->blk[$this->blklvl]['margin_top'] + $this->blk[$this->blklvl]['padding_top'] + $this->blk[$this->blklvl]['border_top']['w'];
- }
-
- if ($objattr['float']=='R') {
- $fx = $this->w - $this->rMargin - $objattr['width'] - ($this->blk[$this->blklvl]['outer_right_margin'] + $this->blk[$this->blklvl]['border_right']['w'] + $this->blk[$this->blklvl]['padding_right']);
-
-
- }
- else if ($objattr['float']=='L') {
- $fx = $this->lMargin + ($this->blk[$this->blklvl]['outer_left_margin'] + $this->blk[$this->blklvl]['border_left']['w'] + $this->blk[$this->blklvl]['padding_left']);
- }
- $w = $objattr['width'];
- $h = abs($objattr['height']);
-
- $widthLeft = $maxWidth - ($this->flowingBlockAttr['contentWidth']/_MPDFK);
- $maxHeight = $this->h - ($this->tMargin + $this->margin_header + $this->bMargin + 10) ;
- // For Images
- $extraWidth = ($objattr['border_left']['w'] + $objattr['border_right']['w'] + $objattr['margin_left']+ $objattr['margin_right']);
- $extraHeight = ($objattr['border_top']['w'] + $objattr['border_bottom']['w'] + $objattr['margin_top']+ $objattr['margin_bottom']);
-
- if ($objattr['itype'] == 'wmf' || $objattr['itype'] == 'svg') {
- $file = $objattr['file'];
- $info=$this->formobjects[$file];
- }
- else {
- $file = $objattr['file'];
- $info=$this->images[$file];
- }
- $img_w = $w - $extraWidth ;
- $img_h = $h - $extraHeight ;
- if ($objattr['border_left']['w']) {
- $objattr['BORDER-WIDTH'] = $img_w + (($objattr['border_left']['w'] + $objattr['border_right']['w'])/2) ;
- $objattr['BORDER-HEIGHT'] = $img_h + (($objattr['border_top']['w'] + $objattr['border_bottom']['w'])/2) ;
- $objattr['BORDER-X'] = $fx + $objattr['margin_left'] + (($objattr['border_left']['w'])/2) ;
- $objattr['BORDER-Y'] = $fy + $objattr['margin_top'] + (($objattr['border_top']['w'])/2) ;
- }
- $objattr['INNER-WIDTH'] = $img_w;
- $objattr['INNER-HEIGHT'] = $img_h;
- $objattr['INNER-X'] = $fx + $objattr['margin_left'] + ($objattr['border_left']['w']);
- $objattr['INNER-Y'] = $fy + $objattr['margin_top'] + ($objattr['border_top']['w']) ;
- $objattr['ID'] = $info['i'];
- $objattr['OUTER-WIDTH'] = $w;
- $objattr['OUTER-HEIGHT'] = $h;
- $objattr['OUTER-X'] = $fx;
- $objattr['OUTER-Y'] = $fy;
- if ($objattr['float']=='R') {
- // If R float already exists at this level
- $this->floatmargins['R']['skipline'] = false;
- if (isset($this->floatmargins['R']['y1']) && $this->floatmargins['R']['y1'] > 0 && $fy < $this->floatmargins['R']['y1']) {
- $this->WriteFlowingBlock($vetor[0]);
- }
- // If L float already exists at this level
- else if (isset($this->floatmargins['L']['y1']) && $this->floatmargins['L']['y1'] > 0 && $fy < $this->floatmargins['L']['y1']) {
- // Final check distance between floats is not now too narrow to fit text
- $mw = 2*$this->GetCharWidth('W',false); // mPDF 5.3.04
- if (($this->blk[$this->blklvl]['inner_width'] - $w - $this->floatmargins['L']['w']) < $mw) {
- $this->WriteFlowingBlock($vetor[0]);
- }
- else {
- $this->floatmargins['R']['x'] = $fx;
- $this->floatmargins['R']['w'] = $w;
- $this->floatmargins['R']['y0'] = $fy;
- $this->floatmargins['R']['y1'] = $fy + $h;
- if ($skipln == 1) {
- $this->floatmargins['R']['skipline'] = true;
- $this->floatmargins['R']['id'] = count($this->floatbuffer)+0;
- $objattr['skipline'] = true;
- }
- $this->floatbuffer[] = $objattr;
- }
- }
- else {
- $this->floatmargins['R']['x'] = $fx;
- $this->floatmargins['R']['w'] = $w;
- $this->floatmargins['R']['y0'] = $fy;
- $this->floatmargins['R']['y1'] = $fy + $h;
- if ($skipln == 1) {
- $this->floatmargins['R']['skipline'] = true;
- $this->floatmargins['R']['id'] = count($this->floatbuffer)+0;
- $objattr['skipline'] = true;
- }
- $this->floatbuffer[] = $objattr;
- }
- }
- else if ($objattr['float']=='L') {
- // If L float already exists at this level
- $this->floatmargins['L']['skipline'] = false;
- if (isset($this->floatmargins['L']['y1']) && $this->floatmargins['L']['y1'] > 0 && $fy < $this->floatmargins['L']['y1']) {
- $this->floatmargins['L']['skipline'] = false;
- $this->WriteFlowingBlock($vetor[0]);
- }
- // If R float already exists at this level
- else if (isset($this->floatmargins['R']['y1']) && $this->floatmargins['R']['y1'] > 0 && $fy < $this->floatmargins['R']['y1']) {
- // Final check distance between floats is not now too narrow to fit text
- $mw = 2*$this->GetCharWidth('W',false); // mPDF 5.3.04
- if (($this->blk[$this->blklvl]['inner_width'] - $w - $this->floatmargins['R']['w']) < $mw) {
- $this->WriteFlowingBlock($vetor[0]);
- }
- else {
- $this->floatmargins['L']['x'] = $fx + $w;
- $this->floatmargins['L']['w'] = $w;
- $this->floatmargins['L']['y0'] = $fy;
- $this->floatmargins['L']['y1'] = $fy + $h;
- if ($skipln == 1) {
- $this->floatmargins['L']['skipline'] = true;
- $this->floatmargins['L']['id'] = count($this->floatbuffer)+0;
- $objattr['skipline'] = true;
- }
- $this->floatbuffer[] = $objattr;
- }
- }
- else {
- $this->floatmargins['L']['x'] = $fx + $w;
- $this->floatmargins['L']['w'] = $w;
- $this->floatmargins['L']['y0'] = $fy;
- $this->floatmargins['L']['y1'] = $fy + $h;
- if ($skipln == 1) {
- $this->floatmargins['L']['skipline'] = true;
- $this->floatmargins['L']['id'] = count($this->floatbuffer)+0;
- $objattr['skipline'] = true;
- }
- $this->floatbuffer[] = $objattr;
- }
- }
- }
- else {
-/*-- END CSS-IMAGE-FLOAT --*/
- $this->WriteFlowingBlock($vetor[0]);
-/*-- CSS-IMAGE-FLOAT --*/
- }
-/*-- END CSS-IMAGE-FLOAT --*/
- } // *TABLES*
-
- } // END If special content
-
- else { //THE text
- if ($this->tableLevel) { $paint_ht_corr = 0; } // To move the y up when new column/page started if div border needed
- else { $paint_ht_corr = $this->blk[$this->blklvl]['border_top']['w']; }
-
- if ($vetor[0] == "\n") { //We are reading a now turned into newline ("\n")
- if ($this->flowingBlockAttr['content']) {
- $this->finishFlowingBlock(false,'br');
- }
- else if ($is_table) {
- $this->y+= $this->_computeLineheight($this->table_lineheight);
- }
- else if (!$is_table) {
- $this->DivLn($this->lineheight);
- if ($this->ColActive) { $this->breakpoints[$this->CurrCol][] = $this->y; } // *COLUMNS*
- }
- // Added to correct for OddEven Margins
- if ($this->page != $oldpage) {
- if (($this->page-$oldpage) % 2 == 1) {
- $bak_x += $this->MarginCorrection;
- }
- $oldpage = $this->page;
- $y = $this->tMargin - $paint_ht_corr ;
- $this->oldy = $this->tMargin - $paint_ht_corr ;
- $old_height = 0;
- }
- $this->x = $bak_x;
-/*-- COLUMNS --*/
- // COLS
- // OR COLUMN CHANGE
- if ($this->CurrCol != $oldcolumn) {
- if ($this->directionality == 'rtl') { // *RTL*
- $bak_x -= ($this->CurrCol - $oldcolumn) * ($this->ColWidth+$this->ColGap); // *RTL*
- } // *RTL*
- else { // *RTL*
- $bak_x += ($this->CurrCol - $oldcolumn) * ($this->ColWidth+$this->ColGap);
- } // *RTL*
- $this->x = $bak_x;
- $oldcolumn = $this->CurrCol;
- $y = $this->y0 - $paint_ht_corr ;
- $this->oldy = $this->y0 - $paint_ht_corr ;
- $old_height = 0;
- }
-/*-- END COLUMNS --*/
- $this->newFlowingBlock( $this->divwidth,$this->divheight,$align,$is_table,$is_list,$blockstate,false,$blockdir);
- }
- else {
- $this->WriteFlowingBlock( $vetor[0]);
-
- // Added to correct for OddEven Margins
- if ($this->page != $oldpage) {
- if (($this->page-$oldpage) % 2 == 1) {
- $bak_x += $this->MarginCorrection;
- $this->x = $bak_x;
- }
- $oldpage = $this->page;
- $y = $this->tMargin - $paint_ht_corr ;
- $this->oldy = $this->tMargin - $paint_ht_corr ;
- $old_height = 0;
- }
-/*-- COLUMNS --*/
- // COLS
- // OR COLUMN CHANGE
- if ($this->CurrCol != $oldcolumn) {
- if ($this->directionality == 'rtl') { // *RTL*
- $bak_x -= ($this->CurrCol - $oldcolumn) * ($this->ColWidth+$this->ColGap); // *RTL*
- } // *RTL*
- else { // *RTL*
- $bak_x += ($this->CurrCol - $oldcolumn) * ($this->ColWidth+$this->ColGap);
- } // *RTL*
- $this->x = $bak_x;
- $oldcolumn = $this->CurrCol;
- $y = $this->y0 - $paint_ht_corr ;
- $this->oldy = $this->y0 - $paint_ht_corr ;
- $old_height = 0;
- }
-/*-- END COLUMNS --*/
- }
-
-
- }
-
- //Check if it is the last element. If so then finish printing the block
- if ($i == ($array_size-1)) {
- $this->finishFlowingBlock(true); // true = END of flowing block
- // Added to correct for OddEven Margins
- if ($this->page != $oldpage) {
- if (($this->page-$oldpage) % 2 == 1) {
- $bak_x += $this->MarginCorrection;
- $this->x = $bak_x;
- }
- $oldpage = $this->page;
- $y = $this->tMargin - $paint_ht_corr ;
- $this->oldy = $this->tMargin - $paint_ht_corr ;
- $old_height = 0;
- }
-
-/*-- COLUMNS --*/
- // COLS
- // OR COLUMN CHANGE
- if ($this->CurrCol != $oldcolumn) {
- if ($this->directionality == 'rtl') { // *RTL*
- $bak_x -= ($this->CurrCol - $oldcolumn) * ($this->ColWidth+$this->ColGap); // *RTL*
- } // *RTL*
- else { // *RTL*
- $bak_x += ($this->CurrCol - $oldcolumn) * ($this->ColWidth+$this->ColGap);
- } // *RTL*
- $this->x = $bak_x;
- $oldcolumn = $this->CurrCol;
- $y = $this->y0 - $paint_ht_corr ;
- $this->oldy = $this->y0 - $paint_ht_corr ;
- $old_height = 0;
- }
-/*-- END COLUMNS --*/
-
- }
-
- // RESETTING VALUES
- $this->SetTColor($this->ConvertColor(0));
- $this->SetDColor($this->ConvertColor(0));
- $this->SetFColor($this->ConvertColor(255));
- $this->colorarray = ''; // mPDF 5.3.76
- $this->spanbgcolorarray = ''; // mPDF 5.3.76
- $this->spanbgcolor = false;
- // mPDF 5.3.61
- $this->spanborder = false;
- $this->spanborddet = array();
- $this->HREF = '';
- $this->outlineparam = array();
- $this->SetTextOutline(false);
- $this->outline_on = false;
- $this->SUP = false;
- $this->SUB = false;
-
- $this->strike = false;
- $this->textshadow = ''; // mPDF 5.3.A2
-
- $this->currentfontfamily = '';
- $this->currentfontsize = '';
- $this->currentfontstyle = '';
-/*-- TABLES --*/
- if ($this->tableLevel) {
- $this->SetLineHeight('',$this->table_lineheight); // *TABLES*
- }
- else
-/*-- END TABLES --*/
-/*-- LISTS --*/
- if ($is_list && $this->list_lineheight[$this->listlvl][$this->listOcc]) { // mPDF 5.3.76
- $this->SetLineHeight('',$this->list_lineheight[$this->listlvl][$this->listOcc]); // sets default line height
- }
- else
-/*-- END LISTS --*/
- if (isset($this->blk[$this->blklvl]['line_height']) && $this->blk[$this->blklvl]['line_height']) {
- $this->SetLineHeight('',$this->blk[$this->blklvl]['line_height']); // sets default line height
- }
- $this->ResetStyles();
- $this->toupper = false;
- $this->tolower = false;
- $this->capitalize = false;
- $this->kerning = false;
- $this->lSpacingCSS = '';
- $this->wSpacingCSS = '';
- $this->fixedlSpacing = false;
- $this->minwSpacing = 0;
- $this->SetDash();
- $this->dash_on = false;
- $this->dotted_on = false;
-
- }//end of for(i=0;iblk[$this->blklvl]['border']) || isset($this->blk[$this->blklvl]['bgcolor']) || isset($this->blk[$this->blklvl]['box_shadow'])) && $blockstate && ($this->y != $this->oldy)) { // mPDF 5.3.A1
- $bottom_y = $this->y; // Does not include Bottom Margin
- if (isset($this->blk[$this->blklvl]['startpage']) && $this->blk[$this->blklvl]['startpage'] != $this->page && $blockstate != 1) {
- $this->PaintDivBB('pagetop',$blockstate);
- }
-
- else if ($blockstate != 1) {
- $this->PaintDivBB('',$blockstate);
- }
- $this->y = $bottom_y;
- $this->x = $bak_x;
- }
-
- // Reset Font
- $this->SetFontSize($this->default_font_size,false);
-
-
-}
-
-function _setDashBorder($style, $div, $cp, $side) {
- if ($style == 'dashed' && (($side=='L' || $side=='R') || ($side=='T' && $div != 'pagetop' && !$cp) || ($side=='B' && $div!='pagebottom') )) {
- $dashsize = 2; // final dash will be this + 1*linewidth
- $dashsizek = 1.5; // ratio of Dash/Blank
- $this->SetDash($dashsize,($dashsize/$dashsizek)+($this->LineWidth*2));
- }
- else if ($style == 'dotted' || ($side=='T' && ($div == 'pagetop' || $cp)) || ($side=='B' && $div == 'pagebottom')) {
- //Round join and cap
- $this->SetLineJoin(1);
- $this->SetLineCap(1);
- $this->SetDash(0.001,($this->LineWidth*3));
- }
-}
-
-function _setBorderLine($b, $k=1) {
- $this->SetLineWidth($b['w']/$k);
- $this->SetDColor($b['c']);
- if ($b['c'][0]==5) { // RGBa
- $this->SetAlpha($b['c'][4], 'Normal', false, 'S')."\n";
- }
- else if ($b['c'][0]==6) { // CMYKa
- $this->SetAlpha($b['c'][5], 'Normal', false, 'S')."\n";
- }
-}
-
-function PaintDivBB($divider='',$blockstate=0,$blvl=0) {
- // Borders & backgrounds are done elsewhere for columns - messes up the repositioning in printcolumnbuffer
- if ($this->ColActive) { return ; } // *COLUMNS*
- $save_y = $this->y;
- if (!$blvl) { $blvl = $this->blklvl; }
- $x0 = $x1 = $y0 = $y1 = 0;
-
- // Added mPDF 3.0 Float DIV
- if (isset($this->blk[$blvl]['bb_painted'][$this->page]) && $this->blk[$blvl]['bb_painted'][$this->page]) { return; } // *CSS-FLOAT*
-
- if (isset($this->blk[$blvl]['x0'])) { $x0 = $this->blk[$blvl]['x0']; } // left
- if (isset($this->blk[$blvl]['y1'])) { $y1 = $this->blk[$blvl]['y1']; } // bottom
-
- // Added mPDF 3.0 Float DIV - ensures backgrounds/borders are drawn to bottom of page
- if ($y1==0) {
- if ($divider=='pagebottom') { $y1 = $this->h-$this->bMargin; }
- else { $y1 = $this->y; }
- }
-
- if (isset($this->blk[$blvl]['startpage']) && $this->blk[$blvl]['startpage'] != $this->page) { $continuingpage = true; } else { $continuingpage = false; }
-
- if (isset($this->blk[$blvl]['y0'])) { $y0 = $this->blk[$blvl]['y0']; }
- $h = $y1 - $y0;
- $w = $this->blk[$blvl]['width'];
- $x1 = $x0 + $w;
-
- // Set border-widths as used here
- $border_top = $this->blk[$blvl]['border_top']['w'];
- $border_bottom = $this->blk[$blvl]['border_bottom']['w'];
- $border_left = $this->blk[$blvl]['border_left']['w'];
- $border_right = $this->blk[$blvl]['border_right']['w'];
- if (!$this->blk[$blvl]['border_top'] || $divider == 'pagetop' || $continuingpage) {
- $border_top = 0;
- }
- if (!$this->blk[$blvl]['border_bottom'] || $blockstate == 1 || $divider == 'pagebottom') {
- $border_bottom = 0;
- }
-
- $brTL_H = 0;
- $brTL_V = 0;
- $brTR_H = 0;
- $brTR_V = 0;
- $brBL_H = 0;
- $brBL_V = 0;
- $brBR_H = 0;
- $brBR_V = 0;
-
- $brset = false;
-/*-- BORDER-RADIUS --*/
- if (isset($this->blk[$blvl]['border_radius_TL_H'])) { $brTL_H = $this->blk[$blvl]['border_radius_TL_H']; $brset = true; }
- if (isset($this->blk[$blvl]['border_radius_TL_V'])) { $brTL_V = $this->blk[$blvl]['border_radius_TL_V']; $brset = true; }
- if (isset($this->blk[$blvl]['border_radius_TR_H'])) { $brTR_H = $this->blk[$blvl]['border_radius_TR_H']; $brset = true; }
- if (isset($this->blk[$blvl]['border_radius_TR_V'])) { $brTR_V = $this->blk[$blvl]['border_radius_TR_V']; $brset = true; }
- if (isset($this->blk[$blvl]['border_radius_BR_H'])) { $brBR_H = $this->blk[$blvl]['border_radius_BR_H']; $brset = true; }
- if (isset($this->blk[$blvl]['border_radius_BR_V'])) { $brBR_V = $this->blk[$blvl]['border_radius_BR_V']; $brset = true; }
- if (isset($this->blk[$blvl]['border_radius_BL_H'])) { $brBL_H = $this->blk[$blvl]['border_radius_BL_H']; $brset = true; }
- if (isset($this->blk[$blvl]['border_radius_BL_V'])) { $brBL_V = $this->blk[$blvl]['border_radius_BL_V']; $brset = true; }
-
- if (!$this->blk[$blvl]['border_top'] || $divider == 'pagetop' || $continuingpage || $this->keep_block_together) {
- $brTL_H = 0;
- $brTL_V = 0;
- $brTR_H = 0;
- $brTR_V = 0;
- }
- if (!$this->blk[$blvl]['border_bottom'] || $blockstate == 1 || $divider == 'pagebottom' || $this->keep_block_together) {
- $brBL_H = 0;
- $brBL_V = 0;
- $brBR_H = 0;
- $brBR_V = 0;
- }
-
- // Disallow border-radius if it is smaller than the border width.
- if ($brTL_H < min($border_left, $border_top)) { $brTL_H = $brTL_V = 0; }
- if ($brTL_V < min($border_left, $border_top)) { $brTL_V = $brTL_H = 0; }
- if ($brTR_H < min($border_right, $border_top)) { $brTR_H = $brTR_V = 0; }
- if ($brTR_V < min($border_right, $border_top)) { $brTR_V = $brTR_H = 0; }
- if ($brBL_H < min($border_left, $border_bottom)) { $brBL_H = $brBL_V = 0; }
- if ($brBL_V < min($border_left, $border_bottom)) { $brBL_V = $brBL_H = 0; }
- if ($brBR_H < min($border_right, $border_bottom)) { $brBR_H = $brBR_V = 0; }
- if ($brBR_V < min($border_right, $border_bottom)) { $brBR_V = $brBR_H = 0; }
-
- // CHECK FOR radii that sum to > width or height of div ********
- $f = min($h/($brTL_V + $brBL_V + 0.001), $h/($brTR_V + $brBR_V + 0.001), $w/($brTL_H + $brTR_H + 0.001), $w/($brBL_H + $brBR_H + 0.001));
- if ($f < 1) {
- $brTL_H *= $f;
- $brTL_V *= $f;
- $brTR_H *= $f;
- $brTR_V *= $f;
- $brBL_H *= $f;
- $brBL_V *= $f;
- $brBR_H *= $f;
- $brBR_V *= $f;
- }
-/*-- END BORDER-RADIUS --*/
-
- // BORDERS
- if (isset($this->blk[$blvl]['y0']) && $this->blk[$blvl]['y0']) { $y0 = $this->blk[$blvl]['y0']; }
- $h = $y1 - $y0;
- $w = $this->blk[$blvl]['width'];
-
- //if ($this->blk[$blvl]['border_top']) {
- // Reinstate line above for dotted line divider when block border crosses a page
- if ($this->blk[$blvl]['border_top'] && $divider != 'pagetop' && !$continuingpage) {
- $tbd = $this->blk[$blvl]['border_top'];
- if (isset($tbd['s']) && $tbd['s']) {
- $this->_setBorderLine($tbd);
- if ($tbd['style']=='dotted' || $tbd['style']=='dashed') { $this->_setDashBorder($tbd['style'],$divider,$continuingpage,'T'); }
-/*-- BORDER-RADIUS --*/
- else if (($brTL_V && $brTL_H) || ($brTR_V && $brTR_H)) {
- $this->SetLineJoin(0);
- $this->SetLineCap(0);
- }
- if ($brTR_H && $brTR_V) {
- $this->_out($this->_EllipseArc($x0 + $w - $brTR_H, $y0 + $brTR_V, $brTR_H - $border_top/2 , $brTR_V - $border_top/2 , 1, 2, true));
- }
- else {
-/*-- END BORDER-RADIUS --*/
- $this->_out(sprintf('%.3F %.3F m ',($x0 + $w - ($border_top/2))*_MPDFK, ($this->h-($y0 + ($border_top/2)))*_MPDFK));
-/*-- BORDER-RADIUS --*/
- }
- if ($brTL_H && $brTL_V ) {
- $this->_out(sprintf('%.3F %.3F l ',($x0 + ($border_top/2) + $brTL_H )*_MPDFK, ($this->h-($y0 + ($border_top/2)))*_MPDFK));
- $this->_out($this->_EllipseArc($x0 + $brTL_H, $y0 + $brTL_V, $brTL_H - $border_top/2 , $brTL_V - $border_top/2 , 2, 1));
- }
- else {
-/*-- END BORDER-RADIUS --*/
- $this->_out(sprintf('%.3F %.3F l ',($x0 + ($border_top/2))*_MPDFK, ($this->h-($y0 + ($border_top/2)))*_MPDFK));
-/*-- BORDER-RADIUS --*/
- }
-/*-- END BORDER-RADIUS --*/
- $this->_out('S');
-
- // Reset Corners and Dash off
- $this->SetLineJoin(2);
- $this->SetLineCap(2);
- $this->SetDash();
- }
- }
- //if ($this->blk[$blvl]['border_bottom'] && $blockstate != 1) {
- // Reinstate line above for dotted line divider when block border crosses a page
- if ($this->blk[$blvl]['border_bottom'] && $blockstate != 1 && $divider != 'pagebottom') {
- $tbd = $this->blk[$blvl]['border_bottom'];
- if (isset($tbd['s']) && $tbd['s']) {
- $this->_setBorderLine($tbd);
- if ($tbd['style']=='dotted' || $tbd['style']=='dashed') { $this->_setDashBorder($tbd['style'],$divider,$continuingpage,'B'); }
-/*-- BORDER-RADIUS --*/
- else if (($brBL_V && $brBL_H) || ($brBR_V && $brBR_H)) {
- $this->SetLineJoin(0);
- $this->SetLineCap(0);
- }
- if ($brBL_H && $brBL_V) {
- $this->_out($this->_EllipseArc($x0 + $brBL_H, $y0 + $h - $brBL_V, $brBL_H - $border_bottom/2 , $brBL_V - $border_bottom/2 , 3, 2, true));
- }
- else {
-/*-- END BORDER-RADIUS --*/
- $this->_out(sprintf('%.3F %.3F m ',($x0 + ($border_bottom/2))*_MPDFK, ($this->h-($y0 + $h - ($border_bottom/2)))*_MPDFK));
-/*-- BORDER-RADIUS --*/
- }
- if ($brBR_H && $brBR_V ) {
- $this->_out(sprintf('%.3F %.3F l ',($x0 + $w - ($border_bottom/2) - $brBR_H )*_MPDFK, ($this->h-($y0 + $h - ($border_bottom/2)))*_MPDFK));
- $this->_out($this->_EllipseArc($x0 + $w - $brBR_H, $y0 + $h - $brBR_V, $brBR_H - $border_bottom/2 , $brBR_V - $border_bottom/2 , 4, 1));
- }
- else {
-/*-- END BORDER-RADIUS --*/
- $this->_out(sprintf('%.3F %.3F l ',($x0 + $w - ($border_bottom/2) )*_MPDFK, ($this->h-($y0 + $h - ($border_bottom/2)))*_MPDFK));
-/*-- BORDER-RADIUS --*/
- }
-/*-- END BORDER-RADIUS --*/
- $this->_out('S');
-
- // Reset Corners and Dash off
- $this->SetLineJoin(2);
- $this->SetLineCap(2);
- $this->SetDash();
- }
- }
- if ($this->blk[$blvl]['border_left']) {
- $tbd = $this->blk[$blvl]['border_left'];
- if (isset($tbd['s']) && $tbd['s']) {
- $this->_setBorderLine($tbd);
- if ($tbd['style']=='dotted' || $tbd['style']=='dashed') { $this->_setDashBorder($tbd['style'],$divider,$continuingpage,'L'); }
-/*-- BORDER-RADIUS --*/
- else if (($brTL_V && $brTL_H) || ($brBL_V && $brBL_H)) {
- $this->SetLineJoin(0);
- $this->SetLineCap(0);
- }
- if ($brTL_V && $brTL_H) {
- $this->_out($this->_EllipseArc($x0 + $brTL_H, $y0 + $brTL_V, $brTL_H - $border_left/2 , $brTL_V - $border_left/2, 2, 2, true));
- }
- else {
-/*-- END BORDER-RADIUS --*/
- $this->_out(sprintf('%.3F %.3F m ',($x0 + ($border_left/2))*_MPDFK, ($this->h-($y0 + ($border_left/2)))*_MPDFK));
-/*-- BORDER-RADIUS --*/
- }
- if ($brBL_V && $brBL_H ) {
- $this->_out(sprintf('%.3F %.3F l ',($x0 + ($border_left/2))*_MPDFK, ($this->h-($y0 + $h - ($border_left/2)- $brBL_V) )*_MPDFK));
- $this->_out($this->_EllipseArc($x0 + $brBL_H, $y0 + $h - $brBL_V, $brBL_H - $border_left/2 , $brBL_V - $border_left/2, 3, 1));
- }
- else {
-/*-- END BORDER-RADIUS --*/
- $this->_out(sprintf('%.3F %.3F l ',($x0 + ($border_left/2))*_MPDFK, ($this->h-($y0 + $h - ($border_left/2)) )*_MPDFK));
-/*-- BORDER-RADIUS --*/
- }
-/*-- END BORDER-RADIUS --*/
- $this->_out('S');
-
- // Reset Corners and Dash off
- $this->SetLineJoin(2);
- $this->SetLineCap(2);
- $this->SetDash();
- }
- }
- if ($this->blk[$blvl]['border_right']) {
- $tbd = $this->blk[$blvl]['border_right'];
- if (isset($tbd['s']) && $tbd['s']) {
- $this->_setBorderLine($tbd);
- if ($tbd['style']=='dotted' || $tbd['style']=='dashed') { $this->_setDashBorder($tbd['style'],$divider,$continuingpage,'R'); }
-/*-- BORDER-RADIUS --*/
- else if (($brTR_V && $brTR_H) || ($brBR_V && $brBR_H)) {
- $this->SetLineJoin(0);
- $this->SetLineCap(0);
- }
- if ($brBR_V && $brBR_H) {
- $this->_out($this->_EllipseArc($x0 + $w - $brBR_H, $y0 + $h - $brBR_V, $brBR_H - $border_right/2 , $brBR_V - $border_right/2, 4, 2, true));
- }
- else {
-/*-- END BORDER-RADIUS --*/
- $this->_out(sprintf('%.3F %.3F m ',($x0 + $w - ($border_right/2))*_MPDFK, ($this->h-($y0 + $h - ($border_right/2)))*_MPDFK));
-/*-- BORDER-RADIUS --*/
- }
- if ($brTR_V && $brTR_H ) {
- $this->_out(sprintf('%.3F %.3F l ',($x0 + $w - ($border_right/2))*_MPDFK, ($this->h-($y0 + ($border_right/2) + $brTR_V) )*_MPDFK));
- $this->_out($this->_EllipseArc($x0 + $w - $brTR_H, $y0 + $brTR_V, $brTR_H - $border_right/2 , $brTR_V - $border_right/2, 1, 1));
- }
- else {
-/*-- END BORDER-RADIUS --*/
- $this->_out(sprintf('%.3F %.3F l ',($x0 + $w - ($border_right/2))*_MPDFK, ($this->h-($y0 + ($border_right/2)) )*_MPDFK));
-/*-- BORDER-RADIUS --*/
- }
-/*-- END BORDER-RADIUS --*/
- $this->_out('S');
-
- // Reset Corners and Dash off
- $this->SetLineJoin(2);
- $this->SetLineCap(2);
- $this->SetDash();
- }
- }
-
- if (!$brset) { // not if border-radius used
- $tbcol = $this->ConvertColor(255);
- for($l=0; $l <= $blvl; $l++) {
- if ($this->blk[$l]['bgcolor']) {
- $tbcol = $this->blk[$l]['bgcolorarray'];
- }
- }
- }
- if ($this->blk[$blvl]['border_top'] && $divider != 'pagetop' && !$continuingpage) {
- $tbd = $this->blk[$blvl]['border_top'];
- if (isset($tbd['s']) && $tbd['s']) {
- if (!$brset && $tbd['style']=='double') {
- $this->SetLineWidth($tbd['w']/3);
- $this->SetDColor($tbcol);
- $this->_out(sprintf('%.3F %.3F m %.3F %.3F l S', ($x0 + $w - ($border_top/2))*_MPDFK, ($this->h-($y0 + ($border_top/2)))*_MPDFK, ($x0 + ($border_top/2))*_MPDFK, ($this->h-($y0 + ($border_top/2)))*_MPDFK ));
- }
- }
- }
- if ($this->blk[$blvl]['border_bottom'] && $blockstate != 1 && $divider != 'pagebottom') {
- $tbd = $this->blk[$blvl]['border_bottom'];
- if (isset($tbd['s']) && $tbd['s']) {
- if (!$brset && $tbd['style']=='double') {
- $this->SetLineWidth($tbd['w']/3);
- $this->SetDColor($tbcol);
- $this->_out(sprintf('%.3F %.3F m %.3F %.3F l S', ($x0 + ($border_bottom/2))*_MPDFK, ($this->h-($y0 + $h - ($border_bottom/2)))*_MPDFK, ($x0 + $w - ($border_bottom/2) )*_MPDFK, ($this->h-($y0 + $h - ($border_bottom/2)))*_MPDFK ));
- }
- }
- }
- if ($this->blk[$blvl]['border_left']) {
- $tbd = $this->blk[$blvl]['border_left'];
- if (isset($tbd['s']) && $tbd['s']) {
- if (!$brset && $tbd['style']=='double') {
- $this->SetLineWidth($tbd['w']/3);
- $this->SetDColor($tbcol);
- $this->_out(sprintf('%.3F %.3F m %.3F %.3F l S', ($x0 + ($border_left/2))*_MPDFK, ($this->h-($y0 + ($border_left/2)))*_MPDFK, ($x0 + ($border_left/2))*_MPDFK, ($this->h-($y0 + $h - ($border_left/2)) )*_MPDFK));
- }
- }
- }
- if ($this->blk[$blvl]['border_right']) {
- $tbd = $this->blk[$blvl]['border_right'];
- if (isset($tbd['s']) && $tbd['s']) {
- if (!$brset && $tbd['style']=='double') {
- $this->SetLineWidth($tbd['w']/3);
- $this->SetDColor($tbcol);
- $this->_out(sprintf('%.3F %.3F m %.3F %.3F l S', ($x0 + $w - ($border_right/2))*_MPDFK, ($this->h-($y0 + $h - ($border_right/2)))*_MPDFK, ($x0 + $w - ($border_right/2))*_MPDFK, ($this->h-($y0 + ($border_right/2)) )*_MPDFK));
- }
- }
- }
-
-
- $this->SetDash();
- $this->y = $save_y;
-
-
- // BACKGROUNDS are disabled in columns/kbt/headers - messes up the repositioning in printcolumnbuffer
- if ($this->ColActive || $this->kwt || $this->keep_block_together) { return ; }
-
- $bgx0 = $x0;
- $bgx1 = $x1;
- $bgy0 = $y0;
- $bgy1 = $y1;
-
-/*-- BORDER-RADIUS --*/
- // Defined br values represent the radius of the outer curve - need to take border-width/2 from each radius for drawing the borders
- if (isset($this->blk[$blvl]['background_clip']) && $this->blk[$blvl]['background_clip'] == 'padding-box') {
- $brbgTL_H = max(0, $brTL_H - $this->blk[$blvl]['border_left']['w']);
- $brbgTL_V = max(0, $brTL_V - $this->blk[$blvl]['border_top']['w']);
- $brbgTR_H = max(0, $brTR_H - $this->blk[$blvl]['border_right']['w']);
- $brbgTR_V = max(0, $brTR_V - $this->blk[$blvl]['border_top']['w']);
- $brbgBL_H = max(0, $brBL_H - $this->blk[$blvl]['border_left']['w']);
- $brbgBL_V = max(0, $brBL_V - $this->blk[$blvl]['border_bottom']['w']);
- $brbgBR_H = max(0, $brBR_H - $this->blk[$blvl]['border_right']['w']);
- $brbgBR_V = max(0, $brBR_V - $this->blk[$blvl]['border_bottom']['w']);
- $bgx0 += $this->blk[$blvl]['border_left']['w'];
- $bgx1 -= $this->blk[$blvl]['border_right']['w'];
- if ($this->blk[$blvl]['border_top'] && $divider != 'pagetop' && !$continuingpage) {
- $bgy0 += $this->blk[$blvl]['border_top']['w'];
- }
- if ($this->blk[$blvl]['border_bottom'] && $blockstate != 1 && $divider != 'pagebottom') {
- $bgy1 -= $this->blk[$blvl]['border_bottom']['w'];
- }
- }
- else {
-/*-- END BORDER-RADIUS --*/
- $brbgTL_H = $brTL_H;
- $brbgTL_V = $brTL_V;
- $brbgTR_H = $brTR_H;
- $brbgTR_V = $brTR_V;
- $brbgBL_H = $brBL_H;
- $brbgBL_V = $brBL_V;
- $brbgBR_H = $brBR_H;
- $brbgBR_V = $brBR_V;
-/*-- BORDER-RADIUS --*/
- }
-/*-- END BORDER-RADIUS --*/
-
- // Set clipping path
- $s = ' q 0 w '; // Line width=0
- $s .= sprintf('%.3F %.3F m ', ($bgx0+$brbgTL_H )*_MPDFK, ($this->h-$bgy0)*_MPDFK); // start point TL before the arc
-/*-- BORDER-RADIUS --*/
- if ($brbgTL_H || $brbgTL_V) {
- $s .= $this->_EllipseArc($bgx0+$brbgTL_H, $bgy0+$brbgTL_V, $brbgTL_H , $brbgTL_V , 2); // segment 2 TL
- }
-/*-- END BORDER-RADIUS --*/
- $s .= sprintf('%.3F %.3F l ', ($bgx0)*_MPDFK, ($this->h-($bgy1-$brbgBL_V ))*_MPDFK); // line to BL
-/*-- BORDER-RADIUS --*/
- if ($brbgBL_H || $brbgBL_V) {
- $s .= $this->_EllipseArc($bgx0+$brbgBL_H, $bgy1-$brbgBL_V, $brbgBL_H , $brbgBL_V , 3); // segment 3 BL
- }
-/*-- END BORDER-RADIUS --*/
- $s .= sprintf('%.3F %.3F l ', ($bgx1-$brbgBR_H )*_MPDFK, ($this->h-($bgy1))*_MPDFK); // line to BR
-/*-- BORDER-RADIUS --*/
- if ($brbgBR_H || $brbgBR_V) {
- $s .= $this->_EllipseArc($bgx1-$brbgBR_H, $bgy1-$brbgBR_V, $brbgBR_H , $brbgBR_V , 4); // segment 4 BR
- }
-/*-- END BORDER-RADIUS --*/
- $s .= sprintf('%.3F %.3F l ', ($bgx1)*_MPDFK, ($this->h-($bgy0+$brbgTR_V))*_MPDFK); // line to TR
-/*-- BORDER-RADIUS --*/
- if ($brbgTR_H || $brbgTR_V) {
- $s .= $this->_EllipseArc($bgx1-$brbgTR_H, $bgy0+$brbgTR_V, $brbgTR_H , $brbgTR_V , 1); // segment 1 TR
- }
-/*-- END BORDER-RADIUS --*/
- $s .= sprintf('%.3F %.3F l ', ($bgx0+$brbgTL_H )*_MPDFK, ($this->h-$bgy0)*_MPDFK); // line to TL
-
-
- // mPDF 5.3.A1
- // Box Shadow
- $shadow = '';
- if (isset($this->blk[$blvl]['box_shadow']) && $this->blk[$blvl]['box_shadow'] && $h > 0) {
- foreach($this->blk[$blvl]['box_shadow'] AS $sh) {
- // Colors
- if ($sh['col']{0}==1) {
- $colspace = 'Gray';
- if ($sh['col']{2}==1) { $col1 = '1'.$sh['col'][1].'1'.$sh['col'][3]; }
- else { $col1 = '1'.$sh['col'][1].'1'.chr(100); }
- $col2 = '1'.$sh['col'][1].'1'.chr(0);
- }
- else if ($sh['col']{0}==4) { // CMYK
- $colspace = 'CMYK';
- $col1 = '6'.$sh['col'][1].$sh['col'][2].$sh['col'][3].$sh['col'][4].chr(100);
- $col2 = '6'.$sh['col'][1].$sh['col'][2].$sh['col'][3].$sh['col'][4].chr(0);
- }
- else if ($sh['col']{0}==5) { // RGBa
- $colspace = 'RGB';
- $col1 = '5'.$sh['col'][1].$sh['col'][2].$sh['col'][3].$sh['col'][4];
- $col2 = '5'.$sh['col'][1].$sh['col'][2].$sh['col'][3].chr(0);
- }
- else if ($sh['col']{0}==6) { // CMYKa
- $colspace = 'CMYK';
- $col1 = '6'.$sh['col'][1].$sh['col'][2].$sh['col'][3].$sh['col'][4].$sh['col'][5];
- $col2 = '6'.$sh['col'][1].$sh['col'][2].$sh['col'][3].$sh['col'][4].chr(0);
- }
- else {
- $colspace = 'RGB';
- $col1 = '5'.$sh['col'][1].$sh['col'][2].$sh['col'][3].chr(100);
- $col2 = '5'.$sh['col'][1].$sh['col'][2].$sh['col'][3].chr(0);
- }
-
- // Use clipping path as set above (and rectangle around page) to clip area outside box
- $shadow .= $s; // Use the clipping path with W*
- $shadow .= sprintf('0 %.3F m %.3F %.3F l ', $this->h*_MPDFK, $this->w*_MPDFK, $this->h*_MPDFK);
- $shadow .= sprintf('%.3F 0 l 0 0 l 0 %.3F l ', $this->w*_MPDFK, $this->h*_MPDFK);
- $shadow .= 'W n'."\n";
-
- $sh['blur'] = abs($sh['blur']); // cannot have negative blur value
- // Ensure spread/blur do not make effective shadow width/height < 0
- // Could do more complex things but this just adjusts spread value
- if (-$sh['spread'] + $sh['blur']/2 > min($w/2, $h/2)) {
- $sh['spread'] = $sh['blur']/2 - min($w/2, $h/2) + 0.01;
- }
- // Shadow Offset
- if ($sh['x'] || $sh['y']) $shadow .= sprintf(' q 1 0 0 1 %.4F %.4F cm', $sh['x']*_MPDFK, -$sh['y']*_MPDFK)."\n";
-
- // Set path for INNER shadow
- $shadow .= ' q 0 w ';
- $shadow .= $this->SetFColor($col1, true)."\n";
- if ($col1{0}==5 && ord($col1{4})<100) { // RGBa
- $shadow .= $this->SetAlpha(ord($col1{4})/100, 'Normal', true, 'F')."\n";
- }
- else if ($col1{0}==6 && ord($col1{5})<100) { // CMYKa
- $shadow .= $this->SetAlpha(ord($col1{5})/100, 'Normal', true, 'F')."\n";
- }
- else if ($col1{0}==1 && $col1{2}==1 && ord($col1{3})<100) { // Gray
- $shadow .= $this->SetAlpha(ord($col1{3})/100, 'Normal', true, 'F')."\n";
- }
-
- // Blur edges
- $mag = 0.551784; // Bezier Control magic number for 4-part spline for circle/ellipse
- $mag2 = 0.551784; // Bezier Control magic number to fill in edge of blurred rectangle
- $d1 = $sh['spread']+$sh['blur']/2;
- $d2 = $sh['spread']-$sh['blur']/2;
- $bl = $sh['blur'];
- $x00 = $x0 - $d1;
- $y00 = $y0 - $d1;
- $w00 = $w + $d1*2;
- $h00 = $h + $d1*2;
-
- // If any border-radius is greater width-negative spread(inner edge), ignore radii for shadow or screws up
- $flatten = false;
- if (max($brbgTR_H, $brbgTL_H, $brbgBR_H, $brbgBL_H) >= $w+$d2) { $flatten = true; }
- if (max($brbgTR_V, $brbgTL_V, $brbgBR_V, $brbgBL_V) >= $h+$d2) { $flatten = true; }
-
-
- // TOP RIGHT corner
- $p1x = $x00+$w00-$d1-$brbgTR_H; $p1c2x = $p1x +($d2+$brbgTR_H)*$mag;
- $p1y = $y00+$bl;
- $p2x = $x00+$w00-$d1-$brbgTR_H; $p2c2x = $p2x + ($d1+$brbgTR_H)*$mag;
- $p2y = $y00; $p2c1y = $p2y + $bl/2;
- $p3x = $x00+$w00; $p3c2x = $p3x - $bl/2;
- $p3y = $y00+$d1+$brbgTR_V; $p3c1y = $p3y - ($d1+$brbgTR_V)*$mag;
- $p4x = $x00+$w00-$bl;
- $p4y = $y00+$d1+$brbgTR_V; $p4c2y = $p4y - ($d2+$brbgTR_V)*$mag;
- if (-$d2 > min($brbgTR_H, $brbgTR_V) || $flatten) {
- $p1x = $x00+$w00-$bl; $p1c2x = $p1x;
- $p2x = $x00+$w00-$bl; $p2c2x = $p2x + $bl*$mag2;
- $p3y = $y00+$bl; $p3c1y = $p3y - $bl*$mag2;
- $p4y = $y00+$bl; $p4c2y = $p4y ;
- }
-
- $shadow .= sprintf('%.3F %.3F m ', ($p1x )*_MPDFK, ($this->h-($p1y ))*_MPDFK);
- $shadow .= sprintf('%.3F %.3F %.3F %.3F %.3F %.3F c ', ($p1c2x)*_MPDFK, ($this->h-($p1y))*_MPDFK, ($p4x)*_MPDFK, ($this->h-($p4c2y))*_MPDFK, ($p4x)*_MPDFK, ($this->h-($p4y))*_MPDFK);
- $patch_array[0]['f']=0;
- $patch_array[0]['points']=array($p1x,$p1y, $p1x,$p1y,
- $p2x,$p2c1y, $p2x,$p2y, $p2c2x,$p2y,
- $p3x,$p3c1y, $p3x,$p3y, $p3c2x,$p3y,
- $p4x,$p4y, $p4x,$p4y, $p4x,$p4c2y,
- $p1c2x,$p1y);
- $patch_array[0]['colors'] = array($col1,$col2,$col2,$col1);
-
-
- // RIGHT
- $p1x = $x00+$w00; // control point only matches p3 preceding
- $p1y = $y00+$d1+$brbgTR_V;
- $p2x = $x00+$w00-$bl; // control point only matches p4 preceding
- $p2y = $y00+$d1+$brbgTR_V;
- $p3x = $x00+$w00-$bl;
- $p3y = $y00+$h00-$d1-$brbgBR_V;
- $p4x = $x00+$w00; $p4c1x = $p4x-$bl/2;
- $p4y = $y00+$h00-$d1-$brbgBR_V;
- if (-$d2 > min($brbgTR_H, $brbgTR_V) || $flatten) {
- $p1y = $y00+$bl;
- $p2y = $y00+$bl;
- }
- if (-$d2 > min($brbgBR_H, $brbgBR_V) || $flatten) {
- $p3y = $y00+$h00-$bl;
- $p4y = $y00+$h00-$bl;
- }
-
- $shadow .= sprintf('%.3F %.3F l ', ($p3x )*_MPDFK, ($this->h-($p3y ))*_MPDFK);
- $patch_array[1]['f']=2;
- $patch_array[1]['points']=array($p2x,$p2y,
- $p3x,$p3y, $p3x,$p3y, $p3x,$p3y,
- $p4c1x,$p4y, $p4x,$p4y, $p4x,$p4y,
- $p1x,$p1y);
- $patch_array[1]['colors'] = array($col1,$col2);
-
-
- // BOTTOM RIGHT corner
- $p1x = $x00+$w00-$bl; // control points only matches p3 preceding
- $p1y = $y00+$h00-$d1-$brbgBR_V; $p1c2y = $p1y + ($d2+$brbgBR_V)*$mag;
- $p2x = $x00+$w00; // control point only matches p4 preceding
- $p2y = $y00+$h00-$d1-$brbgBR_V; $p2c2y = $p2y + ($d1+$brbgBR_V)*$mag;
- $p3x = $x00+$w00-$d1-$brbgBR_H; $p3c1x = $p3x + ($d1+$brbgBR_H)*$mag;
- $p3y = $y00+$h00; $p3c2y = $p3y - $bl/2;
- $p4x = $x00+$w00-$d1-$brbgBR_H; $p4c2x = $p4x + ($d2+$brbgBR_H)*$mag;
- $p4y = $y00+$h00-$bl;
-
- if (-$d2 > min($brbgBR_H, $brbgBR_V) || $flatten) {
- $p1y = $y00+$h00-$bl; $p1c2y = $p1y;
- $p2y = $y00+$h00-$bl; $p2c2y = $p2y + $bl*$mag2;
- $p3x = $x00+$w00-$bl; $p3c1x = $p3x + $bl*$mag2;
- $p4x = $x00+$w00-$bl; $p4c2x = $p4x;
- }
-
- $shadow .= sprintf('%.3F %.3F %.3F %.3F %.3F %.3F c ', ($p1x)*_MPDFK, ($this->h-($p1c2y))*_MPDFK, ($p4c2x)*_MPDFK, ($this->h-($p4y))*_MPDFK, ($p4x)*_MPDFK, ($this->h-($p4y))*_MPDFK);
- $patch_array[2]['f']=2;
- $patch_array[2]['points']=array($p2x,$p2c2y,
- $p3c1x,$p3y, $p3x,$p3y, $p3x,$p3c2y,
- $p4x,$p4y, $p4x,$p4y, $p4c2x,$p4y,
- $p1x,$p1c2y);
- $patch_array[2]['colors'] = array($col2,$col1);
-
-
-
- // BOTTOM
- $p1x = $x00+$w00-$d1-$brbgBR_H; // control point only matches p3 preceding
- $p1y = $y00+$h00;
- $p2x = $x00+$w00-$d1-$brbgBR_H; // control point only matches p4 preceding
- $p2y = $y00+$h00-$bl;
- $p3x = $x00+$d1+$brbgBL_H;
- $p3y = $y00+$h00-$bl;
- $p4x = $x00+$d1+$brbgBL_H;
- $p4y = $y00+$h00; $p4c1y = $p4y - $bl/2;
-
- if (-$d2 > min($brbgBR_H, $brbgBR_V) || $flatten) {
- $p1x = $x00+$w00-$bl;
- $p2x = $x00+$w00-$bl;
- }
- if (-$d2 > min($brbgBL_H, $brbgBL_V) || $flatten) {
- $p3x = $x00+$bl;
- $p4x = $x00+$bl;
- }
-
- $shadow .= sprintf('%.3F %.3F l ', ($p3x )*_MPDFK, ($this->h-($p3y ))*_MPDFK);
- $patch_array[3]['f']=2;
- $patch_array[3]['points']=array($p2x,$p2y,
- $p3x,$p3y, $p3x,$p3y, $p3x,$p3y,
- $p4x,$p4c1y, $p4x,$p4y, $p4x,$p4y,
- $p1x,$p1y);
- $patch_array[3]['colors'] = array($col1,$col2);
-
- // BOTTOM LEFT corner
- $p1x = $x00+$d1+$brbgBL_H; $p1c2x = $p1x - ($d2+$brbgBL_H)*$mag; // control points only matches p3 preceding
- $p1y = $y00+$h00-$bl;
- $p2x = $x00+$d1+$brbgBL_H; $p2c2x = $p2x - ($d1+$brbgBL_H)*$mag; // control point only matches p4 preceding
- $p2y = $y00+$h00;
- $p3x = $x00; $p3c2x = $p3x + $bl/2;
- $p3y = $y00+$h00-$d1-$brbgBL_V; $p3c1y = $p3y + ($d1+$brbgBL_V)*$mag;
- $p4x = $x00+$bl;
- $p4y = $y00+$h00-$d1-$brbgBL_V; $p4c2y = $p4y + ($d2+$brbgBL_V)*$mag;
- if (-$d2 > min($brbgBL_H, $brbgBL_V) || $flatten) {
- $p1x = $x00+$bl; $p1c2x = $p1x;
- $p2x = $x00+$bl; $p2c2x = $p2x - $bl*$mag2;
- $p3y = $y00+$h00-$bl; $p3c1y = $p3y + $bl*$mag2;
- $p4y = $y00+$h00-$bl; $p4c2y = $p4y;
- }
-
- $shadow .= sprintf('%.3F %.3F %.3F %.3F %.3F %.3F c ', ($p1c2x)*_MPDFK, ($this->h-($p1y))*_MPDFK, ($p4x)*_MPDFK, ($this->h-($p4c2y))*_MPDFK, ($p4x)*_MPDFK, ($this->h-($p4y))*_MPDFK);
- $patch_array[4]['f']=2;
- $patch_array[4]['points']=array($p2c2x,$p2y,
- $p3x,$p3c1y, $p3x,$p3y, $p3c2x,$p3y,
- $p4x,$p4y, $p4x,$p4y, $p4x,$p4c2y,
- $p1c2x,$p1y);
- $patch_array[4]['colors'] = array($col2,$col1);
-
-
- // LEFT - joins on the right (C3-C4 of previous): f = 2
- $p1x = $x00; // control point only matches p3 preceding
- $p1y = $y00+$h00-$d1-$brbgBL_V;
- $p2x = $x00+$bl; // control point only matches p4 preceding
- $p2y = $y00+$h00-$d1-$brbgBL_V;
- $p3x = $x00+$bl;
- $p3y = $y00+$d1+$brbgTL_V;
- $p4x = $x00; $p4c1x = $p4x + $bl/2;
- $p4y = $y00+$d1+$brbgTL_V;
- if (-$d2 > min($brbgBL_H, $brbgBL_V) || $flatten) {
- $p1y = $y00+$h00-$bl;
- $p2y = $y00+$h00-$bl;
- }
- if (-$d2 > min($brbgTL_H, $brbgTL_V) || $flatten) {
- $p3y = $y00+$bl;
- $p4y = $y00+$bl;
- }
-
- $shadow .= sprintf('%.3F %.3F l ', ($p3x )*_MPDFK, ($this->h-($p3y ))*_MPDFK);
- $patch_array[5]['f']=2;
- $patch_array[5]['points']=array($p2x,$p2y,
- $p3x,$p3y, $p3x,$p3y, $p3x,$p3y,
- $p4c1x,$p4y, $p4x,$p4y, $p4x,$p4y,
- $p1x,$p1y);
- $patch_array[5]['colors'] = array($col1,$col2);
-
- // TOP LEFT corner
- $p1x = $x00+$bl; // control points only matches p3 preceding
- $p1y = $y00+$d1+$brbgTL_V; $p1c2y = $p1y - ($d2+$brbgTL_V)*$mag;
- $p2x = $x00; // control point only matches p4 preceding
- $p2y = $y00+$d1+$brbgTL_V; $p2c2y = $p2y - ($d1+$brbgTL_V)*$mag;
- $p3x = $x00+$d1+$brbgTL_H; $p3c1x = $p3x - ($d1+$brbgTL_H)*$mag;
- $p3y = $y00; $p3c2y = $p3y + $bl/2;
- $p4x = $x00+$d1+$brbgTL_H; $p4c2x = $p4x - ($d2+$brbgTL_H)*$mag;
- $p4y = $y00+$bl;
-
- if (-$d2 > min($brbgTL_H, $brbgTL_V) || $flatten) {
- $p1y = $y00+$bl; $p1c2y = $p1y;
- $p2y = $y00+$bl; $p2c2y = $p2y - $bl*$mag2;
- $p3x = $x00+$bl; $p3c1x = $p3x - $bl*$mag2;
- $p4x = $x00+$bl; $p4c2x = $p4x ;
- }
-
- $shadow .= sprintf('%.3F %.3F %.3F %.3F %.3F %.3F c ', ($p1x)*_MPDFK, ($this->h-($p1c2y))*_MPDFK, ($p4c2x)*_MPDFK, ($this->h-($p4y))*_MPDFK, ($p4x)*_MPDFK, ($this->h-($p4y))*_MPDFK);
- $patch_array[6]['f']=2;
- $patch_array[6]['points']=array($p2x,$p2c2y,
- $p3c1x,$p3y, $p3x,$p3y, $p3x,$p3c2y,
- $p4x,$p4y, $p4x,$p4y, $p4c2x,$p4y,
- $p1x,$p1c2y);
- $patch_array[6]['colors'] = array($col2,$col1);
-
-
- // TOP - joins on the right (C3-C4 of previous): f = 2
- $p1x = $x00+$d1+$brbgTL_H; // control point only matches p3 preceding
- $p1y = $y00;
- $p2x = $x00+$d1+$brbgTL_H; // control point only matches p4 preceding
- $p2y = $y00+$bl;
- $p3x = $x00+$w00-$d1-$brbgTR_H;
- $p3y = $y00+$bl;
- $p4x = $x00+$w00-$d1-$brbgTR_H;
- $p4y = $y00; $p4c1y = $p4y + $bl/2;
- if (-$d2 > min($brbgTL_H, $brbgTL_V) || $flatten) {
- $p1x = $x00+$bl;
- $p2x = $x00+$bl;
- }
- if (-$d2 > min($brbgTR_H, $brbgTR_V) || $flatten) {
- $p3x = $x00+$w00-$bl;
- $p4x = $x00+$w00-$bl;
- }
-
- $shadow .= sprintf('%.3F %.3F l ', ($p3x )*_MPDFK, ($this->h-($p3y ))*_MPDFK);
- $patch_array[7]['f']=2;
- $patch_array[7]['points']=array($p2x,$p2y,
- $p3x,$p3y, $p3x,$p3y, $p3x,$p3y,
- $p4x,$p4c1y, $p4x,$p4y, $p4x,$p4y,
- $p1x,$p1y);
- $patch_array[7]['colors'] = array($col1,$col2);
-
- $shadow .= ' h f Q '."\n"; // Close path and Fill the inner solid shadow
-
- if ($bl) $shadow .= $this->grad->CoonsPatchMesh($x00,$y00,$w00,$h00,$patch_array,$x00,$x00+$w00,$y00,$y00+$h00, $colspace, true);
-
- if ($sh['x'] || $sh['y']) $shadow .= ' Q'."\n"; // Shadow Offset
- $shadow .= ' Q'."\n"; // Ends path no-op & Sets the clipping path
-
- }
- }
-
- $s .= ' W n '; // Ends path no-op & Sets the clipping path
-
- if ($this->blk[$blvl]['bgcolor']) {
- $this->pageBackgrounds[$blvl][] = array('x'=>$x0, 'y'=>$y0, 'w'=>$w, 'h'=>$h, 'col'=>$this->blk[$blvl]['bgcolorarray'], 'clippath'=>$s, 'visibility'=>$this->visibility, 'shadow'=>$shadow); // mPDF 5.3.42 // mPDF 5.3.A1
- }
- // mPDF 5.3.A1
- else if ($shadow) {
- $this->pageBackgrounds[$blvl][] = array('shadowonly'=>true, 'col'=>'', 'clippath'=>'', 'visibility'=>$this->visibility, 'shadow'=>$shadow); // mPDF 5.3.42 // mPDF 5.3.A1
- }
-
-/*-- BACKGROUNDS --*/
- if (isset($this->blk[$blvl]['gradient'])) {
- $g = $this->grad->parseBackgroundGradient($this->blk[$blvl]['gradient']);
- if ($g) {
- $gx = $x0;
- $gy = $y0;
- $this->pageBackgrounds[$blvl][] = array('gradient'=>true, 'x'=>$gx, 'y'=>$gy, 'w'=>$w, 'h'=>$h, 'gradtype'=>$g['type'], 'stops'=>$g['stops'], 'colorspace'=>$g['colorspace'], 'coords'=>$g['coords'], 'extend'=>$g['extend'], 'clippath'=>$s, 'visibility'=>$this->visibility); // mPDF 5.3.42
- }
- }
-
- if (isset($this->blk[$blvl]['background-image'])) {
- if ($this->blk[$blvl]['background-image']['gradient'] && preg_match('/(-moz-)*(repeating-)*(linear|radial)-gradient/', $this->blk[$blvl]['background-image']['gradient'] )) {
- $g = $this->grad->parseMozGradient( $this->blk[$blvl]['background-image']['gradient'] );
- if ($g) {
- $gx = $x0;
- $gy = $y0;
- $this->pageBackgrounds[$blvl][] = array('gradient'=>true, 'x'=>$gx, 'y'=>$gy, 'w'=>$w, 'h'=>$h, 'gradtype'=>$g['type'], 'stops'=>$g['stops'], 'colorspace'=>$g['colorspace'], 'coords'=>$g['coords'], 'extend'=>$g['extend'], 'clippath'=>$s, 'visibility'=>$this->visibility); // mPDF 5.3.42
- }
- }
- else {
- $image_id = $this->blk[$blvl]['background-image']['image_id'];
- $orig_w = $this->blk[$blvl]['background-image']['orig_w'];
- $orig_h = $this->blk[$blvl]['background-image']['orig_h'];
- $x_pos = $this->blk[$blvl]['background-image']['x_pos'];
- $y_pos = $this->blk[$blvl]['background-image']['y_pos'];
- $x_repeat = $this->blk[$blvl]['background-image']['x_repeat'];
- $y_repeat = $this->blk[$blvl]['background-image']['y_repeat'];
- $resize = $this->blk[$blvl]['background-image']['resize'];
- $opacity = $this->blk[$blvl]['background-image']['opacity'];
- $itype = $this->blk[$blvl]['background-image']['itype'];
- $this->pageBackgrounds[$blvl][] = array('x'=>$x0, 'y'=>$y0, 'w'=>$w, 'h'=>$h, 'image_id'=>$image_id, 'orig_w'=>$orig_w, 'orig_h'=>$orig_h, 'x_pos'=>$x_pos, 'y_pos'=>$y_pos, 'x_repeat'=>$x_repeat, 'y_repeat'=>$y_repeat, 'clippath'=>$s, 'resize'=>$resize, 'opacity'=>$opacity, 'itype'=>$itype, 'visibility'=>$this->visibility); // mPDF 5.3.42
- }
- }
-/*-- END BACKGROUNDS --*/
-
- // Float DIV
- $this->blk[$blvl]['bb_painted'][$this->page] = true;
-
-}
-
-/*-- BORDER-RADIUS --*/
-
-function _EllipseArc($x0, $y0, $rx, $ry, $seg = 1, $part=false, $start=false) { // Anticlockwise segment 1-4 TR-TL-BL-BR (part=1 or 2)
- $s = '';
- if ($rx<0) { $rx = 0; }
- if ($ry<0) { $ry = 0; }
- $rx *= _MPDFK;
- $ry *= _MPDFK;
- $astart = 0;
- if ($seg == 1) { // Top Right
- $afinish = 90;
- $nSeg = 4;
- }
- else if ($seg == 2) { // Top Left
- $afinish = 180;
- $nSeg = 8;
- }
- else if ($seg == 3) { // Bottom Left
- $afinish = 270;
- $nSeg = 12;
- }
- else { // Bottom Right
- $afinish = 360;
- $nSeg = 16;
- }
- $astart = deg2rad((float) $astart);
- $afinish = deg2rad((float) $afinish);
- $totalAngle = $afinish - $astart;
- $dt = $totalAngle / $nSeg; // segment angle
- $dtm = $dt/3;
- $x0 *= _MPDFK;
- $y0 = ($this->h - $y0) * _MPDFK;
- $t1 = $astart;
- $a0 = $x0 + ($rx * cos($t1));
- $b0 = $y0 + ($ry * sin($t1));
- $c0 = -$rx * sin($t1);
- $d0 = $ry * cos($t1);
- $op = false;
- for ($i = 1; $i <= $nSeg; $i++) {
- // Draw this bit of the total curve
- $t1 = ($i * $dt) + $astart;
- $a1 = $x0 + ($rx * cos($t1));
- $b1 = $y0 + ($ry * sin($t1));
- $c1 = -$rx * sin($t1);
- $d1 = $ry * cos($t1);
- if ($i>($nSeg-4) && (!$part || ($part == 1 && $i<=$nSeg-2) || ($part == 2 && $i>$nSeg-2))) {
- if ($start && !$op) {
- $s .= sprintf('%.3F %.3F m ', $a0, $b0);
- }
- $s .= sprintf('%.3F %.3F %.3F %.3F %.3F %.3F c ', ($a0 + ($c0 * $dtm)), ($b0 + ($d0 * $dtm)), ($a1 - ($c1 * $dtm)) , ($b1 - ($d1 * $dtm)), $a1 , $b1 );
- $op = true;
- }
- $a0 = $a1;
- $b0 = $b1;
- $c0 = $c1;
- $d0 = $d1;
- }
- return $s;
-}
-/*-- END BORDER-RADIUS --*/
-
-
-
-function PaintDivLnBorder($state=0,$blvl=0,$h) {
- // $state = 0 normal; 1 top; 2 bottom; 3 top and bottom
-
- $this->ColDetails[$this->CurrCol]['bottom_margin'] = $this->y + $h;
-
- $save_y = $this->y;
-
- $w = $this->blk[$blvl]['width'];
- $x0 = $this->x; // left
- $y0 = $this->y; // top
- $x1 = $this->x + $w; // bottom
- $y1 = $this->y + $h; // bottom
-
- if ($this->blk[$blvl]['border_top'] && ($state==1 || $state==3)) {
- $tbd = $this->blk[$blvl]['border_top'];
- if (isset($tbd['s']) && $tbd['s']) {
- $this->_setBorderLine($tbd);
- $this->y = $y0 + ($tbd['w']/2);
- if ($tbd['style']=='dotted' || $tbd['style']=='dashed') { $this->_setDashBorder($tbd['style'],'',$continuingpage,'T'); }
- $this->Line($x0 + ($tbd['w']/2) , $this->y , $x0 + $w - ($tbd['w']/2), $this->y);
- $this->y += $tbd['w'];
- // Reset Corners and Dash off
- $this->SetLineJoin(2);
- $this->SetLineCap(2);
- $this->SetDash();
- }
- }
- if ($this->blk[$blvl]['border_left']) {
- $tbd = $this->blk[$blvl]['border_left'];
- if (isset($tbd['s']) && $tbd['s']) {
- $this->_setBorderLine($tbd);
- $this->y = $y0 + ($tbd['w']/2);
- if ($tbd['style']=='dotted' || $tbd['style']=='dashed') { $this->_setDashBorder($tbd['style'],'',$continuingpage,'L'); }
- $this->Line($x0 + ($tbd['w']/2), $this->y, $x0 + ($tbd['w']/2), $y0 + $h -($tbd['w']/2));
- $this->y += $tbd['w'];
- // Reset Corners and Dash off
- $this->SetLineJoin(2);
- $this->SetLineCap(2);
- $this->SetDash();
- }
- }
- if ($this->blk[$blvl]['border_right']) {
- $tbd = $this->blk[$blvl]['border_right'];
- if (isset($tbd['s']) && $tbd['s']) {
- $this->_setBorderLine($tbd);
- $this->y = $y0 + ($tbd['w']/2);
- if ($tbd['style']=='dotted' || $tbd['style']=='dashed') { $this->_setDashBorder($tbd['style'],'',$continuingpage,'R'); }
- $this->Line($x0 + $w - ($tbd['w']/2), $this->y, $x0 + $w - ($tbd['w']/2), $y0 + $h - ($tbd['w']/2));
- $this->y += $tbd['w'];
- // Reset Corners and Dash off
- $this->SetLineJoin(2);
- $this->SetLineCap(2);
- $this->SetDash();
- }
- }
- if ($this->blk[$blvl]['border_bottom'] && $state > 1) {
- $tbd = $this->blk[$blvl]['border_bottom'];
- if (isset($tbd['s']) && $tbd['s']) {
- $this->_setBorderLine($tbd);
- $this->y = $y0 + $h - ($tbd['w']/2);
- if ($tbd['style']=='dotted' || $tbd['style']=='dashed') { $this->_setDashBorder($tbd['style'],'',$continuingpage,'B'); }
- $this->Line($x0 + ($tbd['w']/2) , $this->y, $x0 + $w - ($tbd['w']/2), $this->y);
- $this->y += $tbd['w'];
- // Reset Corners and Dash off
- $this->SetLineJoin(2);
- $this->SetLineCap(2);
- $this->SetDash();
- }
- }
- $this->SetDash();
- $this->y = $save_y;
-}
-
-
-function PaintImgBorder($objattr,$is_table) {
- // Borders are disabled in columns - messes up the repositioning in printcolumnbuffer
- if ($this->ColActive) { return ; } // *COLUMNS*
- if ($is_table) { $k = $this->shrin_k; } else { $k = 1; }
- $h = (isset($objattr['BORDER-HEIGHT']) ? $objattr['BORDER-HEIGHT'] : 0);
- $w = (isset($objattr['BORDER-WIDTH']) ? $objattr['BORDER-WIDTH'] : 0);
- $x0 = (isset($objattr['BORDER-X']) ? $objattr['BORDER-X'] : 0);
- $y0 = (isset($objattr['BORDER-Y']) ? $objattr['BORDER-Y'] : 0);
-
- // BORDERS
- if ($objattr['border_top']) {
- $tbd = $objattr['border_top'];
- if (!empty($tbd['s'])) {
- $this->_setBorderLine($tbd,$k);
- if ($tbd['style']=='dotted' || $tbd['style']=='dashed') { $this->_setDashBorder($tbd['style'],'','','T'); }
- $this->Line($x0, $y0, $x0 + $w, $y0);
- // Reset Corners and Dash off
- $this->SetLineJoin(2);
- $this->SetLineCap(2);
- $this->SetDash();
- }
- }
- if ($objattr['border_left']) {
- $tbd = $objattr['border_left'];
- if (!empty($tbd['s'])) {
- $this->_setBorderLine($tbd,$k);
- if ($tbd['style']=='dotted' || $tbd['style']=='dashed') { $this->_setDashBorder($tbd['style'],'','','L'); }
- $this->Line($x0, $y0, $x0, $y0 + $h);
- // Reset Corners and Dash off
- $this->SetLineJoin(2);
- $this->SetLineCap(2);
- $this->SetDash();
- }
- }
- if ($objattr['border_right']) {
- $tbd = $objattr['border_right'];
- if (!empty($tbd['s'])) {
- $this->_setBorderLine($tbd,$k);
- if ($tbd['style']=='dotted' || $tbd['style']=='dashed') { $this->_setDashBorder($tbd['style'],'','','R'); }
- $this->Line($x0 + $w, $y0, $x0 + $w, $y0 + $h);
- // Reset Corners and Dash off
- $this->SetLineJoin(2);
- $this->SetLineCap(2);
- $this->SetDash();
- }
- }
- if ($objattr['border_bottom']) {
- $tbd = $objattr['border_bottom'];
- if (!empty($tbd['s'])) {
- $this->_setBorderLine($tbd,$k);
- if ($tbd['style']=='dotted' || $tbd['style']=='dashed') { $this->_setDashBorder($tbd['style'],'','','B'); }
- $this->Line($x0, $y0 + $h, $x0 + $w, $y0 + $h);
- // Reset Corners and Dash off
- $this->SetLineJoin(2);
- $this->SetLineCap(2);
- $this->SetDash();
- }
- }
- $this->SetDash();
- $this->SetAlpha(1);
-}
-
-/*-- END HTML-CSS --*/
-
-
-
-
-function Reset() {
- $this->SetTColor($this->ConvertColor(0));
- $this->SetDColor($this->ConvertColor(0));
- $this->SetFColor($this->ConvertColor(255));
- $this->SetAlpha(1);
- $this->colorarray = ''; // mPDF 5.3.76
-
- $this->spanbgcolorarray = ''; // mPDF 5.3.76
- $this->spanbgcolor = false;
- // mPDF 5.3.61
- $this->spanborder = false;
- $this->spanborddet = array();
-
- $this->ResetStyles();
-
- $this->HREF = '';
- $this->outlineparam = array();
- $this->outline_on = false;
- $this->SetTextOutline(false);
-
- $this->SUP = false;
- $this->SUB = false;
- $this->strike = false;
- $this->textshadow = ''; // mPDF 5.3.A2
-
- $this->SetFont($this->default_font,'',0,false);
- $this->SetFontSize($this->default_font_size,false);
-
- $this->currentfontfamily = '';
- $this->currentfontsize = '';
-
-/*-- TABLES --*/
- if ($this->tableLevel) {
- $this->SetLineHeight('',$this->table_lineheight); // *TABLES*
- }
- else
-/*-- END TABLES --*/
-/*-- LISTS --*/
-
- if ($this->listlvl && $this->list_lineheight[$this->listlvl][$this->bulletarray['occur']]) {
- $this->SetLineHeight('',$this->list_lineheight[$this->listlvl][$this->bulletarray['occur']]); // sets default line height
- }
- else
-/*-- END LISTS --*/
- if (isset($this->blk[$this->blklvl]['line_height']) && $this->blk[$this->blklvl]['line_height']) {
- $this->SetLineHeight('',$this->blk[$this->blklvl]['line_height']); // sets default line height
- }
-
- $this->toupper = false;
- $this->tolower = false;
- $this->kerning = false;
- $this->lSpacingCSS = '';
- $this->wSpacingCSS = '';
- $this->fixedlSpacing = false;
- $this->minwSpacing = 0;
- $this->capitalize = false;
- $this->SetDash(); //restore to no dash
- $this->dash_on = false;
- $this->dotted_on = false;
- $this->divwidth = 0;
- $this->divheight = 0;
- $this->divalign = '';
- $this->divrevert = false;
- $this->oldy = -1;
-
- $bodystyle = array();
- if (isset($this->CSS['BODY']['FONT-STYLE'])) { $bodystyle['FONT-STYLE'] = $this->CSS['BODY']['FONT-STYLE']; }
- if (isset($this->CSS['BODY']['FONT-WEIGHT'])) { $bodystyle['FONT-WEIGHT'] = $this->CSS['BODY']['FONT-WEIGHT']; }
- if (isset($this->CSS['BODY']['COLOR'])) { $bodystyle['COLOR'] = $this->CSS['BODY']['COLOR']; }
- if (isset($bodystyle)) { $this->setCSS($bodystyle,'BLOCK','BODY'); }
-
-}
-
-/*-- HTML-CSS --*/
-function ReadMetaTags($html) {
- // changes anykey=anyvalue to anykey="anyvalue" (only do this when this happens inside tags)
- $regexp = '/ (\\w+?)=([^\\s>"]+)/si';
- $html = preg_replace($regexp," \$1=\"\$2\"",$html);
- if (preg_match('/(.*?)<\/title>/si',$html,$m)) {
- $this->SetTitle($m[1]);
- }
- preg_match_all('/ ]*?(name|content)="([^>]*?)" [^>]*?(name|content)="([^>]*?)".*?>/si',$html,$aux);
- $firstattr = $aux[1];
- $secondattr = $aux[3];
- for( $i = 0 ; $i < count($aux[0]) ; $i++) {
-
- $name = ( strtoupper($firstattr[$i]) == "NAME" )? strtoupper($aux[2][$i]) : strtoupper($aux[4][$i]);
- $content = ( strtoupper($firstattr[$i]) == "CONTENT" )? $aux[2][$i] : $aux[4][$i];
- switch($name) {
- case "KEYWORDS": $this->SetKeywords($content); break;
- case "AUTHOR": $this->SetAuthor($content); break;
- case "DESCRIPTION": $this->SetSubject($content); break;
- }
- }
-}
-
-
-function ReadCharset($html) {
- // Charset conversion
- if ($this->allow_charset_conversion) {
- if (preg_match('//si',$html,$m)) {
- if (strtoupper($m[1]) != 'UTF-8') {
- $this->charset_in = strtoupper($m[1]);
- }
- }
- }
-}
-/*-- END HTML-CSS --*/
-
-//////////////////
-/// CSS parser ///
-//////////////////
-//////////////////
-/// CSS parser ///
-//////////////////
-//////////////////
-/// CSS parser ///
-//////////////////
-
-/*-- HTML-CSS --*/
-function ReadDefaultCSS($CSSstr) {
- $CSS = array();
- $CSSstr = preg_replace('|/\*.*?\*/|s',' ',$CSSstr);
- $CSSstr = preg_replace('/[\s\n\r\t\f]/s',' ',$CSSstr);
- $CSSstr = preg_replace('/(<\!\-\-|\-\->)/s',' ',$CSSstr);
- if ($CSSstr ) {
- preg_match_all('/(.*?)\{(.*?)\}/',$CSSstr,$styles);
- for($i=0; $i < count($styles[1]) ; $i++) {
- $stylestr= trim($styles[2][$i]);
- $stylearr = explode(';',$stylestr);
- foreach($stylearr AS $sta) {
- if (trim($sta)) {
- // Changed to allow style="background: url('http://www.bpm1.com/bg.jpg')"
- list($property,$value) = explode(':',$sta,2);
- $property = trim($property);
- $value = preg_replace('/\s*!important/i','',$value);
- $value = trim($value);
- if ($property && ($value || $value==='0')) {
- $classproperties[strtoupper($property)] = $value;
- }
- }
- }
- $classproperties = $this->fixCSS($classproperties);
- $tagstr = strtoupper(trim($styles[1][$i]));
- $tagarr = explode(',',$tagstr);
- foreach($tagarr AS $tg) {
- $tags = preg_split('/\s+/',trim($tg));
- $level = count($tags);
- if ($level == 1) { // e.g. p or .class or #id or p.class or p#id
- $t = trim($tags[0]);
- if ($t) {
- $tag = '';
- if (preg_match('/^('.$this->allowedCSStags.')$/',$t)) { $tag= $t; }
- if ($this->CSS[$tag] && $tag) { $CSS[$tag] = $this->array_merge_recursive_unique($CSS[$tag], $classproperties); }
- else if ($tag) { $CSS[$tag] = $classproperties; }
- }
- }
- }
- $properties = array();
- $values = array();
- $classproperties = array();
- }
-
- } // end of if
- return $CSS;
-}
-
-
-
-
-function ReadCSS($html) {
- preg_match_all('/';
-
-//==============================================================
-$ff = scandir($ttfdir);
-$tempfontdata = array();
-foreach($ff AS $f) {
- $ttf = new TTFontFile();
- $ret = array();
- $isTTC = false;
- if (strtolower(substr($f,-4,4))=='.ttf' || strtolower(substr($f,-4,4))=='.otf') {
- $ret[] = $ttf->extractCoreInfo($ttfdir.$f);
- }
- for ($i=0; $i $ur) {
- if ($urk >= ($urgp*$ningroup) && $urk < (($urgp+1)*$ningroup)) {
- $rangekey = $urk;
- $range = $ur['range'];
- $rangestart = $ur['starthex'];
- $rangeend = $ur['endhex'];
- $html .= ''.strtoupper($range).' (U+'.$rangestart .'-U+'.$rangeend.') ';
- }
- }
- $html .= '';
-
-
- foreach ($tempfontdata AS $fname => $v) {
- $cw = '';
- if (file_exists((_MPDF_TTFONTDATAPATH.$fname.'.cw.dat'))) { $cw = file_get_contents(_MPDF_TTFONTDATAPATH.$fname.'.cw.dat'); }
- else {
- $mpdf->fontdata[$fname]['R'] = $tempfontdata[$fname]['file'];
- $mpdf->AddFont($fname);
- $cw = file_get_contents(_MPDF_TTFONTDATAPATH.$fname.'.cw.dat');
- }
- if (!$cw) {
- continue;
- die("Font data not available for $fname");
- }
-
- $counter=0;
- $max = $maxt;
-
- // create HTML content
- $html .= '';
- $html .= ''.$fname.' ';
-
- foreach($unicode_ranges AS $urk => $ur) {
- if ($urk >= ($urgp*$ningroup) && $urk < (($urgp+1)*$ningroup)) {
- if ($ur['pua'] || $ur['reserved'] || $ur['control']) {
- $html .= ' ';
- }
- else {
- $rangekey = $urk;
- $range = $ur['range'];
- $rangestart = $ur['starthex'];
- $rangeend = $ur['endhex'];
- $rangestartdec = $ur['startdec'];
- $rangeenddec = $ur['enddec'];
- $uniinrange = 0;
- $fontinrange = 0;
- for ($i=$rangestartdec; $i<=$rangeenddec; $i++) {
- //if (isset($cw[$i])) { $fontinrange++; }
- if ($mpdf->_charDefined($cw, $i)) { $fontinrange++; }
- if (isset($unichars[$i])) { $uniinrange++; }
- }
- if ($uniinrange) {
- if ($fontinrange) {
- $pc = ($fontinrange/$uniinrange);
- $str = '('.$fontinrange.'/'.$uniinrange.')';
- if ($pc==1) {
- $fullcovers[$urk][] = $fname;
- $html .= ' ';
- }
- else if ($pc>1) {
- $fullcovers[$urk][] = $fname;
- $html .= ''.$str.' ';
- }
- else if ($pc>=0.9) {
- $html .= ''.$str.' ';
- $nearlycovers[$urk][] = $fname;
- }
- else if ($pc>0.75) { $html .= ''.$str.' '; }
- else if ($pc>0.5) { $html .= ''.$str.' '; }
- else if ($pc>0.25) { $html .= ''.$str.' '; }
- else { $html .= ''.$str.' '; }
- }
- else { $html .= '(0/0) '; }
- }
- else { $html .= ' '; }
- }
- }
- }
-
-
- $html .= ' ';
-
- }
-//==============================================================
- $html .= '