1
在我使用Processing的Java servlet中,我希望它將PApplet的內容渲染到BufferedImage並從中產生一個PNG圖像。從PApplet的內容創建BufferedImage有什麼方法?我必須創建BufferedImage並將其呈現給瀏覽器的代碼應該從我見過的示例中運行,但它生成的最終圖像是黑色/空白的。從PApplet內容創建BufferedImage
首先我:
private PApplet createPApplet() {
PApplet p = new PApplet();
p.init();
p.noLoop();
p.size(486, 243);
p.background(255);
p.stroke(255, 255, 255);
p.colorMode(PApplet.RGB, 256, 1, 1);
p.translate(p.width/2, p.height/2);
return p;
}
然後在我的doGet有
PApplet p = createPApplet();
p.loadPixels();
// here I do some drawing with p.point()
p.loadPixels();
BufferedImage img = new BufferedImage(486, 243, BufferedImage.TYPE_INT_ARGB);
img.setRGB(0, 0, 486, 243, p.pixels, 0, 256);
p.draw();
response.setHeader("Content-Type", "image/png");
ImageIO.write(img, "PNG", response.getOutputStream());
謝謝大家對您的輸入!