任何人都可以帮助我并告诉我如何创建灰度图像,其中图像的一个像素显示为尺寸为2 x 2的正方形?
我已经搜索过帮助并找到了这个how to create a gray scale image from pixel values using java,但我不知道如何使用一个像素显示为大小为2 x 2的正方形的信息来创建灰度。
谢谢!
答案 0 :(得分:0)
要创建一个图片,其中每个像素的大小为2x2,您必须缩放图像(因子2)才能显示...或者如果您想创建图像,您必须手动完成并创建图像并绘制比例因子2就可以了
int[] pixels = ... //we already have our gray scale pixels here
int widthOriginal = ... //size of original image
int heightOriginal = ...
//let's create an buffered Image twice the size
BufferedImage img =
new BufferedImage(2*widthOriginal, 2*heightOriginal, BufferedImage.TYPE_4BYTE_ABGR);
//we paint on the buffered image's graphic...
Graphics gr = img.getGraphics();
//we draw all pixels on the graphic
for(int y = 0; y < heightOriginal; y ++){
for(int x = 0; x < widthOriginal; x ++){
int index = y*widthOriginal + x;
int gray = pixels[index];
//to draw we first set the color
gr.setColor(new Color(gray));
//then draw the pixel
gr.drawRect(2*x, 2*y,2,2); //draw a 2x2 pixel instead of a 1x1 pixel
}
}
嗯 - 老实说,我完全没有把这些代码写出来,所以可能会有一些小的编译问题......但是技术得到了恰当的解释......