如何在java中复制图像文件的高度
我有一个图像,并试图在其下创建相同的图像(复制它)。 这意味着如果我有100*100大小的照片,我想把它的大小改为 100*200然后我把它写在另一个图像文件中。 这里的问题是,我不知道如何使输出文件的高度 正是我想写的尺寸。 请帮我处理这个情况! 非常感谢。 我试图复制的代码如下:如何在java中复制图像文件的高度,java,Java,我有一个图像,并试图在其下创建相同的图像(复制它)。 这意味着如果我有100*100大小的照片,我想把它的大小改为 100*200然后我把它写在另一个图像文件中。 这里的问题是,我不知道如何使输出文件的高度 正是我想写的尺寸。 请帮我处理这个情况! 非常感谢。 我试图复制的代码如下: public void duplicateImage() throws IOException { for (int i = 0; i < width; i++) { for (int j = 0;
public void duplicateImage() throws IOException {
for (int i = 0; i < width; i++) {
for (int j = 0; j < height; j++) {
int pixel = image.getRGB(i, j);
int alpha = (pixel & 0x0000ff00) >> 24;
int red = (pixel & 0x00ff0000) >> 16;
int green = (pixel & 0x0000ff00) >> 8;
int blue = (pixel & 0x000000ff);
int mid = (red + green + blue) / 3;
red = blue = green = mid;
int newPixel = alpha;
newPixel = (newPixel << 8) + red;
newPixel = (newPixel << 8) + green;
newPixel = (newPixel << 8) + blue;
image.setRGB(i, j, newPixel);
image.setRGB(i+width,j+height,newPixel);
}
}
}
public void duplicateImage()引发IOException{
对于(int i=0;i>24;
int red=(像素&0x00ff0000)>>16;
int绿色=(像素&0x0000ff00)>>8;
蓝色整数=(像素&0x000000ff);
int mid=(红色+绿色+蓝色)/3;
红色=蓝色=绿色=中间;
int newPixel=alpha;
newPixel=(newPixel我找到了一种使用BuffereImage更改照片大小的方法。
它很简单,我分享它,这样其他人也能理解它。
顺便说一句,这是一个很好的处理方法。
以下是我的答案:
public void duplicateImage(File inFile,File outFile) throws IOException {
BufferedImage img = new BufferedImage(width,2*height,BufferedImage.TYPE_3BYTE_BGR);
BufferedImage image = ImageIO.read(inFile)
for (int i = 0; i < width; i++) {
for (int j = 0; j < 2*height; j++) {
int pixel = image.getRGB(i, j%height);
img.setRGB(i, j, pixel);
}
}
ImageIO.write(img,"jpg",outFile);
}
public void duplicateImage(文件填充、文件输出)引发IOException{
BuffereImage img=新的BuffereImage(宽度,2*高度,BuffereImage.TYPE_3BYTE_BGR);
BuffereImage image=ImageIO.read(内嵌)
对于(int i=0;i
尝试使用GetScaleInstance()方法。谢谢!我也尝试过了,欢迎使用