다음과 같이 DOMpdf
을 사용하여 페이지의 pdf 파일을 만들었습니다.codeignitor에서 위치를 탐색하여 PDF 파일을 생성했습니다.
<?php
use Dompdf\Dompdf;
class Pdfgenerator {
public function generate($html, $filename='', $stream=TRUE, $paper = 'A4', $orientation = "portrait")
{
$dompdf = new DOMPDF(array('enable_remote' => true));
$dompdf->loadHtml($html);
$dompdf->setPaper($paper, $orientation);
$dompdf->render();
if ($stream) {
$dompdf->stream($filename.".pdf", array("Attachment" => 0));
} else {
return $dompdf->output();
}
}
}
뷰 페이지 Save As Pdf
버튼을 클릭에서 페이지 PDF는 DOMpdf
을 사용하는 제어기 함수 생성하고 설정하는 다운로드 경로에 다운로드 될 수있는 곳에서 브라우저에 새로운 탭에 PDF를 열고 브라우저 용. 실제로 원하는 것은
$html = $this->load->view('test/pdfview', $this->data, true);
$this->load->library('pdfgenerator');
$filename = 'testfile';
$this->pdfgenerator->generate($html, $filename, true, 'a4', '');
이러한 PDF가 이미 지정된 위치로 이동하는 열하는 저장 프롬프트가 생성 될 때 주어진 경로에서 파일을 다운로드하는 것입니다. 올바른 위치에서 저장을 누르면 저장할 수 있고 그렇지 않으면 적절한 저장 위치로 이동할 수 있습니다. 이들은 이미 비슷한 질문이 있지만 이미 발견 한 것들이 있지만 도움이되지 못했습니다.
- Force to open “Save As…” popup open at text link click for pdf in HTML
- JavaScript: Create and save file
어떤 제안이 될 것이다 당신은 브라우저
<?php
use Dompdf\Dompdf;
class Pdfgenerator {
public function downLoadPdf(){
$name= "testfile.pdf";
header('Content-Description: File Transfer');
header('Content-Type: application/force-download');
header("Content-Disposition: attachment; filename=\"" . basename($name) . "\";");
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
header('Content-Length: ' . filesize($name));
ob_clean();
flush();
readfile("your_file_path/".$name); //showing the path to the server where the file is to be download
}
}
?>
에 PDF를 생성 보내드립니다 PHP에서 다음과 같은 스크립트를 만들 수 있습니다
이것이 작동하지 않는 것 같습니다. 나는 pdf를 만든 후에이 코드를 추가했다. 즉 '$ this-> pdfgenerator-> generate ($ html, $ filename, true,'a4 ',' ') 뒤에 문제가 발생하면 브라우저 페이지에서 pdf가 열리고 저장 창이 표시되지 않습니다. – Whoosis
답변을 편집했습니다. 새 함수를 만들어서보기에서 저장 단추로 호출해야합니다. –
당신의 도움에 감사하지만 나는 pdf가 스 니펫과 함께 어떻게 생성 될지 이해하지 못한다. 즉, 저장 버튼 호출에서 html을 pdf로 변환하는 함수가 호출된다. (즉,'$ this-> pdfgenerator-> generate ($ html, $ filename, true, 'a4', '')'), savePrint를 호출하면'testfile.pdf'는 아직 다운로드되지 않았다. – Whoosis