John, for the sake of testing.

Could you enable LCD text for the plot Label in your app ?
Please let me know if that improves the position of each glyph (relative to one 
another).

You should also try your app using our previous text rasterizer, run with 
-Dprism.text=t2k
Is that better for you ?

Regards,
Felipe



On Aug 22, 2013, at 7:05 AM, John Hendrikx wrote:

> 
> Those are all normal controls, the plot section is just a Label for example.
> 
> On 22/08/2013 13:39, John C. Turnbull wrote:
>> John H, it may be just me but pretty much *all* the fonts in your screenshot
>> look quite poor and noticeably different from native font rendering.  If you
>> look for instance at the text in the "Plot" section, to me that text looks
>> awful.
>> 
>> Is that inside a WebView or some other control?
>> 
>> -jct
>> 
>> -----Original Message-----
>> From: openjfx-dev-boun...@openjdk.java.net
>> [mailto:openjfx-dev-boun...@openjdk.java.net] On Behalf Of John Hendrikx
>> Sent: Thursday, 22 August 2013 17:29
>> To: openjfx-dev@openjdk.java.net
>> Subject: Re: Poor quality font rendering
>> 
>> 
>> I took another good look, and I see what is bothering me is mostly how the
>> glyph "2" is rendered on my system (it has a thick appearing curve attached
>> to the base).  I've included a screenshot of my application that uses
>> several different sizes fonts, but it seems only the ones in the top bar are
>> rendered somewhat wierd.
>> 
>> http://ukyo.xs4all.nl/Digit2RenderedPoorlyInTopBar.png
>> 
>> I'm on Windows 7, JavaFX 8b99, 32-bit, using D3D pipeline (I get this stuff
>> in log in an infinite loop, so must be D3D I think):
>> 
>> D3D Vram Pool: 129,613,674 used (48.3%), 129,613,674 managed (48.3%),
>> 268,435,456 total                   --
>> com.sun.prism.impl.ManagedResource.printSummary(ManagedResource.java:134)
>> 75 total resources being
>> managed
>> 
>> -- com.sun.prism.impl.ManagedResource.printSummary(ManagedResource.java:153)
>> 4 permanent resources
>> (5.3%)
>> 
>> -- com.sun.prism.impl.ManagedResource.printSummary(ManagedResource.java:154)
>> 2 resources locked
>> (2.7%)
>> 
>> -- com.sun.prism.impl.ManagedResource.printSummary(ManagedResource.java:156)
>> 43 resources contain interesting data
>> (57.3%)                                                             --
>> com.sun.prism.impl.ManagedResource.printSummary(ManagedResource.java:158)
>> 0 resources disappeared
>> (0.0%)
>> 
>> -- com.sun.prism.impl.ManagedResource.printSummary(ManagedResource.java:160)
>> 
>> I also have this in main, before Application.launch is called:
>> 
>>      System.setProperty("prism.lcdtext", "false");
>> 
>> In .root in CSS I have:
>> 
>>    -fx-font-family: "Arial";
>>    -fx-font-size: 16px;
>>    -fx-font-weight: normal;
>> 
>> So all the fonts you see should be Arial (but the sizes and weights are
>> tweaked depending on location).
>> 
>> --John
>> 
>> On 21/08/2013 20:51, Felipe Heidrich wrote:
>>> John H:
>>> 
>>> In JFX we decided to go with sub-pixel positioned text (as opposite to
>> pixel grid aligned).
>>> That said, on Windows for grayscale text, we are not doing that (yet). Are
>> you running Windows, with D3D pipeline ?
>>> I would need to see a picture to be sure I understand the problem you
>> describe.
>>> Felipe
>>> 
>>> 
>>> On Aug 21, 2013, at 10:19 AM, John Hendrikx wrote:
>>> 
>>>> I think I also noticed a change in font rendering around b99 somewhere...
>> the fonts seem to be thinner than before, or perhaps more poorly aligned
>> with pixel boundaries.  I'd prefer glyphs laid out in the same way each
>> time, ie. letters are always on a new pixel boundary, so the same letter
>> will look the same regardless of what preceeds it.  I have LCD rendering
>> turned off as I donot appreciate colored fringes on my glyphs.
>>>> On 21/08/2013 14:53, John C. Turnbull wrote:
>>>>> I have only really tested JavaFX extensively on Windows so my
>>>>> comments here apply mainly to that platform.
>>>>> 
>>>>> 
>>>>> 
>>>>> It seems that even with a font smoothing type of LCD, font rendering
>>>>> in JavaFX is not at the same level of quality of native
>>>>> applications.  My current experiences are with JavaFX 8 b103 and I
>>>>> find that all rendered text in JavaFX appears of a significantly
>>>>> poorer quality than that which I would see in Word for example or
>>>>> even in IE10 (which I believe uses the same text rendering engine).
>> Also, these observations are based on text in "standard"
>>>>> controls and the quality of font rendering is dramatically worse
>>>>> within the Canvas control.
>>>>> 
>>>>> 
>>>>> 
>>>>> I am not an expert in font technology but I have read many times
>>>>> that the levels of antialiasing for text that can be achieved in a
>>>>> GPU-based renderer are always going to be less than that achieved in a
>> CPU-based renderer.
>>>>> This is often explained on the basis of graphics card drivers being
>>>>> optimised for performance and the rapid rendering of triangles
>>>>> commonly required in games rather than for rendering quality when it
>> comes to text.
>>>>> 
>>>>> 
>>>>> Is this the reason why JavaFX font rendering appears less legible
>>>>> and of a lower quality than native apps?
>>>>> 
>>>>> If so, how does IE10 for example achieve a higher quality of
>>>>> rendering when it seems to also use DirectWrite?
>>>>> 
>>>>> Is the quality of JavaFX font rendering ever going to improve?
>>>>> 
>>>>> 
>>>>> 
>>>>> Thanks,
>>>>> 
>>>>> 
>>>>> 
>>>>> -jct
>>>>> 
> 

Reply via email to