OcrEngine

Struct OcrEngine 

Source
pub struct OcrEngine { /* private fields */ }
Expand description

The OcrEngine struct represents the OneOcr processing engine.

Implementations§

Source§

impl OcrEngine

Source

pub fn new_with_options(ocr_options: OcrOptions) -> Result<Self, OneOcrError>

Creates a new instance of the OCR engine with specified options. This function loads the necessary library and initializes the OCR pipeline with the provided options.

Source

pub fn new() -> Result<Self, OneOcrError>

Creates a new instance of the OCR engine with default options. This function loads the necessary library and initializes the OCR pipeline.

Source

pub fn get_max_recognition_line_count(&self) -> Result<i32, OneOcrError>

Retrieves the maximum number of lines that can be recognized. Default is 100.

Source

pub fn set_max_recognition_line_count( &self, count: i32, ) -> Result<(), OneOcrError>

Sets the maximum number of lines that can be recognized. Default is 100, range is 0-1000.

Source

pub fn get_resize_resolution(&self) -> Result<(i64, i64), OneOcrError>

Retrieves the maximum internal resize resolution.

The resize resolution defines the maximum dimensions to which an image will be automatically scaled internally before OCR processing. It’s a performance and accuracy trade-off rather than a restriction on the original image’s resolution.

Default is 1152*768.

Source

pub fn set_resize_resolution( &self, width: i32, height: i32, ) -> Result<(), OneOcrError>

Sets the maximum internal resize resolution.

The resize resolution defines the maximum dimensions to which an image will be automatically scaled internally before OCR processing. It’s a performance and accuracy trade-off rather than a restriction on the original image’s resolution.

The maximum resolution is 1152*768.

Source

pub fn run(&self, input: ImageInput) -> Result<OcrResult, OneOcrError>

Run OCR processing on an image.

This method accepts various input types through the ImageInput enum and allows configuration through OcrOptions.

§Arguments
  • input - The image input source (file path, image buffer, or dynamic image)
§Returns

Returns an OcrResult containing the recognized text and associated metadata, or an error if the OCR processing fails.

§Examples
use oneocr_rs::{OcrEngine, OcrOptions, ImageInput};
use std::path::Path;
let engine = OcrEngine::new().unwrap();

// Process from file path
let result = engine.run(Path::new("image.jpg").into()).unwrap();
// Process from in-memory image buffer
let img_buffer: ImageBuffer<Rgba<u8>, Vec<u8>> = capture_screenshot(); // Your screenshot function
let result = engine.run(img_buffer.into()).unwrap();

Trait Implementations§

Source§

impl Debug for OcrEngine

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Drop for OcrEngine

Source§

fn drop(&mut self)

Executes the destructor for this type. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<T> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.