Раздутый PDF, созданный TCPDF - PullRequest
0 голосов
/ 08 июня 2010

В веб-приложении, разработанном на PHP, мы генерируем цитаты и счета-фактуры (очень простые и одностраничные) с использованием библиотеки TCPDF.

Библиотека работает просто замечательно, но, похоже, генерирует очень большие PDFфайлы.Например, в нашем случае он генерирует PDF-файлы размером до 4 МБ (+/- несколько КБ).

Как уменьшить это раздувание PDF-файлов, генерируемых TCPDF?

Вотфрагмент кода, который я использую

ob_start();
                include('quote_view_bag_pdf.php'); //This file is valid HTML file with PHP code to insert data from DB
                $quote = ob_get_contents();  //Capture the content of 'quote_view_bag_pdf.php' file and store in variable

                ob_end_clean();

                //Code to generate PDF file for this Quote
                //This line is to fix a few errors in tcpdf
                $k_path_url='';


                require_once('tcpdf/config/lang/eng.php');
                require_once('tcpdf/tcpdf.php');

                // create new PDF document
                $pdf = new TCPDF();

                // remove default header/footer
                $pdf->setPrintHeader(false);
                $pdf->setPrintFooter(false); 

                // add a page
                $pdf->AddPage();

                // print html formated text
                $pdf->writeHtml($quote, true, 0, true, 0); //Insert Variables contents here.

                //Build Out File Name
                $pdf_out_file = "pdf/Quote_".$_POST['quote_id']."_.pdf";

                //Close and output PDF document
                $pdf->Output($pdf_out_file, 'F');
                $pdf->Output($pdf_out_file, 'I');
                ///////////////
enter code here

Надеюсь, этот фрагмент кода даст некоторое представление?

Ответы [ 3 ]

0 голосов
/ 10 июня 2010

Наконец мне удалось решить проблему.

Проблема заключалась в том, что я по ошибке вставил ссылку на идентификатор электронной почты на веб-страницу, которая отображалась в PDF. При удалении этой ссылки размер сгенерированного PDF уменьшился до 260 кБ!

Спасибо всем, кто пытался помочь мне в решении этой проблемы.

0 голосов
/ 06 августа 2010

Текущая версия TCPDF теперь включает поднабор шрифтов по умолчанию, чтобы значительно уменьшить размер PDF. Посетите веб-сайт TCPDF по адресу http://www.tcpdf.org и обратитесь на официальный форум для получения дополнительной информации.

0 голосов
/ 10 июня 2010

Вам нужно посмотреть, что он помещает в PDF. Это вложение большого количества изображений или шрифтов?

Вы можете просмотреть содержимое с большим количеством PDFtools. Если у вас есть Acrobat 9.0, есть статья в блоге, показывающая, как это сделать, на http://pdf.jpedal.org/java-pdf-blog/bid/10479/Viewing-PDF-objects

...