Java 如何使用pdfbox提取字体、图像和粗体字体
我是新来的Java 如何使用pdfbox提取字体、图像和粗体字体,java,pdfbox,Java,Pdfbox,我是新来的apachepdfbox;下面是我从一份简单的简历中提取所有文本的代码。它的工作很好,现在我想得到的字体,粗体,图像等文本,我该怎么做呢 import java.io.File; import java.io.IOException; import java.util.Map; import org.apache.pdfbox.pdmodel.PDDocument; import org.apache.pdfbox.pdmodel.font.PDFont; import org.apa
apachepdfbox
;下面是我从一份简单的简历中提取所有文本的代码。它的工作很好,现在我想得到的字体,粗体,图像等文本,我该怎么做呢
import java.io.File;
import java.io.IOException;
import java.util.Map;
import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.pdmodel.font.PDFont;
import org.apache.pdfbox.util.PDFTextStripper;
public class PdfExtract {
public static void main(String args[]) throws IOException {
PDDocument pdf = PDDocument.load(new File("/home/praveen/Downloa/sampleresume.pdf"));
PDFTextStripper stripper = new PDFTextStripper();
String plainText = stripper.getText(pdf
System.out.println(plainText);
}
}
您将在中找到一些关于如何在纯文本旁边提取样式信息的信息。虽然这个答案侧重于人工样式(例如,通过两次绘制字符以粗体显示),但您可以使用它来获得总体思路:常规字体信息也包含在这里讨论的
TextPosition
对象中。PDFTextStripper
不会直接覆盖图像(毕竟它是一个文本剥离器…)PDFTextStripper不会直接覆盖图像(毕竟它是一个文本剥离器…)但是,如果您需要包含其位置的图像,则可以使用基于相同基类的其他剥离器类似地提取。如果您只需要没有位置的非内联图像,那么有多个SO答案显示如何从资源中获取这些图像。如何提取“etc”取决于etc的性质。你能给出一些示例代码来实现这一点吗?看看我在第一条评论中指出的答案。@War10ck我不是想在这里引起编辑大战,我也不是。我只是想知道编辑的动机。现在我明白了,尽管我没有分享。OP最多应该更正代码以匹配其实际代码。