当我使用iconv
将编码从UTF-8
转换为windows-1255
时,所有希伯来字母都正确显示,除了ק
,它显示为除法符号:÷
:
$pdf->AddFont('Arial', '', 'arial.php');
$pdf->setFont('Arial', '', 15);
$value = iconv('UTF-8', 'windows-1255', 'ק');
$pdf->Write(1, $value);
我使用PHP包创建PDF文件。所以它在PDF文件中显示为÷
,但是当我将该符号从PDF文件复制到Google搜索时,它再次显示为ק
。
我如何解决这个问题,并在PDF文件中将其显示为ק
?
我甚至按照fdpf网站上关于如何使用正确编码创建字体的教程(创建font.z
和font.php
文件)
更新:我注意到,对于cp1255的Map文件,Map到希伯来字母ק
的行与具有除法符号扩展ASCII代码的行相同:cp1255.map
:
!F7 U+05E7 afii57687
下面是错误的图像:
2条答案
按热度按时间vom3gejh1#
我复制了你的错误,我得到了同样的错误,原因是使用了不正确的字体家族和编码。请在下面找到问题的解决方案
更新备注:
在进一步的讨论和调试中,发现旧版本中的MakeFont脚本i.FPDF 1之前的版本。85是有缺陷的,并抛出错误,但文件被创建,所以很难注意到。
因此,如果有人在版本1之前使用希伯来语的FPDF。85要么更新MakeFont脚本,要么使用FPDF 1版本。85或更高版本。php和.z文件的字体。
请注意,你必须使用希伯来语编码cp 1255。
MakeFont('Noto_Sans_Hebrew/noto-sans-hebrew.ttf','cp1255',);
或者,您也可以在此处在线创建-〉makefont - fpdf
***step -2***要使用它,您需要为文档添加字体和设置字体。请看下面的代码。
生成的PDF图像:
有用链接:
我不懂希伯来语。但请让我知道在评论的问题。
qxgroojn2#
在我的例子中,我使用了支持的正确字体(希伯来文字体),但我有错误。
然后我发现我的旧版本中的MakeFont脚本有很多bug并且会抛出错误,但是文件是创建的,所以很难注意到。
所以当我使用最新的MakeFont脚本时,它修复了它