PDFLayoutTextStripper
v2.2.5
แปลงไฟล์ PDF เป็นไฟล์ข้อความโดยยังคงรูปแบบ PDF ต้นฉบับไว้ มีประโยชน์ในการแยกเนื้อหาจากตารางหรือแบบฟอร์มในไฟล์ PDF PDFLayoutTextStripper เป็นคลาสย่อยของคลาส PDFTextStripper (จากไลบรารี Apache PDFBox)
การดึงข้อมูลจากแบบฟอร์มในไฟล์ PDF
<dependency>
<groupId>io.github.jonathanlink</groupId>
<artifactId>PDFLayoutTextStripper</artifactId>
<version>2.2.3</version>
</dependency>
คำเตือน : เฉพาะเวอร์ชัน pdfbox ตั้งแต่เวอร์ชัน 2.0.0 ขึ้นไป เท่านั้นที่เข้ากันได้กับ PDFLayoutTextStripper.java เวอร์ชันนี้
cd PDFLayoutTextStripper
javac -cp .:/pathto/pdfbox-2.0.6.jar:/pathto/commons-logging-1.2.jar:/pathto/PDFLayoutTextStripper/fontbox-2.0.6.jar *.java
java -cp .:/pathto/pdfbox-2.0.6.jar:/pathto/commons-logging-1.2.jar:/pathto/PDFLayoutTextStripper/fontbox-2.0.6.jar test
เช่นเดียวกับ Linux (ดูด้านบน) แต่แทนที่ : ด้วย ;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
import org.apache.pdfbox.io.RandomAccessFile;
import org.apache.pdfbox.pdfparser.PDFParser;
import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.text.PDFTextStripper;
public class test {
public static void main(String[] args) {
String string = null;
try {
PDFParser pdfParser = new PDFParser(new RandomAccessFile(new File("./samples/bus.pdf"), "r"));
pdfParser.parse();
PDDocument pdDocument = new PDDocument(pdfParser.getDocument());
PDFTextStripper pdfTextStripper = new PDFLayoutTextStripper();
string = pdfTextStripper.getText(pdDocument);
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
};
System.out.println(string);
}
}
ขอบคุณ