7 Commits
Author SHA1 Message Date
Mohammad EssamandClaude Opus 5.5 a538d3a75e feat(python): draw Arabic text in vis() with khatt from the rtl extra (#763)
* feat(python): draw Arabic text in vis() with khatt from the rtl extra

Recognized Arabic, Persian and Urdu text is returned in reading order,
but vis() draws it with ImageDraw.text, which only joins Arabic letters
and lays out right-to-left text when Pillow is built with Raqm. Without
it the visualization shows separate letters in reverse order, running
out of the box.

When khatt is installed (now part of the rtl extra on Python 3.10+),
right-to-left lines are shaped, start at the right edge of their box,
are centered vertically and shrink to fit the box. Other text, and RTL
text without khatt, is drawn by Pillow as before.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* style(python): ruff format the vis RTL changes

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* fix(python): let RTL text shrink below 10px to fit small boxes

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-04 22:01:00 +08:00
SWHL d6e304be35 chore: remove optional OpenCV dependency 2026-10-08 11:16:10 +08:00
SWHL c1ec6054a7 build(python): make OpenCV headless by default with optional GUI support (issue #737) 2026-09-15 09:21:54 +08:00
SWHL 4a3070f304 feat(models): add multilingual model routing and licensing metadata. (issue #739) 2026-09-08 10:37:44 +08:00
SWHL 0e629c8be0 feat: validate python-bidi before initializing Arabic OCR (issue #719) 2026-08-31 10:21:10 +08:00
SWHL 096293330e fix: improve IDE support for lazy package exports 2026-07-09 11:22:07 +08:00
SWHL 86b48d2c96 feat: optimize the wheel packaging process (#687)
* chore: add pyproject toml configuration

* build: migrate RapidOCR wheel packaging to pyproject.toml

- add PEP 517 setuptools build configuration
- derive package version from git tags via setuptools-scm
- move wheel model preparation into an explicit tools script
- generate MANIFEST.in for default model assets before building
- avoid importing rapidocr during package metadata generation

* ci: build release wheels from validated git tags

* build: align package runtime support with Python 3.8

- set Requires-Python to >=3.8
- remove Python 3.6 and 3.7 classifiers
- make wheel asset preparation script type hints Python 3.8 compatible
- clarify split between build-time and wheel runtime support
2026-06-12 17:19:53 +08:00