Hua大已完美修正原生文本版《中学英汉双解多功能学习词典》中的音标错误

因为学习参考需要用到《中学英汉双解多功能学习词典》,在汇雅书站上搜索下载了该书的原生文本PDF版,与实体书对照,文本电子版除书中音标错误外,内容、排版与实体书完全一致。该原貌文本pdf版无论是汇雅在线pdf阅读、还是下载后用Adobe pdf阅读器阅读,音标都不能正常显示。
尝试用Pdf编辑工具替换和嵌入金山音标字体,虽然原音标部分基本可以正确显示,却莫名出现很多新的排版错误。在PDF编辑状态下,可以发现我尝试修改了音标的pdf文档中有一些地方的文本块块内文字排版如缩进、对齐、行距等错乱,有的文本块间出现交错重叠,部分文本块内文字超出文本框丢失,音标部分也出现音标中间换行、美音标识符$位置不对等等,与原生版对照有错误。
在此求教大家,请高手完美修正该原生文本版中的音标错误,又确保原文本内容和排版不变。

原版原貌文本版:
中学英汉双解多功能学习词典.zip (14.7 MB)

尝试替换修正音标不果:
中学英汉双解多功能学习词典-音标试修改.zip (15.3 MB)

音标修正档的前几页发现的一些内容、排版错误:

/img]

2 个赞

只有在生成PDF的时候指定字体才行。

出版社在排版、制作、生成印刷前的矢量版PDF时,这些内容、字体等都应该是没有问题的。现在这个原貌文本原版估计也是超星从出版社获得授权时直接拿到的,是出版社从印前矢量版转换后的原貌文本版,音标问题估计就是这个环节出现的。
希望我们Freemdict社区有大侠出手完美修正

电子版都能方便使用了,本站的mdx 词典版无论排版还是展示,都应该能符合你的要求。

金山音标字体能传一份吗?

好的,hua大

Ksphonet.ttf (23.9 KB)

音标“乱码”几乎无法“修复”。这部词典mdx版有发音,隔壁作者mp3转的。
我记得论坛里还有一部mdx词典,音标也是乱码。
无他,只能选择性忽视了。

mdx 的音标乱码只要有对应字体,大多数是可以修复的,少数不可以修复的是用正则替换过音标的字符串,但没有替换完全,这种需要找到原始的文本。pdf 的缺失字体也是可以修复的,前提是 pdf 指定了字体,用 adobe pro 检查字体缺失,重新选择字体就可以了。

1 个赞

中学英汉双解多功能学习词典_fix_font.7z (14.0 MB)


11 个赞

怎么修复的,颠覆了我的认知。

PDF 中音标的字体指定的是:MyriadPro-Regular,这个字体并不能正确显示音标,然而 PDF 中其实内嵌了一个未使用的可以显示音标的 SonyphoneticPlain 字体。尝试过更换音标指定的字体(就像是更换 CSS 中的font-family),未能如愿。现在是直接把内嵌的 MyriadPro-Regular 字体换成了 SonyphoneticPlain 字体。还可以有其他方法,比如直接重新写一遍 PDF,把每个文本框都重新写一下,顺便把字体也换了,不过我并没有试,因为 PDF 格式虽然开放,但是便捷的操作 PDF 库还是不多。

附上代码,参考:[font-replacement] replace with a font, which is already embedded · Issue #48 · pymupdf/PyMuPDF-Utilities · GitHub

# pip install pymupdf
import fitz

doc=fitz.open("./中学英汉双解多功能学习词典.pdf")

# 错误的音标字体的 xref 不止一个,需要全部都换掉
to_be_replaced = []
for page in doc:
    fonts = page.get_fonts()
    for font in fonts:
        if 'MyriadPro-Regular' in font[3]:
            to_be_replaced.append(font[0])
        elif "Sony" in font[3]:
            sony_font = font[0]

for i in to_be_replaced:
    doc.xref_copy( sony_font, i )

doc.ez_save("中学英汉双解多功能学习词典_fix_font.pdf")
doc.close()
9 个赞

hua大厉害,高高手。目前已修正部分十分完美。
但P332~P386间所有页面的音标还没有修正,辛苦继续。


原版有一个错误,可以的话,顺道把这个也修复了

更新在原帖了,代码也改一点点。压缩包下载下来要被 Windows 报毒,我也很疑惑:VirusTotal

1 个赞

非常感谢hua大!
音标修正十分完美,并且内容、排版仍然与原版完全一致
hua大 不仅授人以鱼还更授人以渔,赞!

说得非常有道理,感谢华大

你可以拿 Adobe PDF 软件来改改,我没有这个。

好的,非常感谢hua大

这本书不是有mdx吗?
pdf还有啥用?

这句话应该是针对某些交付印刷的 PDF 适用,即没有文字信息,只有图形信息(path object)的 PDF。能复制出来文字的 PDF 多半都还能改改。