How To
Menggunakan Java & JVM
Menggunakan engine RustO! OCR native pada aplikasi Java, Kotlin, dan Scala via JNA.
Paket rusto-java menyediakan binding JVM performa tinggi menggunakan Java Native Access (JNA). Mengimplementasikan AutoCloseable untuk manajemen memori otomatis dalam blok try-with-resources.
Instalasi
Gradle (Kotlin DSL)
repositories {
mavenCentral()
maven { url = uri("https://jitpack.io") }
}
dependencies {
implementation("com.github.byrizki.rusto-rs:rusto-java:0.3.2")
}
Pastikan pustaka librusto terpasang pada jna.library.path atau sistem library path.
Contoh Penggunaan
import com.byrizki.rusto.RustO;
import com.byrizki.rusto.TextResult;
import java.util.List;
public class Main {
public static void main(String[] args) {
String config = """
{
"detection": { "model_path": "models/PPOCR_v6/det.rten" },
"recognition": { "model_path": "models/PPOCR_v6/rec.rten", "dict_path": "models/PPOCR_v6/dict.txt" }
}
""";
try (RustO engine = RustO.initialize(config)) {
List<TextResult> results = engine.detectTextFile("receipt.jpg", "{}");
for (TextResult r : results) {
System.out.printf("[%0.2f] %s%n", r.score(), r.text());
}
String spatial = engine.detectTextFileSpatial("receipt.jpg", "{}");
System.out.println(spatial);
}
}
}