PHP:使用Unicode字形的优势和开放式字体(otf)的紧排表直接创建PDF作为服务器响应


PHP: Using advantages of Unicode glyphs and kerning tables of Open Type fonts (otf) directly for creating PDF as a server response

我使用文档数据库,每个文档包含5到20页的文本数据
我有三项任务:

  1. 将多语言输出为PDF文档。UTF8中的文本,可能包含英语、法语、德语、俄语等内容以及翻译等组合
  2. 在PDF中添加自动排版,这意味着用Unicode字符对字母进行紧排和替换组合
  3. 我的工作有MinionPro-xxx.otf(10个连字)字体

我尝试使用Wayne Munro的PHP Cphf库(pdf@ros.co.nz)我已经添加了很多正则表达式。我添加了很多PDF文本格式运算符,就像Ts, TL, T*, Tc, Tw, Tz和我几乎完成的一样,但我无法访问Type 1字符表之外的字符的字形,我不知道如何从字体文件中获取"kern"answers"hmtx"表?如何嵌入字形

我相信,我可以通过矩阵转换PDF文本指令做紧排:

[ (A) 120 (W) 120 (A) 95 (Y again) ] TJ

UPD#1:MinionPro字体没有"kern"表。它有"GPOS"(雕文定位表),我很快就要解决这个问题了。顺便说一句,PHP在二进制文件中行走是一场噩梦((

在小字体文本字符串中使用手动紧排是完全错误的策略。Microsoft Excel PDF文本导出程序也会这样做,结果是不可接受的。