Я пытаюсь создать картинку.
Он должен содержать базовую картинку (JPG, PNG, ...), которая загружается из поля mysql BLOB
На этой картинке я хотел бы нарисовать несколько кругов на х / у ...
На первом шаге я использовал пример из Ireports UltimateGuide, который описывает рендеринг SVG через интерфейс JRAbstractSvgRenderer следующим образом:
public class drawpicture extends JRAbstractSvgRenderer {
String drawstring = "something";
public void render(Graphics2D g2d, Rectangle2D rect) throws JRException {
System.out.println("render");
AffineTransform savedTrans = g2d.getTransform();
Font savedFont = g2d.getFont();
// Paint a nice background...
g2d.setPaint(new GradientPaint(0, 0, Color.ORANGE,
0, (int) rect.getHeight(), Color.PINK));
g2d.fillRect(0, 0, (int) rect.getWidth(), (int) rect.getHeight());
Font myfont = new Font("Arial Black", Font.PLAIN, 50);
g2d.setFont(myfont);
FontRenderContext frc = g2d.getFontRenderContext();
String text = drawstring;
TextLayout textLayout = new TextLayout(text, myfont, frc);
Shape outline = textLayout.getOutline(null);
Rectangle r = outline.getBounds();
// Translate the graphic to center the text
g2d.translate(
(rect.getWidth() / 2) - (r.width / 2),
rect.getHeight() / 2 + (r.height / 2));
g2d.setColor(Color.BLACK);
g2d.draw(outline);
// Restore the Graphics2D affine transform
g2d.setFont(savedFont);
g2d.setTransform(savedTrans);
}
}
Это работает нормально, так что я могу нарисовать изображение через интерфейс Java и показать его в поле Изображение Ireports.
Я также могу показать поле BLOB в текстовом поле ireport.
Но я не могу загрузить поле Blob, нарисовать что-то в нем и показать его в поле изображения.
У кого-нибудь была идея?
Спасибо и всего наилучшего
Christian
P.S .: Я использую Ireport 4.1.3 с NetBeans 7.0.1