... until the collector arrives ...

This "blog" is really just a scratchpad of mine. There is not much of general interest here. Most of the content is scribbled down "live" as I discover things I want to remember. I rarely go back to correct mistakes in older entries. You have been warned :)

2012-08-10

BIRT Rotated Chart Text vs. Windows

Using BIRT 4.2.0 on Windows, rotated chart text is sometimes garbled. One way to reproduce the problem is to rotate the labels on a chart axis:

FontDefinition font = xAxis.getLabel().getCaption().getFont();
font.setName("MS Sans Serif");
font.setRotation(45);

The resulting axis labels might look something like this:

The problem does not always occur. It appears to be sensitive to the chosen font. MS Sans Serif seems to fail reliably. That is one of the few raster fonts left on Windows. Is that a clue as to the nature of the bug?.

In my case, the application was using JFaceResources.getBannerFont(). This font is determined by a property setting from one of the operating system-specific resource files in the org.eclipse.jface package. Windows 7 and Vista are configured to use Segoe UI (which works). Windows XP and 2000 use Tahoma, which also works. All server versions of Windows fall back to a generic Windows property file that uses MS Sans Serif. This means that the bug could manifest itself on all typical server installations (such as the Citrix server on which the bug bit me).

I wonder if this is a bug in BIRT, JFace, SWT or GDI? It is logged in the Eclipse bug database as bug 377825.

Blog Archive