【问题标题】:primefaces cropper, size of imageprimefaces 裁剪器,图像大小
【发布时间】:2014-10-30 12:42:34
【问题描述】:

我有一个表单,用户可以在其中上传图像并进行裁剪。

上传后,图片在cropper组件中用于裁剪

我想以固定大小显示它(如果用户的图像太大),但我无法做到。

上传裁剪器组件后,以原始尺寸显示图像(因此如果宽度为 1200 像素,它将填满整个屏幕)

我不能使用 css,因为 div 大小是由primefaces 脚本生成的,我不能使用脚本,因为它是在图片上传之前加载的

【问题讨论】:

    标签: image primefaces crop


    【解决方案1】:

    上传时调整图片大小

    public String handleImageFileUpload(FileUploadEvent event){
    
        File file = new File("PATH_TO_UPLOAD_DIR");
        file.mkdirs();
        file = new File("PATH_TO_UPLOAD_FILE");
    
        try( InputStream is = event.getFile().getInputstream();
                 OutputStream out = new FileOutputStream(file)  ) {
    
                BufferedImage img = ImageIO.read(is);
                BufferedImage scaledImg;
                if(img.getWidth() >= img.getHeight())
                    scaledImg = Scalr.resize(img, Scalr.Method.ULTRA_QUALITY, Scalr.Mode.FIT_TO_HEIGHT, 300, 400);
                else
                    scaledImg = Scalr.resize(img, Scalr.Method.ULTRA_QUALITY, Scalr.Mode.FIT_TO_WIDTH, 400, 300);
                ImageIO.write(scaledImg, "jpg", out);
    
            } catch (IOException e) {
                e.printStackTrace();
            }
    }
    

    【讨论】:

    • 如果我想将调整大小的图像放入字节数组中怎么办?
    • 对象“Scalr”是什么?
    • @Marlysson github.com/rkalla/imgscalr/blob/master/src/main/java/org/…,但您可以选择任何类似的
    • 是的..我现在找到了这个库..谢谢..一个疑问..运行这个脚本延迟了多少时间?阅读有关在 Java 中调整大小方式的案例,人们说这延迟了大约 11 秒..
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-01
    相关资源
    最近更新 更多