通过XPDF读取PDF内容并转化为txt格式的过程中,可能会出现如下提示:

Syntax Error: Unknown character collection 'Adobe-GB1'
Syntax Error: Couldn't find 'UniGB-UTF16-H' CMap file for 'Adobe-GB1' collection
Syntax Error: Unknown CMap 'UniGB-UTF16-H' for character collection 'Adobe-GB1'
Syntax Error: Failed to parse font object for 'AdobeSongStd-Light'

该如何处理呢,下面慢慢道来,先说软件下载地址:

http://www.xpdfreader.com/download.html

http://www.xpdfreader.com/pdftotext-man.html

下载这三个压缩包,运行XpdfReader-win64-4.03.exe,将其安装到D:\Program Files\xpdf\ 目录下,将中文语言包xpdf-chinese-simplified.tar.gz解压缩到该目录下,如下图所示:

这个时候,如果我们开始运行转换命令,仍然会报错,

这是因为我们仍缺少最后一步的配置操作:将D:\Program Files\xpdf\xpdf-chinese-simplified\目录下面的add-to-xpdfrc文件复制到D:\Program Files\xpdf\bin64\目录下,将其改名为xpdfrc,打开该文件修改内容为如下:

#----- begin Chinese Simplified support package (2011-sep-02)
textEncoding        UTF-8
textPageBreaks no
cidToUnicode    Adobe-GB1   "D:\Program Files\xpdf\xpdf-chinese-simplified\Adobe-GB1.cidToUnicode"
unicodeMap  ISO-2022-CN "D:\Program Files\xpdf\xpdf-chinese-simplified\ISO-2022-CN.unicodeMap"
unicodeMap  EUC-CN      "D:\Program Files\xpdf\xpdf-chinese-simplified\EUC-CN.unicodeMap"
unicodeMap  GBK     "D:\Program Files\xpdf\xpdf-chinese-simplified\GBK.unicodeMap"
cMapDir     Adobe-GB1   "D:\Program Files\xpdf\xpdf-chinese-simplified\CMap"
toUnicodeDir            "D:\Program Files\xpdf\xpdf-chinese-simplified\CMap"
#fontFileCC Adobe-GB1   /usr/..../NotoSansCJKsc-Regular.otf
#----- end Chinese Simplified support package

或者,为了移植性更好,可以配置如下:

#----- begin Chinese Simplified support package (2011-sep-02)
textEncoding        UTF-8
textPageBreaks no
cidToUnicode    Adobe-GB1   ..\xpdf-chinese-simplified\Adobe-GB1.cidToUnicode
unicodeMap  ISO-2022-CN ..\xpdf-chinese-simplified\ISO-2022-CN.unicodeMap
unicodeMap  EUC-CN      ..\xpdf-chinese-simplified\EUC-CN.unicodeMap
unicodeMap  GBK     ..\xpdf-chinese-simplified\GBK.unicodeMap
cMapDir     Adobe-GB1   ..\xpdf-chinese-simplified\CMap
toUnicodeDir            ..\xpdf-chinese-simplified\CMap
#fontFileCC Adobe-GB1   /usr/..../NotoSansCJKsc-Regular.otf
#----- end Chinese Simplified support package

尤其要注意,因为文件路径中含有空格,所以要加引号。该配置文件的行前的关键字严格区分大小写,务必保持原样。

总结如下:

xpdfrc文件放到pdftotext.exe所在同一目录,也就是bin64或bin32目录下,这点官方文档说明的不是很清楚。

xpdfrc里面的配置内容中的路径最好不要空格,有空格的话要加引号

或者直接从以下位置下载我已经配置好的文件:https://download.csdn.net/download/xcntime/16277001

