HandyReader 1.23.260903 is NOW AVAILABLE!
Hey everyone! HandyReader v1.23.260903 is here!
This is the release I promised last time — full RTL (right-to-left) support has finally landed. On top of that, this version improves list-style paragraph typesetting, fixes table rendering issues, polishes rich inline styles within paragraphs, and resolves TTS compatibility problems along with the crashes they caused.
What’s New
RTL (Right-to-Left) Support
Handy Reader now properly supports RTL languages such as Arabic and Persian, as well as mixed RTL/LTR paragraph layouts. As I mentioned in the previous release notes, Android’s StaticLayout measurement API has known issues with mixed RTL and LTR text inside a single paragraph. Using the SheenBidi library, a paragraph is split into RTL and LTR segments, each segment is typeset separately, and the results are then reassembled into the whole paragraph — cleanly bypassing the system’s limitations.
If you read Arabic, Persian, Hebrew, or any other right-to-left language, your books should now display correctly, with natural page-turn direction and proper bidi handling for numbers, Latin words, and punctuation embedded in RTL text.
Improvements
List-Style Paragraph Typesetting
Formatting for list-style paragraphs (ordered and unordered lists) has been improved, with better indentation and marker alignment.
Rich Inline Styles
Rendering of rich inline styles within paragraphs — such as bold, italic, links, and combined styles — has been enhanced and optimized for more accurate and smoother rendering.
Bug Fixes
- Fixed table rendering issues: tables that previously displayed incorrectly or broke the layout now render properly.
- Resolved TTS compatibility issues and fixed the related crashes. Text-to-speech should now work reliably across more devices and book formats.
Download
GitHub: https://github.com/EucWang/HandyReader/releases/tag/v1.23.260903
Download page: https://handyreader.top/en/download.html