Bug Alert: Fonts in OSX/Catalina

Rendering to offscreen images (ie; double buffering) is severly damaged in OSX/Catalina,
at least as used by Java. If you do double buffering by drawing to offscreen images,
your applications will be retroactively broken. I’m not aware of any workaround
except to abandon double buffering.

This is the kind of garbage you’ll see:

I found I could work around the problem by using system dependent “volatile images” for
offscreen drawing. I cribbed this code from Java’s repaint manager.

 public static Image getVolatileImage(Component c,int width,int height)
{
   GraphicsConfiguration config = c.getGraphicsConfiguration();
    if (config == null) {
        config = GraphicsEnvironment.getLocalGraphicsEnvironment().
                        getDefaultScreenDevice().getDefaultConfiguration();
    }
   return config.createCompatibleVolatileImage(width, height, Transparency.OPAQUE);
}