这个场景太常见了。你打开一个PDF,里面文字清清楚楚,用选择工具框选一段,Ctrl+C复制,贴到Word或记事本里,结果出来一堆符号、问号,或者干脆一片空白。
很多人第一反应是“这个PDF加密了”或者“我的阅读器坏了”。其实绝大多数情况下,既不是加密也不是坏了,问题出在字体上。
PDF里的文字,本质上记录的是“这个位置用这个字体显示这个字符”。如果系统里没有安装对应的字体,阅读器就会用默认字体去替代显示。你屏幕上看到的可能是替代字体显示的内容,但你复制的时候,复制出来的是原始编码,而那个编码在你电脑上没有对应的映射,于是就变成了乱码。
还有一种情况更隐蔽。有些PDF是从设计软件导出来的,制作者为了文件体积小,把字体做了“子集化”——也就是只嵌入文件中用到的那几个字符,而不是整套字体。这种文件在制作者电脑上打开没问题,但到了别的机器上,因为缺少完整的字体映射表,复制就会出问题。
怎么解决?有两种思路,都不需要额外花钱。
第一种,换个阅读器试试。不同的阅读器在处理未嵌入字体时的逻辑不一样,有的直接放弃映射显示乱码,有的会尝试用系统现有字体去匹配。你电脑里通常不止一个程序能打开PDF,浏览器是一个,系统自带的阅读器是另一个,有时候还装了第三方办公套件自带的查看器。如果一个复制出来是乱码,换另一个打开再复制,很可能就正常了。
第二种,如果换阅读器还是不行,那说明这个PDF里用的字体确实没有被完整嵌入。这时候换个思路——你不是要复制文字,你是要提取文本内容。在阅读器里找“另存为”或者“导出”的选项,看看有没有“保存为纯文本”或者“导出文本”的功能。这个功能不走剪贴板复制的那条路,而是让阅读器自己把文本内容提取出来存成一个文件,有时候能绕开字体缺失的问题。
如果PDF里的文字不是用的标准字体,而是被转成了曲线或轮廓(多见于设计稿和海报),那它本质上已经是图形了,复制不出来是正常的。这种情况只有通过识别的方式来处理,但那属于扫描件处理的范畴,不是字体的问题了。
还有一个细节值得注意:你从PDF复制文字粘贴到Word里,如果发现每一行后面都跟了一个换行符,段落全被打散了,这是PDF里的换行逻辑导致的,不是乱码。处理办法是粘贴的时候选择“只保留文本”,或者粘完之后用Word的查找替换功能,把段落标记替换成空格。
如果你需要频繁从PDF提取文字用于写作或整理资料,可以养成一个习惯:打开PDF之后,先试一下“文件”菜单里的“导出文本”功能,如果导出的文本是正常的,就说明这个文件的编码没有问题,只是复制粘贴那条路径不通。以后就用导出的方式,别用复制。
复制粘贴这条路走不通的时候,别死磕。换条路,往往几秒钟就解决了。