If you ever wanted to use some Swing based Java program like any IDE from JetBrains (IntelliJ Idea, Android Studio, PHPStorm…) or NetBeans and you were repulsed by how ugly the fonts looked, then I’ve got some good news for you. The solution is quite simple.
The problem is in Java itself and in its bad support of font rendering on the Linux platform. Luckily, there is a patched JDK that pretty much fixes that problem. It’s the standard OpenJDk with the FontFix patch applied. Simply add following repository and install OpenJDK from it (replace the original one).
You can do both actions using Yast.
Regarding IntelliJ Idea, Android Studio, PHPStorm…:
You can read in the documentation that this software doesn’t support OpenJDK and requires the original Oracle JDK. I’ve been using Android Studio for a quite while with OpenJDK installed and I haven’t encounter any serious issues. I wouldn’t call it exactly smooth and flawless experience but it’s a Java program so what would you expect
Anyway, it’s often recommended for any JetBrains’ IDE to put following lines in the (idename).vmoptions file in order to get the best font rendering:
The file is located in the bin folder where the software is installed. You can experiment with the value of -Dawt.useSystemAAFontSettings. Try “on” or “gasp” instead.
The result with the standard unpatched OpenJDK was something in middle of the two provided. In both cases, the gui uses Segoe UI font and the text editor uses Source Code Pro.
On 2014-02-14 20:36, tobice wrote:
there is a dedicated forum here for people to post howtos, where other
people go to search for them. It is called “submissions” or something
Please, ask a moderator to move your post there. The triangle button
blow, labeled “report”.
Cheers / Saludos,
Carlos E. R.
(from 13.1 x86_64 “Bottle” (Minas Tirith))
This will be moved to Unreviewed Howto ans FAQs ands is closed for the moment.
Moved from Applications and open again.
your screenshots link is dead
Hi! What about openSuse 13.2 ?? Looks the repo died.
That’s true unfortunately. I’m still running 13.1 and there are no longer available updates for the patched OpenJDK. So I just keep using the outdated version (I made a hard copy not the get it overwritten by an update) because the font antialiasing is way too important for me.
Btw. I’m not sure but when I last checked the author of that repo created another one with this patch. Might be worth checking.
If you’re using Tumbleweed you can find this patched packages on http://download.opensuse.org/repositories/home:/valmar73:/infinality/openSUSE_Tumbleweed/
I’ve tested them right now (over another infinality config) and works like a charm!
Yep! Using it on stable version (not tumbleweed) - works perfect!
That’s awesome news! I’m still on 13.1 so I hope it will be possible to use Tumbleweed… I’ll give it a shot.
I finally tried to install OpenJDK from the Tumbleweed repo (I wanted to do the full upgrade to 13.2 first, that’s why it took me so long) but I failed because of missing dependencies. I’m getting the message that nothing provides packages tzdata-java8 and libgif.so.7. I probably need another repo for this, but I don’t know which one. I tried to look those packages up using software.opensuse.org and I got some results for libgif but nothing for tzdata-java8. Any ideas?
Nevertheless, it might not matter. I used the repo to install patched versions of cairo, fontconfig and freetype and just that seemed to fix the problem with IntelliJ IDEA. I’m not sure if it is as good as it was before (antialiasing inside the editor could be better) but it’s perfectly usable even when running latest Java OpenJDK from standard repositories.
Just for the record, here is an updated screenshot of Intellij IDEA:
As I stated in the previous post, this is how it looks like when running standard Java OpenJDK but with patched cairo, fontconfig and freetype from the mentioned tumbleweed repo. In case you were interested, the UI font is Segoe UI and the editor font is Monaco.