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


Java ImageTransform类代码示例

本文整理汇总了Java中org.ofbiz.common.image.ImageTransform的典型用法代码示例。如果您正苦于以下问题:Java ImageTransform类的具体用法?Java ImageTransform怎么用?Java ImageTransform使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


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

示例1: scaleImageCore

import org.ofbiz.common.image.ImageTransform; //导入依赖的package包/类
@Override
public BufferedImage scaleImageCore(BufferedImage image, int targetWidth, int targetHeight, Map<String, Object> options) throws IOException {
    if (image.getWidth() == targetWidth && image.getHeight() == targetHeight) {
        return image;
    } else {
        BufferedImage destImage = ImageTransform.createCompatibleBufferedImage(image, targetWidth, targetHeight);
        Graphics g = destImage.createGraphics();
        try {
            g.drawImage(image, 0, 0, null);
        } finally {
            g.dispose();
        }
        return destImage;
    }
}
 
开发者ID:ilscipio,项目名称:scipio-erp,代码行数:16,代码来源:PreserveImageScaler.java

示例2: combineBufferedImage

import org.ofbiz.common.image.ImageTransform; //导入依赖的package包/类
/**
 * combineBufferedImage.
 * SCIPIO: 2017-07-10: modified to take a typeReferenceImage instance of bufImgType, so we have the full
 * information to replicate the original image type, needed for indexed images.
 */
public static BufferedImage combineBufferedImage(Image image1, Image image2, BufferedImage typeReferenceImage) {
    // Full image loading 
    image1 = new ImageIcon(image1).getImage();
    image2 = new ImageIcon(image2).getImage();
    
    // New BufferedImage creation 
    // SCIPIO: indexed images fix
    BufferedImage bufferedImage;
    Graphics2D g;
    if (image1 instanceof BufferedImage && ImagePixelType.isTypeImageOpFriendly(((BufferedImage) image1).getType())) {
        // still create a copy to avoid modifying the original
        bufferedImage = ImageTransform.cloneBufferedImage((BufferedImage) image1);
        g = bufferedImage.createGraphics();
    } else {
        bufferedImage = ImageTransform.createBufferedImage(ImageType.DEFAULT_IMAGEOP.getImageTypeInfoFor(typeReferenceImage), image1.getWidth(null), 
                image1.getHeight(null));
        g = bufferedImage.createGraphics();
        g.drawImage(image1, null, null);
    }
    
    // Draw Image combine
    Point2D center =  new Point2D.Float(bufferedImage.getHeight() / 2, bufferedImage.getWidth() / 2);
    AffineTransform at = AffineTransform.getTranslateInstance(center.getX( ) - (image2.getWidth(null) / 2), center.getY( ) - (image2.getHeight(null) / 2));
    g.transform(at);
    g.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
    g.drawImage(image2, 0, 0, null);
    Composite c = AlphaComposite.getInstance(AlphaComposite.SRC_OVER, .35f);
    g.setComposite(c);
    at = AffineTransform.getTranslateInstance(center.getX( ) - (bufferedImage.getWidth(null) / 2), center.getY( ) - (bufferedImage.getHeight(null) / 2));
    g.setTransform(at);
    g.drawImage(bufferedImage, 0, 0, null);
    g.dispose();
    
    // SCIPIO: new: we convert to the target type only at the very end, in separate step, so the previous operations don't suffer from color loss
    if (ImageType.imageMatchesRequestedType(bufferedImage, typeReferenceImage)) {
        return bufferedImage;
    } else {
        BufferedImage resultImage = ImageTransform.createCompatibleBufferedImage(typeReferenceImage, bufferedImage.getWidth(null), bufferedImage.getHeight(null));
        ImageTransform.copyToBufferedImage(bufferedImage, resultImage);
        return( resultImage );
    }
}
 
开发者ID:ilscipio,项目名称:scipio-erp,代码行数:48,代码来源:FrameImage.java

示例3: resizeImageThumbnail

