当前位置: 首页>>代码示例>>Java>>正文


Java Scalr.Mode方法代码示例

本文整理汇总了Java中org.imgscalr.Scalr.Mode方法的典型用法代码示例。如果您正苦于以下问题:Java Scalr.Mode方法的具体用法?Java Scalr.Mode怎么用?Java Scalr.Mode使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.imgscalr.Scalr的用法示例。


在下文中一共展示了Scalr.Mode方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: setScaledImage

import org.imgscalr.Scalr; //导入方法依赖的package包/类
private void setScaledImage(final int largeur, final int hauteur, final Scalr.Mode mode) {
        if(largeur<=0 || hauteur<=0) return;
        if(this.getImageLoadStatus()==MediaTracker.COMPLETE) {
            if(largeurInitiale<=0) {largeurInitiale=this.getIconWidth();}
            if(hauteurInitiale<=0) {hauteurInitiale=this.getIconHeight();}
            this.setImage(ImageTools.getScaledInstance(ImageTools.imageToBufferedImage(this.getImage()), largeur, hauteur, ImageTools.Quality.OPTIMAL, mode));
        }
        getImage().getWidth(new ImageObserver() {
            @Override
            public boolean imageUpdate(Image img, int infoflags, int x, int y, int width, int height) {
                if((infoflags & ALLBITS)!=0) {
                    if(Icone.this.largeurInitiale<=0) {Icone.this.largeurInitiale=Icone.this.getIconWidth();}
                    if(Icone.this.hauteurInitiale<=0) {Icone.this.hauteurInitiale=Icone.this.getIconHeight();}
                    Icone.this.setImage(ImageTools.getScaledInstance(ImageTools.imageToBufferedImage(Icone.this.getImage()), largeur, hauteur, ImageTools.Quality.OPTIMAL, mode));
                    return false;
                }
                return true;
            }
        });
//        this.setImage(this.getImage().getScaledInstance(largeur, hauteur, Image.SCALE_SMOOTH));
    }
 
开发者ID:Sharcoux,项目名称:MathEOS,代码行数:22,代码来源:Icone.java

示例2: generateImageSizes

import org.imgscalr.Scalr; //导入方法依赖的package包/类
protected void generateImageSizes(U uploaded, String path) {
    try {
        File originalImageFile = new File(path);
        BufferedImage image = ImageIO.read(originalImageFile);
        if (image == null) {
            throw new ClientException("Could not interpret uploaded file as a valid image file.");
        }
        hydrateHeightAndWidth(uploaded, image);
        if (uploaded.getWidth() > 60) {
            createResized(uploaded, image, path, 120, 60, "thumb");
        }
        if (uploaded.getWidth() > 250) {
            createResized(uploaded, image, path, 550, 250, "small");
        }

        if (uploaded.getWidth() > 900) {
            createResized(uploaded, image, path, 1600, 900, "medium");
        }
        if (Settings.instance().getUserUploads().getResizeImagesToMax() > 0) {
            Scalr.Mode scaleMode = Scalr.Mode.FIT_TO_WIDTH;
            if (uploaded.getWidth() > Settings.instance().getUserUploads().getResizeImagesToMax()) {
                createResized(
                        uploaded,
                        image,
                        path,
                        Settings.instance().getUserUploads().getResizeImagesToMax(),
                        Settings.instance().getUserUploads().getResizeImagesToMax(),
                        "org",
                        scaleMode
                );
            }
        }
    } catch (IOException e) {
        throw new RuntimeException(e);
    }

}
 
开发者ID:StallionCMS,项目名称:stallion-core,代码行数:38,代码来源:UploadRequestProcessor.java

示例3: resizeAndCropCenter

import org.imgscalr.Scalr; //导入方法依赖的package包/类
private static BufferedImage resizeAndCropCenter(final BufferedImage image, final int width, final int height) {
    final boolean verticalCrop = ((double) image.getWidth()) / ((double) image.getHeight()) < ((double) width) / ((double) height);

    final Scalr.Mode mode = verticalCrop ? Scalr.Mode.FIT_TO_WIDTH : Scalr.Mode.FIT_TO_HEIGHT;
    final BufferedImage resized = Scalr.resize(image, QUALITY_SETTING, mode, width, height);

    final int dx = verticalCrop ? 0 : (resized.getWidth() - width) / 2;
    final int dy = !verticalCrop ? 0 : (resized.getHeight() - height) / 2;

    return Scalr.crop(resized, dx, dy, width, height);
}
 
开发者ID:suomenriistakeskus,项目名称:oma-riista-web,代码行数:12,代码来源:ImageResizer.java

示例4: getScaledInstance

