No 'rgba' antialiasing ("LCD" subpixel rendering)
Nobody has claimed this yet.
- Dominant language
- C
- Stars
- 283
- Forks
- 82
- PR merge metrics
- No merged PRs in 30d
Description
Hello,
It appears the atril viewer does not follow system cues to render text with corresponding subpixel antialiasing, such as valid fontconfig rgba property (different than unknown or none), valid org.gnome.desktop.interface font-antialiasing setting, Xft RGBA setting, or other, nor does it have its own configuration or GSetting to enable subpixel antialiased text.
Is this a poppler limitation?
As I understand it, FreeType has facilities for subpixel rendering [1] but it appears to be something of a setting that requires correct trickling down from the application down to poppler, then to poppler's backend, and finally to FreeType.
As I am not familiar with the poppler project or its backends, I would be grateful if someone who is indeed familiar with it could clear up how to do so.
In relation to FreeType, as long as it is compiled with the corresponding configuration macro (which it typically is for the past years), and the application dynamically links to the system library (also typically the case), there should not be any impediments to having subpixel rendered text. The pdf.js viewer in Mozilla Firefox and the pdfium embedded Chromium viewer appear to do it, for instance.
[1] https://freetype.org/freetype2/docs/reference/ft2-lcd_rendering.html
The above quoted text from https://github.com/mate-desktop/atril/issues/633.
As xreader is based on atril, I am cross posting this issue here for visibility.
Thanks for the attention.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by tracing xreader's text-rendering path through Atril, Poppler, its rendering backend, and FreeType, using the linked FreeType LCD rendering documentation as context. Determine where fontconfig, GNOME, or Xft RGBA settings could enter the path; done would mean a defined implementation path for honoring subpixel antialiasing or a documented Poppler limitation.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c
- Domain
- desktop
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100