/tesseract-plumbing-pdf

Crate to expose a safe version of the tesseract-sys api

Primary LanguageRustMIT LicenseMIT

tesseract-plumbing

Crate to expose a safe version of the tesseract-sys api.

This is designed to expose the C API of tesseract in a safe manner.

Adding value by deviating from the API is a non-goal. That is left to libraries that build on top of tesseract-plumbing.

Motivation

I'm a maintainer of both leptess and tesseract-rs.

I noticed that there was a lot of duplication in how they interact with both leptonica-sys and tesseract-sys. Having multiple layers of abstraction in leptess and tesseract-rs made it hard to reason about their memory safety.

Having a safety layer that stays simple improves the correctness and maintainability of the above libraries.