从版本 1.9.15 开始,Spire.OCR for Java 为开发人员提供了一个新的模型来从图片中提取文本。在本文中,我们将演示如何使用 Spire.OCR for Java 的新模型在 Java 中实现从图片中提取文本。
具体步骤如下:
步骤 1:在 IntelliJ IDEA 中创建 Java 项目。
步骤 2:通过 Maven 仓库拉取或手动导入 Spire.OCR.jar。
1、通过 Maven 仓库拉取 Spire.OCR.jar
如果你的项目使用 Maven 构建,你可以通过在项目的 pom.xml 文件中添加如下依赖来引入 Spire.OCR.jar:
<repositories>
<repository>
<id>com.e-iceblue</id>
<name>e-iceblue</name>
<url>https://repo.e-iceblue.cn/repository/maven-public/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>e-iceblue</groupId>
<artifactId>spire.ocr</artifactId>
<version>1.9.15</version>
</dependency>
</dependencies>
2、手动导入 Spire.OCR.jar
首先,从以下链接下载 Spire.OCR.jar 文件,然后将其解压到特定目录。
https://www.e-iceblue.cn/Downloads/Spire-OCR-JAVA.html
其次,在 IDEA 主菜单栏中,依次点击:文件(Files) > 项目结构(Project Structure) > 模块(Modules) > 依赖(Dependencies),在右侧的“依赖项”窗格中,点击“+”号,选择“JARs或目录”(JARs or Directories…),在打开的窗口中,定位到 Spire.OCR.jar 所在的目录,选中 jar 文件后点击“确定”,将 jar 文件添加为项目的依赖。
步骤3:下载 Spire.OCR for Java 的新模型和依赖项。
通过以下链接下载 Spire.OCR for Java 的新模型和依赖项(Model&Lib.zip),并将其加压到特定目录(如“D:\”)。
https://www.e-iceblue.cn/resource/ocr_java/Model&Lib.zip
步骤 4:使用 Spire.OCR for Java 的新模型实现从图片中提取文本。
以下代码示例展示了如何使用 Spire.OCR for Java 的新模型实现从图片中提取文本:
- Java
import com.spire.ocr.*;
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
public class Main {
public static void main(String[] args) {
try {
// 设置许可证密钥
// com.spire.ocr.license.LicenseProvider.setLicenseKey("your-license-key");
// 创建 OcrScanner 实例
OcrScanner scanner = new OcrScanner();
// 设置扫描选项(指定新模型的路径以及文本识别的语言,例如English, Chinese, Chinesetraditional, French, German, Japanese 或 Korean)
ConfigureOptions configureOptions = new ConfigureOptions("D:\\Model&Lib\\Model", "English");
// 设置依赖库的路径
configureOptions.setLibPath("D:\\Model&Lib\\Lib\\win-x64");
scanner.ConfigureDependencies(configureOptions);
// 从图片中提取文本
scanner.scan("Sample.png");
// 保存扫描获取的文字为.txt文档
saveTextToFile(scanner, "output.txt");
} catch (OcrException e) {
e.printStackTrace();
}
}
private static void saveTextToFile(OcrScanner scanner, String filePath) {
try {
String text = scanner.getText().toString();
try (BufferedWriter writer = new BufferedWriter(new FileWriter(filePath))) {
writer.write(text);
}
} catch (IOException | OcrException e) {
e.printStackTrace();
}
}
}
申请临时 License
如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请该Email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用JavaScript。获取有效期 30 天的临时许可证。