Text Renderer is a Python utility for generating synthetic text images used to train optical character recognition models. It supports Latin and non-Latin writing systems and produces matching labels alongside the generated images. Users can supply their own corpora, fonts, character sets, backgrounds, and YAML configuration files. Available effects include perspective distortion, random cropping, curved text, borders, variable spacing, lines, embossing, color changes, inversion, and blur. A strict mode retries samples until the selected font supports every required character, which is useful for Chinese and other large character sets. Font-checking and debug tools help identify unsupported glyphs and visualize bounding or rotated boxes. Optional CUDA-enabled OpenCV processing can accelerate generation, although the repository points users to a newer successor project.
Features
- Latin and non-Latin text generation
- Custom fonts, corpora, and backgrounds
- Configurable synthetic image effects
- Strict character compatibility checking
- Font validation and debug tools
- Optional CUDA-accelerated rendering