簡體   English   中英

Ghostscript pdf至txt提取

[英]Ghostscript pdf to txt extraction

我正在Windows上使用Ghostscript 9.18,並嘗試使用-sDEVICE = txtwrite從pdf文件中提取文本我的命令如下所示:

gswin32c -dBATCH -dNOPAUSE -sDEVICE=txtwrite -dFirstPage=1 -dLastPage=1 -sOutputFile=test.txt test.pdf -c quit

但是我總是得到“找不到“ ArialBlack”的CID”,我試圖通過寫入fontmap文件來提供cid:

/Arial << /FileType /TrueType /Path (c:\windows\fonts\arial.ttf) /SubfontID 0 /CSI [(Identity) 0] >> ;
/ArialBlack << /FileType /TrueType /Path (c:\windows\fonts\arial.ttf) /SubfontID 0 /CSI [(Identity) 0] >> ;

但似乎看不到條目,​​仍然要求提供提示信息。 我知道一些版本,字體映射只是一個文件,但是開發人員將其移到了庫中。 當我使用-sDEVICE = png16m時,它通常可以讀取pdf並打印帶有良好字符的bmp。

也許有人知道答案?

Windows版本的Ghostscript的默認設置已經有一段時間了,即將支持文件包括在ROM文件系統中,即作為二進制可執行文件的一部分。

如果需要將支持文件從外部添加到磁盤上(例如,要修改它們),可以從我們的Git存儲庫中獲取支持文件。

可以使用-I(包含路徑)開關來包含fontmap和CIDFmap文件。

請注意,CID與CIDFont不同。 CIDFOnt 使用 CID,它不是“ CID”,此處的術語很重要。 在我看來,Ghostscript似乎在告訴您無法找到CIDFont,而不是CID。

聽起來您的PDF文件使用的是CIDFont,但沒有嵌入它,這是一種非常糟糕的做法,可能會導致呈現問題。 對於txtwrite,很可能也無法有效地提取文本。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM