/******************************************************************************************************************* * * {@inheritDoc} * ******************************************************************************************************************/ @Override @Nonnull public ImageModel createImageModel (final @Nonnull BufferedImage bufferedImage) { return new ImageModelJAI(bufferedImage); }
/******************************************************************************************************************* * * FIXME: this is probably not the best way of working. You're reading a BufferedImage by means of an ImageReader * and later converting it to a PlanarImage. But JAI has its own way to read images which is probably more * efficient. You need to change EditableImage read() methods to incapsulate ImageReaders and find a way to * preferably use JAI readers for supported file types, and ImageReaders for other types. * ******************************************************************************************************************/ @Nonnull public static EditableImage createImage (final @Nonnull RenderedImage renderedImage) { return new EditableImage(new ImageModelJAI(renderedImage)); }
/******************************************************************************************************************* * * {@inheritDoc} * ******************************************************************************************************************/ @Nonnull @Override public ImageModel convertFrom (final @Nonnull Object image) { if (image instanceof RenderedImage) { return new ImageModelJAI(PlanarImage.wrapRenderedImage((RenderedImage)image)); } throw new UnsupportedOperationException(""); }