gpt4 book ai didi

java - 如何在 Java(和其他)中确定 "FI"的连字

转载 作者:搜寻专家 更新时间:2023-10-31 20:14:45 26 4
gpt4 key购买 nike

我们有一个系统可以解析 PDF 文件并提取其中的文本用于索引等。我们遇到的一个问题是 Illustrator 将包含“fi”的单词设置为使用 fi 的连字(单个字形)。

例如这一行...

“长凳和富玻化瓷砖。”

在我的 Java 调试器中显示如下

“ete 长凳和丰富的 vitri\u001Fed 瓷砖。”

\u001F 似乎是 Adob​​e PDF 文件用于连字“fi”的字符代码。我显然可以将\u001F 的出现换成“fi”,但有人知道处理这种情况和类似情况的可靠方法吗?

最佳答案

在 PDF 中用作“显示文本”运算符的操作数的字节序列(TJ、Tj 等)应该使用图形状态中 Activity 字体的编码和与字体关联的 ToUnicode cmap 转换为文本。一些字体包括 ToUnicode cmap,它将 0x001F 代码(或它用于字形的任何代码)映射到字符“f”和“l”。其他字体使用带有/Differences 数组的编码,将代码 0x1F 映射到字符/fl。必须处理这些结构才能获得正确的结果。

关于java - 如何在 Java(和其他)中确定 "FI"的连字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10324807/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com