functioncreatepdffile
($frontdata
)
// 列印預覽
public
function
printexternal
(request $request),
'contract_list'
=>
function($q
)])-
>
first()
;$arr=[
];foreach
($data
->
contract_list
as$k
=>$v)
$arr[$k
]['total']=
$v->
total
;$arr[$k
]['price']=
$v->
price
;$arr[$k
]['total_sum']=
$v->
total*$v
->
price
;$arr[$k
]['nations']=
implode
(','
,$nations);
$arr[$k
]['currency_abbr']=
account_type_v()
[$data
->
currency];
}$nalist
=$arr
;// 或者是匯出還是預覽,1預覽2匯出
$pdf
=new
\tcpdf
('p');
// l - 橫向 p-豎向
// 設定文件資訊
$foreign_name
=foreign_trade()
[$data
->
foreign
->
foreign_id][
'name'];
$pdf
->
setcreator
($foreign_name);
$pdf
->
setauthor
($foreign_name);
$pdf
->
settitle
($foreign_name);
$pdf
->
setsubject
($foreign_name);
$pdf
->
setkeywords
('tcpdf, pdf, php');
// 設定頁首和頁尾資訊
// $pdf->setheaderdata('tcpdf_logo.jpg', 30, 'xx公司', 'xx製造', [0, 64, 255], [0, 64, 128]);
$pdf
->
setfooterdata([
0,64,
0],[
0,64,
128]);
// 設定頁首和頁尾字型
$pdf
->
setheaderfont([
'stsongstdlight',''
,'10'])
;$pdf
->
setprintheader
(false);
$pdf
->
setprintfooter
(false);
$pdf
->
setfooterfont([
'helvetica',''
,'8'])
;// 設定預設等寬字型
$pdf
->
setdefaultmonospacedfont
('courier');
$pdf
->
setcellpaddings(10
,0,10
,15);
// 設定間距
$pdf
->
setmargins(10
,5,10
);//頁面間隔
$pdf
->
setheadermargin(0
);//頁首top間隔
$pdf
->
setfootermargin(0
);//頁尾bottom間隔
// 設定分頁
$pdf
->
setautopagebreak
(true,25
);// set default font subsetting mode
$pdf
->
setfontsubsetting
(true);
//設定字型 stsongstdlight支援中文
$pdf
->
setfont
('stsongstdlight',''
,10);
ob_clean()
;//第一頁 匯出的頁面
$view
= \view::
make
("temp.contract.contract",[
'data'
=>
$data
,'foreign_name'
=>
$foreign_name
,'nalist'
=>
$nalist])
;$html
=$view
->
render()
;$html
=preg_replace
("/\s\s+/",''
,$html);
$pdf
->
addpage()
;$pdf
->
writehtml
($html
,true
,false
,true
,false
,true);
$pdfname
='成交確認書'
.$data
->
order
->
order_no
;//輸出pdf
$pdf
->
output
($pdfname
.'.pdf'
,'i');
// if ($type == 1) else
}
PDF預覽 pdfJS預覽pdf檔案
方式1 檔案流轉為blob let urlsrc window.url.createobjecturl blob this src urlsrc pdf空白頁 else 正確解析了頁碼,但是每頁空白。解決方法 responsetype blob html visible.sync dialo isi...
QT實現列印預覽及生成Pdf功能
一 要實現列印功能,首先要在pro檔案中加上 qt printsupport 並且需要重新qmake 二 qt提供了qprintpreviewdialog 類,所以列印功能可以直接通過此對話方塊實現 三 要喚出 qprintpreviewdialog 對話方塊,需要使用 connect previe...
使用vue預覽PDF
效果圖 講解之前先看案例,強烈推薦此專案vue pdf.js demo 前端 方法 filepreview row console.log handledownbyurlbypost2 admin sys file getfilebybucket name,then response catch r...