新聞中心
這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Java制作拼圖游戲-創(chuàng)新互聯(lián)
這篇文章主要為大家詳細(xì)介紹了Java制作拼圖游戲的方法,圖文詳解容易學(xué)習(xí),配合代碼閱讀理解效果更佳,非常適合初學(xué)者入門,感興趣的小伙伴們可以參考一下。
所用素材:
代碼:
package picture_mosical;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.Toolkit;
import java.awt.image.BufferedImage;
import java.awt.image.CropImageFilter;
import java.awt.image.FilteredImageSource;
import java.awt.image.ImageFilter;
import java.io.File;
import javax.imageio.ImageIO;
public class PictureCut {
private static int width;// 切割后圖片的寬度
private static int height;// 切割后圖片的高度
private static String dir_name = "/CutImage";// 存放圖片的文件夾名稱
public static void cut(String paths, int rows, int cols, String dir)
throws Exception {
Image img;
ImageFilter new_if;//fasf你的
BufferedImage bi = ImageIO.read(new File(paths));// 讀取圖像源
if (bi == null) {
System.out.println("圖像源為空");
return;
}
int baseWidth = bi.getWidth();// 讀取圖像源的寬度
int baseHeight = bi.getHeight();// 讀取圖像源的高度
width = baseWidth / cols;// 切割后圖片的寬
height = baseHeight / rows;// 切割后圖片的高
System.out.println("width:" + width + "\t\theight:" + height);
System.err.println("切割的行數(shù)=[" + rows + "]\n切割的列數(shù)=[" + cols + "]");
Image image = bi.getScaledInstance(baseWidth, baseHeight,
Image.SCALE_DEFAULT);
BufferedImage bimg;
File file;
int x = 0, y = 0;
int index = 0;
// 開始對(duì)圖像源進(jìn)行切割
long s = Math.round(Math.random() * 8);
System.out.println(s + ">>>>>>>>>>>>>>>");
boolean flag = true;
for (int i = 0; i < rows; i++) {
y = (int) (i * height);
for (int j = 0; j < cols; j++) {
if (index == 8) {
index=9;
new_if = new CropImageFilter(0, 0, baseWidth, baseHeight);
width=baseWidth;
height=baseHeight;
}else{
x = (int) (j * width);
new_if = new CropImageFilter(x, y, width, height);
}
img = Toolkit.getDefaultToolkit().createImage(
new FilteredImageSource(image.getSource(), new_if));
bimg = new BufferedImage(width, height,
BufferedImage.TYPE_INT_RGB);
Graphics gi = bimg.getGraphics();
gi.drawImage(img, 0, 0, null);
gi.dispose();
file = new File(dir + index + ".jpg");
ImageIO.write(bimg, "JPEG", file);
index++;
}
}
}
public static void main(String[] args) {
try {
PictureCut.cut("src/picture_mosical/123.jpg", 3, 3,
"WebRoot/images/");
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
看完上述內(nèi)容,你們掌握J(rèn)ava制作拼圖游戲的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。
當(dāng)前名稱:Java制作拼圖游戲-創(chuàng)新互聯(lián)
本文鏈接:http://www.dlmjj.cn/article/didoie.html