2014-10-15 3 views
1

У меня возникли проблемы с настройкой DOMPDF для использования ландшафтной ориентации. Может ли кто-нибудь пролить свет на мою проблему в коде ниже?DomPDF установка ландшафтной ориентации

function delivary_voucher($arr = null, $orientation = 'landscape') { 

     $this->load->library('dompdf_gen'); 
     $this->load->library('email'); 
     $this->load->model('Emailtemplatemodel'); 
+0

Yo Вам нужно будет прояснить эту проблему. В какой момент процесса вы устанавливаете ориентацию документа? В какой библиотеке вы используете? [Этот] (https://github.com/iamfiscus/Codeigniter-DOMPDF)? Контроллер [test controller] (https://github.com/iamfiscus/Codeigniter-DOMPDF/blob/master/controllers/dompdf_test.php) показывает, что dompdf вводится в текущий класс, поэтому ваш следующий оператор может быть: '$ this-> dompdf-> set_paper ('letter', $ orientation); ' – BrianS

ответ

2

У меня такая же проблема. После долгих поисков я наконец понял, как решить проблему. Я отвечаю на это сразу после моего кодирования. Надеюсь, это поможет вам, а также для ссылки SO.

Вот как я могу решить эту проблему:

Я использую dompdf в качестве помощника, так что я положил папку dompdf в system>helpers папку. Затем я создал вспомогательный файл с именем dompdf_helper.php в ту же папку, содержащую следующий код:

<?php if (!defined('BASEPATH')) exit('No direct script access allowed'); 

function get_pdf($html, $paper_size='a4', $orientation='portrait', $filename='', $stream=TRUE) 
{ 
    require_once("dompdf/dompdf_config.inc.php"); 

    $dompdf = new DOMPDF(); 
    $dompdf->load_html($html); 

    // THE FOLLOWING LINE OF CODE IS YOUR CONCERN 
    $dompdf->set_paper($paper_size, $orientation); 

    $dompdf->render(); 

    // added by Siddiqui Noor on 29 Nov, 15 
    if(!empty($filename) && $stream) { 
     $dompdf->stream($filename.".pdf"); // to Download PDF 
    } else if ($stream) {    
     $dompdf->stream($filename.".pdf",array('Attachment'=>0));// to open in a window 
    } else { 
     return $dompdf->output(); 
    } 
} 
?> 

Моя папка system выглядит как this

Наконец я вызвать функцию get_pdf в мой контроллер, как:

$data = 'Your result set goes here'; 
$this->load->helper(array('dompdf', 'file')); 
$html = $this->load->view($view, $data, true); 
get_pdf($html,'a4', 'landscape'); 

Счастливое кодирование как код поэзия :)

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