从PDF格式中提取文本(字体大小,类型等)

时间:2013-10-15 16:51:12

标签: pdf fonts styles extract font-size

是否可以从PDF文件中提取特定字体/字体大小/字体颜色等文本?我更喜欢perl,python或* nix命令行实用程序。我的目标是从PDF文件中提取所有标题,这样我就可以获得单个PDF中包含的很好的文章索引。

2 个答案:

答案 0 :(得分:2)

我有工作代码可以从 pdf 中提取字体大小的文本。 在 PDfminer 的帮助下,我完成了这项工作。有很多pdf的

from pdfminer.high_level import extract_pages
from pdfminer.layout import LTTextContainer, LTChar,LTLine,LAParams
import os
path=r'path\whereyour pdffile'
os.chdir(path)
Extract_Data=[]
for PDF_file in os.listdir():
    if PDF_file.endswith('.pdf'):
       for page_layout in extract_pages(PDF_file):
            for element in page_layout:
                if isinstance(element, LTTextContainer):
                    for text_line in element:
                        for character in text_line:
                            if isinstance(character, LTChar):
                                Font_size=character.size
                    Extract_Data.append([Font_size,(element.get_text())])

答案 1 :(得分:1)

文本和/ font /字体大小/位置(没有颜色,我检查过)你可以从Ghostscript的txtwrite设备(尝试-dTextFormat = 0 | 1选项),以及来自mudraw(MuPDF)和-tt选项。然后使用例如解析类似XML的输出。的Perl。