我正在尝试突出显示字形宽度为 1000(对应于 1 个文本空间单位)和字体大小为 1 的一些文本;变换矩阵为 [50 0 0 50 0 0]。结果是文本太大。但这种情况并非如此。正在显示的文本一点也不大;这是一个正常的尺寸。
我打开文件时使用的任何 PDF 阅读器都可以突出显示该单词,这意味着我在某处遗漏了一些东西。
目前我正在检查字体字典中的默认字体和字体数组、字体大小和转换矩阵。除了我刚才提到的之外,还有其他方法可以在 PDF 中缩放文本吗?
我正在尝试突出显示字形宽度为 1000(对应于 1 个文本空间单位)和字体大小为 1 的一些文本;变换矩阵为 [50 0 0 50 0 0]。结果是文本太大。但这种情况并非如此。正在显示的文本一点也不大;这是一个正常的尺寸。
我打开文件时使用的任何 PDF 阅读器都可以突出显示该单词,这意味着我在某处遗漏了一些东西。
目前我正在检查字体字典中的默认字体和字体数组、字体大小和转换矩阵。除了我刚才提到的之外,还有其他方法可以在 PDF 中缩放文本吗?
这个答案结合了对原始问题的评论:
目前我正在检查字体字典中的默认字体和字体数组、字体大小和转换矩阵。除了我刚才提到的之外,还有其他方法可以在 PDF 中缩放文本吗?
我立即想到了一些可能性:
新的变换矩阵(cm的参数)不会取代旧的;相反,它乘以它(从左边开始)。
在q ... Q的情况下,您必须考虑重置当前转换矩阵。
(当前的转换矩阵、线宽、颜色、叠印设置等等都是图形状态的一部分。要获得印象,请查看 PDF 规范ISO 32000-1的表 57 和 58 中的条目. 至少所有描述的属性都是图形状态的一部分,因此在q期间保存并在Q期间恢复。)
此外,还有要考虑的文本矩阵。
最后,页面的UserUnit条目可能会更改规则。
因此,除了文本定位运算符之外,还有更多值得关注的内容。
要获得一个很好的概述,请查看 PDF 规范的第 9.4.4 节文本空间详细信息,尤其是其中的注释 2。(感谢@plinth。)