Java里将Image转换成BufferedImage
来源:互联网 发布:usb端口那两根是充电的 编辑:程序博客网 时间:2024/05/01 15:26
public BufferedImage toBufferedImage(Image image) {
if (image instanceof BufferedImage) {
return (BufferedImage) image;
}
image = new ImageIcon(image).getImage();
boolean hasAlpha = false;
BufferedImage bimage = null;
GraphicsEnvironment ge = GraphicsEnvironment
.getLocalGraphicsEnvironment();
try {
int transparency = Transparency.OPAQUE;
if (hasAlpha) {
transparency = Transparency.BITMASK;
}
GraphicsDevice gs = ge.getDefaultScreenDevice();
GraphicsConfiguration gc = gs.getDefaultConfiguration();
bimage = gc.createCompatibleImage(image.getWidth(null), image
.getHeight(null), transparency);
} catch (HeadlessException e) {
}
if (bimage == null) {
int type = BufferedImage.TYPE_INT_RGB;
if (hasAlpha) {
type = BufferedImage.TYPE_INT_ARGB;
}
bimage = new BufferedImage(image.getWidth(null), image
.getHeight(null), type);
}
Graphics g = bimage.createGraphics();
g.drawImage(image, 0, 0, null);
g.dispose();
return bimage;
}
if (image instanceof BufferedImage) {
return (BufferedImage) image;
}
image = new ImageIcon(image).getImage();
boolean hasAlpha = false;
BufferedImage bimage = null;
GraphicsEnvironment ge = GraphicsEnvironment
.getLocalGraphicsEnvironment();
try {
int transparency = Transparency.OPAQUE;
if (hasAlpha) {
transparency = Transparency.BITMASK;
}
GraphicsDevice gs = ge.getDefaultScreenDevice();
GraphicsConfiguration gc = gs.getDefaultConfiguration();
bimage = gc.createCompatibleImage(image.getWidth(null), image
.getHeight(null), transparency);
} catch (HeadlessException e) {
}
if (bimage == null) {
int type = BufferedImage.TYPE_INT_RGB;
if (hasAlpha) {
type = BufferedImage.TYPE_INT_ARGB;
}
bimage = new BufferedImage(image.getWidth(null), image
.getHeight(null), type);
}
Graphics g = bimage.createGraphics();
g.drawImage(image, 0, 0, null);
g.dispose();
return bimage;
}
- Java里将Image转换成BufferedImage
- 如何将BufferedImage转换成字节数组?
- bufferedimage 转换成 inputstream
- java 将pdf转换image
- Java加载图片 利用Image与BufferedImage
- Java加载图片 Image与BufferedImage 区别
- 将view转换成image
- Image转BufferedImage并提取像素进行颜色空间转换
- java用BufferedImage转换图片大小并保存
- eclipse找不到import java.awt.image.BufferedImage这个类,调用不了bufferedimage
- Java swing 加载和显示图片 利用Image与BufferedImage
- linux Could not initialize class java.awt.image.BufferedImage
- Image转BufferedImage
- Image转BufferedImage
- Image转BufferedImage
- 将Image转换成byte[]数组
- ios 将view转换成image
- 将java的image对象转换成jpeg图片文件形式保存
- 上班族的真实写照
- STUN, TURN, ICE简要介绍
- 如何保护HTML5应用代码
- codeforces LionAge II DP
- Quotes of the Day – Personal ReminderList
- Java里将Image转换成BufferedImage
- 正则表达式替换---lamda表达式(UniCode编码)
- system.Data.SqlClient.SqlError:因为数据库正在使用,所以无法获得对数据库的独占访问权
- oracle中left join和right join的区别
- Test Design Studio vs QuickTest® Professional
- silverlight+wcf配置
- Android 使用ndk-stack追踪程序崩溃
- [acm] 曾经- 刷题记录 [只有正确的坚持才是胜利]
- Android 内存泄漏的个人总结