簡體   English   中英

chrome不顯示pdf對嗎?

[英]chrome not displaying pdf right?

起初我以為TCPDF的GetStringWidth()工作不正確,給了我錯誤的寬度:

[------------------------------------------------- -------------------------------------------------- -------------------]

我有一些文本,例如$ txt =“ hallo”。

我試圖通過內置函數GetStringWidth()獲取字符串寬度,然后創建一個具有字符串寬度的單元格。

// create new PDF document
$pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);

// set default monospaced font
$pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);

// set margins
$pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);
$pdf->SetHeaderMargin(PDF_MARGIN_HEADER);
$pdf->SetFooterMargin(PDF_MARGIN_FOOTER);

// set auto page breaks
$pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);

$pdf->setFontSubsetting(true);

$pdf->AddPage();

$pdf->SetFont('times', '', 20);
$pdf->SetCellPadding(0);

$txt = "hey i'm santa clause";
$width = $pdf->GetStringWidth($txt);

$pdf->Cell($width, $h=0, $txt, $border=1, $ln=0, $align='', $fill=false, $link='', $stretch=0, $ignore_min_height=false, $calign='T', $valign='M');

$pdf->Output('example_001.pdf', 'I');
?>

但是,創建的單元格是其內容的縮寫。 如果我嘗試使用快遞同樣的方法,則效果很好。

我認為這是對GetStringWidth的一種不正確處理字體寬度的措施,這是因為Courier對於每個字符都具有相同的寬度,這是可行的。

我如何讓GetStringWidth()工作

[------------------------------------------------- -------------------------------------------------- -------------------]

今天,我嘗試使用Firefox / Evince而不是chrome打開它

結果如下: 在此處輸入圖片說明 Firefox在左側,Chrome在右側。

生成的PDF文件為1.7版

二手的chrome版本:

google-chrome-beta(41.0.2272.53-1)

這里可能出了什么問題? 真的是鉻的錯嗎? 還是我想念這里的東西?

謝謝

您必須嘗試更換:

$pdf->Output("{$filename}.pdf", 'I');

$pdf->Output("{$filename}.pdf", 'D');

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM