TCPDF 返回奇怪的字符
TCPDF returning weird characters
也许你能帮我。当我尝试显示我创建的 pdf 时,我得到了一些像这样的奇怪符号
u\>�'���O���r>c!%�@�R�`YPd+��vv����1��E�'^k-�WD�*+��W^��wy��V Z��dUdJ�B���C�ڳtK����j:c���5����50���D3lgH#�}%���D+������ix����,��-�'\�� �_st^&0�Y���������v�*Ӗ,W����u!H��sNN��0cӝ��`xEk��d��^� �8K9�BL����9�̋"6/�E�|�̛�-�7�P��B�#�T�F���4`����
我所做的是用这段代码html转换一个文件
$html = $this->load->view('ReporteIngresoView', $data, TRUE);
$pdf = new Pdf('P', 'mm', 'A4', TRUE, 'UTF-8', FALSE);
$pdf->SetTitle('Reporte ingreso');
$pdf->SetHeaderMargin(30);
$pdf->SetTopMargin(40);
$pdf->setFooterMargin(20);
$pdf->SetAutoPageBreak(TRUE);
$pdf->SetAuthor('Pontificia Universidad Católica del Ecuador');
$pdf->SetDisplayMode('real', 'default');
$pdf->AddPage();
$pdf->writeHTML($html, TRUE, 0, TRUE, 0);
$pdf->Output('My-File-Name.pdf', 'I');
另一边我是这样收到的
Ext.Ajax.request
(
{
method: 'post',
url: '../servidor/archivo/ingreso/getreporte',
success: function(response){
Ext.getCmp('winReporteRegistro').update( response.responseText );
}
}
);
我正在使用 php(服务器)、html(创建页面)、extjs(接口)、ajax(请求)和 TCPDF 来创建 pdf。
有什么想法吗?
提前致谢,
您需要将响应转换为 Blob (link)
创建 blob 后,您可以创建一个 URL 对象 (link)
这就是我创建服务器端生成的 pdf 并将其显示在前端的方式。
添加代码片段:
var blob = new Blob(response.responseText, {type: 'application/pdf'});
var objectURL = URL.createObjectURL(blob);
返回文件的位置并在另一个网页中打开是答案,代码是:
服务器:
$html = $this->load->view('ReporteCajaView', $data, TRUE);
$pdf = new Pdf('P', 'mm', 'A4', TRUE, 'UTF-8', FALSE);
$pdf->SetTitle('Reporte item');
$pdf->SetHeaderMargin(30);
$pdf->SetTopMargin(20);
$pdf->setFooterMargin(20);
$pdf->SetMargins(25, 20, 20, true);
$pdf->SetAutoPageBreak(TRUE);
$pdf->SetAuthor('Universidad Católica');
$pdf->SetDisplayMode('real', 'default');
$pdf->setPrintHeader(FALSE);
$pdf->setPrintFooter(FALSE);
$pdf->AddPage();
$id = uniqid();
$pdf->writeHTML($html, TRUE, 0, TRUE, 0);
$pathservidor = 'c:/wamp64/www/Archivo/pdf/';
$pdf->Output($pathservidor . 'Reporte de caja' . '.pdf', 'F');
echo 'c:/wamp64/www/Archivo/pdf/'.'Reporte de caja'.'.pdf';
客户:
Ext.Ajax.request
(
{
method: 'post',
url: '../servidor/archivo/item/getreporte',
success: function(response){
window.open(response.responseText);
}
}
);
谢谢!
抱歉回答晚了,但我昨天为此咬牙切齿,今天早上我得到了启发:-)
您需要支持 mime-type,因此只需将其添加到您的 .htaccess:
AddType application/pdf .pdf
也许你能帮我。当我尝试显示我创建的 pdf 时,我得到了一些像这样的奇怪符号
u\>�'���O���r>c!%�@�R�`YPd+��vv����1��E�'^k-�WD�*+��W^��wy��V Z��dUdJ�B���C�ڳtK����j:c���5����50���D3lgH#�}%���D+������ix����,��-�'\�� �_st^&0�Y���������v�*Ӗ,W����u!H��sNN��0cӝ��`xEk��d��^� �8K9�BL����9�̋"6/�E�|�̛�-�7�P��B�#�T�F���4`����
我所做的是用这段代码html转换一个文件
$html = $this->load->view('ReporteIngresoView', $data, TRUE);
$pdf = new Pdf('P', 'mm', 'A4', TRUE, 'UTF-8', FALSE);
$pdf->SetTitle('Reporte ingreso');
$pdf->SetHeaderMargin(30);
$pdf->SetTopMargin(40);
$pdf->setFooterMargin(20);
$pdf->SetAutoPageBreak(TRUE);
$pdf->SetAuthor('Pontificia Universidad Católica del Ecuador');
$pdf->SetDisplayMode('real', 'default');
$pdf->AddPage();
$pdf->writeHTML($html, TRUE, 0, TRUE, 0);
$pdf->Output('My-File-Name.pdf', 'I');
另一边我是这样收到的
Ext.Ajax.request
(
{
method: 'post',
url: '../servidor/archivo/ingreso/getreporte',
success: function(response){
Ext.getCmp('winReporteRegistro').update( response.responseText );
}
}
);
我正在使用 php(服务器)、html(创建页面)、extjs(接口)、ajax(请求)和 TCPDF 来创建 pdf。
有什么想法吗?
提前致谢,
您需要将响应转换为 Blob (link)
创建 blob 后,您可以创建一个 URL 对象 (link)
这就是我创建服务器端生成的 pdf 并将其显示在前端的方式。
添加代码片段:
var blob = new Blob(response.responseText, {type: 'application/pdf'});
var objectURL = URL.createObjectURL(blob);
返回文件的位置并在另一个网页中打开是答案,代码是:
服务器:
$html = $this->load->view('ReporteCajaView', $data, TRUE);
$pdf = new Pdf('P', 'mm', 'A4', TRUE, 'UTF-8', FALSE);
$pdf->SetTitle('Reporte item');
$pdf->SetHeaderMargin(30);
$pdf->SetTopMargin(20);
$pdf->setFooterMargin(20);
$pdf->SetMargins(25, 20, 20, true);
$pdf->SetAutoPageBreak(TRUE);
$pdf->SetAuthor('Universidad Católica');
$pdf->SetDisplayMode('real', 'default');
$pdf->setPrintHeader(FALSE);
$pdf->setPrintFooter(FALSE);
$pdf->AddPage();
$id = uniqid();
$pdf->writeHTML($html, TRUE, 0, TRUE, 0);
$pathservidor = 'c:/wamp64/www/Archivo/pdf/';
$pdf->Output($pathservidor . 'Reporte de caja' . '.pdf', 'F');
echo 'c:/wamp64/www/Archivo/pdf/'.'Reporte de caja'.'.pdf';
客户:
Ext.Ajax.request
(
{
method: 'post',
url: '../servidor/archivo/item/getreporte',
success: function(response){
window.open(response.responseText);
}
}
);
谢谢!
抱歉回答晚了,但我昨天为此咬牙切齿,今天早上我得到了启发:-) 您需要支持 mime-type,因此只需将其添加到您的 .htaccess:
AddType application/pdf .pdf