linuxmint / linuxmint/xreader

No 'rgba' antialiasing ("LCD" subpixel rendering)

Open
#679 0 comments 0 reactions 0 assignees View on GitHub

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

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.