View Issue Details

IDProjectCategoryView StatusLast Update
0005264OXID eShop (all versions)4.03. 3rd party librariespublic2022-01-28 14:13
ReporterFibreFoX Assigned To 
PrioritynormalSeverityfeatureReproducibilityalways
Status resolvedResolutionfixed 
Product Version4.7.6 / 5.0.6 
Summary0005264: Update tcpdf to latest revision
Descriptionthe shipped tcpdf-library is over 3 years old, in 3 monts its even 4 years old.

There are lot of bugfixes in the current version, even better support of PHP 5.3

One nice feature of that newer version would be to have smaller pdf-files by subsetting the choosen font.

The licence has changed to GNU-LGPLv3
Additional Information6.0.000 (2013-03-17)
    - IMPORTANT: PHP4 support has been removed starting from this version.

5.2.000 (2010-06-02)
    - IMPORTANT: Support for font subsetting was added by default to reduce the size of documents using large unicode font files.
        If you embed the whole font in the PDF, the person on the other end can make changes to it even if he didn't have your font.
        If you subset the font, file size of the PDF will be smaller but the person who receives your PDF would need to have your same font in order to make changes to your PDF.

http://sourceforge.net/projects/tcpdf/files/
Tags3rd Party Libraries
ThemeAll
BrowserAll
PHP VersionNot defined
Database VersionNot defined

Activities

svetlana

2014-03-28 10:06

reporter   ~0009763

waiting for the PO decision.

FibreFoX

2014-10-22 15:41

reporter   ~0010261

any progress on this one? there are a lot of bugs fixed in latest version, it's even made available via github now

jurate.baseviciene

2014-10-23 07:38

reporter   ~0010265

We are looking through all 3rd party libraries and evaluating them.
All changes will be presented with the Next Major Version.

heinrich.franz

2016-01-02 16:01

reporter   ~0011399

Subsetting would be a great feature! File size of invoices in oxid eshop are pretty large!!!

FibreFoX

2016-01-04 10:29

reporter   ~0011401

@Heinrich.Franz
To reduce filesize, we currently break update-compatibility by replacing core/oxpdf.php::SetFont with this code

    public function SetFont($family, $style='', $size=0, $fontfile='')
    {
        // make PDFs smaller (font-subsetting not working with that ancient version of TCPDF)
        parent::SetFont("", $style, $size, $fontfile);
    }

Beware of problems with UTF-8 here, default fallbacks are used by this

heinrich.franz

2016-01-04 15:13

reporter   ~0011402

What do you mean with problems with UTF-8? Characters other than latin?

FibreFoX

2016-01-04 15:40

reporter   ~0011403

@Heinrich.Franz
This works, because TCPDF falls back to "helvetica" instead of Arial, which is another font and might not look like expected (because the letters have different spacings).

heinrich.franz

2016-01-04 18:33

reporter   ~0011404

@FibreFoX
I've already changed the code like you wrote and seen the result.

But what are the problems with UTF-8?

FibreFoX

2016-01-04 21:13

reporter   ~0011405

@Heinrich.Franz
Might have been a problem on our side ;) can't reproduce it right now. If everything works okay, thats one problem less to consider.

Sven Brunk

2022-01-28 14:13

administrator   ~0013540

tcpdf is no longer part of the shop core, but moved to an external module: https://github.com/OXIDprojects/pdf-invoice-module/
According to https://github.com/OXIDprojects/pdf-invoice-module/blob/master/core/tcpdf/README.TXT it is now a newer version, but there were changes to the library files without updating the README...

Anyway. I will close this ticket as we do no longer officially support this here.