<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p>Yeah I am out of my element here, I can just add my thoughts.<br>
      <br>
      Since the kerning / glyph spacing is using the correct glyph info
      (but rendering the wrong glyph), this might be a pure display
      issue. You can see that if you take a closer look at the
      screenshots, the glyphs are aligned as if they were rendering the
      correct glyph. So it definitely knows the correct cmap for the
      glyph info, it just uses the wrong graphics.<br>
      <br>
      About the printer issue, wouldn't that even be more peculiar if
      installing and using some otf font would break the display (in
      this case when printed) of another font? The issue states that
      installing the otf font is causing that. If it was printing the
      otf font, then it would be the same off-by-2 issue. If it uses a
      different font to print, then the otf font is somehow still
      interfering with it because without the otf font, this issue
      doesn't happen.<br>
    </p>
    <div class="moz-cite-prefix">On 20/12/2024 22:43, Philip Race wrote:<br>
    </div>
    <blockquote type="cite"
      cite="mid:f5af851b-0d38-4d3e-bf62-e7ff3c57ee32@oracle.com">
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      The OTF bug is about printing. Disregard that. It is a case where
      the printer font is not the same as the font used on screen.<br>
      <br>
      I hear what you say but I can't imagine what code would add any
      value to a glyph id. There's no use case for that.<br>
      Glyph ids need to be obtained by mapping via the font cmap. They
      are just an opaque value you then use to then<br>
      map into a table to get the image/outline.<br>
      You can't assume ANYTHING about the relationship between glyph
      ids.<br>
      Glyph ID for 'A' could be 23 .. id for 'B' could be 17 .. etc<br>
      <br>
      -phil.<br>
      <br>
      <br>
      <div class="moz-cite-prefix">On 12/20/24 1:34 PM, Christopher
        Schnick wrote:<br>
      </div>
      <blockquote type="cite"
        cite="mid:777abb08-0a5a-40b0-82e4-eb084e1661ef@xpipe.io">
        <p>I'm not a font wizard, the only a consistent thing about this
          issue is that the glyph indices are always off by 2. The
          linked otf bug tracker issue has that same issue, and that is
          using a completely different font.<br>
          <br>
          If I had to debug this, I would probably think of something
          where some rare condition is true for the affected systems
          where some part of the code does a +1 on the glyph index to
          adjust for something but should instead do a -1. And since
          that condition seems to be very rare, normal testing doesn't
          catch that.<br>
        </p>
        <div class="moz-cite-prefix">On 20/12/2024 22:24, Philip Race
          wrote:<br>
        </div>
        <blockquote type="cite"
          cite="mid:8909aa3d-ddf4-419a-91a2-65ac0936f625@oracle.com">
          There's some hard-coding of names to files in
          WindowsFontMap.java<br>
          Maybe that's part of it, but its very much a guess.<br>
          It would be interesting to try a build which excludes using
          that pure "optimization"<br>
          <br>
          -phil.<br>
          <br>
          <br>
          <div class="moz-cite-prefix">On 12/20/24 1:12 PM, Philip Race
            wrote:<br>
          </div>
          <blockquote type="cite"
            cite="mid:f03aeb46-61a0-4f99-b76d-10721814563e@oracle.com">
            That just looks like prism.verbose output<br>
            I see someone suggested prism.debugfonts but I don't see
            that any results were ever provided.<br>
            <br>
            -phil.<br>
            <br>
            <br>
            <div class="moz-cite-prefix">On 12/20/24 1:08 PM,
              Christopher Schnick wrote:<br>
            </div>
            <blockquote type="cite"
              cite="mid:0e15e82e-24e3-4548-82a4-d79ff210a053@xpipe.io">
              <p>Hey Phil,</p>
              <p>the linked GitHub comment has debugfonts output hidden
                in the comment. It looks like this:</p>
              <p><font face="monospace">Prism pipeline init order: d3d
                  sw<br>
                  Using Double Precision Marlin Rasterizer<br>
                  Using dirty region optimizations<br>
                  Not using texture mask for primitives<br>
                  Not forcing power of 2 sizes for textures<br>
                  Using hardware CLAMP_TO_ZERO mode<br>
                  Opting in for HiDPI pixel scaling<br>
                  Prism pipeline name = com.sun.prism.d3d.D3DPipeline<br>
                  Loading D3D native library ...<br>
                          succeeded.<br>
                  D3DPipelineManager: Created D3D9Ex device<br>
                  Direct3D initialization succeeded<br>
                  (X) Got class = class com.sun.prism.d3d.D3DPipeline<br>
                  Initialized prism pipeline:
                  com.sun.prism.d3d.D3DPipeline<br>
                  Maximum supported texture size: 16384<br>
                  Maximum texture size clamped to 4096<br>
                  OS Information:<br>
                          Windows version 10.0 build 22631<br>
                  D3D Driver Information:<br>
                          Intel(R) Iris(R) Xe Graphics<br>
                          \\.\DISPLAY1<br>
                          Driver igd10iumd64.dll, version 30.0.101.3118<br>
                          Pixel Shader version 3.0<br>
                          Device : ven_8086, dev_46A8, subsys_00631414<br>
                          Max Multisamples supported: 4<br>
                   vsync: true vpipe: true<br>
                  Loading FontFactory
                  com.sun.javafx.font.directwrite.DWFactory<br>
                  Subpixel: enabled<br>
                  No match for name null in C:\WINDOWS\Fonts\segoeui.ttf<br>
                  No match for name null in
                  C:\WINDOWS\Fonts\segoeuib.ttf<br>
                  new alphas with length = 16384<br>
                  new alphas with length = 20480<br>
                  new alphas with length = 61440</font></p>
              <p>The comment also contains information about the system
                and fonts.<font face="monospace"><br>
                </font></p>
              <div class="moz-cite-prefix">On 20/12/2024 22:02, Philip
                Race wrote:<br>
              </div>
              <blockquote type="cite"
