芝麻web文件管理V1.00
编辑当前文件:/home/royashxg/bit-alphas-ltd.com/user/project/vendor/barryvdh/laravel-dompdf/src/PDF.php
dompdf = $dompdf; $this->config = $config; $this->files = $files; $this->view = $view; $this->showWarnings = $this->config->get('dompdf.show_warnings', false); } /** * Get the DomPDF instance * * @return Dompdf */ public function getDomPDF(){ return $this->dompdf; } /** * Set the paper size (default A4) * * @param string $paper * @param string $orientation * @return $this */ public function setPaper($paper, $orientation = 'portrait'){ $this->dompdf->setPaper($paper, $orientation); return $this; } /** * Show or hide warnings * * @param bool $warnings * @return $this */ public function setWarnings($warnings){ $this->showWarnings = $warnings; return $this; } /** * Load a HTML string * * @param string $string * @param string $encoding Not used yet * @return static */ public function loadHTML($string, $encoding = null){ $string = $this->convertEntities($string); $this->dompdf->loadHtml($string, $encoding); $this->rendered = false; return $this; } /** * Load a HTML file * * @param string $file * @return static */ public function loadFile($file){ $this->dompdf->loadHtmlFile($file); $this->rendered = false; return $this; } /** * Add metadata info * * @param array $info * @return static */ public function addInfo($info){ foreach($info as $name=>$value){ $this->dompdf->add_info($name, $value); } return $this; } /** * Load a View and convert to HTML * * @param string $view * @param array $data * @param array $mergeData * @param string $encoding Not used yet * @return static */ public function loadView($view, $data = array(), $mergeData = array(), $encoding = null){ $html = $this->view->make($view, $data, $mergeData)->render(); return $this->loadHTML($html, $encoding); } /** * Set/Change an option in DomPdf * * @param array $options * @return static */ public function setOptions(array $options) { $options = new Options($options); $this->dompdf->setOptions($options); return $this; } /** * Output the PDF as a string. * * @return string The rendered PDF as string */ public function output(){ if(!$this->rendered){ $this->render(); } return $this->dompdf->output(); } /** * Save the PDF to a file * * @param $filename * @return static */ public function save($filename){ $this->files->put($filename, $this->output()); return $this; } /** * Make the PDF downloadable by the user * * @param string $filename * @return \Illuminate\Http\Response */ public function download($filename = 'document.pdf' ){ $output = $this->output(); return new Response($output, 200, array( 'Content-Type' => 'application/pdf', 'Content-Disposition' => 'attachment; filename="'.$filename.'"', 'Content-Length' => strlen($output), )); } /** * Return a response with the PDF to show in the browser * * @param string $filename * @return \Illuminate\Http\Response */ public function stream($filename = 'document.pdf' ){ $output = $this->output(); return new Response($output, 200, array( 'Content-Type' => 'application/pdf', 'Content-Disposition' => 'inline; filename="'.$filename.'"', )); } /** * Render the PDF */ protected function render(){ if(!$this->dompdf){ throw new Exception('DOMPDF not created yet'); } $this->dompdf->render(); if ( $this->showWarnings ) { global $_dompdf_warnings; if(!empty($_dompdf_warnings) && count($_dompdf_warnings)){ $warnings = ''; foreach ($_dompdf_warnings as $msg){ $warnings .= $msg . "\n"; } // $warnings .= $this->dompdf->get_canvas()->get_cpdf()->messages; if(!empty($warnings)){ throw new Exception($warnings); } } } $this->rendered = true; } public function setEncryption($password) { if (!$this->dompdf) { throw new Exception("DOMPDF not created yet"); } $this->render(); return $this->dompdf->getCanvas()->get_cpdf()->setEncryption("pass", $password); } protected function convertEntities($subject){ $entities = array( '€' => '', '£' => '£', ); foreach($entities as $search => $replace){ $subject = str_replace($search, $replace, $subject); } return $subject; } }