A DESCRIPTION OF THE PROBLEM :
This has been reported on AdoptOpenJDK community.
https://github.com/AdoptOpenJDK/openjdk-build/issues/443
But the latest Oracle/OpenJDK 11.0.1 have also this problem.
On Windows, the FontMetrics returned from Graphics.getFontMetrics(Font) within a PrinterJob are incorrect if the PageFormat has had the orientation explicitly set to PageFormat.LANDSCAPE or PageFormat.REVERSE_LANDSCAPE. The issue is not present when explicitly setting the orientation to PageFormat.PORTRAIT.
fontMetrics.getHeight()) always returns 0.
int i= 20;
Font font = new Font("Monospaced", 0, i);
FontMetrics fontMetrics = graphics.getFontMetrics(font);
System.out.println("font size=" + i + " FontMetrics.getHeight(): " + fontMetrics.getHeight());
REGRESSION : Last worked in version 8u191
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
Use this program.
https://github.com/AdoptOpenJDK/openjdk-build/files/2287290/JPSFontMetrics.zip
EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
fontMetrics.getHeight()) should return a correct value.
ACTUAL -
fontMetrics.getHeight()) should return 0 if PageFormat.LANDSCAPE or PageFormat.REVERSE_LANDSCAPE is set.
---------- BEGIN SOURCE ----------
See this program.
https://github.com/AdoptOpenJDK/openjdk-build/files/2287290/JPSFontMetrics.zip
---------- END SOURCE ----------
FREQUENCY : always