我正在使用mpdf擴展來生成pdf文件。我已經在配置文件中爲mpdf設置了全局設置,因此每當我想從我的控制器操作中生成PDF時,我都可以調用該函數。但是,由於在全局設置中設置的默認方向爲portrait
,我發現很難使用需要橫向方向的數據更改pdf的方向。下面是代碼:Yii2:在控制器操作中覆蓋mpdf的全局pdf方向設置
public function actionReservationsList()
{
$searchModel = new ReservationsSearch();
$dataProvider = $searchModel->search(Yii::$app->session->get('repquery'));
$dataProvider->pagination = false;
$pdf = Yii::$app->pdf;
$pdf->content = $this->renderPartial('index', [
'searchModel' => $searchModel,
'dataProvider' => $dataProvider,
]);
$pdf->methods = [
'SetHeader' => [Yii::$app->user->identity->company->name.'||Date: ' . date("r")],
'SetFooter' => ['User: '.Yii::$app->user->identity->username.'||Page {PAGENO}'],
];
return $pdf->render();
}
所以我需要幫助重寫'orientation' => Pdf::ORIENT_PORTRAIT,
設置是全局設置:在全局設置
'pdf' => [
'class' => Pdf::classname(),
'mode' => Pdf::MODE_UTF8, // leaner size using standard fonts
'format' => Pdf::FORMAT_A4,
'orientation' => Pdf::ORIENT_PORTRAIT,
'destination' => Pdf::DEST_BROWSER,
'cssFile' => '@vendor/kartik-v/yii2-mpdf/assets/kv-mpdf-bootstrap.min.css',
// any css to be embedded if required
'cssInline' => '.kv-heading-1{font-size:18px}',
'options' => [
'shrink_tables_to_fit' => 0
],
// refer settings section for all configuration options
],
Controller Action
調用全局設置
main.pdf
代碼main.php
文件來自控制器操作。
嘿,夥計,是yii2框架真的嗎? – japheth
Yii2只是一個框架,PDF創建由(在這種情況下)mPDF完成。所以不,不是。但是你正在使用mPDF,這是(我假設)以某種方式在Yii中實現的。因此,檢查是否有可用的功能(如**'AddPage'**)並從此工作可能會有所幫助。 – sbrn
其實我試過,但它是拋出一個錯誤,這樣的功能不可用。感謝您的輸入。 – japheth