mirror of
https://github.com/moodle/moodle.git
synced 2025-04-14 13:02:07 +02:00
MDL-60237 libraries: upgrade TCPDF to 6.2.13
This commit is contained in:
parent
d8e9a23c48
commit
cbc8560718
@ -1,3 +1,6 @@
|
||||
6.2.13 (2016-06-10)
|
||||
- IMPORTANT: A new version of this library is under development at https://github.com/tecnickcom/tc-lib-pdf and as a consequence this version will not receive any additional development or support. This version should be considered obsolete, new projects should use the new version as soon it will become stable.
|
||||
|
||||
6.2.12 (2015-09-12)
|
||||
- fix composer package name to tecnickcom/tcpdf
|
||||
|
||||
|
@ -1,117 +1,84 @@
|
||||
TCPDF - README
|
||||
============================================================
|
||||
# TCPDF
|
||||
*PHP PDF Library*
|
||||
|
||||
I WISH TO IMPROVE AND EXPAND TCPDF BUT I NEED YOUR SUPPORT.
|
||||
PLEASE MAKE A DONATION:
|
||||
http://sourceforge.net/donate/index.php?group_id=128076
|
||||
or via PayPal at paypal@tecnick.com
|
||||
[](https://www.paypal.com/cgi-bin/webscr?cmd=_donations¤cy_code=GBP&business=paypal@tecnick.com&item_name=donation%20for%20TCPDF%20project)
|
||||
*Please consider supporting this project by making a donation via [PayPal](https://www.paypal.com/cgi-bin/webscr?cmd=_donations¤cy_code=GBP&business=paypal@tecnick.com&item_name=donation%20for%20TCPDF%20project)*
|
||||
|
||||
------------------------------------------------------------
|
||||
|
||||
Name: TCPDF
|
||||
Version: 6.2.12
|
||||
Release date: 2015-09-12
|
||||
Author: Nicola Asuni
|
||||
|
||||
Copyright (c) 2002-2015:
|
||||
Nicola Asuni
|
||||
Tecnick.com LTD
|
||||
www.tecnick.com
|
||||
|
||||
URLs:
|
||||
http://www.tcpdf.org
|
||||
http://www.sourceforge.net/projects/tcpdf
|
||||
https://github.com/tecnickcom/TCPDF
|
||||
|
||||
Description:
|
||||
TCPDF is a PHP class for generating PDF files on-the-fly without requiring external extensions.
|
||||
This library includes also a class to extract data from existing PDF documents and
|
||||
classes to generate 1D and 2D barcodes in various formats.
|
||||
|
||||
Main Features:
|
||||
* no external libraries are required for the basic functions;
|
||||
* all standard page formats, custom page formats, custom margins and units of measure;
|
||||
* UTF-8 Unicode and Right-To-Left languages;
|
||||
* TrueTypeUnicode, OpenTypeUnicode v1, TrueType, OpenType v1, Type1 and CID-0 fonts;
|
||||
* font subsetting;
|
||||
* methods to publish some XHTML + CSS code, Javascript and Forms;
|
||||
* images, graphic (geometric figures) and transformation methods;
|
||||
* supports JPEG, PNG and SVG images natively, all images supported by GD (GD, GD2, GD2PART, GIF, JPEG, PNG, BMP, XBM, XPM) and all images supported via ImagMagick (http://www.imagemagick.org/script/formats.php)
|
||||
* 1D and 2D barcodes: CODE 39, ANSI MH10.8M-1983, USD-3, 3 of 9, CODE 93, USS-93, Standard 2 of 5, Interleaved 2 of 5, CODE 128 A/B/C, 2 and 5 Digits UPC-Based Extension, EAN 8, EAN 13, UPC-A, UPC-E, MSI, POSTNET, PLANET, RMS4CC (Royal Mail 4-state Customer Code), CBC (Customer Bar Code), KIX (Klant index - Customer index), Intelligent Mail Barcode, Onecode, USPS-B-3200, CODABAR, CODE 11, PHARMACODE, PHARMACODE TWO-TRACKS, Datamatrix, QR-Code, PDF417;
|
||||
* JPEG and PNG ICC profiles, Grayscale, RGB, CMYK, Spot Colors and Transparencies;
|
||||
* automatic page header and footer management;
|
||||
* document encryption up to 256 bit and digital signature certifications;
|
||||
* transactions to UNDO commands;
|
||||
* PDF annotations, including links, text and file attachments;
|
||||
* text rendering modes (fill, stroke and clipping);
|
||||
* multiple columns mode;
|
||||
* no-write page regions;
|
||||
* bookmarks, named destinations and table of content;
|
||||
* text hyphenation;
|
||||
* text stretching and spacing (tracking);
|
||||
* automatic page break, line break and text alignments including justification;
|
||||
* automatic page numbering and page groups;
|
||||
* move and delete pages;
|
||||
* page compression (requires php-zlib extension);
|
||||
* XOBject Templates;
|
||||
* Layers and object visibility.
|
||||
* PDF/A-1b support.
|
||||
|
||||
Installation (full instructions on http: www.tcpdf.org):
|
||||
1. copy the folder on your Web server
|
||||
2. set your installation path and other parameters on the config/tcpdf_config.php
|
||||
3. call the examples/example_001.php page with your browser to see an example
|
||||
|
||||
Source Code Documentation:
|
||||
http://www.tcpdf.org
|
||||
|
||||
Additional Documentation:
|
||||
http://www.tcpdf.org
|
||||
|
||||
License:
|
||||
Copyright (C) 2002-2014 Nicola Asuni - Tecnick.com LTD
|
||||
|
||||
TCPDF 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, either version 3 of the
|
||||
License, or (at your option) any later version.
|
||||
|
||||
TCPDF 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.
|
||||
|
||||
You should have received a copy of the License
|
||||
along with TCPDF. If not, see
|
||||
<http://www.tecnick.com/pagefiles/tcpdf/LICENSE.TXT>.
|
||||
|
||||
See LICENSE.TXT file for more information.
|
||||
|
||||
Third party fonts:
|
||||
|
||||
This library may include third party font files released with different licenses.
|
||||
|
||||
All the PHP files on the fonts directory are subject to the general TCPDF license (GNU-LGPLv3),
|
||||
they do not contain any binary data but just a description of the general properties of a particular font.
|
||||
These files can be also generated on the fly using the font utilities and TCPDF methods.
|
||||
|
||||
All the original binary TTF font files have been renamed for compatibility with TCPDF and compressed using the gzcompress PHP function that uses the ZLIB data format (.z files).
|
||||
|
||||
The binary files (.z) that begins with the prefix "free" have been extracted from the GNU FreeFont collection (GNU-GPLv3).
|
||||
The binary files (.z) that begins with the prefix "pdfa" have been derived from the GNU FreeFont, so they are subject to the same license.
|
||||
For the details of Copyright, License and other information, please check the files inside the directory fonts/freefont-20120503
|
||||
Link : http://www.gnu.org/software/freefont/
|
||||
|
||||
The binary files (.z) that begins with the prefix "dejavu" have been extracted from the DejaVu fonts 2.33 (Bitstream) collection.
|
||||
For the details of Copyright, License and other information, please check the files inside the directory fonts/dejavu-fonts-ttf-2.33
|
||||
Link : http://dejavu-fonts.org
|
||||
|
||||
The binary files (.z) that begins with the prefix "ae" have been extracted from the Arabeyes.org collection (GNU-GPLv2).
|
||||
Link : http://projects.arabeyes.org/
|
||||
|
||||
ICC profile:
|
||||
TCPDF includes the sRGB.icc profile from the icc-profiles-free Debian package:
|
||||
https://packages.debian.org/source/stable/icc-profiles-free
|
||||
* **category** Library
|
||||
* **author** Nicola Asuni <info@tecnick.com>
|
||||
* **copyright** 2002-2016 Nicola Asuni - Tecnick.com LTD
|
||||
* **license** http://www.gnu.org/copyleft/lesser.html GNU-LGPL v3 (see LICENSE.TXT)
|
||||
* **link** http://www.tcpdf.org
|
||||
* **source** https://github.com/tecnickcom/TCPDF
|
||||
|
||||
|
||||
============================================================
|
||||
## IMPORTANT
|
||||
A new version of this library is under development at https://github.com/tecnickcom/tc-lib-pdf and as a consequence this version will not receive any additional development or support.
|
||||
This version should be considered obsolete, new projects should use the new version as soon it will become stable.
|
||||
|
||||
|
||||
|
||||
## Description
|
||||
|
||||
PHP library for generating PDF documents on-the-fly.
|
||||
|
||||
### Main Features:
|
||||
* no external libraries are required for the basic functions;
|
||||
* all standard page formats, custom page formats, custom margins and units of measure;
|
||||
* UTF-8 Unicode and Right-To-Left languages;
|
||||
* TrueTypeUnicode, OpenTypeUnicode v1, TrueType, OpenType v1, Type1 and CID-0 fonts;
|
||||
* font subsetting;
|
||||
* methods to publish some XHTML + CSS code, Javascript and Forms;
|
||||
* images, graphic (geometric figures) and transformation methods;
|
||||
* supports JPEG, PNG and SVG images natively, all images supported by GD (GD, GD2, GD2PART, GIF, JPEG, PNG, BMP, XBM, XPM) and all images supported via ImagMagick (http://www.imagemagick.org/script/formats.php)
|
||||
* 1D and 2D barcodes: CODE 39, ANSI MH10.8M-1983, USD-3, 3 of 9, CODE 93, USS-93, Standard 2 of 5, Interleaved 2 of 5, CODE 128 A/B/C, 2 and 5 Digits UPC-Based Extension, EAN 8, EAN 13, UPC-A, UPC-E, MSI, POSTNET, PLANET, RMS4CC (Royal Mail 4-state Customer Code), CBC (Customer Bar Code), KIX (Klant index - Customer index), Intelligent Mail Barcode, Onecode, USPS-B-3200, CODABAR, CODE 11, PHARMACODE, PHARMACODE TWO-TRACKS, Datamatrix, QR-Code, PDF417;
|
||||
* JPEG and PNG ICC profiles, Grayscale, RGB, CMYK, Spot Colors and Transparencies;
|
||||
* automatic page header and footer management;
|
||||
* document encryption up to 256 bit and digital signature certifications;
|
||||
* transactions to UNDO commands;
|
||||
* PDF annotations, including links, text and file attachments;
|
||||
* text rendering modes (fill, stroke and clipping);
|
||||
* multiple columns mode;
|
||||
* no-write page regions;
|
||||
* bookmarks, named destinations and table of content;
|
||||
* text hyphenation;
|
||||
* text stretching and spacing (tracking);
|
||||
* automatic page break, line break and text alignments including justification;
|
||||
* automatic page numbering and page groups;
|
||||
* move and delete pages;
|
||||
* page compression (requires php-zlib extension);
|
||||
* XOBject Templates;
|
||||
* Layers and object visibility.
|
||||
* PDF/A-1b support.
|
||||
|
||||
### Third party fonts:
|
||||
|
||||
This library may include third party font files released with different licenses.
|
||||
|
||||
All the PHP files on the fonts directory are subject to the general TCPDF license (GNU-LGPLv3),
|
||||
they do not contain any binary data but just a description of the general properties of a particular font.
|
||||
These files can be also generated on the fly using the font utilities and TCPDF methods.
|
||||
|
||||
All the original binary TTF font files have been renamed for compatibility with TCPDF and compressed using the gzcompress PHP function that uses the ZLIB data format (.z files).
|
||||
|
||||
The binary files (.z) that begins with the prefix "free" have been extracted from the GNU FreeFont collection (GNU-GPLv3).
|
||||
The binary files (.z) that begins with the prefix "pdfa" have been derived from the GNU FreeFont, so they are subject to the same license.
|
||||
For the details of Copyright, License and other information, please check the files inside the directory fonts/freefont-20120503
|
||||
Link : http://www.gnu.org/software/freefont/
|
||||
|
||||
The binary files (.z) that begins with the prefix "dejavu" have been extracted from the DejaVu fonts 2.33 (Bitstream) collection.
|
||||
For the details of Copyright, License and other information, please check the files inside the directory fonts/dejavu-fonts-ttf-2.33
|
||||
Link : http://dejavu-fonts.org
|
||||
|
||||
The binary files (.z) that begins with the prefix "ae" have been extracted from the Arabeyes.org collection (GNU-GPLv2).
|
||||
Link : http://projects.arabeyes.org/
|
||||
|
||||
### ICC profile:
|
||||
|
||||
TCPDF includes the sRGB.icc profile from the icc-profiles-free Debian package:
|
||||
https://packages.debian.org/source/stable/icc-profiles-free
|
||||
|
||||
|
||||
## Developer(s) Contact
|
||||
|
||||
* Nicola Asuni <info@tecnick.com>
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "tecnickcom/tcpdf",
|
||||
"version": "6.2.12",
|
||||
"version": "6.2.13",
|
||||
"homepage": "http://www.tcpdf.org/",
|
||||
"type": "library",
|
||||
"description": "TCPDF is a PHP class for generating PDF documents and barcodes.",
|
||||
@ -18,7 +18,6 @@
|
||||
},
|
||||
"autoload": {
|
||||
"classmap": [
|
||||
"fonts",
|
||||
"config",
|
||||
"include",
|
||||
"tcpdf.php",
|
||||
|
@ -55,7 +55,7 @@ class TCPDF_STATIC {
|
||||
* Current TCPDF version.
|
||||
* @private static
|
||||
*/
|
||||
private static $tcpdf_version = '6.2.12';
|
||||
private static $tcpdf_version = '6.2.13';
|
||||
|
||||
/**
|
||||
* String alias for total number of pages.
|
||||
|
@ -1,10 +1,16 @@
|
||||
Description of TCPDF library import 6.2.12
|
||||
Description of TCPDF library import 6.2.13
|
||||
===========================================
|
||||
* download library from https://github.com/tecnickcom/TCPDF/releases
|
||||
* delete examples/, tools/ and tcpdf_import.php
|
||||
* remove tcpdf_import.php from composer.json
|
||||
* remove all fonts that were not already present
|
||||
* visit http://127.0.0.1/lib/tests/other/pdflibtestpage.php and view the pdf
|
||||
|
||||
2017/10/02
|
||||
----------
|
||||
Upgrade to tcpdf_php5 TCPDF 6.2.13 (MDL-60237)
|
||||
by Marina Glancy <marina@moodle.com>
|
||||
|
||||
2015/09/29
|
||||
----------
|
||||
Upgrade to tcpdf_php5 TCPDF 6.2.12 (MDL-51534)
|
||||
|
@ -1,7 +1,7 @@
|
||||
<?php
|
||||
//============================================================+
|
||||
// File name : tcpdf.php
|
||||
// Version : 6.2.12
|
||||
// Version : 6.2.13
|
||||
// Begin : 2002-08-03
|
||||
// Last Update : 2015-06-18
|
||||
// Author : Nicola Asuni - Tecnick.com LTD - www.tecnick.com - info@tecnick.com
|
||||
@ -1822,9 +1822,9 @@ class TCPDF {
|
||||
/**
|
||||
* This is the class constructor.
|
||||
* It allows to set up the page format, the orientation and the measure unit used in all the methods (except for the font sizes).
|
||||
*
|
||||
*
|
||||
* IMPORTANT: Please note that this method sets the mb_internal_encoding to ASCII, so if you are using the mbstring module functions with TCPDF you need to correctly set/unset the mb_internal_encoding when needed.
|
||||
*
|
||||
*
|
||||
* @param $orientation (string) page orientation. Possible values are (case insensitive):<ul><li>P or Portrait (default)</li><li>L or Landscape</li><li>'' (empty string) for automatic orientation</li></ul>
|
||||
* @param $unit (string) User measure unit. Possible values are:<ul><li>pt: point</li><li>mm: millimeter (default)</li><li>cm: centimeter</li><li>in: inch</li></ul><br />A point equals 1/72 of inch, that is to say about 0.35 mm (an inch being 2.54 cm). This is a very common unit in typography; font sizes are expressed in that unit.
|
||||
* @param $format (mixed) The format used for pages. It can be either: one of the string values specified at getPageSizeFromFormat() or an array of parameters specified at setPageFormat().
|
||||
@ -4691,7 +4691,7 @@ class TCPDF {
|
||||
* Defines the page and position a link points to.
|
||||
* @param $link (int) The link identifier returned by AddLink()
|
||||
* @param $y (float) Ordinate of target position; -1 indicates the current position. The default value is 0 (top of page)
|
||||
* @param $page (int) Number of target page; -1 indicates the current page (default value). If you prefix a page number with the * character, then this page will not be changed when adding/deleting/moving pages.
|
||||
* @param $page (int) Number of target page; -1 indicates the current page (default value). If you prefix a page number with the * character, then this page will not be changed when adding/deleting/moving pages.
|
||||
* @public
|
||||
* @since 1.5
|
||||
* @see AddLink()
|
||||
@ -5944,7 +5944,9 @@ class TCPDF {
|
||||
if ($startpage == $endpage) {
|
||||
// single page
|
||||
for ($column = $startcolumn; $column <= $endcolumn; ++$column) { // for each column
|
||||
$this->selectColumn($column);
|
||||
if ($column != $this->current_column) {
|
||||
$this->selectColumn($column);
|
||||
}
|
||||
if ($this->rtl) {
|
||||
$this->x -= $mc_margin['R'];
|
||||
} else {
|
||||
@ -5973,7 +5975,9 @@ class TCPDF {
|
||||
} // end for each column
|
||||
} elseif ($page == $startpage) { // first page
|
||||
for ($column = $startcolumn; $column < $this->num_columns; ++$column) { // for each column
|
||||
$this->selectColumn($column);
|
||||
if ($column != $this->current_column) {
|
||||
$this->selectColumn($column);
|
||||
}
|
||||
if ($this->rtl) {
|
||||
$this->x -= $mc_margin['R'];
|
||||
} else {
|
||||
@ -5992,7 +5996,9 @@ class TCPDF {
|
||||
} // end for each column
|
||||
} elseif ($page == $endpage) { // last page
|
||||
for ($column = 0; $column <= $endcolumn; ++$column) { // for each column
|
||||
$this->selectColumn($column);
|
||||
if ($column != $this->current_column) {
|
||||
$this->selectColumn($column);
|
||||
}
|
||||
if ($this->rtl) {
|
||||
$this->x -= $mc_margin['R'];
|
||||
} else {
|
||||
@ -8358,7 +8364,7 @@ class TCPDF {
|
||||
break;
|
||||
}
|
||||
case 'link': {
|
||||
if (is_string($pl['txt'])) {
|
||||
if (is_string($pl['txt']) && !empty($pl['txt'])) {
|
||||
if ($pl['txt'][0] == '#') {
|
||||
// internal destination
|
||||
$annots .= ' /Dest /'.TCPDF_STATIC::encodeNameObject(substr($pl['txt'], 1));
|
||||
@ -9798,7 +9804,7 @@ class TCPDF {
|
||||
//$out .= ' /XFA ';
|
||||
$out .= ' >>';
|
||||
// signatures
|
||||
if ($this->sign AND isset($this->signature_data['cert_type'])
|
||||
if ($this->sign AND isset($this->signature_data['cert_type'])
|
||||
AND (empty($this->signature_data['approval']) OR ($this->signature_data['approval'] != 'A'))) {
|
||||
if ($this->signature_data['cert_type'] > 0) {
|
||||
$out .= ' /Perms << /DocMDP '.($this->sig_obj_id + 1).' 0 R >>';
|
||||
@ -17723,7 +17729,7 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value:
|
||||
$spacew = ($spacewidth * $ns);
|
||||
}
|
||||
$offset = $strpiece[2][1] + strlen($strpiece[2][0]);
|
||||
$epsposend = strpos($pmid, $this->epsmarker.'Q', $offset);
|
||||
$epsposend = strpos($pmid, $this->epsmarker.'Q', $offset);
|
||||
if ($epsposend !== null) {
|
||||
$epsposend += strlen($this->epsmarker.'Q');
|
||||
$epsposbeg = strpos($pmid, 'q'.$this->epsmarker, $offset);
|
||||
@ -19749,7 +19755,7 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value:
|
||||
break;
|
||||
}
|
||||
case 'a': {
|
||||
$this->HREF = '';
|
||||
$this->HREF = array();
|
||||
break;
|
||||
}
|
||||
case 'sup': {
|
||||
@ -23681,7 +23687,7 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value:
|
||||
}
|
||||
return $name;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Sets the opening SVG element handler function for the XML parser. (*** TO BE COMPLETED ***)
|
||||
* @param $parser (resource) The first parameter, parser, is a reference to the XML parser calling the handler.
|
||||
|
@ -130,7 +130,7 @@
|
||||
<location>tcpdf</location>
|
||||
<name>TCPDF</name>
|
||||
<license>LGPL</license>
|
||||
<version>6.2.12</version>
|
||||
<version>6.2.13</version>
|
||||
<licenseversion>3</licenseversion>
|
||||
</library>
|
||||
<library>
|
||||
|
Loading…
x
Reference in New Issue
Block a user