2010-06-08 4 views
0

В веб-приложении, разработанном на PHP, мы генерируем Quotations и Invoices (которые очень простые и одиночные) с использованием TCPDF lib.Bloated PDF, созданный TCPDF

lib работает отлично, но, похоже, он создает очень большие 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 

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

+0

Сначала нам нужно знать, почему он так раздулся. Поэтому было бы полезно, если бы вы могли привести нам пример кода с использованием TCPDF, который вздувается, вы используете изображения в pdf? – jigfox

+0

Я не знаю, почему это раздуто, так как я могу это сказать. Я потратил 3 дня, пытаясь найти причину этой инфляции, но без каких-либо успехов. :( –

+0

Йоги, вам нужно будет показать пример PDF. PDF-файл содержит изображения или другие носители? –

ответ

0

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

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

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

0

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

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

0

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

+0

Спасибо за этот совет. –

Смежные вопросы