1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
//! Embedded tessdata functionality for tesseract-rs
//!
//! This module provides functionality to embed Tesseract training data directly
//! into the binary, eliminating the need to ship separate tessdata files.
use crate::;
// Include the generated embedded tessdata
include!;
/// Get the embedded tessdata for a specific language.
///
/// This is a low-level function that returns the raw tessdata bytes.
/// Most users should use `TesseractAPI::init_embedded()` instead.
///
/// # Arguments
///
/// * `language` - The language code (e.g., "eng", "tur")
///
/// # Returns
///
/// Returns `Some(&[u8])` if the language is embedded, `None` otherwise.
///
/// # Example
///
/// ```rust,no_run
/// use tesseract_rs::get_embedded_tessdata;
///
/// if let Some(eng_data) = get_embedded_tessdata("eng") {
/// println!("English tessdata size: {} bytes", eng_data.len());
/// }
/// ```
/// Get a list of all available embedded languages.
///
/// # Returns
///
/// A vector of language codes that are embedded in the binary.
///
/// # Example
///
/// ```rust,no_run
/// use tesseract_rs::embedded_languages;
///
/// let languages = embedded_languages();
/// println!("Available embedded languages: {:?}", languages);
/// ```