cite="mid:8d78c99f-1360-4695-a933-8159531baf2e@oracle.com"> Very odd.
                Possibilities :<br>
                - font mixup :  the glyph ID is for a different font.<br>
                - cmap bug : the incorrect glyph ID is used for the
                codepoint.<br>
                - the font is a unicode variable font something goes
                wrong as a result - I doubt this one as the IDs should
                be the same.<br>
                - something else  :-)<br>
                <br>
                Is the D3D pipeline being used ? <br>
                What's the user locale as shown by windows ?<br>
                <br>
                To get some idea of what fonts are being used they could
                run with -Dprism.debugfonts=true <br>
                <br>
                -phil.<br>
                <br>
                <br>
                <div class="moz-cite-prefix">On 12/20/24 12:48 PM,
                  Christopher Schnick wrote:<br>
                </div>
                <blockquote type="cite"
cite="mid:46a73c76-38e7-4ef2-899e-37d50eeea3f4@xpipe.io">
                  <p>So as a follow-up to this, this is a general JavaFX
                    issue and not related to a certain application. You
                    can find references to this on reddit: <a
                      class="moz-txt-link-freetext"
href="https://www.reddit.com/r/JavaFX/comments/1hhu0d5/bugs_with_scene_builder_v_2400/"
                      moz-do-not-send="true">https://www.reddit.com/r/JavaFX/comments/1hhu0d5/bugs_with_scene_builder_v_2400/</a>
                    and on GitHub with some verbose and debugfonts
                    output: <a class="moz-txt-link-freetext"
href="https://github.com/JabRef/jabref/issues/11755#issuecomment-2403606223"
                      moz-do-not-send="true">https://github.com/JabRef/jabref/issues/11755#issuecomment-2403606223</a>
                    . It also seems related to this issue: <a
                      class="moz-txt-link-freetext"
                      href="https://bugs.openjdk.org/browse/JDK-8242617"
                      moz-do-not-send="true">https://bugs.openjdk.org/browse/JDK-8242617</a><br>
                  </p>
                  <div class="moz-cite-prefix">On 04/12/2024 18:43,
                    Christopher Schnick wrote:<br>
                  </div>
                  <blockquote type="cite"
