将Image(SWT)存到一个OutputStream
来源:互联网 发布:股权结构图软件 编辑:程序博客网 时间:2024/05/16 07:43
想把一个自己生成的org.eclipse.swt.graphics.Image存到一个数据流或文件中,但是没有似乎Image没有写到文件中的API。
查到AWT的ImageIO有个Write()函数,可惜是AWT的。
发现org.eclipse.swt.graphics.ImageLoader提供save功能,既可以把它存到数据流中,也可以存到文件中。但是它的Load()函数只提供FileName和InputStream这两种参数。
郁闷。
ImageLoader的data[] 竟然是public,那就意味着把源Image的ImageData赋值给它,它的Save()照样可用了。
ImageData imageData = sourceImage.getImageData( );
ImageLoader imageLoader = new ImageLoader();
imageLoader.data = new ImageData[1];
imageLoader.data[0] = imageData;
ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
imageLoader.save( outputStream, SWT.IMAGE_JPEG );
这样,就把sourceImage以JPEG格式存到数据流outputStream中了。
从SWT Newsgroup上得知,这种方法有一定局限。如果一个Composite在画面以外,那么在画面以外的部分是不会绘出来。如果这个Composite在画面以内,但是它是不可见的(Visual 为false),画到Image中的内容也不是希望中的Composite。
原文:http://dev.csdn.net/author/ZiJinShi/1e55f021df2346f38ee5165b8f2ef573.html
- 将Image(SWT)存到一个OutputStream
- 学习笔记:将Image(SWT)存到一个OutputStream
- 将一个Bitmap 的内容存到file中
- SWT.IMAGE
- 将 ActiveX 控件集成到 SWT 应用程序
- 把Swing的Icon转换到SWT的Image
- 如何将一个字符串中的数据 以逗号为标示 分别存到另一个数组中
- java将一个数组存到txt文件中,然后读取
- 将一个二维数组行和列元素互换,存到另一个二维数组中
- 7.4将一个二维数组行和列元素互换,存到另一个二维数组中。
- java将一个数组存到txt文件中,然后读取
- linux下如何将当前目录的文件名存到一个文本文件里
- 将一个二元维数组行和列素互换,存到另一个二维数组中。
- 将OutputStream转为InputStream
- 将 pictureBox 中的内容存到 硬盘
- 如何将图片存到数据库中?
- 将图片上传存到数据库
- 将崩溃日志存到本地
- 圣诞快乐!
- 初探Ruby on rails
- MSDN中关于ASP.NET缓存机制的论述
- php学习笔记-01
- 一个辅助Lucene对数字类型进行索引和搜索的工具类
- 将Image(SWT)存到一个OutputStream
- 恋爱百分百-五十条经典的爱情观
- 动态网站如何生成静态页面
- 分手以后请记得十句话
- 一个简单的libmad包装类
- SOA新手入门
- UML中用例图之间的关系
- 成年人必看的六个故事教你学会做人!(转贴)
- CET eve 看星星