Java制作拼图游戏-创新互联

这篇文章主要为大家详细介绍了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制作拼图游戏的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注创新互联行业资讯频道,感谢各位的阅读!

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


分享文章:Java制作拼图游戏-创新互联
分享路径:http://pwwzsj.com/article/didoie.html