我需要创建漂亮的外观和准确的PDF在我的应用程序。由于各种限制,我用HTML和一个定制的UIPrintPageRenderer解决了问题。到目前为止这还不错。
然而,由于我假设存在缩放/转换问题,PDF中产生的字体大小会有相当大的差距:
#rma {
font-size: 54pt;
/*font-size: 67.5px;*/
}
...
<div id="rma">RMA</div>CSS中的54pt会导致PDF中的57.60pt;通过使用67.5px (希望使用pt * 1.25 = px),我只能得到54.40pt --同时感觉自己像个畜生。
摆弄着px的十分之一(或者是em或其他任何东西),字体大小可能会跳升到53.60pt,但永远不会精确到54 px。这发生在几乎所有的字体大小,除了少数例外,如10 in,从而产生了确切的8pt。
-webkit-text-size-adjust: none;或
<meta name="viewport" content="initial-scale=1.0" />似乎没有任何影响,也没有在UI-,WKWebView或UIMarkupTextPrintFormatter之间切换。我尝试了其他解决方案,如brentnycum/BNHtmlPdfKit,效果相同。
我几乎没什么主意了。你能帮上忙吗?谢谢!
发布于 2016-03-23 12:25:02
我与iOS应用程序中的这个bug斗争了很长时间了!
在进行了实验之后,我将其归档为webkit bug:bug.cgi?id=155789
当从Safari和Chrome打印时也会出现PDF字体大小问题,但Firefox没有。我也遇到了与你一样的问题,试图找出为什么iOS要从UIPrintPageRenderer中制作出字体大小怪异的PDF格式。
我可以为您提供的最佳解决方案是将<body>宽度显式地设置为确切的页面宽度。
body {width: 595pt;}这使得我能够在12.01pt时获得指定为12 at的字体大小--但是它确实会根据一些(表面上的)随机因素而变化。祝你好运!
发布于 2016-02-18 21:03:03
如果您可以使用php,这应该可以做到这一点
$pdf->SetFont('helvetica','',10);
https://stackoverflow.com/questions/35489206
复制相似问题