PHPExcel 1.7.8 и mPDF: как настроить макет PDF

Я создаю файл Excel 2007 и вывожу его в формате PDF с помощью mPDF. Я использовал файлы примеров PHPExcel в качестве отправной точки. Я использую файлы шаблонов xlsx для создания файлов Excel, содержащих изображения, некоторые текстовые стили и стили текста.

Сгенерированные файлы xlsx хороши. А вот PDF нет! У первой страницы другое (более узкое) поле, чем у остальных, и она неровная на всех страницах.

Я пробовал разные вещи в файле php, который генерирует xlsx (до mPdf). Ничего не работает и ничего не меняет. Все примеры кода взяты прямо из документации PHPExcel:

// doesnt work!
$objPHPExcel->getActiveSheet()->getPageMargins()->setTop(0.1); 
$objPHPExcel->getActiveSheet()->getPageMargins()->setRight(0.1); 
$objPHPExcel->getActiveSheet()->getPageMargins()->setLeft(0.1); 
$objPHPExcel->getActiveSheet()->getPageMargins()->setBottom(0.1);

// doesnt work!
$objPHPExcel->getActiveSheet()->getPageSetup()->setFitToWidth(1); 
$objPHPExcel->getActiveSheet()->getPageSetup()->setFitToHeight(0);

// doesnt work!
$objPHPExcel->getActiveSheet()->getPageSetup()->setOrientation(PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE); 
$objPHPExcel->getActiveSheet()->getPageSetup()->setPaperSize(PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4);

Так что ничего из этого не меняет и не делает того, что обещает.

Я МОГУ кое-что сделать:

// works!
$objPHPExcel->setActiveSheetIndex(0)->setShowGridlines(false);

// works!
$objPHPExcel->getActiveSheet()->getStyle('A1:' 
. $objPHPExcel->getActiveSheet()->getHighestColumn() 
. $objPHPExcel->getActiveSheet()->getHighestRow())->getFont()->setSize(9);

Я также пытался настроить макет в Classes / PHPExcel / Writer / PDF / mpdf.php:

// doesnt work!
$paperSize = 'A4';

// doesnt work!
$pdf = new mPDF('win-1252', 'A4', 8, 'DejaVuSansCondensed', 15, 15, 15, 15, 8, 8);

Так что я не знаю, что мне делать. Некоторые работы, большинство - нет .... Любая помощь будет принята с благодарностью!


person olefrank    schedule 05.12.2013    source источник


Ответы (1)


Ориентация страницы и размер бумаги должны работать со всеми авторами PDF; поля страницы поддерживаются только модулем записи tcPDF, но не mPDF или DomPDF; Функции настройки страницы являются функциями настройки страницы MS Excel и не реализованы в средствах записи PDF.

person Mark Baker    schedule 05.12.2013