Checklist
Is your feature request related to a problem? Please describe.
The current reader is limited to a pre-defined set of fonts. Users who require specific typography for accessibility (such as OpenDyslexic) or those who simply prefer a different aesthetic cannot currently use their own files, which restricts the personalization of the reading experience.
Describe the solution you'd like
I would like an option to import and apply custom .ttf or .otf files:
- Settings Integration: Add a "Custom Font" option in Settings that opens the Android system media picker.
- File Management: The app should copy the selected font to its internal directory to ensure it remains available (compliant with Scoped Storage on the latest Android versions).
- Reader UI: Add a "Custom" option in the Reader's FontStyle menu to apply the imported font.
How will you/everyone benefit from this feature?
This feature enhances accessibility for users with visual impairments or reading difficulties who rely on specific typefaces. It also improves the overall UX by allowing power users to customize their reading environment to their exact preference, making the app more competitive with other e-reader implementations.
Additional context
Since the app is built with Jetpack Compose, this can be implemented by dynamically loading a FontFamily from the internal file path using Font(file: File, ...). Using the Storage Access Framework (SAF) ensures compatibility with Android 13, 14, and 15.
Checklist
Is your feature request related to a problem? Please describe.
The current reader is limited to a pre-defined set of fonts. Users who require specific typography for accessibility (such as OpenDyslexic) or those who simply prefer a different aesthetic cannot currently use their own files, which restricts the personalization of the reading experience.
Describe the solution you'd like
I would like an option to import and apply custom
.ttfor.otffiles:How will you/everyone benefit from this feature?
This feature enhances accessibility for users with visual impairments or reading difficulties who rely on specific typefaces. It also improves the overall UX by allowing power users to customize their reading environment to their exact preference, making the app more competitive with other e-reader implementations.
Additional context
Since the app is built with Jetpack Compose, this can be implemented by dynamically loading a
FontFamilyfrom the internal file path usingFont(file: File, ...). Using the Storage Access Framework (SAF) ensures compatibility with Android 13, 14, and 15.