將連續文字從 PDF 檔案複製到 TXT 文件

將連續文字從 PDF 檔案複製到 TXT 文件

我的問題沒有明確涉及 LaTeX 本身,而是產生的 PDF。長話短說:我希望能夠將文字從 PDF 複製到 TXT 檔案作為連續文字。相信這是很多人的通病。

我正在處理編譯為 PDF 文件的 LaTeX 文件。我的文字包含很多斷詞在一行的末尾。有時我需要將生成的文字從 PDF 複製到純文字文件 (*.txt)。很遺憾:

PDF 旨在模仿列印頁面,並且它們僅設計為輸出格式,而不是輸入格式。 PDF 基本上是包含字元(單個字母或標點符號等)或圖像的確切位置的地圖。在多數情況下,PDF 甚至不儲存有關一個單字結束位置和另一個單字開始位置的信息,更不用說段落結尾的軟中斷與硬中斷之類的信息了。

因此,當我將以下文字編譯為 PDF 時,我不會感到驚訝:

\documentclass{article}
\usepackage{graphicx}

\begin{document}

\title{Introduction to \LaTeX{}}
\author{Author's Name}

\maketitle

\begin{abstract}
The abstract text goes here.
\end{abstract}

\section{Introduction}
This is \LaTeX text that will be copied and pasted. Verylongword. Taumatawhakatangi­hangakoauauotamatea­turipukakapikimaunga­horonukupokaiwhen­uakitanatahu is a hill near Porangahau, south of Waipukurau in southern Hawke's Bay, New Zealand.

\subsection{Subsection Heading Here}
This text comes from Wikipedia.: The name "Taumatawhakatangihangakoauauotamateaturipukakapikimaungahoronukupokaiwhenuakitanatahu" translates roughly as "The summit where Tamatea, the man with the big knees, the slider, climber of mountains, the land-swallower who travelled about, played his nose flute to his loved one".

\end{document}

結果是:

從範例建立的 PDF

我將整個文字複製到 TXT 文件,我得到:

Introduction to L A TEX
Author’s Name
April 29, 2017
Abstract
The abstract text goes here.
1
Introduction
This is L A TEXtext that will be copied and pasted. Verylongword. Taumatawhakatangi-
hangakoauauotamateaturipukakapikimaungahoronukupokaiwhenuakitanatahu is
a hill near Porangahau, south of Waipukurau in southern Hawke’s Bay, New
Zealand.
1.1
Subsection Heading Here
This text comes from Wikipedia.: The name ”Taumatawhakatangihangakoauauo-
tamateaturipukakapikimaungahoronukupokaiwhenuakitanatahu” translates roughly
as ”The summit where Tamatea, the man with the big knees, the slider, climber
of mountains, the land-swallower who travelled about, played his nose flute to
his loved one”.

最多惱人的是成為新行的分詞符號和行結尾,因此複製的文字不連續。有什麼技巧可以幫助我將文字從 PDF 複製到 TXT 檔案作為連續文字嗎?

直接從 TEX 原始碼複製文字不是一個選項,因為上面的範例非常簡單——典型的 TEX 原始碼包含巨集、格式化命令等。

答案1

發布(作為社區 wiki)Marijn 的評論,OP 表示“謝謝@Marijn!你可以把你的答案貼出來,這樣我就可以接受。

一個問題關於這個問題,在 Stack Overflow 上,以及那裡的答案中,OP 發現最有效的答案是德特克斯(開放德克斯)。這是在來源 TeX 檔案而不是 PDF 文件上運行的。

為了完整起見,Stack Overflow 答案中提到的其他選項是:

  • 卡特維它在 DVI 檔案上運行
  • 轉換為 HTML(使用 htlatex / tex4t / hyperlatex /橡膠樹),然後從 HTML 文件中提取文本
  • 潘多克,多種格式之間的多功能轉換器
  • LaTeX2RTF 轉換為 RTF,然後以某種方式提取文本
  • 解壓縮

請參閱 TeX 常見問題以了解更多資訊:從 (La)TeX 到純文字的轉換

注意:這是社群 wiki,因此如果可能的話,請編輯答案而不是留下評論。

答案2

既然您已經提到,這不是 LaTeX 特定的問題,您不應該感到驚訝,我的答案也與 LaTeX 無關:)。

一種方法可能是使用所謂的OCR(光學字元辨識)軟體

  • OCR 軟體能夠理解圖片並將其轉換為可編輯的文字。
  • OCR軟體甚至可以理解多列佈局等。
  • 我是德國著名電腦雜誌的讀者是吧
  • 在第 6/2017 期中對該軟體進行了很好的評論艾比 FineReader 14(有 30 天的試用期)。
  • 或嘗試其他 OCR 軟體,例如免費OCR或只是谷歌搜尋其他選項:)。

相關內容