cite="mid:5572a0e6-43e4-4dee-a333-a4d0bd59ee1a@xpipe.io">
                    <p>I'm not able to reproduce it, but some of my
                      users are. If anyone who knows the font renderer
                      maybe wants additional information or has some
                      ideas on what the users can try to either fix or
                      diagnose the root cause, I can relay that request
                      to them.</p>
                    <p>I can ask them to try other JavaFX applications,
                      but either way how that goes, it doesn't show the
                      cause.<br>
                    </p>
                    <div class="moz-cite-prefix">On 04/12/2024 18:37,
                      Andy Goryachev wrote:<br>
                    </div>
                    <blockquote type="cite"
cite="mid:BYAPR10MB301357AE9F271BDFBF59983FE5372@BYAPR10MB3013.namprd10.prod.outlook.com">
                      <meta name="Generator"
                        content="Microsoft Word 15 (filtered medium)">
                      <!--[if !mso]><style>v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]-->
                      <style>@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}@font-face
        {font-family:"Yu Gothic";
        panose-1:2 11 4 0 0 0 0 0 0 0;}@font-face
        {font-family:Aptos;
        panose-1:2 11 0 4 2 2 2 2 2 4;}@font-face
        {font-family:"Iosevka Fixed SS16";
        panose-1:2 0 5 9 3 0 0 0 0 4;}@font-face
        {font-family:"Times New Roman \(Body CS\)";
        panose-1:2 11 6 4 2 2 2 2 2 4;}@font-face
        {font-family:"\@Yu Gothic";
        panose-1:2 11 4 0 0 0 0 0 0 0;}p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        font-size:10.0pt;
        font-family:"Aptos",sans-serif;}span.EmailStyle21
        {mso-style-type:personal-reply;
        font-family:"Iosevka Fixed SS16";
        color:windowtext;}.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;
        mso-ligatures:none;}div.WordSection1
        {page:WordSection1;}</style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
                      <div class="WordSection1">
                        <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">I
                            might suggest trying to run some other
                            JavaFX application using the same setup.  Or
                            better yet, if you can come up with a short
                            reproducer, please file a bug.<o:p></o:p></span></p>
                        <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""><o:p> </o:p></span></p>
                        <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">Thanks!<o:p></o:p></span></p>
                        <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">-andy<o:p></o:p></span></p>
                        <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""><o:p> </o:p></span></p>
                        <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""><o:p> </o:p></span></p>
                        <div
                          id="mail-editor-reference-message-container">
                          <div>
                            <div>
                              <div
style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
                                <p class="MsoNormal"
                                  style="margin-bottom:12.0pt"><b><span
style="font-size:12.0pt;color:black">From: </span></b><span
                                    style="font-size:12.0pt;color:black">openjfx-dev
                                    <a class="moz-txt-link-rfc2396E"
href="mailto:openjfx-dev-retn@openjdk.org" moz-do-not-send="true"><openjfx-dev-retn@openjdk.org></a>
                                    on behalf of Andy Goryachev <a
                                      class="moz-txt-link-rfc2396E"
href="mailto:andy.goryachev@oracle.com" moz-do-not-send="true"><andy.goryachev@oracle.com></a><br>
                                    <b>Date: </b>Wednesday, December 4,
                                    2024 at 09:20<br>
                                    <b>To: </b>Christopher Schnick <a
                                      class="moz-txt-link-rfc2396E"
                                      href="mailto:crschnick@xpipe.io"
                                      moz-do-not-send="true"><crschnick@xpipe.io></a>,
                                    <a
class="moz-txt-link-abbreviated moz-txt-link-freetext"
href="mailto:openjfx-dev@openjdk.org" moz-do-not-send="true">openjfx-dev@openjdk.org</a>
                                    <a class="moz-txt-link-rfc2396E"
href="mailto:openjfx-dev@openjdk.org" moz-do-not-send="true"><openjfx-dev@openjdk.org></a><br>
                                    <b>Subject: </b>Re: Windows default
                                    font glyphs are rendered wrong on
                                    some systems<o:p></o:p></span></p>
                              </div>
                              <div>
                                <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">I've
                                    never seen this...  what is the font
                                    that causes the issue?</span><o:p></o:p></p>
                                <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
                                <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">-andy</span><o:p></o:p></p>
                                <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
                                <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
                                <div
id="mail-editor-reference-message-container">
                                  <div>
                                    <div>
                                      <div
style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
                                        <p class="MsoNormal"
                                          style="margin-bottom:12.0pt"><b><span
