The following change appears to make the ThinLineTest pass. I tried a couple
of variations of it, with and without antialiasing, with and without
scaling, and with different scaling factors and line widths. The looked
okay. Btw, bear with me as I am not really a Java 2D person and I may not
know what I'm talking about :) But I got the feeling that the 'thin' logic
(to do with the thin boolean parameter to PiscesRenderingEngine.strokeTo()
and the logic in SunGraphics2D.validateBasicStroke()) isn't compatible with
Stroker.computeOffset().
+++ jdk/src/share/classes/sun/java2d/pisces/PiscesRenderingEngine.java
2009-02-24 11:17:48.000000000 -0800
@@ -169,7 +169,7 @@
LineSink lsink)
{
float lw;
- if (thin) {
+ if (false && thin) {
if (antialias) {
lw = 0.5f;
} else {
On Mon, Feb 23, 2009 at 5:32 PM, Hiroshi Yamauchi <[email protected]>wrote:
> Hi all,
>
> We found four more 2D rendering OpenJDK incompatibilities (the examples are
> attached):
>
> 1. ScaleTest: A circle is rendered in a 'C' shape.
> 2. ThinLineTest: A line < 1 pixel disappears.
> 3. NotANumberTest: Double.NaN isn't handled gracefully.
> 4. StrokeShapeTest: createStrokedShape() behaves differently.
>
> Some of the examples may be caused by a single bug. I don't have an idea
> what the causes are.
> By any chance, have any of the them already fixed?
>
> Thanks,
> Hiroshi
>
>
>