import org.imgscalr.Scalr; //导入方法依赖的package包/类
/**
 * Retourne une image aux dimensions passées en paramètre.
 *
 * @param original l'image originale à redimensionner
 * @param largeur la nouvelle largeur
 * @param hauteur la nouvelle hauteur
 * @param quality la qualité du redimensionnement, rapide ou de qualité
 * @return l'image originale redimensionnée
 */
public static BufferedImage getScaledInstance(BufferedImage original, int largeur, int hauteur, Quality q, Scalr.Mode mode) {
    Scalr.Method method;
    switch (q) {
        case AUTO:method=Scalr.Method.AUTOMATIC;break;
        case DEFAULT:method=Scalr.Method.BALANCED;break;
        case FAST:method=Scalr.Method.SPEED;break;
        case HIGH:method=Scalr.Method.QUALITY;break;
        case OPTIMAL:method=Scalr.Method.ULTRA_QUALITY;break;
        default:method=Scalr.Method.BALANCED;
    }
    return Scalr.resize(original, method, Scalr.Mode.FIT_EXACT, largeur, hauteur);
}
 
开发者ID:Sharcoux,项目名称:MathEOS,代码行数:22,代码来源:ImageTools.java

示例5: createResized

import org.imgscalr.Scalr; //导入方法依赖的package包/类
public void createResized(U uploaded, BufferedImage image, String orgPath, int targetHeight, int targetWidth, String postfix, Scalr.Mode scalrMode) throws IOException {
    String imageFormat = uploaded.getExtension();

    BufferedImage scaledImg = Scalr.resize(image, Scalr.Method.QUALITY, scalrMode,
            targetWidth, targetHeight, Scalr.OP_ANTIALIAS);
    ByteArrayOutputStream baos = new ByteArrayOutputStream();
    int height = scaledImg.getHeight();
    int width = scaledImg.getWidth();
    ImageIO.write(scaledImg, imageFormat, baos);
    baos.flush();
    byte[] scaledImageInByte = baos.toByteArray();
    baos.close();



    String relativePath = FilenameUtils.removeExtension(uploaded.getCloudKey());
    if (!"org".equals(postfix)) {
        relativePath = relativePath + "." + postfix;
    }
    relativePath = relativePath + "." + uploaded.getExtension();
    String thumbnailPath = this.uploadsFolder + relativePath;
    Log.info("Write all byptes to {0}", thumbnailPath);
    FileUtils.writeAllBytes(scaledImageInByte, new File(thumbnailPath));
    Long sizeBytes = new File(thumbnailPath).length();
    //String url = "{cdnUrl}/st-publisher/files/view/" + uploaded.getSecret() + "/" + uploaded.getId() + "/" + postfix + "?ts=" + DateUtils.mils();
    String url = makeRawUrlForFile(uploaded, postfix);
    if (postfix.equals("thumb")) {
        uploaded.setThumbCloudKey(relativePath);
        uploaded.setThumbRawUrl(url);
        uploaded.setThumbHeight(height);
        uploaded.setThumbWidth(width);
    } else if (postfix.equals("small")) {
        uploaded.setSmallCloudKey(relativePath);
        uploaded.setSmallRawUrl(url);
        uploaded.setSmallHeight(height);
        uploaded.setSmallWidth(width);
    } else if (postfix.equals("medium")) {
        uploaded.setMediumCloudKey(relativePath);
        uploaded.setMediumRawUrl(url);
        uploaded.setMediumHeight(height);
        uploaded.setMediumWidth(width);
    } else if (postfix.equals("org")) {
        uploaded.setCloudKey(relativePath);
        uploaded.setRawUrl(url);
        uploaded.setSizeBytes(sizeBytes);
        uploaded.setHeight(height);
        uploaded.setWidth(width);
    }


    //return scaledImageInByte;
}
 
开发者ID:StallionCMS,项目名称:stallion-core,代码行数:53,代码来源:UploadRequestProcessor.java

示例6: resizeProportional

import org.imgscalr.Scalr; //导入方法依赖的package包/类
private static BufferedImage resizeProportional(BufferedImage image, int width, int height) {
    final boolean fitToHeight = ((double) image.getWidth()) / ((double) image.getHeight()) < ((double) width) / ((double) height);
    final Scalr.Mode mode = fitToHeight ? Scalr.Mode.FIT_TO_HEIGHT : Scalr.Mode.FIT_TO_WIDTH;
    return Scalr.resize(image, QUALITY_SETTING, mode, Math.min(width, height), Math.min(width, height));
}
 
开发者ID:suomenriistakeskus,项目名称:oma-riista-web,代码行数:6,代码来源:ImageResizer.java


注:本文中的org.imgscalr.Scalr.Mode方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。