import org.ofbiz.common.image.ImageTransform; //导入依赖的package包/类
public static Map<String, Object> resizeImageThumbnail(BufferedImage bufImg, double imgHeight, double imgWidth) {
    
    /* VARIABLES */
    BufferedImage bufNewImg;
    double defaultHeight, defaultWidth, scaleFactor;
    Map<String, Object> result = FastMap.newInstance();
    
    /* DIMENSIONS from ImageProperties */
    defaultHeight = 100;
    defaultWidth = 100;
    
    /* SCALE FACTOR */
    // find the right Scale Factor related to the Image Dimensions
    if (imgHeight > imgWidth) {
        scaleFactor = defaultHeight / imgHeight;
        
        // get scaleFactor from the smallest width
        if (defaultWidth < (imgWidth * scaleFactor)) {
            scaleFactor = defaultWidth / imgWidth;
        }
    } else {
        scaleFactor = defaultWidth / imgWidth;
        // get scaleFactor from the smallest height
        if (defaultHeight < (imgHeight * scaleFactor)) {
            scaleFactor = defaultHeight / imgHeight;
        }
    }
    
    int bufImgType;
    if (BufferedImage.TYPE_CUSTOM == bufImg.getType()) {
        // apply a type for image majority
        bufImgType = BufferedImage.TYPE_INT_ARGB_PRE;
    } else {
        bufImgType = bufImg.getType();
    }
    
    // scale original image with new size
    Image newImg = bufImg.getScaledInstance((int) (imgWidth * scaleFactor), (int) (imgHeight * scaleFactor), Image.SCALE_SMOOTH);
    
    bufNewImg = ImageTransform.toBufferedImage(newImg, bufImgType);
    
    result.put("bufferedImage", bufNewImg);
    result.put("scaleFactor", scaleFactor);
    return result;
}
 
开发者ID:gildaslemoal,项目名称:elpi,代码行数:46,代码来源:ImageManagementServices.java

示例4: resizeImage

import org.ofbiz.common.image.ImageTransform; //导入依赖的package包/类
public static Map<String, Object> resizeImage(BufferedImage bufImg, double imgHeight, double imgWidth, double resizeHeight, double resizeWidth) {
    
    /* VARIABLES */
    BufferedImage bufNewImg;
    double defaultHeight, defaultWidth, scaleFactor;
    Map<String, Object> result = FastMap.newInstance();
    
    /* DIMENSIONS from ImageProperties */
    defaultHeight = resizeHeight;
    defaultWidth = resizeWidth;
    
    /* SCALE FACTOR */
    // find the right Scale Factor related to the Image Dimensions
    if (imgHeight > imgWidth) {
        scaleFactor = defaultHeight / imgHeight;
        
        // get scaleFactor from the smallest width
        if (defaultWidth < (imgWidth * scaleFactor)) {
            scaleFactor = defaultWidth / imgWidth;
        }
    } else {
        scaleFactor = defaultWidth / imgWidth;
        // get scaleFactor from the smallest height
        if (defaultHeight < (imgHeight * scaleFactor)) {
            scaleFactor = defaultHeight / imgHeight;
        }
    }
    
    int bufImgType;
    if (BufferedImage.TYPE_CUSTOM == bufImg.getType()) {
        // apply a type for image majority
        bufImgType = BufferedImage.TYPE_INT_ARGB_PRE;
    } else {
        bufImgType = bufImg.getType();
    }
    
    // scale original image with new size
    Image newImg = bufImg.getScaledInstance((int) (imgWidth * scaleFactor), (int) (imgHeight * scaleFactor), Image.SCALE_SMOOTH);
    
    bufNewImg = ImageTransform.toBufferedImage(newImg, bufImgType);
    
    result.put("bufferedImage", bufNewImg);
    result.put("scaleFactor", scaleFactor);
    return result;
}
 
开发者ID:gildaslemoal,项目名称:elpi,代码行数:46,代码来源:ImageManagementServices.java


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