您的位置 首页 java

Java小项目之:拼图游戏

今天教大家用 java 做出一个拼图游戏,很适合java初学者练手。

所用素材:

部分代码:

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(“切割的行数=[” + rows + “]\n切割的列数=[” + cols + “]”);

Image image = bi.getScaledInstance(baseWidth, baseHeight,

Image.SCALE_DEFAULT);

BufferedImage bimg;

File file;

int x = 0, y = 0;

int index = 0;

// 开始对图像源进行切割

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();

}

}

}

篇幅有限,展示不了所有代码,需要素材和源码的可以私信我领取!

喜欢这样文章的可以关注我,我会持续更新更多小项目。你们的关注是我更新的动力!

祝关注我的人都:身体健康,财源广进,福如东海,寿比南山,早生贵子,从不掉发!

文章来源:智云一二三科技

文章标题:Java小项目之:拼图游戏

文章地址:https://www.zhihuclub.com/191608.shtml

关于作者: 智云科技

热门文章

发表回复

您的电子邮箱地址不会被公开。

网站地图