style="font-size:12.0pt;color:black">From: </span></b><span
style="font-size:12.0pt;color:black">openjfx-dev <a
class="moz-txt-link-rfc2396E" href="mailto:openjfx-dev-retn@openjdk.org"
                                              moz-do-not-send="true"><openjfx-dev-retn@openjdk.org></a>
                                            on behalf of Christopher
                                            Schnick <a
class="moz-txt-link-rfc2396E" href="mailto:crschnick@xpipe.io"
                                              moz-do-not-send="true"><crschnick@xpipe.io></a><br>
                                            <b>Date: </b>Monday,
                                            November 25, 2024 at 02:44<br>
                                            <b>To: </b><a
class="moz-txt-link-abbreviated moz-txt-link-freetext"
href="mailto:openjfx-dev@openjdk.org" moz-do-not-send="true">openjfx-dev@openjdk.org</a>
                                            <a
class="moz-txt-link-rfc2396E" href="mailto:openjfx-dev@openjdk.org"
                                              moz-do-not-send="true"><openjfx-dev@openjdk.org></a><br>
                                            <b>Subject: </b>Windows
                                            default font glyphs are
                                            rendered wrong on some
                                            systems</span><o:p></o:p></p>
                                      </div>
                                      <p class="MsoNormal"><span
                                          style="font-size:12.0pt">Hello,</span><o:p></o:p></p>
                                      <p>for some of our users, the font
                                        glyphs of the default Windows
                                        font are wrong by an offset of
                                        +2. E.g. the letter D is
                                        rendered as F, the symbol - is
                                        rendered as /, and so on ...
                                        However, the glyph spacings and
                                        kernings are using the correct
                                        values for the original letter,
                                        only the actual glyph itself is
                                        wrong. This is happening on the
                                        latest 24-ea build on Windows
                                        11, but also occurred on version
                                        21 a while ago. I wasn't able to
                                        reproduce it myself, only some
                                        users were.<o:p></o:p></p>
                                      <p class="MsoNormal"><span
                                          style="font-size:12.0pt">This
                                          has happened now for multiple
                                          users of our application, so I
                                          figured to report it (Didn't
                                          find this in the bug tracker).
                                        </span><o:p></o:p></p>
                                      <p>Here is there issue, next to
                                        how it should look like:<o:p></o:p></p>
                                      <p class="MsoNormal"><span
                                          style="font-size:12.0pt"><img
                                            width="1289" height="713"
style="width:13.427in;height:7.427in" id="_x0000_i1026"
src="cid:part1.kP18gbZy.PF0Zu94A@xpipe.io" class=""></span><o:p></o:p></p>
                                      <p><img width="1282" height="752"
style="width:13.3541in;height:7.8333in" id="_x0000_i1025"
src="cid:part2.rzZKqs5u.to0brLNU@xpipe.io" class=""><o:p></o:p></p>
                                      <p>(It is in danish because the
                                        user played around with the
                                        language settings to
                                        troubleshoot)<o:p></o:p></p>
                                      <p>There was no explicit -fx-font
                                        set, so the application uses the
                                        default one. When the users
                                        change to using -fx-font:
                                        Roboto, which is bundled with
                                        our application, the glyphs are
                                        rendered normally. So this issue
                                        is specific to certain fonts.<o:p></o:p></p>
                                      <p>If there's any additional
                                        information required, I can
                                        relay that request to our
                                        affected users.<o:p></o:p></p>
                                      <p class="MsoNormal"><br>
                                        <span style="font-size:12.0pt">Best<br>
                                          Christopher Schnick </span><o:p></o:p></p>
                                      <p>(I resent this mail as it got
                                        stuck in the moderation queue
                                        for being too big due to me
                                        accidentally pasting the
                                        screenshot as a .bmp)<o:p></o:p></p>
                                    </div>
                                  </div>
                                </div>
                              </div>
                            </div>
                          </div>
                        </div>
                      </div>
                    </blockquote>
                  </blockquote>
                </blockquote>
                <br>
              </blockquote>
            </blockquote>
            <br>
          </blockquote>
          <br>
        </blockquote>
      </blockquote>
      <br>
    </blockquote>
  </body>
</html>