从文本中提取的提取使您可以依靠大量PDF文档中的特殊信息,例如名称,地址或数字。这对于诸如数据输入,捐赠分析,数据库人群或对其他系统的危害等任务特别有用。本指南将解释如何从Java 中的PDF中读取或提取文本。
将接近以下主题:
- 从Java中的PDF文件中提取文本
- 从Java中的PDF文件中的太空页面中提取文本
- 从Java中的PDF文件中的页面的特定矩形区域提取文本
Java库阅读PDF
要从PDF文件中提取文本,本文使用了一个名为Spire.PDF for Java的外部库。这是一个多功能库,可让您在Java应用程序中相信,阅读,写作和操纵PDF文档。它提供了许多功能,包括PDF转换,PDF合并和部门,PDF加密和加密,填充PDF表格等等。
您可以通过将以下配置添加到项目的pom.xml:
文件:
来轻松从spire.pdf for java导入java的java。
<repositories>
<repository>
<id>com.e-iceblue</id>
<name>e-iceblue</name>
<url>https://repo.e-iceblue.com/nexus/content/groups/public/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>e-iceblue</groupId>
<artifactId>spire.pdf</artifactId>
<version>9.6.2</version>
</dependency>
</dependencies>
您也可以从其官方网站上成为Java的télécharger Spire.pdf,以压缩包裹,然后从项目中的 liv 文件夹中手动导入Spire.pdf.jar文件。<<<<<<<<<<<<<<<<<<<<<<<<<< /p>
从Java中的PDF文件中提取文本
以下代码显示了如何使用java和spire.pdf从pdf文件中提取文本:
import com.spire.pdf.PdfDocument;
import com.spire.pdf.PdfPageBase;
import com.spire.pdf.texts.PdfTextExtractOptions;
import com.spire.pdf.texts.PdfTextExtractor;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;
public class ExtractTextFromPdf {
public static void main(String[] args) throws IOException {
// Créer un objet PdfDocument
PdfDocument doc = new PdfDocument();
// Charger un fichier PDF
doc.loadFromFile("C:\\Users\\Administrator\\Desktop\\Conditions d'utilisation.pdf");
StringBuilder sb = new StringBuilder();
for (int i = 0; i < doc.getPages().getCount(); i++) {
PdfPageBase page = doc.getPages().get(i);
// Créer un objet PdfTextExtractor
PdfTextExtractor textExtractor = new PdfTextExtractor(page);
// Créer un objet PdfTextExtractOptions
PdfTextExtractOptions extractOptions = new PdfTextExtractOptions();
// Extraire le texte de chaque page
String text = textExtractor.extract(extractOptions);
sb.append(text);
}
// Écrire dans un fichier txt
Files.write(Paths.get("output/Extraits.txt"), sb.toString().getBytes());
}
}
从Java中的PDF文件中的太空页面中提取文本
以下代码显示了如何使用java和spire.pdf从pdf文件的太空页面提取文本:
import com.spire.pdf.PdfDocument;
import com.spire.pdf.PdfPageBase;
import com.spire.pdf.texts.PdfTextExtractOptions;
import com.spire.pdf.texts.PdfTextExtractor;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;
public class ExtractTextFromPage {
public static void main(String[] args) throws IOException {
// Créer un objet PdfDocument
PdfDocument doc = new PdfDocument();
// Charger un fichier PDF
doc.loadFromFile("C:\\Users\\Administrator\\Desktop\\Conditions d'utilisation.pdf");
// Obtenir la deuxième page
PdfPageBase page = doc.getPages().get(1);
// Créer un objet PdfTextExtractor
PdfTextExtractor textExtractor = new PdfTextExtractor(page);
// Créer un objet PdfTextExtractOptions
PdfTextExtractOptions extractOptions = new PdfTextExtractOptions();
// Extraire le texte de la page
String text = textExtractor.extract(extractOptions);
// Écrire dans un fichier txt
Files.write(Paths.get("output/Extraits.txt"), text.getBytes());
}
}
从Java中的PDF文件中的页面的特定矩形区域中提取文本
以下代码显示了如何使用java和spire.pdf从PDF文件中的特定矩形区域提取文本:
import com.spire.pdf.PdfDocument;
import com.spire.pdf.PdfPageBase;
import com.spire.pdf.texts.PdfTextExtractOptions;
import com.spire.pdf.texts.PdfTextExtractor;
import java.awt.geom.Rectangle2D;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;
public class ExtractFromRectangleArea {
public static void main(String[] args) throws IOException {
// Créer un objet PdfDocument
PdfDocument doc = new PdfDocument();
// Charger un fichier PDF
doc.loadFromFile("C:\\Users\\Administrator\\Desktop\\Conditions d'utilisation.pdf");
// Obtenir la deuxième page
PdfPageBase page = doc.getPages().get(1);
// Créer un objet PdfTextExtractor
PdfTextExtractor textExtractor = new PdfTextExtractor(page);
// Créer un objet PdfTextExtractOptions
PdfTextExtractOptions extractOptions = new PdfTextExtractOptions();
// Définir l'option pour extraire le texte d'une zone rectangulaire
Rectangle2D rectangle2D = new Rectangle2D.Float(0, 0, 890, 170);
extractOptions.setExtractArea(rectangle2D);
// Extraire le texte de la zone spécifiée
String text = textExtractor.extract(extractOptions);
// Écrire dans un fichier txt
Files.write(Paths.get("output/Extraits.txt"), text.getBytes());
}
}
结论
在本文中,我们学会了使用java的spire.pdf从java中的pdf文件中读取或提取文本。如果您在Java应用程序中使用PDF文件,那么Java的Spire.pdf确实值得进行DECON TOUR。
相关主题
Extraire des images d'un PDF en Java
Créer un fichier PDF en Java
Chiffrer ou déchiffrer des fichiers PDF en Java
Ajouter ou supprimer des signatures numériques dans un PDF en Java