yii2-pdf

PDF Reports from HTML Views (Html to PDF formatter) for Yii 2.0

  • Owner: robregonm/yii2-pdf
  • Platform:
  • License:: BSD 3-Clause "New" or "Revised" License
  • Category::
  • Topic:
  • Like:
    0
      Compare:

Github stars Tracking Chart

Yii2-PDF

PDF formatter for Yii2 using mPDF library.

This extension "format" HTML responses to PDF files (by default Yii2 includes HTML, JSON and XML formatters). Great for reports in PDF format using HTML views/layouts.

##Installation

The preferred way to install this extension is through composer.

Either run

$ php composer.phar require robregonm/yii2-pdf "*"

or add

"robregonm/yii2-pdf": "*"

to the require section of your composer.json file.

Usage

Once the extension is installed, modify your application configuration to include:

return [
	'components' => [
		...
		'response' => [
			'formatters' => [
				'pdf' => [
					'class' => 'robregonm\pdf\PdfResponseFormatter',
					'mode' => '', // Optional
					'format' => 'A4',  // Optional but recommended. http://mpdf1.com/manual/index.php?tid=184
					'defaultFontSize' => 0, // Optional
					'defaultFont' => '', // Optional
					'marginLeft' => 15, // Optional
					'marginRight' => 15, // Optional
					'marginTop' => 16, // Optional
					'marginBottom' => 16, // Optional
					'marginHeader' => 9, // Optional
					'marginFooter' => 9, // Optional
					'orientation' => 'Landscape', // optional. This value will be ignored if format is a string value.
					'options' => [
						// mPDF Variables
						// 'fontdata' => [
							// ... some fonts. http://mpdf1.com/manual/index.php?tid=454
						// ]
					]
				],
			]
		],
		...
	],
];

In the controller:


class MyController extends Controller {
	public function actionPdf(){
		Yii::$app->response->format = 'pdf';
		
		// Rotate the page
		Yii::$container->set(Yii::$app->response->formatters['pdf']['class'], [
			'format' => [216, 356], // Legal page size in mm
			'orientation' => 'Landscape', // This value will be used when 'format' is an array only. Skipped when 'format' is empty or is a string
			'beforeRender' => function($mpdf, $data) {},
			]);
		
		$this->layout = '//print';
		return $this->render('myview', []);
	}
}

License

Yii2-Pdf is released under the BSD-3 License. See the bundled LICENSE.md for details.

Useful URLs

Enjoy!

Flattr this git repo

Main metrics

Overview
Name With Ownerrobregonm/yii2-pdf
Primary LanguagePHP
Program languagePHP (Language Count: 1)
Platform
License:BSD 3-Clause "New" or "Revised" License
所有者活动
Created At2014-05-15 20:38:19
Pushed At2019-08-02 16:49:49
Last Commit At2019-08-02 11:47:54
Release Count5
Last Release Name1.1.0 (Posted on )
First Release Name1.0.0 (Posted on )
用户参与
Stargazers Count46
Watchers Count7
Fork Count37
Commits Count27
Has Issues Enabled
Issues Count27
Issue Open Count9
Pull Requests Count4
Pull Requests Open Count0
Pull Requests Close Count1
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private