xpdf转换中文pdf时报错字库缺失:Unknown character collection Adobe-GB1相关推荐

  1. ftl转PDF服务器上中文不显示,解决Linux中swftools转换中文pdf时出现乱码问题

    前段时间安装了swftools可以将pdf转换为swf文件,然后配合一个FlexPaper,就可以做成和百度图文库类似的东东了. 但是今天,我们开发的同事告诉我说pwd转换的这个会有乱码问题,我看了一 ...

  2. mysql数据库表中插入中文字段时报错 ‘\xCD\xF5\xBB\xAA‘

    创建表 mysql> CREATE TABLE student( -> s_no VARCHAR(20) PRIMARY KEY COMMENT'学生学号', -> s_name V ...

  3. word 转 PDF时报错

    利用微软自带的com组件,把word转化成Pdf,利用vs2012调试时没有问题,但是发布到IIS时出错,错误为: 检索 COM 类工厂中 CLSID 为 {} 的组件时失败,原因是出现以下错误: 8 ...

  4. python输入中文注释时报错

    在写python脚本的时候,当输入的注释为中文的时候会报出这样的错误: ASCII character '\xe4' in file getoptTest.py on line 14, but no  ...

  5. MySQL插入中文数据时报错:Incorrect string value: ‘\xC8\xFD\xCC\xE5‘ 解决方案

    最近在使用MySQL数据库的客户端来操作数据库的时候,我直接打开我电脑搜索里面的MySQL客户端来打开: 结果直接在我插入中文数据的时候报错了: Incorrect string value: '\x ...

  6. 快速解决MySQL插入中文数据时报错或乱码问题

    数据库中,如果要表示中文,需要先明确字符编码(字符集) MySQL默认的字符集,叫做拉丁文,它是不支持中文的 为了能够存储中文,我们需要把字符集改成UTF-8 而修改MySQL字符集的方法有很多种,这 ...

  7. pycharm matplotlib.pyplot.figure().add_subplot()绘制三维图时报错:ValueError: Unknown projection 3d(bug)

    报错描述 出于安全考虑,CSDN不让文章标题使用英文单引号 ValueError: Unknown projection '3d' # -*- coding: utf-8 -*- "&quo ...

  8. Spark 启动报错时报错 java.lang.NoSuchMethodError: scala.collection.immutable.HashSet$.empty()Lscala/collect

    今天在Spark测试时异常 报错 一直 提示 找不到 该方法 因为 本身代码量很小 而且  没有用到 错误提示的类  找了许久 才发现是 版本 对应问题 /Library/Java/JavaVirtu ...

  9. Xpdf 中文字体解决方案(TTF字库) - 图文教程

    Xpdf是用来处理和转换 PDF 的利器.项目中需要将 PDF 转换为图片,但是发现有的 PDF 文档转换缺失字体,必须要使用 ttf格式的字体才行,直接安装到系统不管用,于是到官方文档才发现还需要配 ...

最新文章

  1. 一个一元二次方程求解编程引申的两个知识点(abs和fabs的区别以及浮点数比较相等)...
  2. Rhel7/Centos7 修改运行级别
  3. WindowsService 安装后报错: 无法启动计算机“.”上的服务 解决方案
  4. python接口自动化测试(二)-requests.get()
  5. 使用简单工厂模式demo
  6. 微信小程序 一些要点
  7. 操作系统真相还原不明白的地方
  8. 自助式BI和传统BI有什么区别
  9. 运算符重载的常识性问题
  10. 计算机办公自动化试题及答案,计算机等级考试,办公自动化考试试题(三)
  11. 2022年最新最全软件测试面试题大全
  12. 安徽汽车网程序员删库跑路?安徽汽车官网只剩3张图片!
  13. 2019年严峻的就业形式 如何跳出被裁员的魔圈
  14. 剖析搜索引擎背后的经典数据结构和算法
  15. 网络层的拥塞控制与服务质量
  16. 岁月无痕人有迹,时光无影人有踪
  17. 读iOS开发进阶有感
  18. 32位单总线计算机系统中,计算机系统结构答案.doc
  19. Signal:python用信号处理程序的机制及用法举例
  20. scratch编写游戏:火柴人避开防守投篮

热门文章

  1. 单商户商城b2c基本功能
  2. Android面试之线程同步的方法
  3. 淘宝无痕下单生成器一拖多入口生成器(附api生成接口以代码)
  4. 锐捷(十八)锐捷三层交换机实现不同vlan间的通信
  5. 祖玛弹珠js小游戏代码
  6. B1032.挖掘机技术哪家强
  7. 求一个3*3矩阵主对角线元素之和
  8. 卸载AdobeAIR时提示“管理员可能不允许卸载此软件”的解决方法之一
  9. QT4.8.6中文乱码
  10. 让孩子们喜欢阅读的18种天才方法