Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/189.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在android中调整图像大小_Java_Android_Resize - Fatal编程技术网

Java 在android中调整图像大小

Java 在android中调整图像大小,java,android,resize,Java,Android,Resize,我有一些代码,您可以从文件夹中获取图像,当打开切换按钮时,图像将被调整大小并存储到另一个文件夹中 当我使用切换按钮运行此代码时,应用程序崩溃,并说“不幸的是,我的应用程序已停止”。这段代码是用Java编写的,我想在android中运行这个程序。我怎样才能做到这一点 public class ImageTest { private static int height; private static int width ; private s

我有一些代码,您可以从文件夹中获取图像,当打开切换按钮时,图像将被调整大小并存储到另一个文件夹中

当我使用切换按钮运行此代码时,应用程序崩溃,并说“不幸的是,我的应用程序已停止”。这段代码是用Java编写的,我想在android中运行这个程序。我怎样才能做到这一点

public class ImageTest 
    {
        private static int height;
        private static int width ;
        private static int IMG_HEIGHT=480;
        private static int IMG_WIDTH;

        public int image()
    {


        try{
            BufferedImage bimg = ImageIO.read(new File("D:\\image\\12.jpg"));
             width          = bimg.getWidth();
             height         = bimg.getHeight();
            System.out.println("Width:"+width+" and height:"+height);


            IMG_WIDTH = ((IMG_HEIGHT * width)/height);

            BufferedImage originalImage = ImageIO.read(new File("d:\\image\\12.jpg"));
            int type = originalImage.getType() == 0? BufferedImage.TYPE_INT_ARGB : originalImage.getType();

            BufferedImage resizeImageJpg = resizeImage(originalImage, type);
            ImageIO.write(resizeImageJpg, "jpg", new File("d:\\image\\12_jpg.jpg")); 

            BufferedImage resizeImagePng = resizeImage(originalImage, type);
            ImageIO.write(resizeImagePng, "png", new File("d:\\image\\12_png.png")); 

            BufferedImage resizeImageHintJpg = resizeImageWithHint(originalImage, type);
            ImageIO.write(resizeImageHintJpg, "jpg", new File("d:\\image\\12_hint_jpg.jpg")); 

            BufferedImage resizeImageHintPng = resizeImageWithHint(originalImage, type);
            ImageIO.write(resizeImageHintPng, "png", new File("d:\\image\\12_hint_png.png"));
            return 1;

        }catch(Exception e){
            System.out.println(e.getMessage());
            return 0;
        }

    }

        private static  BufferedImage resizeImage(BufferedImage originalImage, int type)
        {
        BufferedImage resizedImage = new BufferedImage(IMG_WIDTH, IMG_HEIGHT, type);
        Graphics2D g = resizedImage.createGraphics();
        g.drawImage(originalImage, 0, 0, IMG_WIDTH, IMG_HEIGHT, null);
        g.dispose();

        return resizedImage;
        }

        private static BufferedImage resizeImageWithHint(BufferedImage originalImage, int type)
        {

        BufferedImage resizedImage = new BufferedImage(IMG_WIDTH, IMG_HEIGHT, type);
        Graphics2D g = resizedImage.createGraphics();
        g.drawImage(originalImage, 0, 0, IMG_WIDTH, IMG_HEIGHT, null);
        g.dispose();    
        g.setComposite(AlphaComposite.Src);

        g.setRenderingHint(RenderingHints.KEY_INTERPOLATION,
        RenderingHints.VALUE_INTERPOLATION_BILINEAR);
        g.setRenderingHint(RenderingHints.KEY_RENDERING,
        RenderingHints.VALUE_RENDER_QUALITY);
        g.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
        RenderingHints.VALUE_ANTIALIAS_ON);

        return resizedImage;
        }   
    }
好的,你可以试试这个;与你所问的问题类似。关于您的代码,您不能在
Android
中直接运行java代码


首先参考上面的链接,然后尝试运行

它停在哪里?引发了哪些异常?请发布您的logcat输出。此代码在JavaFile中工作正常,可能当时找不到文件,或者其他问题。ImageIO.read(新文件(“D:\\image\\12.jpg”);--是用爪哇语写的。。您的Android系统没有此路径。这同样适用于写操作。。。您必须将这些图像放入“原始”文件夹并访问这些图像。。。记住,你的android系统与你的Windows系统不同。你甚至可以参考更多的基本细节。