Skip to Main Content

Java SE (Java Platform, Standard Edition)

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Loading font from resource degrades quality?!

Håkan AnderssonOct 22 2012
Hi,

I have some specialized fonts that I want to distribute within my JAR file in order to ensure that my Java FX 2.0 application has the correct visual appearance on the client machine. However, I have noticed that the font anti-aliasing and overall quality gets really bad when I load it via Font.loadFont(InputStream, int); In order to test this I took Arial (arial.ttf) which was already installed in my Windows OS font folder and copied it to my resource/fonts folder within my source folder. When I load Arial from this location using Font.load(InputStream, int) it looks really bad, but if I skip the load command (relying on the OS installed version) it looks excellent. Why is this?

I set my fonts via CSS, e.g:

-fx-font-family: Arial;
-fx-font-size: 13px;

And load my fonts using:

InputStream resource = getClass().getResourceAsStream(aResource);
if (resource == null) {
throw new ResourceIOException("Failed to load resource stream: \"" + aResource + "\"", aResource);
}
Font font = Font.loadFont(resource, 36);
if (font == null) {
throw new ResourceException("Invalid font resource: " + aResource, aResource);
}

As you can see the loaded size is set to 36 but I have tried all kinds of values here ranging from 10 to 200 and it doesn't seems to make any difference. Any suggestions?
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Nov 19 2012
Added on Oct 22 2012
0 comments
99 views