رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
تبدیل view به PDF
#1
سلام من برای تبدیل ویو  به  PDF  از این اکستنشن دارم استفاده میکنم
https://github.com/yii2tech/html2pdf

و طبق داکیومنتش اینجوری جلو رفتم:
'components' => [

       'html2pdf' => [
            'class' => 'yii2techhtml2pdfManager',
            'viewPath' => '@app/',
            'converter' => 'wkhtmltopdf',
        ],

 و در کنترلرم اکشنی نوشتم :
public function actionPdf(){        
       
       $result = Yii::$app->html2pdf
               ->render('/modules/admin/views/banner/_reportView')
               ->saveAs('output.pdf');
      
   }


ولی این خطا رو میده:
View not Found – yiibaseViewNotFoundException

The view file does not exist: C:WampDeveloperWebsiteswww.tender.comwebrootmodulesadminviewsmodules/admin/views/banner/_reportView.php


اگه هم اینجووری آدرس بدم:
$result = Yii::$app->html2pdf
               ->render('modules/admin/views/banner/_reportView')
               ->saveAs('output.pdf');

این خطا رو میده:

View not Found – yiibaseViewNotFoundException

The view file does not exist: C:WampDeveloperWebsiteswww.tender.comwebroot/layouts/main.php
پاسخ
تشکر شده توسط:
#2
(21-03-1396، 04:44 ب.ظ)inspiration نوشته: سلام من برای تبدیل ویو  به  PDF  از این اکستنشن دارم استفاده میکنم
https://github.com/yii2tech/html2pdf

و طبق داکیومنتش اینجوری جلو رفتم:
'components' => [

       'html2pdf' => [
            'class' => 'yii2techhtml2pdfManager',
            'viewPath' => '@app/',
            'converter' => 'wkhtmltopdf',
        ],

 و در کنترلرم اکشنی نوشتم :
public function actionPdf(){        
       
       $result = Yii::$app->html2pdf
               ->render('/modules/admin/views/banner/_reportView')
               ->saveAs('output.pdf');
      
   }


ولی این خطا رو میده:
View not Found – yiibaseViewNotFoundException

The view file does not exist: C:WampDeveloperWebsiteswww.tender.comwebrootmodulesadminviewsmodules/admin/views/banner/_reportView.php


اگه هم اینجووری آدرس بدم:
$result = Yii::$app->html2pdf
               ->render('modules/admin/views/banner/_reportView')
               ->saveAs('output.pdf');

این خطا رو میده:

View not Found – yiibaseViewNotFoundException

The view file does not exist: C:WampDeveloperWebsiteswww.tender.comwebroot/layouts/main.php

مشکلم حل شد باید wkhtml2pdf  رو جدا نصب میکردم:
پاسخ
تشکر شده توسط:
#3
با mpdf  دارم کار میکنم ولی با فونت فارسی مشکل دارم و بهم ریخته نشون میده
کسی میتونه کمک کنه؟

    public function actionGetpdf() {
       $request = Yii::$app->request;
       $id = $request->get('id');
       $model = Tender::find()->where(['id' => $id])->one();
     
   // get your HTML raw content without any layouts or scripts
   $content = $this->renderPartial('viewtender-pdf' , ['id '=> $id , 'model' => $model]);

   // setup kartikmpdfPdf component
   $pdf = new Pdf([
       // set to use core fonts only
       'mode' => Pdf::MODE_UTF8, 
       // A4 paper format
       'format' => Pdf::FORMAT_A4, 
       // portrait orientation
       'orientation' => Pdf::ORIENT_PORTRAIT, 
       // stream to browser inline
       'destination' => Pdf::DEST_DOWNLOAD, 
       // your html content input
       'content' => $content,  
       'filename' => $model->tender_number.'.pdf',
       // format content from your own css file if needed or use the
       // enhanced bootstrap css built by Krajee for mPDF formatting 
//       'cssFile' => '@vendor/kartik-v/yii2-mpdf/assets/kv-mpdf-bootstrap.min.css',
      'cssFile' => '@vendor/kartik-v/yii2-mpdf/assets/mycss.css',
       // any css to be embedded if required
       'cssInline' => '* {background-color: red;}', 
        // set mPDF properties on the fly
       'options' => ['title' => yii::t('tender' , 'view tender').":".$model->title],
        // call mPDF methods on the fly
       'methods' => [ 
           'SetHeader'=>[yii::t('tender' , 'view tender').":".$model->title], 
           'SetFooter'=>['{PAGENO}'],
           'SetFont'=> ['byekan']
       ]
   ]);

   // return the pdf output as per the destination setting
//    Yii::$app->response->format = 'pdf'; 
  
   
   return $pdf->render();
}


فایل‌های پیوست تصاویر بندانگشتی
   
پاسخ
تشکر شده توسط:
#4
تا الان کسی ویو html رو به pdf تبدیل نکرده که بتونه راهنمایی کنه؟؟؟
پاسخ
تشکر شده توسط:
#5
با سلام 
بنده با استفاده از اکستنشن kartikmpdfPdf اینکارو انجام دادم قبلا، بعدش هم یه اکشن نوشتم به این صورت 
$content = $this->renderPartial('pdf', [
            'dataProvider' => $dataProvider,
 ]);
$pdf = Yii::$app->pdf;
$pdf->content = $content;
return $pdf->render();
پاسخ
تشکر شده توسط: inspiration




کاربران در حال بازدید این موضوع: 2 مهمان