首页 > 解决方案 > PDFTron:用 Scandic 字母填写表格

问题描述

我正在尝试编写一个 PHP 脚本来用数组中的数据填充表单。

这工作得很好。除了 PDFTron 对我的字符串进行编码,例如“Älli älä jätä”变成“lli lj t”。

我尝试从文本字段中禁用只读,以查看手动编写某些文本是否可行 - 确实如此。

我还测试了使用不同工具 (PDFTK) 生成 PDF - 这也生成了带有 Scandic 字母的所需 PDF。

<?php
require_once './lib/pdftron/PDFNetPHP.php';

PDFNet::Initialize();

/**
 * @var PDFDoc
 */
$doc = new PDFDoc('./test.pdf');

$field = $doc->GetField('value');
$field->SetValue(utf8_encode('Älli älä jätä'));

$doc->RefreshFieldAppearances();
$doc->FlattenAnnotations();

$buffer = $doc->Save(SDFDoc::e_linearized);

header("Content-type:application/pdf");
header('Content-Length: ' . strlen($buffer));

echo $buffer;

链接到使用 Adob​​e Indesign 15.1.1 创建的 PDF 文档

标签: phpencodingpdftron

解决方案


行。所以问题似乎不在于 PDFTron,而在于嵌入了损坏字体的 Indesign。

当我在 Adob​​e Acrobat 中打开 PDF 文档时,我能够编辑文本字段的属性,因此将字体“TimesNewRomanPSMT”更改为“Times New Roman”,从而解决了问题。


推荐阅读