软PDF文档

时间:2014-01-06 21:38:46

标签: pdf pdf-generation

事实上,我们有两种类型的PDF文档:

  • Soft documents(从单词转换为PDF或Latex转换为PDF)。
  • Hard documents(从扫描图像转换为PDF)。

顺便说一句,我只对软文档感兴趣。

实际上我试图在现有的PDF文档中隐藏信息(通过使用特定的隐写方法......),我有兴趣通过稍微修改字符的位置来插入嵌入的消息。所以我知道,在一行中,所有字符都具有相同的y轴但不同的x轴。所以我可以通过略微修改每个字符的x轴来插入一些位,但是如果我通过修改位于同一行中的字符的y轴来插入位,那么这将很容易检测到(因为它们具有相同的y轴)。这就是为什么我有兴趣通过修改属于同一行的字符的x轴来插入一些位,以及通过修改属于不同行的字符的y轴来插入一些位(特定的每个字符)线,但我不知道线之间的差距是否保持不变)。在这种情况下,我认为我的方法将更加无法察觉。

但在实现这一目标之前,我有兴趣得到以下问题的回答:

1)如果我们有来自Microsoft word to PDF的转换生成的PDF:每行之间的差距是否保持不变?段落之间的差距是否恒定(保持不变)?

2)此外,如果我们有来自Latex to PDF的转换生成的PDF:每行之间的差距是否保持不变?段落之间的差距是否恒定(保持不变)?我需要你的意见和简要解释。

3)当文本对齐时,2对字母之间的空格是否保持不变?换句话说,为了更加精确,假设我们有一个文本到pdf,其中文本是“happy new y ea r和圣诞快乐,世界是b ea utiful!”。 中“ea”之间的空格在“漂亮”中保持不变?因此,如果我们有多个包含“ea”的单词,那么e和a之间的空间总是在所有单词的所有单词中相同吗? (假设我们不会将所有文本中的警察更改为PDF格式。)

2 个答案:

答案 0 :(得分:2)

你可能需要解释更多关于你想做什么的事情;这可能会让你更容易提出好的建议。从本质上讲,了解Word之类的应用程序之间的根本区别很重要(我对Latex的评论犹豫不决 - 我对它不够了解)和PDF。

用词,句子和段落来生活。结构化内容很重要,页面上的布局几乎是 - 经过深思熟虑。事实上,虽然最新版本的Word在这方面要好得多,但是旧版本的Word可以通过简单地选择不同的打印机来生成完全不同的布局(包括分页)。相信我,我在某一点上非常严重地被咬了(愚蠢的我)。

PDF按页面表示和结构生活 - 字面意思 - 是一种思想。当PDF文件绘制段落时,它会绘制单个字符或字符组。有时在阅读顺序,但可能以完全不同的顺序(取决于许多因素)。没有归因于字符或段落样式的行高的概念;生成PDF的应用程序只需将文本指针向下移动一定数量的点,然后开始绘制下一个字符。

所以......或许可以部分回答你的问题。

如果您使用相同版本的Word使用相同的操作系统使用相同的字体(不是具有相同名称,相同字体的字体)生成Word文档,您通常可以假设基本文本布局规则将是相同。因此,如果您在两个Word版本中重现完全相同的文本,您将获得完全相同的结果。

...然而

Word中有太多影响参数绝对可以肯定。例如,行高可能受到行上实际单词的影响。在一行中使用另一种字体的粗体字或单词(符号可以计数!)可以影响这些特定行之间的间距。因此,虽然线之间可能存在相同的距离,但各条线可能不同。

另外,例如,字间距很容易受到字符样式和文本对齐的影响,字符间距也可以。

至于你的问题3),除了字符间距可能改变你所看到的事实之外,假设所有事物都相等,例如组合“ea”总是具有相同的距离是公平的。有两种类型的字体。 1)仅定义字符宽度的那些,这意味着“ea”的每个组合在逻辑上总是具有相同的宽度 2)定义特定字符对的字符宽度和特定字距的那些。但是因为这种字距对于特定的字符对,“ea”之间的距离仍然是一样的。

我希望这是有道理的,就像我说的那样,也许你需要分享更多关于你想要完成的事情,这样才能给出更好的答案......

答案 1 :(得分:1)

@ David的答案和@Jongware对它的评论已经回答了你的明确问题1),2)和3)。实质上,如果您具有相同的软件设置(并且至少在MS Word的情况下这可能包括通常不考虑的系统资源),源文档(Word或LaTeX)可能产生关于字形位置的相同输出。但小补丁,可能作为制造商的安全更新提供,可能会在这方面产生差异,通常是分钟但有时会使线条甚至页面在不同的位置中断。

因此,关于你的目标

  

在现有PDF文档中隐藏信息(通过使用特定的隐写方法......),通过稍微修改字符的位置来插入嵌入的消息。

除非您希望将多个相同的软件设置作为安全概念的一部分,否则我建议您尝试将信息隐藏为操纵PDF和PDF之间的差异而不进行操作但是代替在较低有效数字中(例如,通过在变换之前或之后以给定精度使这些数字变为奇数或偶数来隐藏位)在被操纵的文档中与“originals”进行比较不必要。

对于更明确的命题,请提供更多信息,例如

  • 谁应该隐瞒信息:他们知识渊博,足智多谋?
  • 如何提取信息;通过视觉比较?通过一些可在任何计算机上运行的小程序?通过一个非常明确的软件设置?
  • 在不破坏隐藏信息的情况下,可以进行哪些后处理步骤;例如某些软件包可以签名吗?这样的后处理器有时会引入一些细微的变化,例如将数字解析为float个变量,然后再从floats变回来。
相关问题