-
files/lib/system/api/mpdf/vendor/mpdf/mpdf/.github/ISSUE_TEMPLATE/01_bug_report.yml<pre>@@ -0,0 +1,35 @@+name: Bug report 🐛+description: The library does not work as expected+body:++ - type: checkboxes+ attributes:+ label: Guidelines+ description: Please confirm this is a bug report and not general troubleshooting.+ options:+ - label: I understand that [if I fail to adhere to contribution guidelines and/or fail to provide all required details, this issue may be closed without review](https://github.com/mpdf/mpdf/blob/development/.github/CONTRIBUTING.md).+ required: true++ - type: textarea+ attributes:+ label: Description of the bug+ validations:+ required: true++ - type: input+ attributes:+ label: mPDF version+ validations:+ required: true++ - type: input+ attributes:+ label: PHP Version and environment (server type, cli provider etc., enclosing libraries and their respective versions)+ validations:+ required: true++ - type: textarea+ attributes:+ label: Reproducible PHP+CSS+HTML snippet suffering by the error+ validations:+ required: true
-
files/lib/system/api/mpdf/vendor/mpdf/mpdf/.github/ISSUE_TEMPLATE/02_feature_request.yml<pre>@@ -0,0 +1,8 @@+name: Feature request 🚀+description: I would like to have a new functionality added+body:+ - type: textarea+ attributes:+ label: Please describe the new functionality as best as you can.+ validations:+ required: true\ No newline at end of file
-
files/lib/system/api/mpdf/vendor/mpdf/mpdf/.github/ISSUE_TEMPLATE/config.yml<pre>@@ -0,0 +1,8 @@+blank_issues_enabled: false+contact_links:+ - name: General questions and troubleshooting ❓+ url: https://github.com/mpdf/mpdf/discussions+ about: You can use Github Discussions for general questions and troubleshooting. Please note that asking at Stack Overflow will probably be more successful.+ - name: QA at Stack Overflow ❓+ url: https://stackoverflow.com/questions/tagged/mpdf+ about: Ask at Stack Overflow for a greater chance of a quick and correct answer to your questions. Make sure to comply to SO rules, terms and conditions.
-
files/lib/system/api/mpdf/vendor/mpdf/mpdf/.github/SECURITY.md<pre>@@ -0,0 +1,5 @@+How to disclose potential security issues+============++As mPDF does not have a domain or a dedicated contact apart from its Github repository, to prevent+disclosing maintainers' contacts publicly, please use [GitHub's Security Advisories system](https://github.com/mpdf/mpdf/security/advisories).\ No newline at end of file
-
files/lib/system/api/mpdf/vendor/mpdf/mpdf/.github/workflows/coverage.yml<pre>@@ -0,0 +1,42 @@+# https://help.github.com/en/categories/automating-your-workflow-with-github-actions++name: "Code coverage"++on:+ push:+ branches:+ - "development"+ - "coverage"++jobs:++ coverage:++ name: "Code coverage"++ runs-on: ${{ matrix.operating-system }}++ strategy:+ matrix:+ php-version:+ - "7.4"++ operating-system: [ubuntu-latest]++ steps:+ - name: "Checkout"+ uses: "actions/checkout@v4"++ - name: "Install PHP"+ uses: "shivammathur/setup-php@v2"+ with:+ coverage: "xdebug"+ php-version: "${{ matrix.php-version }}"+ extensions: "mbstring, gd, bcmath, bz2"+ tools: composer:v2++ - name: "Install dependencies"+ run: "composer install --no-interaction --no-progress"++ - name: "Code coverage"+ run: composer coverage
-
files/lib/system/api/mpdf/vendor/mpdf/mpdf/.github/workflows/cs.yml<pre>@@ -0,0 +1,43 @@+# https://help.github.com/en/categories/automating-your-workflow-with-github-actions++name: "Coding standard check"++on:+ pull_request:+ push:+ branches:+ - "development"+ - "test"++jobs:++ cs:++ name: "Coding standard"++ runs-on: ${{ matrix.operating-system }}++ strategy:+ matrix:+ php-version:+ - "7.4"++ operating-system: [ubuntu-latest]++ steps:+ - name: "Checkout"+ uses: "actions/checkout@v4"++ - name: "Install PHP"+ uses: "shivammathur/setup-php@v2"+ with:+ coverage: "none"+ php-version: "${{ matrix.php-version }}"+ extensions: "mbstring"+ tools: composer:v2++ - name: "Install dependencies"+ run: "composer install --no-interaction --no-progress"++ - name: "CS"+ run: composer cs
-
files/lib/system/api/mpdf/vendor/mpdf/mpdf/.github/workflows/snapshots.yml<pre>@@ -0,0 +1,56 @@+# https://help.github.com/en/categories/automating-your-workflow-with-github-actions++name: "Snapshot Tests"++on:+ pull_request:+ push:+ branches:+ - "master"+ - "development"+ - "test"++jobs:++ tests:++ name: "Tests"++ runs-on: ubuntu-latest++ steps:+ - name: "Checkout"+ uses: "actions/checkout@v4"++ - name: Update sources and install ghostscript+ uses: awalsh128/cache-apt-pkgs-action@master+ with:+ packages: ghostscript+ version: 1.0+ refresh: true++ - name: Change ImageMagick policy to allow pdf->png conversion.+ run: |+ sudo sed -i 's/none/read|write/' /etc/ImageMagick-6/policy.xml++ - name: "Install PHP"+ uses: "shivammathur/setup-php@v2"+ with:+ coverage: "none"+ php-version: "8.5"+ extensions: "mbstring, gd, bcmath, bz2, imagick"+ tools: composer:v2+ ini-values: error_reporting=-1++ - name: "Install dependencies"+ run: "composer install --no-interaction --no-progress"++ - name: "Snapshot Tests"+ run: composer test -- --group=snapshot++ - uses: actions/upload-artifact@v4+ if: ${{ failure() }}+ with:+ name: "phpunit-artifact"+ path: tmp/artifacts/+ if-no-files-found: ignore\ No newline at end of file
-
files/lib/system/api/mpdf/vendor/mpdf/mpdf/.github/workflows/static-analysis.yml<pre>@@ -0,0 +1,44 @@+# https://help.github.com/en/categories/automating-your-workflow-with-github-actions++name: "Static Analysis check"++on:+ pull_request:+ push:+ branches:+ - "master"+ - "development"+ - "test"++jobs:++ stan:++ name: "Static Analysis check"++ runs-on: ${{ matrix.operating-system }}++ strategy:+ matrix:+ php-version:+ - "8.2"++ operating-system: [ubuntu-latest]++ steps:+ - name: "Checkout"+ uses: "actions/checkout@v4"++ - name: "Install PHP"+ uses: "shivammathur/setup-php@v2"+ with:+ coverage: "none"+ php-version: "${{ matrix.php-version }}"+ extensions: "mbstring"+ tools: composer:v2++ - name: "Install dependencies"+ run: "composer install --no-interaction --no-progress && composer require \"phpstan/phpstan:^2.0\""++ - name: "Static Analysis check"+ run: vendor/bin/phpstan --no-progress
-
files/lib/system/api/mpdf/vendor/mpdf/mpdf/.github/workflows/tests.yml<pre>@@ -0,0 +1,56 @@+# https://help.github.com/en/categories/automating-your-workflow-with-github-actions++name: "Tests"++on:+ pull_request:+ push:+ branches:+ - "master"+ - "development"+ - "test"++jobs:++ tests:++ name: "Tests"++ runs-on: ${{ matrix.operating-system }}++ strategy:+ fail-fast: false+ matrix:+ php-version:+ - "5.6"+ - "7.0"+ - "7.1"+ - "7.2"+ - "7.3"+ - "7.4"+ - "8.0"+ - "8.1"+ - "8.2"+ - "8.3"+ - "8.4"+ - "8.5"+ operating-system: [ubuntu-latest, windows-latest]++ steps:+ - name: "Checkout"+ uses: "actions/checkout@v4"++ - name: "Install PHP"+ uses: "shivammathur/setup-php@v2"+ with:+ coverage: "none"+ php-version: "${{ matrix.php-version }}"+ extensions: "mbstring, gd, bcmath, bz2"+ tools: composer:v2+ ini-values: error_reporting=-1++ - name: "Install dependencies"+ run: "composer install --no-interaction --no-progress"++ - name: "Tests"+ run: composer test
-
files/lib/system/api/mpdf/vendor/mpdf/mpdf/.gitignore<pre>@@ -0,0 +1,3 @@+vendor/*+tests/Mpdf/tmp/*+composer.lock
-
files/lib/system/api/mpdf/vendor/mpdf/mpdf/CHANGELOG.md<pre>@@ -0,0 +1,806 @@+mPDF 8.2.x+===========================++New features+------------+* Watermark text can now be colored using \Mpdf\Watermark DTO. \Mpdf\WatermarkImage DTO for images. (#1876)+* Added support for `psr/http-message` v2 without dropping v1. (@markdorison, @apotek, @greg-1-anderson, @NigelCunningham #1907)+* PHP 8.3 support in mPDF 8.2.1+* Add support for `page-break-before: avoid;` and `page-break-after: avoid;` for tr elements inside tables+* Add support for custom `AssetFetcher` via the service container (@splitbrain, #2165)++Bugfixes+--------++* Replace character entities with characters when processing the `code` attribute in the `<barcode />` tag+* Escape XML predefined entities in XMP metadata (Fix for #2090)+* Enable Font Subsetting by Default (Fix for #1315)+* Fix `TypeError` with non-numeric `rotate` values like `none` or `90deg` on tables (@derrabus, #2178)+* Small change to better support list-style-type on list items within tables++mPDF 8.1.x+===========================++New features+------------++* Service container for internal services+* Set /Lang entry for better accessibility when document language is available (@cuongmits, #1418)+* More verbose helper methods for `Output`: `OutputBinaryData`, `OutputHttpInline`, `OutputHttpDownload`, `OutputFile` (since v8.1.2)+* Set font-size to `auto` in textarea and input in active forms to resize the font-size (@ChrisB9, #1721)+* PHP 8.2 support in mPDF 8.1.3+* Added support for `psr/log` v3 without dropping v2. (@markdorison, @apotek, @greg-1-anderson, #1857)++Bugfixes+--------++* Better exception message about fonts with MarkGlyphSets (Fix for #1408)+* Updated Garuda font with fixed "k" character (Fix for #1440)+* Testing and suppressing PNG file conversion errors+* Prevent hyphenation of urls starting with https and e-mail addresses (@HKandulla, #1634)+* Colorspace restrictor reads mode from Mpdf and works again (Fix for #1094)+* Prevent exception when multiple columns wrap to next page+* Update default `curlUserAgent` configuration variable from Firefox 13 to 108++mPDF 8.0.x+===========================++* Ability to customize User-Agent header in the HTTP requests sent by cURL (@samuelecat, #1229)+* Add Page Number Myanmar Language Support (@MinKyawNyunt, #1201)+* new `Mpdf\Exception\FontException` extending base `MpdfException` was introduced and is thrown on Font manipulation+* A bit cleaner exception messages for font-related errors+* Use atomic cache writing. (@PATROMO, #1186)+* Fix: "Undefined index: group" when calling MultiCell when using font without OTL data (@Kekos, #1213, #941)+* Add C128RAW barcode type to create any barcode (ex: subtype change in middle of barcode) (#1124)+* Add proxy support to curl+* Fixed date and time format in the informations dictionary (#1083, @peterdevpl)+* Checking allowed stream wrappers in CssManager+* PHP 7.4 support (until final 7.4 release with composer --ignore-platform-reqs)+* Improve debugging of remote content issues (@ribeirobreno)+* Added `exposeVersion` configuration variable allowing to hide mPDF version from Producer tag and HTTP headers+* Added the check for JPEG SOF header 0xFF 0xC1 (extended) (@jamiejones85)+* Allows setting `none` as zoom mode in `SetDisplayMode` method, so that OpenAction is not written (#602)+* Allowed image stream whitelist to be customised (#1005, thanks @jakejackson)+* Fixed parsing of top-left-bottom-right CSS rules with !important (#1009)+* Fixed skipping ordered list numbering with page-break-inside: avoid (#339)+* Compound classes selector support, like `.one.two` or `div.message.special` (#538, @peterdevpl)+* Fixed CMYK colors in text-shadow (#1115, @lexilya)+* Skip non supported wrappers when resolving paths (#1204, @MarkVaughn)+* Fixed SVGs using a style tag, has styles ignored ( Requires ext-dom ) (#450, @antman3351)+* Allows `{nb}`, `{nbpg}`, `{PAGENO}` and `{DATE ...}` substitution in body (#172 and #267, @Dasc3er)+* Cache now creates a dedicated subdirectory `/mpdf`.+* It is possible to disable automatic cache cleanup with `cacheCleanupInterval` config variable+* PHP 8.0 is supported since 8.0.10 (#1263)+* Fix: First header of named page is added twice (@antman3351, #1320)+* Added `curlExecutionTimeout` configuration variable allowing to `CURLOPT_TIMEOUT` when fetching remote content+* Fix: Not all combinations were generated for more than three compound classes (@JeppeKnockaert)+* Added `quiet_zone_left` and `quiet_zone_right` to barcodes which support quiet zones in order to customize its width+* Updated `CssManager` to use the `RemoteContentFetcher` class instead of `curl` natively (@greew)+* Added optional `continue2pages` parameter to `SetDocTemplate` method, allowing a template to continue the last 2 pages alternately (@bmg-ruudv)+* Ensure that all digits of a string are hexadecimal before decoding in ColorConverter (@derklaro)+* Fix: Using mpdf in phar package leads to weird errors (#1504, @sandreas)+* WEBP images support (#1525)+++mPDF 8.0.0+===========================++### 15/03/2019++* Updated FPDI dependency to version 2 (thanks a lot, @JanSlabon)+ - removed `SetImportUse` method+ - case of `ImportPage` method changed to `importPage`+ - similarly, case of `setSourceFile` and `useTemplate` was changed to a lowercase first letter.+ - signature of `importPage` changed+ - returned value of `useTemplate` changed+* Moved QRCode generating code portions to external package _mpdf/qrcode_+ - This reduced package size considerably (ca 6MB)+* Fraction sizes without leading zeros allowed for font sizes (#973, thanks @peterdevpl)+* WriteHTML is now strict about used `$mode` parameter (#915, thanks, @tomtomau)+* Fixed regression in nested tables (#860, thanks, @machour)+* Scientific notation handling in CSS font sizes (#753, thanks, @peterdevpl)+++mPDF 7.1.x+===========================++* PHAR security issue fixed (thanks, @jakejackson)+* Font temporary data saved as JSON instead of generating PHP files (thanks, @jakejackson)+* cURL handling enhancements (thanks, @jakejackson)+* SVG parsing fixes (thanks, @achretien)+* Write PDF content with *Writer service classes+* PHP 7.3 is supported+* Added myclabs/deepcopy dependency, fixed TOC page numbering (thanks, @jakejackson)+* Custom color for QR codes+* Added support for orientation config key+* Code and tests cleanups and enhancements+ - PHPUnit dedicated assertions (thanks, @carusogabriel)+ - WriteHTML part constants (thanks, @tomtomau)+ - Various notice fixes (kudos to all respective authors)++mPDF 7.0.x+===========================++* Allow passing file content or file path to `SetAssociatedFiles` (#558)+* Allowed ^1.4 and ^2.0 of paragon/random_compat to allow wider usage+* Fix of undefined _getImage function (#539)+* Code cleanup+* Better writable rights for temp dir validation (#534)+* Fix displaying dollar character in footer with core fonts (#520)+* Fixed missed code2utf call (#531)+* Refactored and cleaned-up classes and subnamespaces+++mPDF 7.0.0+===========================++### 19/10/2017++Backward incompatible changes+-----------------------------++- PHP `^5.6 || ~7.0.0 || ~7.1.0 || ~7.2.0` is required.+- Entire project moved under `Mpdf` namespace+ - Practically all classes renamed to use `PascalCase` and named to be more verbose+ - Changed directory structure to comply to `PSR-4`+- Removed explicit require calls, replaced with Composer autoloading+- Removed configuration files+ - All configuration now done via `__construct` parameter (see below)+- Changed `\Mpdf\Mpdf` constructor signature+ - Class now accepts only single array `$config` parameter+ - Array keys are former `config.php` and `config_fonts.php` properties+ - Additionally, former constructor parameters can be used as keys+- `tempDir` directory now must be writable, otherwise an exception is thrown+- ICC profile is loaded as entire path to file (to prevent a need to write inside vendor directory)+- Moved examples to separate repository+- Moved `TextVars` constants to separate class+- Moved border constants to separate class+- `scriptToLang` and `langToFont` in separate interfaced class methods+- Will now throw an exception when `mbstring.func_overload` is set+- Moved Glyph operator `GF_` constants in separate `\Mpdf\Fonts\GlyphOperator` class+- All methods in Barcode class renamed to camelCase including public `dec_to_hex` and `hex_to_dec`+- Decimal conversion methods (to roman, cjk, etc.) were moved to classes in `\Mpdf\Conversion` namespace+- Images in PHP variables (`<img src="var:smileyface">`) were moved from direct Mpdf properties to `Mpdf::$imageVars` public property array+- Removed global `_SVG_AUTOFONT` and `_SVG_CLASSES` constants in favor of `svgAutoFont` and `svgClasses` configuration keys+- Moved global `_testIntersect`, `_testIntersectCircle` and `calc_bezier_bbox` fucntions inside `Svg` class as private methods.+ - Changed names to camelCase without underscores and to `computeBezierBoundingBox`+- Security: Embedded files via `<annotation>` custom tag must be explicitly allowed via `allowAnnotationFiles` configuration key+- `fontDir` property of Mpdf class is private and must be accessed via configuration variable with array of paths or `AddFontDirectory` method+- QR code `<barcode>` element now treats `\r\n` and `\n` as actual line breaks+- cURL is prefered over socket when downloading images.+- Removed globally defined functions from `functions.php` in favor of `\Mpdf\Utils` classes `PdfDate` and `UtfString`.+ - Unused global functions were removed entirely.+++Removed features+----------------++- Progressbar support+- JpGraph support+- `error_reporting` changes+- Timezone changes+- `compress.php` utility+- `_MPDF_PATH` and `_MPDF_URI` constants+- `_MPDF_TEMP_PATH` constant in favor of `tempDir` configuration variable+- `_MPDF_TTFONTDATAPATH` in favor of `tempDir` configuration variable+- `_MPDFK` constant in favor of `\Mpdf\Mpdf::SCALE` class constant+- `FONT_DESCRIPTOR` constant in favor of `fontDescriptor` configuration variable+- `_MPDF_SYSTEM_TTFONTS` constant in favor of `fontDir` configuration variable with array of paths or `AddFontDirectory` method+- HTML output of error messages and debugs+- Formerly deprecated methods+++Fixes and code enhancements+----------------------------++- Fixed joining arab letters+- Fixed redeclared `unicode_hex` function+- Converted arrays to short syntax+- Refactored and tested color handling with potential conversion fixes in `hsl*()` color definitions+- Refactored `Barcode` class with separate class in `Mpdf\Barcode` namespace for each barcode type+- Fixed colsum calculation for different locales (by @flow-control in #491)+- Image type guessing from content separated to its own class+++New features+------------++- Refactored caching (custom `Cache` and `FontCache` classes)+- Implemented `Psr\Log\LoggerAware` interface+ - All debug and additional messages are now sent to the logger+ - Messages can be filtered based on `\Mpdf\Log\Context` class constants+- `FontFileFinder` class allowing to specify multiple paths to search for fonts+- `MpdfException` now extends `ErrorException` to allow specifying place in code where error occured+- Generating font metrics moved to separate class+- Added `\Mpdf\Output\Destination` class with verbose output destination constants+- Availability to set custom default CSS file+- Availability to set custom hyphenation dictionary file+- Refactored code portions to new "separate" classes:+ - `Mpdf\Color\*` classes+ - `ColorConvertor`+ - `ColorModeConvertor`+ - `ColorSpaceRestrictor`+ - `Mpdf\SizeConvertor`+ - `Mpdf\Hyphenator`+ - `Mpdf\Image\ImageProcessor`+ - `Mpdf\Image\ImageTypeGuesser`+ - `Mpdf\Conversion\*` classes+- Custom watermark angle with `watermarkAngle` configuration variable+- Custom document properties (idea by @zarubik in #142)+- PDF/A-3 associated files + additional xmp rdf (by @chab in #130)+- Additional font directories can be added via `addFontDir` method+- Introduced `cleanup` method which restores original `mb_` encoding settings (see #421)+- QR code `<barcode>` element now treats `\r\n` and `\n` as actual line breaks+- Customizable following of 3xx HTTP redirects, validation of SSL certificates, cURL timeout.+ - `curlFollowLocation`+ - `curlAllowUnsafeSslRequests`+ - `curlTimeout`+- QR codes can be generated without a border using `disableborder="1"` HTML attribute in `<barcode>` tag+++Git repository enhancements+---------------------------++- Added contributing guidelines+- Added Issue template+++mPDF 6.1.0+===========================++### 26/04/2016++- Composer updates+ - First release officially supporting Composer+ - Updated license in composer.json+ - Chmod 777 on dirs `ttfontdata`, `tmp`, `graph_cache` after composer install+- Requiring PHP 5.4.0+ with Composer+- Code style+ - Reformated (almost) all PHP files to keep basic code style+ - Removed trailing whitespaces+ - Converted all txt, php, css, and htm files to utf8+ - Removed closing PHP tags+ - Change all else if calls to elseif+- Added base PHPUnit tests+- Added Travis CI integration with unit tests+- Changed all `mPDF::Error` and `die()` calls to throwing `MpdfException`+- PDF Import changes+ - FPDI updated to 1.6.0 to fix incompatible licenses+ - FPDI loaded from Composer or manually only+- Removed iccprofiles/CMYK directory+- Renamed example files: change spaces to underscores to make scripting easier+- Fixed `LEDGER` and `TABLOID` paper sizes+- Implemented static cache for mpdf function `ConvertColor`.+- Removed PHP4 style constructors+- Work with HTML tags separated to `Tag` class+- Fixed most Strict standards PHP errors+- Add config constant so we can define custom font data+- HTML+ - fax & tel support in href attribute+ - Check $html in `$mpdf->WriteHTML()` to see if it is an integer, float, string, boolean or+ a class with `__toString()` and cast to a string, otherwise throw exception.+- PHP 7+ - Fix getting image from internal variable in PHP7 (4dcc2b4)+ - Fix PHP7 Fatal error: `'break' not in the 'loop' or 'switch' context` (002bb8a)+- Fixed output file name for `D` and `I` output modes (issue #105, f297546)++mPDF 6.0+===========================++### 20/12/2014++New features / Improvements+---------------------------+- Support for OpenTypeLayout tables / features for complex scripts and Advances Typography.+- Improved bidirectional text handling.+- Improved line-breaking, including for complex scripts e.g. Lao, Thai and Khmer.+- Updated page-breaking options.+- Automatic language mark-up and font selection using autoScriptToLang and autoLangToFont.+- Kashida for text-justification in arabic scripts.+- Index collation for non-ASCII characters.+- Index mark-up allowing control over layout using CSS.+- `{PAGENO}` and `{nbpg}` can use any of the number types as in list-style e.g. set in `<pagebreak>` using pagenumstyle.+- CSS support for lists.+- Default stylesheet - `mpdf.css` - updated.++Added CSS support+-----------------+- lang attribute selector e.g. :lang(fr), [lang="fr"]+- font-variant-position+- font-variant-caps+- font-variant-ligatures+- font-variant-numeric+- font-variant-alternates - Only [normal | historical-forms] supported (i.e. most are NOT supported)+- font-variant - as above, and except for: east-asian-variant-values, east-asian-width-values, ruby+- font-language-override+- font-feature-settings+- text-outline is now supported on TD/TH tags+- hebrew, khmer, cambodian, lao, and cjk-decimal recognised as values for "list-style-type" in numbered lists and page numbering.+- list-style-image and list-style-position+- transform (on `<img>` only)+- text-decoration:overline+- image-rendering+- unicode-bidi (also `<bdi>` tag)+- vertical-align can use lengths e.g. 0.5em+- line-stacking-strategy+- line-stacking-shift++mPDF 5.7.4+================++### 15/12/2014++Bug Fixes & Minor Additions+---------------------------+- SVG images now support embedded images e.g. `<image xlink:href="image.png" width="100px" height="100px" />`+- SVG images now supports `<tspan>` element e.g. `<tspan x,y,dx,dy,text-anchor >`, and also `<tref>`+- SVG images now can use Autofont (see top of `classes/svg.php` file)+- SVG images now has limited support for CSS classes (see top of `classes/svg.php` file)+- SVG images - style inheritance improved+- SVG images - improved handling of comments and other extraneous code+- SVG images - fix to ensure opacity is reset before another element+- SVG images - font-size not resetting after a `<text>` element+- SVG radial gradients bug (if the focus [fx,fy] lies outside circle defined by [cx,cy] and r) cf. pservers-grad-15-b.svg+- SVG allows spaces in attribute definitions in `<use>` or `<defs>` e.g. `<use x = "0" y = "0" xlink:href = "#s3" />`+- SVG text which contains a `<` sign, it will break the text - now processed as `<` (despite the fact that this does not conform to XML spec)+- SVG images - support automatic font selection and (minimal) use of CSS classes - cf. the defined constants at top of svg.php file+- SVG images - text-anchor now supported as a CSS style, as well as an HTML attribute+- CSS support for :nth-child() selector improved to fully support the draft CSS3 spec - http://www.w3.org/TR/selectors/#nth-child-pseudo+ [NB only works on table columns or rows]+- text-indent when set as "em" - incorrectly calculated if last text in line in different font size than for block+- CSS not applying cascaded styles on `<A>` elements - [changed MergeCSS() type to INLINE for 'A', LEGEND, METER and PROGRESS]+- fix for underline/strikethrough/overline so that line position(s) are based correctly on font-size/font in nested situations+- Error: Strict warning: Only variables should be passed by reference - in PHP5.5.9+- bug accessing images from some servers (HTTP 403 Forbidden whn accessed using fopen etc.)+- Setting page format incorrectly set default twice and missed some options+- bug fixed in Overwrite() when specifying replacement as a string+- barcode C93 - updated C93 code from TCPDF because of bug - incorrect checksum character for "153-2-4"+- Tables - bug when using colspan across columns which may have a cell width specified+ cf. http://www.mpdf1.com/forum/discussion/2221/colspan-bug+- Tables - cell height (when specified) is not resized when table is shrunk+- Tables - if table width specified, but narrower than minimum cell wdith, and less than page width - table will expand to+ minimum cell width(s) as long as $keep_table_proportions = true+- Tables - if using packTableData, and borders-collapse, wider border is overwriting content of adjacent cell+ Test case:+ ```+ <table style="border-collapse: collapse;">+ <tr><td style="border-bottom: 42px solid #0FF; "> Hallo world </td></tr>+ <tr><td style="border-top: 14px solid #0F0; "> Hallo world </td></tr>+ </table>+ ```+- Images - image height is reset proportional to original if width is set to maximum e.g. `<img width="100%" height="20mm">`+- URL handling changed to work with special characters in path fragments; affects `<a>` links, `<img>` images and+ CSS url() e.g background-image+ - also to ignore `../` included as a query value+- Barcodes with bottom numerals e.g. EAN-13 - incorrect numeral size when using core fonts++--------------------------------++NB Spec. for embedded SVG images:+as per http://www.w3.org/TR/2003/REC-SVG11-20030114/struct.html#ImageElement+Attributes supported:+- x+- y+- xlink:href (required) - can be jpeg, png or gif image - not vector (SVG or WMF) image+- width (required)+- height (required)+- preserveAspectRatio++Note: all attribute names and values are case-sensitive+width and height cannot be assigned by CSS - must be attributes++mPDF 5.7.3+================++### 24/8/2014++Bug Fixes & Minor Additions+---------------------------++- Tables - cellSpacing and cellPadding taking preference over CSS stylesheet+- Tables - background images in table inside HTML Footer incorrectly positioned+- Tables - cell in a nested table with a specified width, should determine width of parent table cell+ (cf. http://www.mpdf1.com/forum/discussion/1648/nested-table-bug-)+- Tables - colspan (on a row after first row) exceeds number of columns in table+- Gradients in Imported documents (mPDFI) causing error in some browsers+- Fatal error after page-break-after:always on root level block element+- Support for 'https/SSL' if file_get_contents_by_socket required (e.g. getting images with allow_url_fopen turned off)+- Improved support for specified ports when getting external CSS stylesheets e.g. www.domain.com:80+- error accessing local .css files with dummy queries (cache-busting) e.g. mpdfstyleA4.css?v=2.0.18.9+- start of end tag in PRE incorrectly changed to <+- error thrown when open.basedir restriction in effect (deleting temporary files)+- image which forces pagebreak incorrectly positioned at top of page+- [changes to avoid warning notices by checking if (isset(x)) before referencing it]+- text with letter-spacing set inside table which needs to be resixed (shrunk) - letter-spacing was not adjusted+- nested table incorrectly calculating width and unnecessarily wrapping text+- vertical-align:super|sub can be nested using `<span>` elements+- inline elements can be nested e.g. text `<sup>text<sup>13</sup>text</sup>` text+- CSS vertical-align:0.5em (or %) now supported+- underline and strikethrough now use the parent inline block baseline/fontsize/color for child inline elements *** change in behaviour+ (Adjusts line height to take account of superscript and subscript except in tables)+- nested table incorrectly calculating width and unnecessarily wrapping text+- tables - font size carrying over from one nested table to the next nested table+- tables - border set as attribute on `<TABLE>` overrides border set as CSS on `<TD>`+- tables - if table width set to 100% and one cell/column is empty with no padding/border, sizing incorrectly+ (http://www.mpdf1.com/forum/discussion/1886/td-fontsize-in-nested-table-bug-#Item_5)+- `<main>` added as recognised tag+- CSS style transform supported on `<img>` element (only)+ All transform functions are supported except matrix() i.e. translate(), translateX(), translateY(), skew(), skewX(), skewY(),+ scale(), scaleX(), scaleY(), rotate()+ NB When using Columns or Keep-with-table (use_kwt), cannot use transform+- CSS background-color now supported on `<img>` element+- @page :first not recognised unless @page {} has styles set+- left/right margins not allowed on @page :first++mPDF 5.7.2+================++### 28/12/2013++Bug Fixes+---------++- `<tfoot>` not printing at all (since v5.7)+- list-style incorrectly overriding list-style-type in cascading CSS+- page-break-after:avoid not taking into account bottom padding and margin when estimating if next line can fit on page+- images not displayed when using "https://" if images are referenced by src="//domain.com/image"+- +aCJK incorrectly parsed when instantiating class e.g. new mpDF('ja+aCJK')+- line-breaking - zero-width object at end of line (e.g. index entry) causing a space left untrimmed at end of line+- ToC since v5.7 incorrectly handling non-ascii characters, entities or tags+- cell height miscalculated when using hard-hyphenate+- border colors set with transparency not working+- transparency settings for stroke and fill interfering with one another+- 'float' inside a HTML header/footer - not clearing the float before first line of text+- error if script run across date change at midnight+- temporary file name collisions (e.g. when processing images) if numerous users+- `<watermarkimage>` position attribute not working+- `<` (less-than sign) inside a PRE element, and NOT start of a valid tag, was incorrectly removed+- file attachments not opening in Reader XI+- JPG images not recognised if not containing JFIF or Exif markers+- instance of preg_replace with /e modifier causing error in PHP 5.5+- correctly handle CSS URLs with no scheme+- Index entries causing errors when repeat entries are used within page-break-inside:avoid, rotated tables etc.+- table with fixed width column and long word in cell set to colspan across this column (adding spare width to all columns)+- incorrect hyphenation if multiple soft-hyphens on line before break+- SVG images - objects contained in `<defs>` being displayed+- SVG images - multiple, or quoted fonts e.g. style="font-family:'lucida grande', verdana" not recognised+- SVG images - line with opacity=0 still visible (only in some PDF viewers/browsers)+- text in an SVG image displaying with incorrect font in some PDF viewers/browsers+- SVG images - fill:RGB(0,0,0) not recognised when uppercase+- background images using data:image\/(jpeg|gif|png);base64 format - error when reading in stylesheet++New CSS support+---------------++- added support for style="opacity:0.6;" in SVG images - previously only supported style="fill-opacity:0.6; stroke-opacity: 0.6;"+- improved PNG image handling for some cases of alpha channel transparency+- khmer, cambodian and lao recognised as list-style-type for numbered lists++SVG Images+----------++- Limited support for `<use>` and `<defs>`++mPDF 5.7.1+================+## 01/09/2013++1) FILES: mpdf.php++Bug fix; Dollar sign enclosed by `<pre>` tag causing error.+Test e.g.: `<pre>Test $1.00 Test</pre> <pre>Test $2.00 Test</pre> <pre>Test $3.00 Test</pre> <pre>Test $4.00 Test</pre>`++-----------------------------++2) FILES: includes/functions.php AND mpdf.php++Changes to `preg_replace` with `/e` modifier to use `preg_replace_callback`+(/e depracated from PHP 5.5)++-----------------------------++3) FILES: classes/barcode.php++Small change to function `barcode_c128()` which allows ASCII 0 - 31 to be used in C128A e.g. chr(13) in:+`<barcode code="54321068" type="C128A" />`++-----------------------------++4) FILES: mpdf.php++Using $use_kwt ("keep-[heading]-with-table") if `<h4></h4>` before table is on 2 lines and pagebreak occurs after first line+the first line is displayed at the bottom of the 2nd page.+Edited so that $use_kwt only works if the HEADING is only one line. Else ignores (but prints correctly)++-----------------------------++5) FILES: mpdf.php++Clearing old temporary files from `_MPDF_TEMP_PATH` will now ignore "hidden" files e.g. starting with a "`.`" `.htaccess`, `.gitignore` etc.+and also leave `dummy.txt` alone+++mPDF 5.7+===========================++### 14/07/2013++Files changed+-------------+- config.php+- mpdf.php+- classes/tocontents.php+- classes/cssmgr.php+- classes/svg.php+- includes/functions.php+- includes/out.php+- examples/formsubmit.php [Important - Security update]++Updated Example Files in /examples/+-----------------------------------++- All example files+- mpdfstyleA4.css++config.php+----------++Removed:+- $this->hyphenateTables+- $this->hyphenate+- $this->orphansAllowed+Edited:+- "hyphens: manual" - Added to $this->defaultCSS+- $this->allowedCSStags now includes '|TEXTCIRCLE|DOTTAB'+New:+- $this->decimal_align = array('DP'=>'.', 'DC'=>',', 'DM'=>"\xc2\xb7", 'DA'=>"\xd9\xab", 'DD'=>'-');+- $this->h2toc = array('H1'=>0, 'H2'=>1, 'H3'=>2);+- $this->h2bookmarks = array('H1'=>0, 'H2'=>1, 'H3'=>2);+- $this->CJKforceend = false; // Forces overflowng punctuation to hang outside right margin (used with CJK script)+++Backwards compatability+-----------------------++Changes in mPDF 5.7 may cause some changes to the way your documents appear. There are two main differences:+1) Hyphenation. To retain appearance compatible with earlier versions, set the CSS property "hyphens: auto" whenever+ you previously used $mpdf->hyphenate=true;+2) Table of Contents - appearance can now be controlled with CSS styles. By default, in mPDF 5.7, no styling is applied so you will get:+ - No indent (previous default of 5mm) - ($tocindent is ignored)+ - Any font, font-size set ($tocfont or $tocfontsize) will not work+ - HyperLinks will appear with your default appearance - usually blue and underlined+ - line spacing will be narrower (can use line-height or margin-top in CSS)++New features / Improvements+---------------------------+- Layout of Table of Content ToC now controlled using CSS styles+- Text alignment on decimal mark inside tables+- Automatically generated bookmarks and/or ToC entries from H1 - H6 tags+- Support for unit of "rem" as size e.g. font-size: 1rem;+- Origin and clipping for background images and gradients controlled by CSS i.e. background-origin, background-size, background-clip+- Text-outline controlled by CSS (compatible with CSS3 spec.)+- Use of `<dottab>` enhanced by custom CSS "outdent" property+- Image HTML attributes `<img>` added: max-height, max-width, min-height and min-width+- Spotcolor can now be defined as it is used e.g. color: spot(PANTONE 534 EC, 100%, 85, 65, 47, 9);+- Lists - added support for "start" attribute in `<ol>` e.g. `<ol start="5">`+- Hyphenation controlled using CSS, consistent with CSS3 spec.+- Line breaking improved to avoid breaks within words where HTML tags are used e.g. H<sub>2<sub>0+- Line breaking in CJK scripts improved (and ability to force hanging punctuation)+- Numerals in a CJK script are kept together+- RTL improved support for phrases containing numerals and \ and /+- Bidi override codes supported - Right-to-Left Embedding [RLE] U+202B, Left-to-Right Embedding [LRE] U+202A,+ U+202C POP DIRECTIONAL FORMATTING (PDF)+- Support for `<base href="">` in HTML - uses it to SetBasePath for relative URLs.+- HTML tag - added support for `<wbr>` or `<wbr />` - converted to a soft-hyphen+- CSS now takes precedence over HTML attribute e.g. `<table bgcolor="black" style="background-color:yellow">`++Added CSS support+-----------------+- max-height, max-width, min-height and min-width for images `<img>`+- "hyphens: none|manual|auto" as per CSS3 spec.+- Decimal mark alignment e.g. text-align: "." center;+- "rem" accepted as a valid (font)size in CSS e.g. font-size: 1.5rem+- text-outline, text-outline-width and text-outline-color supported everywhere except in tables (blur not supported)+- background-origin, background-size, background-clip are now supported everywhere except in tables+- "visibility: hidden|visible|printonly|screenonly" for inline elements e.g. `<span>`+- Colors: device-cmyk(c,m,y,k) as per CSS3 spec. For consistency, device-cmyka also supported (not CSS3 spec)+- "z-index" can be used to utilise layers in the PDF document+- Custom CSS property added: "outdent" - opposite of indent++The HTML elements `<dottab>` and `<textcircle>` can now have CSS properties applied to them.++Bug fixes+---------+- SVG images - path including e.g. 1.234E-15 incorrectly parsed (not recognising capital E)+- Tables - if a table starts when the Y position on page is below bottom margin caused endless loop+- Float-ing DIVs - starting a float at bottom of page and it causes page break before anything output, second new page is forced+- Tables - Warning notice now given in Table footer or header if `<tfoot>` placed after `<tbody>` and table spans page+- Columns - block with border-width wider than the length of the border line, line overflows+- Columns - block with no padding containing a block with borders but no backgound colour, borders not printed+- Table in Columns - when background color set by surrounding block element - colour missing for height of half bottom border.+- TOCpagebreakByArray() when called by function was not adding the pagebreak+- Border around block element - dashed not showing correctly (not resetting linewidth between different edges)+- Double border in table - when background colour set in surrounding block element - shows as black line between the 2 bits of double+- Borders around DIVs - "double" border problem if not all 4 sides equally - fixed+- Borders around DIVs - solid (and double) borders overlap as in tables - now fixed so mitred joins as in browser+ [Inadvertently improves borders in Columns because of change in LineCap]+- Page numbering - $mpdf->pagenumSuffix etc not suppressed in HTML headers/footers if number suppressed+- Page numbering - Page number total {nbpg} incorrect - e.g. showing decreasing numbers through document, when ToC present+- RTL numerals - incorrectly reversing a number followed by a comma+- Transform to uppercase/lowercase not working for chars > ASCII 128 when using core fonts+- TOCpagebreak - Not setting TOC-FOOTER+- TOCpagebreak - toc-even-header-name etc. not working+- Parsing some relative URLs incorrectly+- Textcircle - when moved to next page by "page-break-inside: avoid"+- Bookmarks will now work if jump more than one level e.g. 0,2,1 Inserts a new blank entry at level 1+- Paths to img or stylesheets - incorrectly reading "//www.domain.com" i.e. when starting with two /+- data:image as background url() - incorrectly adjusting path on server if MPDF_PATH not specified (included in release mPDF 5.6.1)+- Image problem if spaces or commas in path using http:// URL (included in release mPDF 5.6.1)+- Image URL parsing rewritten to handle both urlencoded URLs and not urlencoded (included in release mPDF 5.6.1)+- `<dottab>` fixed to allow color, font-size and font-family to be correctly used, avoid dots being moved to new page, and to work in RTL+- Table {colsum} summed figures in table header+- list-style-type (custom) colour not working+- `<tocpagebreak>` toc-preHTML and toc-postHTML can now contain quotes++mPDF 5.6+===========================++### 20/01/2013++Files changed+-------------+- mpdf.php+- config.php+- includes/functions.php+- classes/meter.php+- classes/directw.php+++config.php changes+------------------++- $this->allowedCSStags - added HTML5 tags + textcircle AND+- $this->outerblocktags - added HTML5 tags+- $this->defaultCSS - added default CSS properties++New features / Improvements+---------------------------+CSS support added for for min-height, min-width, max-height and max-width in `<img>`++Images embedded in CSS+- `<img src="data:image/gif;base64,....">` improved to make it more robust, and background: `url(data:image...` now added to work++HTML5 tags supported+- as generic block elements: `<article><aside><details><figure><figcaption><footer><header><hgroup><nav><section><summary>`+- as in-line elements: `<mark><time><meter><progress>`+- `<mark>` has a default CSS set in config.php to yellow highlight+- `<meter>` and `<progress>` support attributes as for HTML5+- custom appearances for `<meter>` and `<progress>` can be made by editing `classes/meter.php` file+- `<meter>` and `<progress>` suppress text inside the tags++Textcircle/Circular+- font: "auto" added: automatically sizes text to fill semicircle (if both set) or full circle (if only one set)+ NB for this AND ALL CSS on `<textcircle>`: does not inherit CSS styles+- attribute: divider="[characters including HTML entities]" added+- `<textcircle r="30mm" top-text="Text Circular Text Circular" bottom-text="Text Circular Text Circular"+ divider=" • " style="font-size: auto" />`++» ’ ‚ „ are now included in "orphan"-management at the end of lines++Improved CJK line wrapping (if CJK character at end of line, breaks there rather than previous wordspace)++NB mPDF 5.5 added support for `<fieldset>` and `<legend>` (omitted from ChangeLog)++Bug fixes+---------++- embedded fonts: Panose string incorrectly output as decimals - changed to hexadecimal+ Only a problem in limited circumstances.+ *****Need to delete all ttfontdata/ files in order for fix to have effect.+- `<textCircle>` background white even when set to none/transparent+- border="0" causing mPDF to add border to table CELLS as well as table+- iteration counter in THEAD crashed in some circumstances+- CSS color now supports spaces in the rgb() format e.g. border: 1px solid rgb(170, 170, 170);+- CJK not working in table following changes made in v5.4+- images fixed to work with Google Chart API (now mPDF does not urldecode the query part of the src)+- CSS `<style>` within HTML page crashed if CSS is too large (? > 32Kb)+- SVG image nested int eht HTML failed to show if code too large (? > 32Kb)+- cyrillic character p р at end of table cell caused cell height to be incorrectly calculated++mPDF 5.5+===========================++### 02/03/2012++Files changed+-------------++- mpdf.php+- classes/ttfontsuni.php+- classes/svg.php+- classes/tocontents.php+- config.php+- config_fonts.php+- utils/font_collections.php+- utils/font_coverage.php+- utils/font_dump.php++Files added+-----------++classes/ttfontsuni_analysis.php++config.php changes+------------------++To avoid just the border/background-color of the (empty) end of a block being moved on to next page (`</div></div>`)++`$this->margBuffer = 0; // Allow an (empty) end of block to extend beyond the bottom margin by this amount (mm)`++config_fonts.php changes+------------------------++Added to (arabic) fonts to allow "use non-mapped Arabic Glyphs" e.g. for Pashto+ 'unAGlyphs' => true,++Arabic text+-----------++Arabic text (RTL) rewritten with improved support for Pashto/Sindhi/Urdu/Kurdish+ Presentation forms added:+ U+0649, U+0681, U+0682, U+0685, U+069A-U+069E, U+06A0, U+06A2, U+06A3, U+06A5, U+06AB-U+06AE,+ U+06B0-U+06B4, U+06B5-U+06B9, U+06BB, U+06BC, U+06BE, U+06BF, U+06C0, U+06CD, U+06CE, U+06D1, U+06D3, U+0678+ Joining improved:+ U+0672, U+0675, U+0676, U+0677, U+0679-U+067D, U+067F, U+0680, U+0683, U+0684, U+0687, U+0687, U+0688-U+0692,+ U+0694, U+0695, U+0697, U+0699, U+068F, U+06A1, U+06A4, U+06A6, U+06A7, U+06A8, U+06AA, U+06BA, U+06C2-U+06CB, U+06CF++Note - Some characters in Pashto/Sindhi/Urdu/Kurdish do not have Unicode values for the final/initial/medial forms of the characters.+However, some fonts include these characters "un-mapped" to Unicode (including XB Zar and XB Riyaz, which are bundled with mPDF).+ `'unAGlyphs' => true`, added to the config_fonts.php file for appropriate fonts will++This requires the font file to include a Format 2.0 POST table which references the glyphs as e.g. uni067C.med or uni067C.medi:+ e.g. XB Riyaz, XB Zar, Arabic Typesetting (MS), Arial (MS)++NB If you want to know if a font file is suitable, you can open a .ttf file in a text editor and search for "uni067C.med" - if it exists, it may work!+Using "unAGlyphs" forces subsetting of fonts, and will not work with SIP/SMP fonts (using characters beyond the Unicode BMP Plane).++mPDF maps these characters to part of the Private Use Area allocated by Unicode U+F500-F7FF. This could interfere with correct use+if the font already utilises these codes (unlikely).++mPDF now deletes U+200C,U+200D,U+200E,U+200F zero-widthjoiner/non-joiner, LTR and RTL marks so they will not appear+even though some fonts contain glyphs for these characters.+++Other New features / Improvements+---------------------------------+Avoid just the border/background-color of the (empty) end of a block being moved on to next page (`</div></div>`)+using configurable variable: `$this->margBuffer`;+++The TTFontsUni class contained a long function (extractcoreinfo) which is not used routinely in mPDF++This has been moved to a new file: classes/ttfontsuni_analysis.php.++The 3 utility scripts have been updated to use the new extended class:++- utils/font_collections.php+- utils/font_coverage.php+- utils/font_dump.php+++Bug fixes+---------+- Border & background when closing 2 blocks (e.g. `</div></div>`) incorrectly being moved to next page because incorrectly+ calculating how much space required+- Fixed/Absolute-positioned elements not inheriting letter-spacing style+- Rotated cell - error if text-rotate set on a table cell, but no text content in cell+- SVG images, text-anchor not working+- Nested table - not resetting cell style (font, color etc) after nested table, if text follows immediately+- Nested table - font-size 70% set in extenal style sheet; if repeated nested tables, sets 70% of 70% etc etc+- SVG setting font-size as percent on successive `<text>` elements gives progressively smaller text+- mPDF will check if magic_quotes_runtime set ON even >= PHP 5.3 (will now cause an error message)+- not resetting after 2 nested tags of same type e.g. `<b><b>bold</b></b>` still bold+- When using charset_in other than utf-8, HTML Footers using tags e.g. `<htmlpageheader>` do not decode correctly+- ToC if nested > 3 levels, line spacing reduces and starts to overlap++Older changes can be seen [on the documentation site](https://mpdf.github.io/about-mpdf/changelog.html).
-
files/lib/system/api/mpdf/vendor/mpdf/mpdf/CREDITS.txt<pre>@@ -0,0 +1,91 @@+++/*******************************************************************************+* Software: FPDF *+* Version: 1.53 *+* Date: 2004-12-31 *+* Author: Olivier PLATHEY *+* License: Freeware *+* *+* You may use and modify this software as you wish. *+*******************************************************************************/++/*******************************************************************************+* HTML2FPDF is a php script to read a HTML text and generate a PDF file. *+* Copyright (C) 2004-2005 Renato Coelho *+* *+* html2fpdf.php, htmltoolkit.php *+*******************************************************************************/++CREDITS From HTML2FPDF:++-Olivier Plathey for the fpdf.php class [http://www.fpdf.org]+-Damon Kohler for the Flowing Block script [mailto:damonkohler@yahoo.com]+-Clément Lavoillotte for HTML-oriented FPDF idea+-Yamasoft for the gif.php class [http://www.yamasoft.com/]+-Jérôme Fenal for the _parsegif() function+-"VIETCOM" for the PDFTable code [http://www.freepgs.com/vietcom/tool/pdftable/] [mailto:vncommando@yahoo.com]+-Yukihiro O. for the SetDash() function [mailto:yukihiro_o@infoseek.jp]+-Ron Korving for the WordWrap() function+-Michel Poulain for the DisplayPreferences() function+-Patrick Benny for the MultiCellBlt() function idea [no longer in use]+-Seb for the _SetTextRendering() and SetTextOutline() functions [mailto:captainseb@wanadoo.fr]+-MorphSoft for the colornames list idea+-W3SCHOOLS for HTML-related reference info [http://www.w3schools.com/]++++/****************************************************************************+* Software: FPDF_Protection *+* Version: 1.02 *+* Date: 2005/05/08 *+* Author: Klemen VODOPIVEC *+* License: Freeware *+* *+* You may use and modify this software as you wish as stated in original *+* FPDF package. *+****************************************************************************/++/****************************************************************************+// FPDI - Version 1.2+//+// Copyright 2004-2007 Setasign - Jan Slabon+//+// Licensed under the Apache License, Version 2.0 (the "License");+// you may not use this file except in compliance with the License.+// You may obtain a copy of the License at+//+// http://www.apache.org/licenses/LICENSE-2.0+//+// Unless required by applicable law or agreed to in writing, software+// distributed under the License is distributed on an "AS IS" BASIS,+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.+// See the License for the specific language governing permissions and+// limitations under the License.+****************************************************************************/++/****************************************************************************+ * @copyright Khaled Al-Shamaa 2008+ * @link http://www.ar-php.org+ * @author Khaled Al-Shamaa <khaled@ar-php.org>+ * @desc Set of PHP5 / UTF-8 Classes developed to enhance Arabic web+ * applications by providing set of tools includes stem-based searching,+ * translitiration, soundex, Hijri calendar, charset detection and+ * converter, spell numbers, keyboard language, Muslim prayer time,+ * auto-summarization, and more...+ * @package Arabic+ *+ * @version 1.8 released in Feb 15, 2009+ *+ * @license LGPL+****************************************************************************/+++This library is free software; you can redistribute it and/or+modify it under the terms of the GNU Lesser General Public+License as published by the Free Software Foundation;+This library is distributed in the hope that it will be useful,+but WITHOUT ANY WARRANTY; without even the implied warranty of+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU+Lesser General Public License for more details.+[http://www.opensource.org/licenses/lgpl-license.php]
-
files/lib/system/api/mpdf/vendor/mpdf/mpdf/LICENSE.txt<pre>@@ -0,0 +1,280 @@+ GNU GENERAL PUBLIC LICENSE+ Version 2, June 1991++ Copyright (C) 1989, 1991 Free Software Foundation, Inc.,+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA+ Everyone is permitted to copy and distribute verbatim copies+ of this license document, but changing it is not allowed.++ Preamble++ The licenses for most software are designed to take away your+freedom to share and change it. By contrast, the GNU General Public+License is intended to guarantee your freedom to share and change free+software--to make sure the software is free for all its users. This+General Public License applies to most of the Free Software+Foundation's software and to any other program whose authors commit to+using it. (Some other Free Software Foundation software is covered by+the GNU Lesser General Public License instead.) You can apply it to+your programs, too.++ When we speak of free software, we are referring to freedom, not+price. Our General Public Licenses are designed to make sure that you+have the freedom to distribute copies of free software (and charge for+this service if you wish), that you receive source code or can get it+if you want it, that you can change the software or use pieces of it+in new free programs; and that you know you can do these things.++ To protect your rights, we need to make restrictions that forbid+anyone to deny you these rights or to ask you to surrender the rights.+These restrictions translate to certain responsibilities for you if you+distribute copies of the software, or if you modify it.++ For example, if you distribute copies of such a program, whether+gratis or for a fee, you must give the recipients all the rights that+you have. You must make sure that they, too, receive or can get the+source code. And you must show them these terms so they know their+rights.++ We protect your rights with two steps: (1) copyright the software, and+(2) offer you this license which gives you legal permission to copy,+distribute and/or modify the software.++ Also, for each author's protection and ours, we want to make certain+that everyone understands that there is no warranty for this free+software. If the software is modified by someone else and passed on, we+want its recipients to know that what they have is not the original, so+that any problems introduced by others will not reflect on the original+authors' reputations.++ Finally, any free program is threatened constantly by software+patents. We wish to avoid the danger that redistributors of a free+program will individually obtain patent licenses, in effect making the+program proprietary. To prevent this, we have made it clear that any+patent must be licensed for everyone's free use or not licensed at all.++ The precise terms and conditions for copying, distribution and+modification follow.++ GNU GENERAL PUBLIC LICENSE+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION++ 0. This License applies to any program or other work which contains+a notice placed by the copyright holder saying it may be distributed+under the terms of this General Public License. The "Program", below,+refers to any such program or work, and a "work based on the Program"+means either the Program or any derivative work under copyright law:+that is to say, a work containing the Program or a portion of it,+either verbatim or with modifications and/or translated into another+language. (Hereinafter, translation is included without limitation in+the term "modification".) Each licensee is addressed as "you".++Activities other than copying, distribution and modification are not+covered by this License; they are outside its scope. The act of+running the Program is not restricted, and the output from the Program+is covered only if its contents constitute a work based on the+Program (independent of having been made by running the Program).+Whether that is true depends on what the Program does.++ 1. You may copy and distribute verbatim copies of the Program's+source code as you receive it, in any medium, provided that you+conspicuously and appropriately publish on each copy an appropriate+copyright notice and disclaimer of warranty; keep intact all the+notices that refer to this License and to the absence of any warranty;+and give any other recipients of the Program a copy of this License+along with the Program.++You may charge a fee for the physical act of transferring a copy, and+you may at your option offer warranty protection in exchange for a fee.++ 2. You may modify your copy or copies of the Program or any portion+of it, thus forming a work based on the Program, and copy and+distribute such modifications or work under the terms of Section 1+above, provided that you also meet all of these conditions:++ a) You must cause the modified files to carry prominent notices+ stating that you changed the files and the date of any change.++ b) You must cause any work that you distribute or publish, that in+ whole or in part contains or is derived from the Program or any+ part thereof, to be licensed as a whole at no charge to all third+ parties under the terms of this License.++ c) If the modified program normally reads commands interactively+ when run, you must cause it, when started running for such+ interactive use in the most ordinary way, to print or display an+ announcement including an appropriate copyright notice and a+ notice that there is no warranty (or else, saying that you provide+ a warranty) and that users may redistribute the program under+ these conditions, and telling the user how to view a copy of this+ License. (Exception: if the Program itself is interactive but+ does not normally print such an announcement, your work based on+ the Program is not required to print an announcement.)++These requirements apply to the modified work as a whole. If+identifiable sections of that work are not derived from the Program,+and can be reasonably considered independent and separate works in+themselves, then this License, and its terms, do not apply to those+sections when you distribute them as separate works. But when you+distribute the same sections as part of a whole which is a work based+on the Program, the distribution of the whole must be on the terms of+this License, whose permissions for other licensees extend to the+entire whole, and thus to each and every part regardless of who wrote it.++Thus, it is not the intent of this section to claim rights or contest+your rights to work written entirely by you; rather, the intent is to+exercise the right to control the distribution of derivative or+collective works based on the Program.++In addition, mere aggregation of another work not based on the Program+with the Program (or with a work based on the Program) on a volume of+a storage or distribution medium does not bring the other work under+the scope of this License.++ 3. You may copy and distribute the Program (or a work based on it,+under Section 2) in object code or executable form under the terms of+Sections 1 and 2 above provided that you also do one of the following:++ a) Accompany it with the complete corresponding machine-readable+ source code, which must be distributed under the terms of Sections+ 1 and 2 above on a medium customarily used for software interchange; or,++ b) Accompany it with a written offer, valid for at least three+ years, to give any third party, for a charge no more than your+ cost of physically performing source distribution, a complete+ machine-readable copy of the corresponding source code, to be+ distributed under the terms of Sections 1 and 2 above on a medium+ customarily used for software interchange; or,++ c) Accompany it with the information you received as to the offer+ to distribute corresponding source code. (This alternative is+ allowed only for noncommercial distribution and only if you+ received the program in object code or executable form with such+ an offer, in accord with Subsection b above.)++The source code for a work means the preferred form of the work for+making modifications to it. For an executable work, complete source+code means all the source code for all modules it contains, plus any+associated interface definition files, plus the scripts used to+control compilation and installation of the executable. However, as a+special exception, the source code distributed need not include+anything that is normally distributed (in either source or binary+form) with the major components (compiler, kernel, and so on) of the+operating system on which the executable runs, unless that component+itself accompanies the executable.++If distribution of executable or object code is made by offering+access to copy from a designated place, then offering equivalent+access to copy the source code from the same place counts as+distribution of the source code, even though third parties are not+compelled to copy the source along with the object code.++ 4. You may not copy, modify, sublicense, or distribute the Program+except as expressly provided under this License. Any attempt+otherwise to copy, modify, sublicense or distribute the Program is+void, and will automatically terminate your rights under this License.+However, parties who have received copies, or rights, from you under+this License will not have their licenses terminated so long as such+parties remain in full compliance.++ 5. You are not required to accept this License, since you have not+signed it. However, nothing else grants you permission to modify or+distribute the Program or its derivative works. These actions are+prohibited by law if you do not accept this License. Therefore, by+modifying or distributing the Program (or any work based on the+Program), you indicate your acceptance of this License to do so, and+all its terms and conditions for copying, distributing or modifying+the Program or works based on it.++ 6. Each time you redistribute the Program (or any work based on the+Program), the recipient automatically receives a license from the+original licensor to copy, distribute or modify the Program subject to+these terms and conditions. You may not impose any further+restrictions on the recipients' exercise of the rights granted herein.+You are not responsible for enforcing compliance by third parties to+this License.++ 7. If, as a consequence of a court judgment or allegation of patent+infringement or for any other reason (not limited to patent issues),+conditions are imposed on you (whether by court order, agreement or+otherwise) that contradict the conditions of this License, they do not+excuse you from the conditions of this License. If you cannot+distribute so as to satisfy simultaneously your obligations under this+License and any other pertinent obligations, then as a consequence you+may not distribute the Program at all. For example, if a patent+license would not permit royalty-free redistribution of the Program by+all those who receive copies directly or indirectly through you, then+the only way you could satisfy both it and this License would be to+refrain entirely from distribution of the Program.++If any portion of this section is held invalid or unenforceable under+any particular circumstance, the balance of the section is intended to+apply and the section as a whole is intended to apply in other+circumstances.++It is not the purpose of this section to induce you to infringe any+patents or other property right claims or to contest validity of any+such claims; this section has the sole purpose of protecting the+integrity of the free software distribution system, which is+implemented by public license practices. Many people have made+generous contributions to the wide range of software distributed+through that system in reliance on consistent application of that+system; it is up to the author/donor to decide if he or she is willing+to distribute software through any other system and a licensee cannot+impose that choice.++This section is intended to make thoroughly clear what is believed to+be a consequence of the rest of this License.++ 8. If the distribution and/or use of the Program is restricted in+certain countries either by patents or by copyrighted interfaces, the+original copyright holder who places the Program under this License+may add an explicit geographical distribution limitation excluding+those countries, so that distribution is permitted only in or among+countries not thus excluded. In such case, this License incorporates+the limitation as if written in the body of this License.++ 9. The Free Software Foundation may publish revised and/or new versions+of the General Public License from time to time. Such new versions will+be similar in spirit to the present version, but may differ in detail to+address new problems or concerns.++Each version is given a distinguishing version number. If the Program+specifies a version number of this License which applies to it and "any+later version", you have the option of following the terms and conditions+either of that version or of any later version published by the Free+Software Foundation. If the Program does not specify a version number of+this License, you may choose any version ever published by the Free Software+Foundation.++ 10. If you wish to incorporate parts of the Program into other free+programs whose distribution conditions are different, write to the author+to ask for permission. For software which is copyrighted by the Free+Software Foundation, write to the Free Software Foundation; we sometimes+make exceptions for this. Our decision will be guided by the two goals+of preserving the free status of all derivatives of our free software and+of promoting the sharing and reuse of software generally.++ NO WARRANTY++ 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,+REPAIR OR CORRECTION.++ 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE+POSSIBILITY OF SUCH DAMAGES.++ END OF TERMS AND CONDITIONS
-
files/lib/system/api/mpdf/vendor/mpdf/mpdf/README.md<pre>@@ -0,0 +1,150 @@+mPDF is a PHP library which generates PDF files from UTF-8 encoded HTML.++It is based on [FPDF](http://www.fpdf.org/) and [HTML2FPDF](http://html2fpdf.sourceforge.net/)+(see [CREDITS](CREDITS.txt)), with a number of enhancements. mPDF was written by Ian Back and is released+under the [GNU GPL v2 licence](LICENSE.txt).++[](https://packagist.org/packages/mpdf/mpdf)+[](https://packagist.org/packages/mpdf/mpdf)+[](https://packagist.org/packages/mpdf/mpdf)+++> ⚠ If you are viewing this file on mPDF GitHub repository homepage or on Packagist, please note that+> the default repository branch is `development` which can differ from the last stable release.++Requirements+============++PHP versions and extensions+---------------------------++- `PHP >=5.6 <7.3.0` is supported for `mPDF >= 7.0`+- `PHP 7.3` is supported since `mPDF v7.1.7`+- `PHP 7.4` is supported since `mPDF v8.0.4`+- `PHP 8.0` is supported since `mPDF v8.0.10`+- `PHP 8.1` is supported as of `mPDF v8.0.13`+- `PHP 8.2` is supported as of `mPDF v8.1.3`+- `PHP 8.3` is supported as of `mPDF v8.2.1`+- `PHP 8.4` is supported as of `mPDF v8.2.5`+- `PHP 8.5` is supported as of `mPDF v8.2.6`++PHP `mbstring` and `gd` extensions have to be loaded.++Additional extensions may be required for some advanced features such as `zlib` for compression of output and+embedded resources such as fonts, `bcmath` for generating barcodes or `xml` for character set conversion+and SVG handling.++Known server caveats+--------------------++mPDF has some problems with fetching external HTTP resources with single threaded servers such as `php -S`. A proper+server such as nginx (php-fpm) or Apache is recommended.++Support us+==========++Consider supporting development of mPDF with a donation of any value. [Donation button][1] can be found on the+[main page of the documentation][1].++Installation+============++Official installation method is via composer and its packagist package [mpdf/mpdf](https://packagist.org/packages/mpdf/mpdf).++```+$ composer require mpdf/mpdf+```++Usage+=====++The simplest usage (since version 7.0) of the library would be as follows:++```php+<?php++require_once __DIR__ . '/vendor/autoload.php';++$mpdf = new \Mpdf\Mpdf();+$mpdf->WriteHTML('<h1>Hello world!</h1>');+$mpdf->Output();++```++This will output the PDF inline to the browser as `application/pdf` Content-type.++Setup & Configuration+=====================++All [configuration directives](https://mpdf.github.io/reference/mpdf-variables/overview.html) can+be set by the `$config` parameter of the constructor.++It is recommended to set one's own temporary directory via `tempDir` configuration variable.+The directory must have write permissions (mode `775` is recommended) for users using mPDF+(typically `cli`, `webserver`, `fpm`).++**Warning:** mPDF will clean up old temporary files in the temporary directory. Choose a path dedicated to mPDF only.+++```php+<?php++$mpdf = new \Mpdf\Mpdf(['tempDir' => __DIR__ . '/tmp']);++```++By default, the temporary directory will be inside vendor directory and will have write permissions from+`post_install` composer script.++For more information about custom temporary directory see the note on+[Folder for temporary files](https://mpdf.github.io/installation-setup/folders-for-temporary-files.html)+in the section on Installation & Setup in the [manual][1].++If you have problems, please read the section on+[troubleshooting](https://mpdf.github.io/troubleshooting/known-issues.html) in the manual.++About CSS support and development state+=======================================++mPDF as a whole is a quite dated software. Nowadays, better alternatives are available, albeit not written in PHP.++Use mPDF if you cannot use non-PHP approach to generate PDF files or if you want to leverage some of the benefits of mPDF+over browser approach – color handling, pre-print, barcodes support, headers and footers, page numbering, TOCs, etc.+But beware that a HTML/CSS template tailored for mPDF might be necessary.++If you are looking for state of the art CSS support, mirroring existing HTML pages to PDF, use headless Chrome.++mPDF will still be updated to enhance some internal capabilities and to support newer versions of PHP,+but better and/or newer CSS support will most likely not be implemented.++Online manual+=============++Online manual is available at https://mpdf.github.io/.++General troubleshooting+=============++For general questions or troubleshooting please use [Discussions](https://github.com/mpdf/mpdf/discussions).++You can also use the [mpdf tag](https://stackoverflow.com/questions/tagged/mpdf) at Stack Overflow as the StackOverflow user base is more likely to answer you in a timely manner.++Contributing+============++Before submitting issues and pull requests please read the [CONTRIBUTING.md](https://github.com/mpdf/mpdf/blob/development/.github/CONTRIBUTING.md) file.++Unit Testing+============++Unit testing for mPDF is done using [PHPUnit](https://phpunit.de/).++To get started, run `composer install` from the command line while in the mPDF root directory+(you'll need [composer installed first](https://getcomposer.org/download/)).++To execute tests, run `composer test` from the command line while in the mPDF root directory.++Any assistance writing unit tests for mPDF is greatly appreciated. If you'd like to help, please+note that any PHP file located in the `/tests/` directory will be autoloaded when unit testing.++[1]: https://mpdf.github.io
-
files/lib/system/api/mpdf/vendor/mpdf/mpdf/composer.json<pre>@@ -0,0 +1,78 @@+{+ "name": "mpdf/mpdf",+ "type": "library",+ "description": "PHP library generating PDF files from UTF-8 encoded HTML",+ "keywords": ["php", "pdf", "utf-8"],+ "homepage": "https://mpdf.github.io",+ "license": ["GPL-2.0-only"],+ "authors": [+ {+ "name": "Matěj Humpál",+ "role": "Developer, maintainer"+ },+ {+ "name": "Ian Back",+ "role": "Developer (retired)"+ }+ ],+ "support": {+ "issues": "https://github.com/mpdf/mpdf/issues",+ "source": "https://github.com/mpdf/mpdf",+ "docs": "https://mpdf.github.io"+ },+ "require": {+ "php": "^5.6 || ^7.0 || ~8.0.0 || ~8.1.0 || ~8.2.0 || ~8.3.0 || ~8.4.0 || ~8.5.0",+ "ext-gd": "*",+ "ext-mbstring": "*",+ "mpdf/psr-http-message-shim": "^1.0 || ^2.0",+ "mpdf/psr-log-aware-trait": "^2.0 || ^3.0",+ "myclabs/deep-copy": "^1.7",+ "paragonie/random_compat": "^1.4|^2.0|^9.99.99",+ "psr/http-message": "^1.0 || ^2.0",+ "psr/log": "^1.0 || ^2.0 || ^3.0",+ "setasign/fpdi": "^2.1"+ },+ "require-dev": {+ "mockery/mockery": "^1.3.0",+ "mpdf/qrcode": "^1.1.0",+ "squizlabs/php_codesniffer": "^3.5.0",+ "tracy/tracy": "~2.5",+ "yoast/phpunit-polyfills": "^1.0"+ },+ "suggest": {+ "ext-bcmath": "Needed for generation of some types of barcodes",+ "ext-zlib": "Needed for compression of embedded resources, such as fonts",+ "ext-xml": "Needed mainly for SVG manipulation",+ "ext-imagick": "Needed if developing the Mpdf library"+ },+ "autoload": {+ "psr-4": {+ "Mpdf\\": "src/"+ },+ "files": [+ "src/functions.php"+ ]+ },+ "autoload-dev": {+ "psr-4": {+ "Mpdf\\": "tests/Mpdf",+ "Snapshots\\": "tests/Snapshots",+ "Issues\\": "tests/Issues"+ },+ "files": [+ "src/functions-dev.php"+ ]+ },+ "scripts": {+ "post-install-cmd": [+ "php -r \"chmod('./tmp', 0777);\""+ ],+ "cs": "@php vendor/bin/phpcs --report-width=160 --standard=ruleset.xml --severity=1 --warning-severity=0 --extensions=php src utils tests",+ "cs:fix": "@php vendor/bin/phpcbf --standard=ruleset.xml --extensions=php src utils tests",+ "test": "@php vendor/bin/phpunit",+ "coverage": "@php vendor/bin/phpunit --coverage-text"+ },+ "config": {+ "sort-packages": true+ }+}
-
files/lib/system/api/mpdf/vendor/mpdf/mpdf/data/CJKdata.php<pre>@@ -0,0 +1,99 @@+<?php+// mPDF 2.5++// BIG 5+$cw = array(+ 32 => 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;
-
files/lib/system/api/mpdf/vendor/mpdf/mpdf/data/collations/Afrikaans_South_Africa.php<pre>@@ -0,0 +1,104 @@+<?php+return [+ 710 => 94,+ 189 => 188,+ 190 => 179,+ 65 => 97,+ 170 => 97,+ 225 => 97,+ 193 => 97,+ 224 => 97,+ 192 => 97,+ 226 => 97,+ 194 => 97,+ 228 => 97,+ 196 => 97,+ 227 => 97,+ 195 => 97,+ 229 => 97,+ 197 => 97,+ 230 => 97,+ 198 => 97,+ 66 => 98,+ 67 => 99,+ 231 => 99,+ 199 => 99,+ 68 => 100,+ 240 => 100,+ 208 => 100,+ 69 => 101,+ 233 => 101,+ 201 => 101,+ 232 => 101,+ 200 => 101,+ 234 => 101,+ 202 => 101,+ 235 => 101,+ 203 => 101,+ 70 => 102,+ 402 => 102,+ 71 => 103,+ 72 => 104,+ 73 => 105,+ 237 => 105,+ 205 => 105,+ 236 => 105,+ 204 => 105,+ 238 => 105,+ 206 => 105,+ 239 => 105,+ 207 => 105,+ 74 => 106,+ 75 => 107,+ 76 => 108,+ 77 => 109,+ 78 => 110,+ 241 => 110,+ 209 => 110,+ 79 => 111,+ 186 => 111,+ 243 => 111,+ 211 => 111,+ 242 => 111,+ 210 => 111,+ 244 => 111,+ 212 => 111,+ 246 => 111,+ 214 => 111,+ 245 => 111,+ 213 => 111,+ 248 => 111,+ 216 => 111,+ 339 => 111,+ 338 => 111,+ 80 => 112,+ 81 => 113,+ 82 => 114,+ 83 => 115,+ 353 => 115,+ 352 => 115,+ 223 => 115,+ 84 => 116,+ 254 => 116,+ 222 => 116,+ 85 => 117,+ 250 => 117,+ 218 => 117,+ 249 => 117,+ 217 => 117,+ 251 => 117,+ 219 => 117,+ 252 => 117,+ 220 => 117,+ 86 => 118,+ 87 => 119,+ 88 => 120,+ 89 => 121,+ 253 => 121,+ 221 => 121,+ 255 => 121,+ 376 => 121,+ 90 => 122,+ 382 => 122,+ 381 => 122,+];
-
files/lib/system/api/mpdf/vendor/mpdf/mpdf/data/collations/Albanian_Albania.php<pre>@@ -0,0 +1,110 @@+<?php+return [+ 728 => 711,+ 65 => 97,+ 225 => 97,+ 193 => 97,+ 226 => 97,+ 194 => 97,+ 228 => 97,+ 196 => 97,+ 259 => 97,+ 258 => 97,+ 261 => 97,+ 260 => 97,+ 66 => 98,+ 67 => 99,+ 263 => 99,+ 262 => 99,+ 269 => 99,+ 268 => 99,+ 231 => 99,+ 199 => 99,+ 68 => 100,+ 271 => 100,+ 270 => 100,+ 273 => 100,+ 272 => 100,+ 69 => 101,+ 233 => 101,+ 201 => 101,+ 235 => 101,+ 203 => 101,+ 283 => 101,+ 282 => 101,+ 281 => 101,+ 280 => 101,+ 70 => 102,+ 71 => 103,+ 72 => 104,+ 73 => 105,+ 237 => 105,+ 205 => 105,+ 238 => 105,+ 206 => 105,+ 74 => 106,+ 75 => 107,+ 76 => 108,+ 314 => 108,+ 313 => 108,+ 318 => 108,+ 317 => 108,+ 322 => 108,+ 321 => 108,+ 77 => 109,+ 78 => 110,+ 324 => 110,+ 323 => 110,+ 328 => 110,+ 327 => 110,+ 79 => 111,+ 243 => 111,+ 211 => 111,+ 244 => 111,+ 212 => 111,+ 246 => 111,+ 214 => 111,+ 337 => 111,+ 336 => 111,+ 80 => 112,+ 81 => 113,+ 82 => 114,+ 341 => 114,+ 340 => 114,+ 345 => 114,+ 344 => 114,+ 83 => 115,+ 347 => 115,+ 346 => 115,+ 353 => 115,+ 352 => 115,+ 351 => 115,+ 350 => 115,+ 223 => 115,+ 84 => 116,+ 357 => 116,+ 356 => 116,+ 355 => 116,+ 354 => 116,+ 85 => 117,+ 250 => 117,+ 218 => 117,+ 367 => 117,+ 366 => 117,+ 369 => 117,+ 368 => 117,+ 252 => 117,+ 220 => 117,+ 86 => 118,+ 87 => 119,+ 88 => 120,+ 221 => 253,+ 89 => 121,+ 90 => 122,+ 378 => 122,+ 377 => 122,+ 380 => 122,+ 379 => 122,+ 382 => 122,+ 381 => 122,+];
-
files/lib/system/api/mpdf/vendor/mpdf/mpdf/data/collations/Alsatian_France.php<pre>@@ -0,0 +1,104 @@+<?php+return [+ 710 => 94,+ 189 => 188,+ 190 => 179,+ 65 => 97,+ 170 => 97,+ 225 => 97,+ 193 => 97,+ 224 => 97,+ 192 => 97,+ 226 => 97,+ 194 => 97,+ 228 => 97,+ 196 => 97,+ 227 => 97,+ 195 => 97,+ 229 => 97,+ 197 => 97,+ 230 => 97,+ 198 => 97,+ 66 => 98,+ 67 => 99,+ 231 => 99,+ 199 => 99,+ 68 => 100,+ 240 => 100,+ 208 => 100,+ 69 => 101,+ 233 => 101,+ 201 => 101,+ 232 => 101,+ 200 => 101,+ 234 => 101,+ 202 => 101,+ 235 => 101,+ 203 => 101,+ 70 => 102,+ 402 => 102,+ 71 => 103,+ 72 => 104,+ 73 => 105,+ 237 => 105,+ 205 => 105,+ 236 => 105,+ 204 => 105,+ 238 => 105,+ 206 => 105,+ 239 => 105,+ 207 => 105,+ 74 => 106,+ 75 => 107,+ 76 => 108,+ 77 => 109,+ 78 => 110,+ 241 => 110,+ 209 => 110,+ 79 => 111,+ 186 => 111,+ 243 => 111,+ 211 => 111,+ 242 => 111,+ 210 => 111,+ 244 => 111,+ 212 => 111,+ 246 => 111,+ 214 => 111,+ 245 => 111,+ 213 => 111,+ 248 => 111,+ 216 => 111,+ 339 => 111,+ 338 => 111,+ 80 => 112,+ 81 => 113,+ 82 => 114,+ 83 => 115,+ 353 => 115,+ 352 => 115,+ 223 => 115,+ 84 => 116,+ 254 => 116,+ 222 => 116,+ 85 => 117,+ 250 => 117,+ 218 => 117,+ 249 => 117,+ 217 => 117,+ 251 => 117,+ 219 => 117,+ 252 => 117,+ 220 => 117,+ 86 => 118,+ 87 => 119,+ 88 => 120,+ 89 => 121,+ 253 => 121,+ 221 => 121,+ 255 => 121,+ 376 => 121,+ 90 => 122,+ 382 => 122,+ 381 => 122,+];
-
files/lib/system/api/mpdf/vendor/mpdf/mpdf/data/collations/Arabic_Algeria.php<pre>@@ -0,0 +1,67 @@+<?php+return [+ 173 => 8205,+ 1600 => 8205,+ 1611 => 8205,+ 1612 => 8205,+ 1613 => 8205,+ 1614 => 8205,+ 1615 => 8205,+ 1616 => 8205,+ 1618 => 8205,+ 1617 => 8205,+ 710 => 94,+ 189 => 188,+ 190 => 179,+ 65 => 97,+ 224 => 97,+ 226 => 97,+ 66 => 98,+ 67 => 99,+ 231 => 99,+ 68 => 100,+ 69 => 101,+ 233 => 101,+ 232 => 101,+ 234 => 101,+ 235 => 101,+ 70 => 102,+ 402 => 102,+ 71 => 103,+ 72 => 104,+ 73 => 105,+ 238 => 105,+ 239 => 105,+ 74 => 106,+ 75 => 107,+ 76 => 108,+ 77 => 109,+ 78 => 110,+ 79 => 111,+ 244 => 111,+ 339 => 111,+ 338 => 111,+ 80 => 112,+ 81 => 113,+ 82 => 114,+ 83 => 115,+ 84 => 116,+ 85 => 117,+ 249 => 117,+ 251 => 117,+ 252 => 117,+ 86 => 118,+ 87 => 119,+ 88 => 120,+ 89 => 121,+ 90 => 122,+ 1573 => 1575,+ 1571 => 1575,+ 1570 => 1575,+ 1606 => 1722,+ 1729 => 1607,+ 1726 => 1607,+ 1572 => 1608,+ 1746 => 1610,+ 1574 => 1610,+];