Class BufferedImageBackgroundPainterStrategy

java.lang.Object
org.fife.ui.rtextarea.ImageBackgroundPainterStrategy
org.fife.ui.rtextarea.BufferedImageBackgroundPainterStrategy
All Implemented Interfaces:
BackgroundPainterStrategy

public class BufferedImageBackgroundPainterStrategy extends ImageBackgroundPainterStrategy
A strategy for painting the background of an RTextAreaBase as an image. The image is always stretched to completely fill the RTextAreaBase.

A java.awt.image.BufferedImage is used for rendering; theoretically, for performance you should use java.awt.image.VolatileImage; see org.fife.ui.RTextArea.VolatileImageBackgroundPainterStrategy for this.

You can set the scaling hint used when stretching/skewing the image to fit in the RTextAreaBase's background via the setScalingHint method, but keep in mind the more accurate the scaling hint, the less responsive your application will be when stretching the window (as that's the only time the image's size is recalculated).

Version:
0.1
See Also:
  • Field Details

  • Constructor Details

    • BufferedImageBackgroundPainterStrategy

      public BufferedImageBackgroundPainterStrategy(RTextAreaBase ta)
      Constructor.
      Parameters:
      ta - The text area whose background we'll be painting.
  • Method Details

    • paintImage

      protected void paintImage(Graphics g, int x, int y)
      Paints the image at the specified location. This method assumes scaling has already been done, and simply paints the background image "as-is."
      Specified by:
      paintImage in class ImageBackgroundPainterStrategy
      Parameters:
      g - The graphics context.
      x - The x-coordinate at which to paint.
      y - The y-coordinate at which to paint.
    • rescaleImage

      protected void rescaleImage(int width, int height, int hint)
      Rescales the displayed image to be the specified size.
      Specified by:
      rescaleImage in class ImageBackgroundPainterStrategy
      Parameters:
      width - The new width of the image.
      height - The new height of the image.
      hint - The scaling hint to use.
    • createAcceleratedImage

      private BufferedImage createAcceleratedImage(int width, int height)