這是一個十分簡單的程式,主要的功用在於把二張size一樣的圖,合成在一張圖的左右二邊,程式寫的蠻死的,一定要size一樣,有興趣的人可以自己改成動態的二張圖。
首先我們先找了二張圖,就下面二張,如果突然找不到圖的朋友們,可以直接下載下面二張來使用。
圖一,1.jpg

圖二,2.jpg

合成的結果如下,寬應該是原圖的二倍,才可以容的下二張圖,不過因為怕我的blog版面放不下,所以只好縮小了。

程式碼如下:(有一點要注意,圖片太大的話有可能有out of memory的問題喔!)
package tool;
public class Image {
/**
* 圖二位置,從左上角開始
*/
public void createPicTwo() {
try {
// File Load
java.io.File fileOne = new java.io.File("d:\\2.jpg");
java.awt.image.BufferedImage ImageOne = javax.imageio.ImageIO
.read(fileOne);
int width = ImageOne.getWidth();
int height = ImageOne.getHeight();
// 讀取圖片rgb
int[] ImageArrayOne = new int[width * height];
ImageArrayOne = ImageOne.getRGB(0, 0, width, height, ImageArrayOne,
0, width);
// 對第二張圖片做相同處理
java.io.File fileTwo = new java.io.File("d:\\1.jpg");
java.awt.image.BufferedImage ImageTwo = javax.imageio.ImageIO
.read(fileTwo);
int widthTwo = ImageTwo.getWidth();
int heightTwo = ImageTwo.getHeight();
int[] ImageArrayTwo = new int[widthTwo * heightTwo];
ImageArrayTwo = ImageTwo.getRGB(0, 0, widthTwo, heightTwo,
ImageArrayTwo, 0, widthTwo);
// 生成新圖片
java.awt.image.BufferedImage ImageNew = new java.awt.image.BufferedImage(
width * 2, height,
java.awt.image.BufferedImage.TYPE_INT_RGB);
ImageNew.setRGB(0, 0, width, height, ImageArrayOne, 0, width);// 設置左半部分的RGB
ImageNew.setRGB(width, 0, widthTwo, heightTwo, ImageArrayTwo, 0,
widthTwo);// 設置右半部分的RGB
java.io.File outFile = new java.io.File("d:\\out.jpg");
javax.imageio.ImageIO.write(ImageNew, "JPEG", outFile);// 寫入圖片
} catch (Exception e) {
e.printStackTrace();
}
}
public static void main(String args[]) {
Image image = new Image();
image.createPicTwo();
}
}
請問
GIMP加裝SEPARATE,轉換色彩模式時產生這個訊息,要如何處理?
http://i.imgur.com/3ouMh.png
謝謝
說真的…我不知道…不好意思