📄 uiutils.java
字号:
package org.wso2.solutions.identity.admin.ui;import java.awt.Container;import java.awt.Graphics2D;import java.awt.Image;import java.awt.MediaTracker;import java.awt.RenderingHints;import java.awt.Toolkit;import java.awt.image.BufferedImage;import java.io.BufferedInputStream;import java.io.BufferedOutputStream;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import com.sun.image.codec.jpeg.JPEGCodec;import com.sun.image.codec.jpeg.JPEGEncodeParam;import com.sun.image.codec.jpeg.JPEGImageEncoder;public class UIUtils { public static final int WIDTH = 120; public static final int HEIGHT = 80; public static void createThumbnailImageFile(File inFile, String outFileName) throws Exception{ int newWidth = WIDTH; int newHeight = HEIGHT; BufferedInputStream buff = new BufferedInputStream(new FileInputStream(inFile)); Long len = Long.valueOf((inFile.length())); byte[] img = new byte[len.intValue()]; buff.read(img); Image image = Toolkit.getDefaultToolkit().createImage(img); MediaTracker tracker = new MediaTracker(new Container()); tracker.addImage(image, 0); tracker.waitForID(0); double thumbRatio = (double)newWidth / (double)newHeight; int imageWidth = image.getWidth(null); int imageHeight = image.getHeight(null); double imageRatio = (double)imageWidth / (double)imageHeight; if (thumbRatio < imageRatio) { newHeight = (int)(newWidth / imageRatio); } else { newWidth = (int)(newHeight * imageRatio); } BufferedImage thumbImage = new BufferedImage(newWidth, newHeight, BufferedImage.TYPE_INT_RGB); Graphics2D g2D = thumbImage.createGraphics(); g2D.setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BILINEAR); g2D.drawImage(image, 0, 0, newWidth, newHeight, null); BufferedOutputStream out = new BufferedOutputStream(new FileOutputStream(outFileName)); JPEGImageEncoder enc = JPEGCodec.createJPEGEncoder(out); JPEGEncodeParam param = enc. getDefaultJPEGEncodeParam(thumbImage); int quality = 75; quality = Math.max(0, Math.min(quality, 100)); param.setQuality((float)quality / 100.0f, false); enc.setJPEGEncodeParam(param); enc.encode(thumbImage); out.close(); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -