所以基本上我有一个图像,我需要将它分成4个较小的图像。
我现在得到的只是左上角打印的图像,但我需要在右上角,左下角和右下角打印。
我有两个for循环遍历图像的每个像素。
这是打印出左上角的代码。
setRGB(x/2,y/2,everypixel)
“everypixel”只是图像中的像素。
这将打印出左上角,但如何将其打印出来用于其他每个角落。
感谢。
编辑:
This is basically what I want. The original to the n = 4 (Ignore the n=2)
这就是为什么我基本上想用我的照片^^
答案 0 :(得分:2)
您应该首先将原始图片缩小到1/4尺寸(有关详细信息,请参阅this StackOverflow answer - 使用at.scale(0.5, 0.5)
代替2.0,2.0
)。
然后循环缩小图像的x和y尺寸,并在"角落#34;使用x和y偏移设置像素的图像和4次:
for (int x = 0; x < scaledImageWidth; x++) {
for (int y = 0; y < scaledImageHeight; y++) {
imageTL.setRGB (x, y, scaledImagePixels[x][y]);
imageTR.setRGB (x + scaledImageWidth, y, scaledImagePixels[x][y]);
imageBL.setRGB (x, y + scaledImageHeight, scaledImagePixels[x][y]);
imageBR.setRGB (x + scaledImageWidth, y + scaledImageHeight, scaledImagePixels[x][y]);
}
}
请注意,scaledImageWidth应该是原始图像宽度除以2,而scaledImageHeight应该是原始图像高度除以2.
答案 1 :(得分:1)
假设你有一个二维数组,每个像素具有原始图像中每个像素的像素颜色值,maxX和maxY作为尺寸或原始图像,遵循骨架代码应该理想地完成这项工作:
@page {
size: XXXin YYYin
}