Pdf Por Registro

En varios post dicen como se hace un reporte de todo el admin, pero no explican muy bien como hacer un reporte por id.

Descarga el yii-pdf y lo pones en la carpeta extensions

Descargas el mpdf y lo descomprimes en una carpeta llamada vendor

en el config main pones lo siguiente





		'ePdf' => array(

		        'class' => 'ext.yii-pdf.EYiiPdf',

		        'params' => array(

		            'mpdf'=> array(

		                'librarySourcePath' => 'application.vendor.mpdf.*',

		                'constants'=> array(

		                    '_MPDF_TEMP_PATH' => Yii::getPathOfAlias('application.runtime'),

		                ),

		                'class'=>'mpdf', // the literal class filename to be loaded from the vendors folder

		                /*'defaultParams'     => array( // More info: http://mpdf1.com/manual/index.php?tid=184

		                    'mode'              => '', //  This parameter specifies the mode of the new document.

		                    'format'            => 'A4', // format A4, A5, ...

		                    'default_font_size' => 0, // Sets the default document font size in points (pt)

		                    'default_font'      => '', // Sets the default font-family for the new document.

		                    'mgl'               => 15, // margin_left. Sets the page margins for the new document.

		                    'mgr'               => 15, // margin_right

		                    'mgt'               => 16, // margin_top

		                    'mgb'               => 16, // margin_bottom

		                    'mgh'               => 9, // margin_header

		                    'mgf'               => 9, // margin_footer

		                    'orientation'       => 'P', // landscape or portrait orientation

		                )*/

		            )

					)),







En el controlador poner este código y ponerlo en el access rules también





	public function actionPdf($id)

	 { 

	    $model=$this->loadModel($id);

	    $mPDF1 = Yii::app()->ePdf->mpdf('utf-8','A4','','',15,15,35,25,9,9,'P');

	    $mPDF1->useOnlyCoreFonts = true;

	    $mPDF1->SetTitle("xxxxxxxxxx - Reporte");

	    $mPDF1->SetAuthor("");

	    $mPDF1->watermark_font = 'DejaVuSansCondensed';

	    $mPDF1->watermarkTextAlpha = 0.1;

	    $mPDF1->SetDisplayMode('fullpage');

	    $mPDF1->WriteHTML($this->renderPartial('pdf',array(

	            'model'=>$this->loadModel($id),

	        ),true));

	    $mPDF1->Output('Reporte_'.date('YmdHis'),'I');

	    exit;

	 }








'actions'=>array('admin','delete','create','update', 'index','view','Pdf', 'GenerarPdf'),




En el admin poner esto




		array(

			'class'=>'CButtonColumn',

			'header'=>'Acciones',

			//'deleteConfirmation'=>'¿Esta seguro que desea borrar el registro seleccionado?',

			//Para las imagenes

			'viewButtonImageUrl'=>Yii::app()->request->baseUrl.'/images/021.png',

			'updateButtonImageUrl'=>Yii::app()->request->baseUrl.'/images/017.png',

			'deleteButtonImageUrl'=>Yii::app()->request->baseUrl.'/images/004.png',

			'htmlOptions'=>array('style'=>'width:100px!important'),

			'headerHtmlOptions'=>array('style'=>'width:100px!important'),

			'template'=>'{delete} {update} {view} {pdf}',

			

                        'buttons'=>array

                    	(

                        'view' => array

                        (

                            'label'=>'Ver',

                            'url'=>'Yii::app()->createUrl("tutelas/view", array("id"=>$data->Idxx))',

                        ),

                        'pdf' => array(

			        'label'=>'Ver Tutela', 

				'url'=>"CHtml::normalizeUrl(array('pdf', 'id'=>\$data->Id_xxx))",

				'imageUrl'=>Yii::app()->request->baseUrl.'/images/pdf.png', 

				'options' => array('class'=>'pdf','target'=>'_blank'),

							 

			),

						

                )

	),






Crear en la misma carpeta una vista llamada pdf, esta contendrá lo siguiente





<!DOCTYPE html>

<html lang="en">

<head>

	<style>		 

		 body {

		 	font-family: "Aparajita";

		 	font-size: 10pt;

			

		 }

		  .ppal{

		  	padding-top: 25px;

		  }

		</style>

</head>

<body class="ppal">

	<!--mpdf 

		 <htmlpageheader name="myheader">

		 </htmlpageheader>


		<htmlpagefooter name="myfooter">

		 </htmlpagefooter>


		<sethtmlpageheader name="myheader" value="on" show-this-page="1" />

		<sethtmlpagefooter name="myfooter" value="on" />

	 mpdf-->


<table class="">

    <tr><td> <b>Juez <?php echo $model->tbl_juzgados->Nombre_juz; ?> de la ciudad de <?php echo $model->Ciudad; ?></b></td></tr>

    <tr><td> <b>E. S. D. </td></tr>

</table>


<br>




</body>

</html>




Espero que les sirva de algo

Hasta la próxima

Hola Keiny buenos dias, disculpa tengo muchos problemas para generar PDF como tu indicas, mi problema es que yo quiero generarlos desde el index. y quisiera imprimir un formato especial para cada registro, en una pagina para cada uno y eso, todo esto porque necesito imprimir una especie de certificado para participantes de un curso, quedaria algo asi…




 _________________________________________

|                                         |

|         BANNER BANNER BANNER            |

|_________________________________________|

|                                         |

|                                         |

|                                         |

|             Nombre Apellido             | 

|                 cedula                  |

|                                         |

|            Titulo del EventO            |

|                                         |

|                                         |

|    Expositor                            |

|                                         |

|_________________________________________|



Me podrias ayudar? mo se como puedo hacerlo T_T