#tesseract #ocr #image #memory-safety #leptonica

tesseract-plumbing

Safe wrapper of tesseract-sys

16 releases (10 breaking)

0.11.0 May 29, 2023
0.9.0 Feb 26, 2023
0.7.1 Aug 16, 2022
0.6.1 Dec 9, 2021
0.1.0 May 26, 2020

#506 in Images

Download history 264/week @ 2024-07-29 369/week @ 2024-08-05 347/week @ 2024-08-12 262/week @ 2024-08-19 364/week @ 2024-08-26 224/week @ 2024-09-02 416/week @ 2024-09-09 215/week @ 2024-09-16 370/week @ 2024-09-23 490/week @ 2024-09-30 316/week @ 2024-10-07 263/week @ 2024-10-14 267/week @ 2024-10-21 226/week @ 2024-10-28 223/week @ 2024-11-04 179/week @ 2024-11-11

914 downloads per month
Used in 9 crates (4 directly)

MIT license

24KB
446 lines

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.

Requirements/Features

Requires Tesseract version 5.2.0 or newer by default. Use --no-default-features if using an older version.

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.

Dependencies

~1.4–3.5MB
~73K SLoC