中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Java制作拼圖游戲

發布時間:2020-06-06 14:20:18 來源:億速云 閱讀:264 作者:Leah 欄目:編程語言

這篇文章主要為大家詳細介紹了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制作拼圖游戲的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

台南市| 永丰县| 信阳市| 广灵县| 庐江县| 宝山区| 甘泉县| 方城县| 巴楚县| 平阳县| 宜兰市| 潜山县| 白玉县| 麻阳| 通辽市| 湖南省| 惠水县| 米林县| 库尔勒市| 磴口县| 新晃| 思南县| 衡南县| 荆州市| 竹山县| 阳信县| 古交市| 肃南| 黄浦区| 鄂托克前旗| 车致| 天等县| 怀宁县| 措勤县| 洞口县| 昌江| 津市市| 南郑县| 牡丹江市| 扎囊县| 定兴县|