Announcement

Collapse
No announcement yet.

Fedora Enables ClearType Subpixel Font Rendering Thanks To Microsoft

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #21
    Originally posted by Danielsan View Post
    Well, the trap is setup...
    Not really. Did you check the expiration dates by any chance?

    Comment


    • #22
      Originally posted by kokoko3k View Post
      So you are calling everyone who prefers the the new interpreter an insane idiot.. fine.
      Nah, I am calling them people with good monitors. The old defaults are only better if you have both
      a) Old truetype fonts from the 90s (like mscorefonts)
      b) A non-hidpi screen.

      Still that is a pretty common.

      Comment


      • #23
        Originally posted by RealNC View Post
        OK, it seems it doesn't work when using "slight" hinting in fontconfig. You need to switch to "full" hinting, and truetype:interpreter-version=35 will work. However, this produces horrible results. The word "game" for example looks normal by default, but when switching to v35, it is rendered as "ga me" (there's too much space between the "a" and "m".)

        So to me this looks like it makes things worse, not better...
        How did you disable kerning?

        Comment


        • #24
          Originally posted by caligula View Post

          Not really. Did you check the expiration dates by any chance?
          Patents

          ClearType is a registered trademark and Microsoft claims protection under the following U.S. patents:[34][35]
          • Subpixel rendering:
            • U.S. Patent 6,188,385 – Method and apparatus for displaying images such as text
            • U.S. Patent 6,219,025 – Mapping image data samples to pixel sub-components on a striped display device
            • U.S. Patent 6,239,783 – Weighted mapping of image data samples to pixel sub-components on a display device
            • U.S. Patent 6,307,566 – Methods and apparatus for performing image rendering and rasterization operations
          • Complex color filtering:
            • U.S. Patent 6,225,973 – Mapping samples of foreground/background color image data to pixel sub-components
            • U.S. Patent 6,243,070 – Method and apparatus for detecting and reducing color artifacts in images
            • U.S. Patent 6,393,145 – Methods apparatus and data structures for enhancing the resolution of images to be rendered on patterned display devices
          • Subpixel font hinting and layout:
            • U.S. Patent 6,421,054 – Methods and apparatus for performing grid fitting and hinting operations
            • U.S. Patent 6,282,327 – Maintaining advance widths of existing characters that have been resolution enhanced
          • ClearType tuning:
            • U.S. Patent 6,624,828 – Method and apparatus for improving the quality of displayed images through the use of user reference information

          Not sure one of these have been applied, by the way some are expired and some are still active and the OIN website haven't been updated yet so I can't say if these patents were included or not. Anyway in a legal contentious these details are irrelevant in a legal cause wins the one that has more money.

          Comment


          • #25
            Originally posted by Spazturtle View Post

            You want to avoid this on high ppi screens. Subpixel font rendering has large performance costs.
            That's not the real problem. On high dpi screen you want the font to be layed out roughly the same way as on a normal screen to avoid the text moving around when you move a window from one screen to another. Therefore you can't just use the 32px font, when you have a 2x screen and a 16px font. Instead you continue to use the 16px font at x2 zoom, but using 16px subpixel rendering looks terribly at 2x, so you disable stuff like subpixel rendering and normal hinting and just render the outline with either no hinting or auto hinting. This way the letters stay the same place, but gets better details on the better screen. Also these techniques were for old screens, they are not necessary when you have high enough resolution.

            In case you wonder how an outline/vector font can have different pixel resolutions, that is because these hinting and subpixel instructions are available in different resolutions, not because the font is bitmaped.

            Comment


            • #26
              Originally posted by carewolf View Post
              How did you disable kerning?
              There's /etc/fonts/conf.d and /etc/fonts/conf.available. I enabled the 10-hinting-slight.conf file (which on gentoo is done using "eselect fontconfig".)

              Or, I suppose, you can do it non-system wide using your desktop's font config tool.

              Comment


              • #27
                Originally posted by RealNC View Post
                There's /etc/fonts/conf.d and /etc/fonts/conf.available. I enabled the 10-hinting-slight.conf file (which on gentoo is done using "eselect fontconfig".)

                Or, I suppose, you can do it non-system wide using your desktop's font config tool.
                You can't disable kerning there. Kerning is done by the application when rendering text.

                Comment


                • #28
                  Originally posted by carewolf View Post
                  You can't disable kerning there. Kerning is done by the application when rendering text.
                  Sorry, I thought you asked me about hinting. In my original post, I said that I'm using "slight" hinting as opposed to "full." If I use "slight", then v35 has no effect. If I use "full", then it has a very negative effect.

                  Comment


                  • #29
                    Originally posted by RealNC View Post

                    I just tested both, and there's no difference (both produce the same pixels.) This is on freetype 2.9.1 build with FT_CONFIG_OPTION_SUBPIXEL_RENDERING and TT_CONFIG_OPTION_SUBPIXEL_HINTING 2.

                    The test is starting kwrite (KDE text editor) twice:

                    $ kwrite
                    $ env FREETYPE_PROPERTIES="truetype:interpreter-version=35" kwrite

                    Both have exactly the same font rendering.
                    I do notice a small difference, but I don't really like the second one, TBH.

                    Comment


                    • #30
                      A few screenshots. I'm using "Segoe UI" as the font in KDE.

                      This is "full" hinting with v40, which looks OK:



                      This is "full" hinting with v35, which looks broken (look at "Confimations" tab, the spacing is wrong):



                      And this is my personal preference, "slight" hinting, which looks good and is exactly the same with v35 and v40, so I guess that means there's no sub-pixel rendering going on with "slight" hinting:



                      In any event, v35 full hinting does not look like Windows font rendering. (I also have a Windows 10 installation, which also uses Segoe UI, the same font.) So if this is supposed to make fonts look like they do on Windows, then it fails to do so, at least here.

                      Comment

                      Working...
                      X