用Java保存位图文件[Java编程]
本文“用Java保存位图文件[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
择要
固然 Java 供应了几种翻开图象的机制,但保存图象并非它的强项.这篇本领将报告若何将图象保存在 24 位位图文件中.别的,Jean-Pierre 还供应了将图象文件写入位图文件所需的全部代码.
这篇本领是 "在 Java 利用程序中加载位图文件的渐渐指南" 的增补,那篇本领阐明了在 Java 利用程序中加载位图文件的历程.本月我再供应一篇教程,阐明若何将图象保存在 24 位位图文件中,此中还包含将图象对象写入位图文件的代码片断.
假如您在 Microsoft Windows 环境中工作,那么成立位图文件的功效将为您供应很多便利.比方,在我的上一个项目中,我必须将 Java 与 Microsoft Access 对接.Java 程序答应用户在屏幕上画图.这幅图随后被打印到 Microsoft Access 报表中.由于 Java 不支持 OLE,我的唯一挑选就是成立该图的一个位图文件,并告诉 Microsoft Access 报表在何处能找到这个位图文件.假如您写过向剪贴板发送图象的利用程序,则这个本领大概对您有效 -- 特别是当您将这个信息传送给另一个利用程序时.
位图文件的格局
位图文件格局支持 4 位 RLE(路程长度编码)以及 8 位和 24 位编码.因为我们只处理 24 位格局,所以下面我们查看一下该文件的构造.
位图文件分为三个部份.我已将它们列在下面.
第 1 部份:位图文件的标头
标头包含位图文件的范例大小信息和版面信息.构造以下(摘自 C 语言构造定义):
typedef struct tagBITMAPFILEHEADER {
UINT bfType;
DWORD bfSize;
UINT bfReserved1;
UINT bfReserved2;
DWORD bfOffBits;
}BITMAPFILEHEADER;
下面是对这个清单中的代码元素的阐明:
bfType:指定文件范例,其值始终为 BM.
bfSize:指定整个文件的大小(以字节为单位).
bfReserved1:保存 -- 必须为 0.
bfReserved2:保存 -- 必须为 0.
bfOffBits:指定从 BitmapFileHeader 到图象首部的字节偏移量.
目前您已经懂得位图标头的用处就是标识位图文件.读取位图文件的每个程序都利用位图标头来举行文件考证.
以上是“用Java保存位图文件[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |