当前位置:文档之家› 在VC++中如何将绘制的图形存储成位图

在VC++中如何将绘制的图形存储成位图

在VC++中如何将绘制的图形存储成位图
在VC++中如何将绘制的图形存储成位图

在VC++中如何将绘制的图形存储成位图

太匆匆忙2009-12-16 14:19:04124.164.196.*

您好

CClientDC dc(this);//取得客户区内存DC

CDC THDC;

HBITMAP THBM;

THDC.CreateCompatibleDC(0);//创建相关场景

THBM=(HBITMAP)LoadImage(NULL,"D:\\x.bmp",IMAGE_BITMAP,0,0,LR_LOADF ROMFILE|LR_CREATEDIBSECTION);//载入位图

BITMAP bmp;

GetObject(THBM,sizeof(bmp),&bmp);//取得位图信息

SelectObject(THDC,THBM);//选入位图至内存DC

DeleteObject(THBM);//删除位图

BitBlt(dc,0,0,bmp.bmWidth,bmp.bmHeight,THDC,0,0,SRCCOPY);//将临时内存DC 中的位图画到客户区中

//首先在D盘根目录下放一个标准.bmp格式的位图 再将这些代码写入一个按钮事件中 点击按键 就会在窗体的左上角看到图形了.

calpt2009-12-26 18:03:43116.205.254.*

Visual C++ MFC中没有提供一个专门的类来处理DIB位图,因此,为了方便地使用位图文件,我们有必要派生一个CDib类。类的源代码如下:

(1) CDib类的声明

// DIB.h:类CDib声明头文件

#ifndef __DIB_H__

#define __DIB_H__

#include <wingdi.h>

class CDib

{

 public:

CDib();

~CDib();

BOOL Load( const char * );

BOOL Save( const char * );

BOOL Draw( CDC *, int nX = 0, int nY = 0, int nWidth = -1, int nHeight = -1, int mode = SRCCOPY);

BOOL SetPalette( CDC * );

 private:

CPalette m_Palette;

unsigned char *m_pDib, *m_pDibBits;

DWORD m_dwDibSize;

BITMAPINFOHEADER *m_pBIH;

RGBQUAD *m_pPalette;

int m_nPaletteEntries;

};

#endif

(2) CDib类的实现

// DIB.cpp:类CDib实现文件

#include "stdafx.h"

#include "DIB.h"

CDib::CDib()

{

 m_pDib = NULL;

}

CDib::~CDib()

{

 // 如果位图已经被加载,释放内存 if (m_pDib != NULL)

delete []m_pDib;

}

下面这个函数非常重要,其功能为加载位图,类似于CBitmap类的LoadBitmap函数:

BOOL CDib::Load(const char *pszFilename)

{

 CFile cf;

 // 打开位图文件

 if (!cf.Open(pszFilename, CFile::modeRead))

return (FALSE);

 // 获得位图文件大小,并减去BITMAPFILEHEADER的长度

 DWORD dwDibSize;

 dwDibSize = cf.GetLength() - sizeof(BITMAPFILEHEADER);

 // 为DIB位图分配内存

 unsigned char *pDib;

 pDib = new unsigned char[dwDibSize];

 if (pDib == NULL)

return (FALSE);

 BITMAPFILEHEADER BFH;

 // 读取位图文件数据

 try

 {

// 文件格式是否正确有效

if ( cf.Read(&BFH, sizeof(BITMAPFILEHEADER)) !=

sizeof(BITMAPFILEHEADER) ||

BFH.bfType != ’MB’ || cf.Read(pDib, dwDibSize) != dwDibSize) {

delete []pDib;

return (FALSE);

}

 }

 catch (CFileException *e)

 {

e->Delete();

delete []pDib;

return (FALSE);

 }

 // delete先前加载的位图

 if (m_pDib != NULL)

delete m_pDib;

 // 将临时Dib数据指针和Dib大小变量赋给类成员变量

 m_pDib = pDib;

 m_dwDibSize = dwDibSize;

 // 为相应类成员变量赋BITMAPINFOHEADER和调色板指针

 m_pBIH = (BITMAPINFOHEADER*)m_pDib;

 m_pPalette = (RGBQUAD*) &m_pDib[sizeof(BITMAPINFOHEADER)]; // 计算调色板中实际颜色数量

 m_nPaletteEntries = 1 << m_pBIH->biBitCount;

 if (m_pBIH->biBitCount > 8)

m_nPaletteEntries = 0;

 else if (m_pBIH->biClrUsed != 0)

m_nPaletteEntries = m_pBIH->biClrUsed;

 // 为相应类成员变量赋image data指针

 m_pDibBits = &m_pDib[sizeof(BITMAPINFOHEADER) + m_nPaletteEntries * sizeof (RGBQUAD)];

 // delete先前的调色板

 if (m_Palette.GetSafeHandle() != NULL)

m_Palette.DeleteObject();

 // 如果位图中存在调色板,创建LOGPALETTE 及CPalette

 if (m_nPaletteEntries != 0)

 {

LOGPALETTE *pLogPal = (LOGPALETTE*)new char[sizeof(LOGPALETTE) + m_nPaletteEntries *sizeof(PALETTEENTRY)];

if (pLogPal != NULL)

{

pLogPal->palVersion = 0x300;

pLogPal->palNumEntries = m_nPaletteEntries;

for (int i = 0; i < m_nPaletteEntries; i++)

{

pLogPal->palPalEntry[i].peRed = m_pPalette[i].rgbRed;

pLogPal->palPalEntry[i].peGreen = m_pPalette[i].rgbGreen; pLogPal->palPalEntry[i].peBlue = m_pPalette[i].rgbBlue;

}

//创建CPalette并释放LOGPALETTE的内存

m_Palette.CreatePalette(pLogPal);

delete []pLogPal;

}

 }

 return (TRUE);

}

//函数功能:保存位图入BMP文件

BOOL CDib::Save(const char *pszFilename)

{

 if (m_pDib == NULL)

return (FALSE);

 CFile cf;

 if (!cf.Open(pszFilename, CFile::modeCreate | CFile::modeWrite)) return (FALSE);

 try

 {

BITMAPFILEHEADER BFH;

memset(&BFH, 0, sizeof(BITMAPFILEHEADER));

BFH.bfType = ’MB’;

BFH.bfSize = sizeof(BITMAPFILEHEADER) + m_dwDibSize; BFH.bfOffBits = sizeof(BITMAPFILEHEADER) +

sizeof(BITMAPINFOHEADER) + m_nPaletteEntries *sizeof(RGBQUAD);

cf.Write(&BFH, sizeof(BITMAPFILEHEADER));

cf.Write(m_pDib, m_dwDibSize);

 }

 catch (CFileException *e)

 {

e->Delete();

return (FALSE);

 }

 return (TRUE);

}

下面这个函数也非常重要,其功能为在pDC指向的CDC中绘制位图,起点坐标为(nX,nY),绘制宽度和高度为nWidth、nHeight,最后一个参数是光栅模式:

BOOL CDib::Draw(CDC *pDC, int nX, int nY, int nWidth, int nHeight, int mode)

{

 if (m_pDib == NULL)

 // 获取位图宽度和高度赋值

 if (nWidth == - 1)

nWidth = m_pBIH->biWidth;

 if (nHeight == - 1)

nHeight = m_pBIH->biHeight;

 // 绘制位图

 StretchDIBits(pDC->m_hDC, nX, nY, nWidth, nHeight, 0, 0, m_pBIH-

>biWidth, m_pBIH->biHeight, m_pDibBits, (BITMAPINFO*)m_pBIH, BI_RGB, mode);

 return (TRUE);

}

//函数功能:设置调色板

BOOL CDib::SetPalette(CDC *pDC)

{

 if (m_pDib == NULL)

 // 检查当前是否有一个调色板句柄,对于大于256色的位图,为NULL

 if (m_Palette.GetSafeHandle() == NULL)

return (TRUE);

 // 选择调色板,接着实施之,最后恢复老的调色板

 CPalette *pOldPalette;

 pOldPalette = pDC->SelectPalette(&m_Palette, FALSE);

 pDC->RealizePalette();

 pDC->SelectPalette(pOldPalette, FALSE);

 return (TRUE);

}

从整个CDib类的代码中我们可以看出,DIB位图的显示需遵循如下步骤:

(1)读取位图,本类中使用pDib = new unsigned char[dwDibSize]为位图中的信息分配内存,另一种方法是调用API函数CreateDIBSection,譬如:

m_hBitmap = ::CreateDIBSection(pDC->GetSafeHdc(), (LPBITMAPINFO) m_lpBMPHdr, DIB_RGB_COLORS,

(LPVOID*) &m_lpDIBits, NULL, 0);

m_hBitmap定义为:

HBITMAP m_hBitmap;

(2)根据读取的位图信息,计算出调色板大小,然后创建调色板;

(3)调用CDib::SetPalette( CDC *pDC )设置调色板,需要用到

CDC::SelectPalette及CDC::RealizePalette两个函数;

(4)调用CDib::Draw(CDC *pDC, int nX, int nY, int nWidth, int nHeight, int mode)函数绘制位图。在此函数中,真正发挥显示位图作用的是对StretchDIBits API函数的调用。StretchDIBits函数具有缩放功能,其最后一个参数也是光栅操作的模式。

下面给出DIB位图的打开及显示并在其中加入天极网logo的函数源代码。

"DIB位图"父菜单下"打开"子菜单的单击事件消息处理函数为(其功能为打开位图并显示之):

void CBitMapExampleDlg::OnOpendibpic()

{

 // 弹出文件对话框,让用户选择位图文件

 CFileDialog fileDialog(TRUE, "*.BMP", NULL, NULL,"位图文件(*.BMP)|*.bmp;*.BMP|");

 if (IDOK == fileDialog.DoModal())

 {

// 加载位图并显示之

CDib dib;

if (dib.Load(fileDialog.GetPathName()))

{

CClientDC dc(this);

dib.SetPalette(&dc);

dib.Draw(&dc);

}

 }

}

"DIB位图"父菜单下"标记"子菜单的单击事件消息处理函数为(其功能为给位图加上天极网logo):

void CBitMapExampleDlg::OnMarkDibpic()

{

 // 弹出文件对话框,让用户选择标记logo

 CFileDialog fileDialog(TRUE, "*.BMP", NULL, NULL, "标记位图文件(*.BMP)|*.bmp;*.BMP|");

 if (IDOK == fileDialog.DoModal())

 {

// 加载标记logo位图并与目标位图相与

CDib dib;

if (dib.Load(fileDialog.GetPathName()))

{

CClientDC dc(this);

dib.SetPalette(&dc);

dib.Draw(&dc, 0, 0, - 1, - 1, SRCAND);

}

 }

je797hb622009-12-26 21:52:30123.67.1.*

VC++通用RS232通讯调试软件(开题报告+任务书+文献综述+论文+外文翻译+源代码+可执行程序) C++图像处理设计-(代码+论文) C++QICQ的聊天程序(服务端 客户端-毕业论文) VC++的分形图形绘制系统(源程序-论文) VC++IT人才进修管理系统.

010*******-12-26 21:52:45123.123.220.*

希望 的回答对 帮助.

1. 做了一个工程(vc6下编译通过)下载地址:

https://www.doczj.com/doc/c016890772.html,/site/qiujiejia1/home/save_bitmap.zip

2.以下是部分主要代码,仅供参考

/****************************************************************************

获得rect指定的图片块,用完此函数返回的hbitmap句柄后,要调用::deleteobject()删除句

filepath:为源图片路径

rect:为要剪切的图形尺寸

****************************************************************************/

hbitmap getbitmap(char* filepath,rect * rect)

{

hdc hscrdc,hmemdc; //屏幕设备描述表 和 内存设备描述表

hbitmap hbitmap,holdbitmap; //hbitmap位图句柄用来保存rect所对应的图片hmemdc=createcompatibledc(null); //创建内存设备描述表

int rectwidth=rect->right-rect->left; //获得屏幕宽度

int rectheight=rect->bottom-rect->top; //获得屏幕高度

//获取源图片的句柄

hbitmap srcbitmap;

srcbitmap=(hbitmap)loadimage(null, //应用程序实例

filepath, //路径

image_bitmap,

0, //如果不置0,则此参数指定bitmap的宽(位图被拉伸)

0, //如果不置0,则此参数指定bitmap的高(位图被拉伸)

lr_loadfromfile|lr_createdibsection|lr_defaultsize);

//把句柄和hsrcdc关联

hscrdc=createcompatibledc(null); //创建内存设备描述表

selectobject(hscrdc,srcbitmap);

hbitmap=createcompatiblebitmap(hscrdc,rectwidth,rectheight); //创建一个与屏幕设备描述表兼容的位图,用完记得调用::deleteobject(hbitmap);

holdbitmap=(hbitmap)selectobject(hmemdc,hbitmap); //把位图选进内存设备描述表

bitblt(hmemdc,0,0,rectwidth,rectheight,hscrdc,rect->left,rect->top,srccopy); //把rect指定的图块拷贝到内存设备描述表

hbitmap=(hbitmap)selectobject(hmemdc,holdbitmap); //把图片放到hbitmap中

deletedc(hscrdc);

deletedc(hmemdc);

return hbitmap;

}

//保存位图

int savebitmap(hbitmap hbitmap, lpstr lpfilename)

{

//lpfilename 为位图文件名

hdc hdc;

//设备描述表

int ibits;

//当前显示分辨率下每个像素所占字节数

word wbitcount;

//位图中每个像素所占字节数

//定义调色板大小, 位图中像素字节大小 , 位图文件大小 , 写入文件字节数

dword dwpalettesize=0,dwbmbitssize,dwdibsize, dwwritten; bitmap bitmap;

//位图属性结构

bitmapfileheader bmfhdr;

//位图文件头结构

bitmapinfoheader bi;

//位图信息头结构

lpbitmapinfoheader lpbi;

//指向位图信息头结构

handle fh, hdib, hpal;

hpalette holdpal=null;

//定义文件,分配内存句柄,调色板句柄

//计算位图文件每个像素所占字节数

ibits=24;

if (ibits <= 1)

wbitcount = 1;

else if (ibits <= 4)

wbitcount = 4;

else if (ibits <= 8)

wbitcount = 8;

else if (ibits <= 32)

wbitcount = 24;

//计算调色板大小

if (wbitcount <= 8)

dwpalettesize=(1<

//设置位图信息头结构

getobject(hbitmap, sizeof(bitmap), (lpstr)&bitmap);

bi.bisize = sizeof(bitmapinfoheader);

bi.biwidth = bitmap.bmwidth;

bi.biheight =bitmap.bmheight;

bi.biplanes = 1;

bi.bibitcount = wbitcount;

bi.bicompression = bi_rgb;

bi.bisizeimage = 0;

bi.bixpelspermeter = 0;

bi.biypelspermeter = 0;

bi.biclrused = 0;

bi.biclrimportant = 0;

dwbmbitssize = ((bitmap.bmwidth*wbitcount+31)/32)*4*bitmap.bmheight;

//为位图内容分配内存

hdib =

globalalloc(ghnd,dwbmbitssize+dwpalettesize+sizeof(bitmapinfoheader)); lpbi = (lpbitmapinfoheader)globallock(hdib);

*lpbi = bi;

// 处理调色板

hpal = getstockobject(default_palette);

if (hpal)

{

hdc = getdc(null);

holdpal=selectpalette(hdc,(hpalette)hpal,false);

realizepalette(hdc);

}

// 获取该调色板下新的像素值

getdibits(hdc,hbitmap,0,(uint)bitmap.bmheight,(lpstr)lpbi+sizeof(bitmapinfoheader) +dwpalettesize, (bitmapinfo *)lpbi,dib_rgb_colors);

//恢复调色板

if (holdpal)

{

selectpalette(hdc, holdpal, true);

realizepalette(hdc);

releasedc(null, hdc);

}

//创建位图文件

fh=createfile(lpfilename, generic_write,0, null,

create_always,file_attribute_normal | file_flag_sequential_scan, null);

if (fh==invalid_handle_value)

return false;

// 设置位图文件头

bmfhdr.bftype = 0x4d42; // "bm"

dwdibsize=sizeof(bitmapfileheader)+sizeof(bitmapinfoheader)

+dwpalettesize+dwbmbitssize;

bmfhdr.bfsize = dwdibsize;

bmfhdr.bfreserved1 = 0;

bmfhdr.bfreserved2 = 0;

bmfhdr.bfoffbits = (dword)sizeof(bitmapfileheader)+

(dword)sizeof(bitmapinfoheader)+dwpalettesize;

// 写入位图文件头

writefile(fh, (lpstr)&bmfhdr, sizeof(bitmapfileheader), &dwwritten, null);

// 写入位图文件其余内容

writefile(fh, (lpstr)lpbi, dwdibsize,

&dwwritten, null);

//清除

globalunlock(hdib);

globalfree(hdib);

closehandle(fh);

return true;

}

/************************************************************************

保存文件路径对话框

************************************************************************/

bool getsavefilepathdialog(tchar *szfile,hwnd parentwnd=null)

{

strcpy(szfile,"\0"); //对话框返回的路径,一定不要忘了初始化为"\0"

tchar lpstrcurdir[max_path]="\0"; //用于指定对话框初始化时打开的路径不指定路径时一定要初始化为"\0"

openfilename ofn; //对话框信息的结构体

zeromemory(&ofn,sizeof(ofn));

ofn.lstructsize=sizeof(ofn);

ofn.hwndowner=parentwnd; //对话框的拥有者

ofn.lpstrfilter="windows 位图文件(*.bmp)\0*.bmp\0所有文件(*.*)\0*.*\0"; //文件过滤器,null时不使用过滤器,注意格式

ofn.nfilterindex=1; //指定当前过滤器索引,2即是所有文件

ofn.lpstrfile=szfile; //返回的文件路径

ofn.nmaxfile=max_path;

ofn.lpstrinitialdir=lpstrcurdir; //初始化路径

ofn.lpstrdefext="bmp";//返回的文件自动加上扩展名

ofn.flags=ofn_filemustexist //指定用户仅可以在文件名登录字段中输入已存在的文件的名字。

|ofn_explorer //指出任何打开或另存为对话框使用新的explorer风格的用户化模块。

|ofn_hidereadonly //隐藏只读复选框

|ofn_overwriteprompt ; //提醒用户否复盖这个文件。

return getsavefilename(&ofn);

}

void cdemodlg::onbutton1()

{

各种图片格式的区别

数码图像的基本概念 像素 像素(pixel)是计算机上用来记录图像的基本组成单位,也是组成“位图”的最小单位。“像素”数量越多,越可以表现图像细微的部分,品质和文件也会相应增加:反之“像素”数量越少,当图像放大到一定程度时,在图像边缘处容易产生失真的锯齿状(一种类似马赛克德色块)。 一般最常用的判断数码相机品质的因素就是看它的最高像素是多少。 许多不同颜色拼凑起来的“像素”所构成的集合称之为“分辨率”(resolution) 如果作品要用在杂志类高品质的纸张上,建议“分辨率”设置为300dpi以上,而一般文书报告或报纸则是150dpi,网页、多媒体等在屏幕上显示的作品设置为72~96dpi即可。 注因每张照片所含的颜色组成组成数字不同,文件的大小也不相同。一般使用在图像上的分辨率单位为ppi,指每英寸所包含的像素点;而打印机上的分辨率单位为dpi,指每英寸所包含的图点。 位图和矢量图 1、位图 位图(Raster Image)是以像素点为基础,用点的方式来记录图形中所有使用的颜色色码,像拼图一样组成整张图像。位图能真实呈现图像的原貌以及色彩上的细微差异,但放大后会产生如马赛克色块般的锯齿边缘。 2、矢量图 矢量图(V ector Image)以“数学运算”为基础,就像“两点成一条直线”的概念,这两点的距离可以是1cm,也可以10cm,所形成直线是根据两点的距离重新计算出来的,因此不会涉及“分辨率”的问题,当然也就没有“放大后会失真产生锯齿状”的问题。所以,矢量图的文件大多比位图要少,这也是为什么网络上flash矢量动画会如此盛行的一个很重要的原因。 3、位图和矢量图的应用范围 一般而言,位图适合如人物、风景、产品等这类需要表示真实图像的地方,因为“像素”可以真实地记录下所有的图像信息;而矢量图则是适合卡通、线条画等表现抽象意念的地方,因为矢量图在色彩的表现上不及位图来的细腻(尤其是在渐变色上),它无法完整地记录下图像的信息,只能用线条模拟出类似的效果,因此矢量图一般给人的印象多为仿真的感觉,不易产生像照片拍摄出来的细腻质感,但却是讲究精准的设计图最好的选择。 颜色模式 1、CMYK颜色(青色cyan、洋红magenta、黄色yellow、黑色black) 用“减色法”来混合出各种色彩,色彩,颜色在相互混合后,重叠的部分越加越暗。理论上CMY三种原色经过混色后,便能展现不同层次的灰度色彩,常应用于实际印刷的出版物中,但为求得更细腻的表现,所以特别将黑色独立出来,例如市场上销售的彩色喷墨打印机所使用的墨盒,就是应用印刷时的配色方式。 注印刷用分辨率最好在1000~3000dpi以上,才能用于大图输出。 2、RGB颜色(红red、绿green、蓝blue)——全彩图像 以“加色法”来将色彩的三原色(红、绿、蓝)混合出各种色彩,如(r255、g255、b255)会产生白色,颜色在混合后重叠的部分越加越亮。以一张24位全彩图像来说,每个像素以8位所组成,以28计算每个原色从最暗到最亮共有256种明暗变化,数值为0时最暗、255时最亮,所以共计有256*256*256近1600万种涵盖大部分肉眼可辨识的颜色。而当RGB 为最大混色时(数值皆为255),就会形成白色。

常用图片后缀格式识别常识

一、BMP格式 BMP是英文Bitmap(位图)的简写,它是Windows操作系统中的标准图像文件格式,能够被多种Windows应用程序所支持。随着Windows操作系统的流行与丰富的Windows应用程序的开发,BMP位图格式理所当然地被广泛应用。这种格式的特点是包含的图像信息较丰富,几乎不进行压缩,但由此导致了它与生俱生来的缺点--占用磁盘空间过大。所以,目前BMP在单机上比较流行。 二、GIF格式 GIF是英文Graphics Interchange Format(图形交换格式)的缩写。顾名思义,这种格式是用来交换图片的。事实上也是如此,上世纪80年代,美国一家著名的在线信息服务机构CompuServe针对当时网络传输带宽的限制,开发出了这种GIF图像格式。 GIF格式的特点是压缩比高,磁盘空间占用较少,所以这种图像格式迅速得到了广泛的应用。最初的GIF只是简单地用来存储单幅静止图像(称为GIF87a),后来随着技术发展,可以同时存储若干幅静止图象进而形成连续的动画,使之成为当时支持2D动画为数不多的格式之一(称为GIF89a),而在GIF89a图像中可指定透明区域,使图像具有非同一般的显示效果,这更使GIF风光十足。目前Internet上大量采用的彩色动画文件多为这种格式的文件,也称为GIF89a格式文件。 此外,考虑到网络传输中的实际情况,GIF图像格式还增加了渐显方式,也就是说,在图像传输过程中,用户可以先看到图像的大致轮廓,然后随着传输过程的继续而逐步看清图像中的细节部分,从而适应了用户的"从朦胧到清楚"的观赏心理。目前Internet上大量采用的彩色动画文件多为这种格式的文件。 但GIF有个小小的缺点,即不能存储超过256色的图像。尽管如此,这种格式仍在网络上大行其道应用,这和GIF图像文件短小、下载速度快、可用许多具有同样大小的图像文件组成动画等优势是分不开的。 三、JPEG格式 JPEG也是常见的一种图像格式,它由联合照片专家组(Joint Photographic Experts Group)开发并以命名为"ISO 10918-1",JPEG仅仅是一种俗称而已。JPEG文件的扩展名为.jpg 或.jpeg,其压缩技术十分先进,它用有损压缩方式去除冗余的图像和彩色数据,获取得极高的压缩率的同时能展现十分丰富生动的图像,换句话说,就是可以用最少的磁盘空间得到较好的图像质量。 同时JPEG还是一种很灵活的格式,具有调节图像质量的功能,允许你用不同的压缩比例对这种文件压缩,比如我们最高可以把1.37MB的BMP位图文件压缩至20.3KB。当然我们完全可以在图像质量和文件尺寸之间找到平衡点。 1

位图和矢量图的区别

位图图像和矢量图形 计算机中显示的图形一般可以分为两大类——位图和矢量图。 一、位图(Bitmap) (1)何谓位图及位图的特性? 与下述基于矢量的绘图程序相比,像Photoshop 这样的编辑照片程序则用于处理位图图像。当您处理位图图像时,可以优化微小细节,进行显著改动,以及增强效果。位图图像,亦称为点阵图像或绘制图像,是由称作像素(图片元素)的单个点组成的。这些点可以进行不同的排列和染色以构成图样。当放大位图时,可以看见赖以构成整个图像的无数单个方块。扩大位图尺寸的效果是增多单个像素,从而使线条和形状显得参差不齐。然而,如果从稍远的位置观看它,位图图像的颜色和形状又显得是连续的。由于每一个像素都是单独染色的,您可以通过以每次一个像素的频率操作选择区域而产生近似相片的逼真效果,诸如加深阴影和加重颜色。缩小位图尺寸也会使原图变形,因为此举是通过减少像素来使整个图像变小的。同样,由于位图图像是以排列的像素集合体形式创建的,所以不能单独操作(如移动)局部位图。 (2)位图的文件格式 位图的文件类型很多,如*.bmp、*.pcx、*.gif、*.jpg、*.tif、photoshop的*.pcd、kodak photo CD的*.psd、corel photo paint的*.cpt等。同样的图形,存盘成以上几种文件时文件的字节数会有一些差别,尤其是jpg格式,它的大小只有同样的bmp格式的1/20到1/35,这是因为它们的点矩阵经过了复杂的压缩算法的缘故。 (3)位图文件的规律 如果你把一组这样的文件存盘,你一定能发现有这样的规律: 1.图形面积越大,文件的字节数越多 2.文件的色彩越丰富,文件的字节数越多 这些特征是所有位图共有的。这种图形表达方式很象我们在初中数学课在坐标纸上逐点描绘函数图形,虽然我们可以逐点把图形描绘的很漂亮,但用放大镜看这个函数图形的局部时,就是一个个粗糙的点。编辑这样的图形的软件也叫位图图形编辑器。如:PhotoShop、PhotoStyle、画笔等等。 二、矢量图(vector) (1)何谓矢量图及矢量图的特性? 矢量图像,也称为面向对象的图像或绘图图像,在数学上定义为一系列由线连接的点。像Adobe Illustrator、CorelDraw、CAD等软件是以矢量图形为基础进行创作的。矢量文件中的图形元素称为对象。每个对象都是一个自成一体的实体,它具有颜色、形状、轮廓、大小和屏幕位置等属性。既然每个对象都是一个自成一体的实体,就可以在维持它原有清晰度和弯曲度的同时,多次移动和改变它的属性,而不会影响图例中的其它对象。这些特征使基于矢量的程序特别适用于图例和三维建模,因为它们通常要求能创建和操作单个对象。基于矢量的绘图同分辨率无关。这意味着它们可以按最高分辨率显示到输出设备上。 矢量图形与分辨率无关,可以将它缩放到任意大小和以任意分辨率在输出设备上打印出来,都不会影响清晰度。因此,矢量图形是文字(尤其是小字)和线条图形(比如徽标)的最佳选择。

常用图片文件格式

总的来说,有两种截然不同的图像格式类型:即有损压缩和无损压缩。 1.有损压缩 有损压缩可以减少图像在内存和磁盘中占用的空间,在屏幕上观看图像时,不会发现它对图像的外观产生太大的不利影响。因为人的眼睛对光线比较敏感,光线对景物的作用比颜色的作用更为重要,这就是有损压缩技术的基本依据。 有损压缩的特点是保持颜色的逐渐变化,删除图像中颜色的突然变化。生物学中的大量实验证明,人类大脑会利用与附近最接近的颜色来填补所丢失的颜色。例如,对于蓝色天空背景上的一朵白云,有损压缩的方法就是删除图像中景物边缘的某些颜色部分。当在·屏幕上看这幅图时,大脑会利用在景物上看到的颜色填补所丢失的颜色部分。利用有损压缩技术,某些数据被有意地删除了,而被取消的数据也不再恢复。 无可否认,利用有损压缩技术可以大大地压缩文件的数据,但是会影响图像质量。如果使用了有损压缩的图像仅在屏幕上显示,可能对图像质量影响不太大,至少对于人类眼睛的识别程度来说区别不大。可是,如果要把一幅经过有损压缩技术处理的图像用高分辨率打印机打印出来,那么图像质量就会有明显的受损痕迹。 2.无损压缩 无损压缩的基本原理是相同的颜色信息只需保存一次。压缩图像的软件首先会确定图像中哪些区域是相同的,哪些是不同的。包括了重复数据的图像(如蓝天) 就可以被压缩,只有蓝天的起始点和终结点需要被记录下来。但是蓝色可能还会有不同的深浅,天空有时也可能被树木、山峰或其他的对象掩盖,这些就需要另外记录。从本质上看,无损压缩的方法可以删除一些重复数据,大大减少要在磁盘上保存的图像尺寸。但是,无损压缩的方法并不能减少图像的内存占用量,这是因为,当从磁盘上读取图像时,软件又会把丢失的像素用适当的颜色信息填充进来。如果要减少图像占用内存的容量,就必须使用有损压缩方法。 无损压缩方法的优点是能够比较好地保存图像的质量,但是相对来说这种方法的压缩率比较低。但是,如果需要把图像用高分辨率的打印机打印出来,最好还是使用无损压缩几乎所有的图像文件都采用各自简化的格式名作为文件扩展名。从扩展名就可知道这幅图像是按什么格式存储的,应该用什么样的软件去读/写等等。 一、BMP图像文件格式 BMP是一种与硬件设备无关的图像文件格式,使用非常广。它采用位映射存储格式,除了图像深度可选以外,不采用其他任何压缩,因此,BblP文件所占用的空间很大。BMP文件的图像深度可选lbit、4bit、8bit及24bit。BMP文件存储数据时,图像的扫描方式是按从左到右、从下到上的顺序。 由于BMP文件格式是Windows环境中交换与图有关的数据的一种标准,因此在Windows 环境中运行的图形图像软件都支持BMP图像格式。

常见的图片文件格式及各自的特点

一、BMP格式 BMP格式是Windows操作系统中的标准图像文件格式,能够被多种Windows应用程序所支持。特点是包含的图像信息较丰富,几乎不进行压缩。缺点是占用磁盘空间过大。所以,目前BMP在单机上比较流行。 二、GIF格式 特点是压缩比高,磁盘空间占用较少,所以这种图像格式迅速得到了广泛的应用。 此外,考虑到网络传输中的实际情况,GIF图像格式还增加了渐显方式。目前Internet上大量采用的彩色动画文件多为这种格式的文件。 但GIF有个小小的缺点,即不能存储超过256色的图像。尽管如此,这种格式仍在网络上大行其道应用,这和GIF图像文件短小、下载速度快、可用许多具有同样大小的图像文件组成动画等优势是分不开的。 三、JPEG格式 JPEG文件的扩展名为.jpg或.jpeg,其压缩技术十分先进,它用有损压缩方式去除冗余的图像和彩色数据,获取得极高的压缩率的同时能展现十分丰富生动的图像,换句话说,就是可以用最少的磁盘空间得到较好的图像质量。 同时JPEG还是一种很灵活的格式,具有调节图像质量的功能,允许你用不同的压缩比例对这种文件压缩,当然我们完全可以在图像质量和文件尺寸之间找到平衡点。 它的应用也非常广泛,特别是在网络和光盘读物上,肯定都能找到它的影子。目前各类浏览器均支持JPEG这种图像格式,因为JPEG格式的文件尺寸较小,下载速度快,使得Web页有可能以较短的下载时间提供大量美观的图像,JPEG同时也就顺理成章地成为网络上最受欢迎的图像格式。 四、JPEG2000格式 JPEG 2000具备更高压缩率以及更多新功能的新一代静态影像压缩技术。 JPEG2000 与JPEG不同的是,JPEG2000 同时支持有损和无损压缩,而JPEG 只能支持有损压缩。无损压缩对保存一些重要图片是十分有用的。JPEG2000的一个极其重要的特征在于它能实现渐进传输,这一点与GIF的"渐显"有异曲同工之妙,即先传输图像的轮廓,然后逐步传输数据,不断提高图像质量,让图象由朦胧到清晰显示,而不必是像现在的JPEG 一样,由上到下慢慢显示。 此外,JPEG2000还支持所谓的"感兴趣区域"特性,你可以任意指定影像上你感兴趣区域的压缩质量,还可以选择指定的部份先解压缩。 JPEG2000可应用于传统的JPEG市场,如扫描仪、数码相机等,亦可应用于新兴领域,如网路传输、无线通讯等等 五、TIFF格式 TIFF的特点是图像格式复杂、存贮信息多。正因为它存储的图像细微层次的信息非常多,图像的质量也得以提高,故而非常有利于原稿的。

常用图片格式简介

图形图像文件大致上可以分为两大类:一类为位图文件;另一类称为描绘类、矢量类或面向对象图形图像文件。前者以点阵形式描述图形图像,后者是以数学方法描述的一种由几何元素组成的图形图像。一般说来,后者对图像的表达细致、真实,缩放后图形图像的分辨率不变,在专业级的图形图像处理中应用较多。 1、点阵图形图像文件 *.bmp(Bitmap) *.bmp是Windows中的标准图像文件格式,已成为PC机Windows系统中事实上的工业标准,有压缩和不压缩两种形式。它以独立于设备的方法描述位图,可用非压缩格式存储图像数据,解码速度快,支持多种图像的存储,常见的各种P C图形图像软件都能对其进行处理。在PhotoShop中,最多可以使用16M的色彩渲染bmp图像。 *.dib(Device Independent Bitmap) *.dib是一种类似于*.bmp的图形文件格式,描述图像的能力与*.bmp基本相同,并且能够运行在多种硬件平台上,只是文件较大。常见的各种P C图形图像软件都能够对其进行处理。 *.gif(Graphics Interchange Format) *.gif是在各种平台的各种图形处理软件上均能够处理的、经过压缩的一种图形文件格式。它是可在Macintosh、Amiga、Atati、IBM 机器间进行移植的一种标准位图格式。该格式由C ompuserver 公司创建,存储色彩最高只能达到256种。在颜色深度和图像大小上,*.gif 类似于*.pcx;在结构上,*.gif类似于*.tiff。正因为它是经过压缩的图像文件格式,所以大多用在网络传输上,速度要比传输其他图像文件格式快得多。它的最大缺点是最多只能处理2 56种色彩,故不能用于存储真彩色的图像文件,但其GIF89a格式能够存储成背景透明的形式,并且可以将数张图存成一个文件,从而形成动画效果。 *.png (Portable Network Graphics) *.png是一种能存储32位信息的位图文件格式,其图像质量远胜过*.gif。同*.gif一样,*.pn g也使用无损压缩方式来减少文件的大小。在压缩位图数据时,它采用了颇受好评的l z77算法的一个变种。目前,越来越多的软件开始支持这一格式,在不久的将来,它可能会在整个Web上广泛流行。*.png图像可以是灰阶的(1 6位)或彩色的(48位),也可以是8位的索引色。*.png图像使用的是高速交替显示方案,显示速度很快,只需要下载1/64的图像信息就可以显示出低分辨率的预览图像。与* .gif不同的是,*.png图像格式不支持动画。 *.rle(Run Length Compressed) *.rle是一种压缩过的位图文件格式。RLE压缩方案是一种极其成熟的压缩方案,特点是无损失压缩(Lossless),既节省了磁盘空间,又不损失任何图像数据。但是,有利就有弊,在打开这种压缩文件时,要花费更多的时间。此外,一些兼容性不太好的应用程序可能会打不开* .rle文件。

[教材]位图图像与矢量图形

[教材]位图图像与矢量图形 3(3(2 位图图像与矢量图形 第一部分:单元教学设计首页 一、制定教学目标的依据 1(课标要求与教材分析 课标要求: 声音、图形、图像、动画、视频的类型、格式及其存储、了解常见的多种媒体信息,如 呈现和传递的基本特征与基本方法。 学会适当地选择不同类型的媒体信息来表达主题内容的方法,掌握各种媒体信息在计算机中的表示。 教材分析: 本章共两节内容,考虑到同学们在必修模块中已初步了解并加工过一些多媒体信息,对常见的多种媒体信息有了一定的认识,因此本章重点是学习第二节,而第二节是各种媒体信息在计算机中的表示,包括文本、图形、图像、音频、动画、视频在计算机中的表示,内容较多,所以将3.2中“文本信息在计算机中的表示”揉到3.1中进行教学,剩下的内容再分两课时完成。第一课时讲解图形图像的数字化表示过程,了解位图与矢量图的类型、格式及其存储、呈现和传递的基本特征,第二课时来学习音频、动画和视频的数字化表示过程,了解其类型、格式及其存储。 3.2所涉及到的内容范围和深度是整个教材中较大的,但学生认识多媒体信息的类型、格式及其存储、呈现和传递的基本特征和基本方法是他们学习后续章节的必备基础,而此部分内容概念多且比较抽象,学习难度大,因此在教学中要通过类比、对比等教学策略化难为易、化繁为简,把握好深度和广度,以达到课标的要求。

2.学情分析 在必修模块《信息的加工与表达(上)》一章中,同学们已初步了解并加工过一些多媒体信息,对于常见的多媒体信息的特点已有了初步的认识,并能根据实际问题选择适当工具进行表达与交流。但对于各种媒体信息的格式及其存储、呈现和传递等的基本特征与基本方法和数据压缩技术等原理一片空白,需要进一步学习。 二、教学目标 知识与技能: 1(能根据实际情况和需要选用合适的媒体信息表达主题。 2(知道文本在计算机中的编码方式。 3. 知道位图图像和矢量图形的类型、呈现和传递信息的特征;能分辨位图与矢量图;理解图形图像的数字化;学会用公式计算位图图像文件大小。 4. 理解模拟音频数字化的过程,学会用公式计算音频文件大小。 5. 知道动画、视频是由图形图像一帧帧构成的;能根据实例区分有损压缩与无损压缩,静态压缩标准与动态压缩标准。 过程与方法: 1(在教师的启发引导下,学生通过类比、比较、合作探究、交流讨论等活动理解图形图像的数字化过程,知道位图图像文件大小的计算公式,分辨图形图像。 2(学生通过“两只老虎”简谱的采样活动,理解模拟音频数字化的过程,知道声音文件大小的计算公式。 3(学生通过观看动画和视频,教师分解动画、视频,从原理上认识动画、视频。 情感态度价值观: 在活动中提高分析问题能力,体验交流的乐趣。第二部分:课时教学设计首页 一、课时教学目标

常见医学图像格式

附录C 图像格式 译者:Synge 发表时间:2012-05-03浏览量:1604评论数:0挑错数:0 翻译:xiaoqiao 在fMRI的早期,由于大多数据都用不同研究脉冲序列采集,然后离线大量重建,而且各研究中心文件格式各不相同、大多数的分析软件也都是各研究单位内部编写运用。如果这些数据不同其他中心交流,数据的格式不影响他们的使用。因此图像格式就像巴别塔似的多式多样。随着fMRI领域的不断发展,几种标准的文件格式逐渐得到了应用,数据分析软件包的使用促进了这些文件格式在不同研究中心和实验室的广泛运用,直到近期仍有多种形式的文件格式存在。这种境况在过去的10年里随着公认的NIfTI格式的发展和广泛认可而优化。该附录就fMRI资料存储的常见问题以及重要的文件格式做一概述, 3.1 数据存储 正如第2章所述,MRI数据的存储常采用二进制数据格式,如8位或16位。因此,磁盘上数据文件的大小就是数据图像的大小和维度,如保存维度128 ×128×96的16位图像需要25,165,824位(3 兆字节)。为了保存图像的更多信息,我们希望保存原始数据,即元数据。元数据包含了图像的各种信息,如图像维度及数据类型等。这点很重要,因为可以获得二进制数据所不知道的信息,例如,图像是128 ×128×96维度的16位图像采集还是128 ×128×192维度的8位图像采集。在这里我们主要讨论不同的图像格式保存不同的数量及种类的元数据。

MRI的结构图像通常保存为三维的资料格式。fMRI数据是一系列的图像采集,可以保存为三维格式,也可以保存为四维文件格式(第4维为时间)。通常,我们尽可能保存为四维数据格式,这样可以减少文件数量,但是有些数据分析软件包不能处理四维数据。 3.2 文件格式 神经影像的发展中出现了很多不同图像格式,常见的格式见表1.在这里我们就DICOM、Analyze和NIfTI最重要的三种格式做一讨论。 表1. 常见医学图像格式 Analyze .img/.hdr Analyze软件, 梅奥临床医学中心 DICOM 无ACR/NEMA协会 NIfTI .nii或.img/.hdr NIH影像学信息工具倡议 MINC .mnc 蒙特利尔神经学研究所(MNI,扩展名NetCDF) 3.2.1 DICOM格式 现今大多MRI仪器采集后的重建数据为DICOM格式。该数据格式源于美国放射学协会(ACR)和国际电子产品制造商协会(NEMA)。DICOM不仅仅是图像的存储格式,而且是不同成像系统的不同形式数据之间转换的模式,MRI图像只是其中一种特殊形式。目前使用的DICOM遵照1993年协议,且目前主要的MRI仪器供应商都支持该格式。 通常,DICOM把每一层图像都作为一个独立的文件,这些文件用数字命名从而反映相对应的图像层数(在不同的系统有一定差异)。文件中包含文件头信息,且必须要特定的软

矢量图和点阵图的区别

点阵图(位图)与矢量图的区别 计算机绘图分为点阵图(又称位图或栅格图像)和矢量图形两大类,认识他们的特色和差异,有助于创建、输入、输出编辑和应用数字图像。位图图像和矢量图形没有好坏之分,只是用途不同而已。因此,整合位图图像和矢量图形的优点,才是处理数字图像的最佳方式。 一、点阵图(Bitmap) (1)何谓点阵图及点阵图的特性? 与下述基于矢量的绘图程序相比,像Photoshop 这样的编辑照片程序则用于处理位图图像。当您处理位图图像时,可以优化微小细节,进行显著改动,以及增强效果。位图图像,亦称为点阵图像或绘制图像,是由称作像素(图片元素)的单个点组成的。这些点可以进行不同的排列和染色以构成图样。当放大位图时,可以看见赖以构成整个图像的无数单个方块。扩大位图尺寸的效果是增多单个像素,从而使线条和形状显得参差不齐。然而,如果从稍远的位置观看它,位图图像的颜色和形状又显得是连续的。由于每一个像素都是单独染色的,您可以通过以每次一个像素的频率操作选择区域而产生近似相片的逼真效果,诸如加深阴影和加重颜色。缩小位图尺寸也会使原图变形,因为此举是通过减少像素来使整个图像变小的。同样,由于位图图像是以排列的像素集合体形式创建的,所以不能单独操作(如移动)局部位图。 点阵图像是与分辨率有关的,即在一定面积的图像上包含有固定数量的像素。因此,如果在屏幕上以较大的倍数放大显示图像,或以过低的分辨率打印,位图图像会出现锯齿边缘。在图1中,您可以清楚地看到将局部图像放大4倍和12倍的效果对比。 现在就以下面的照片为例,如果我们把照片扫描成为文件并存盘,一般我们可以这样描述这样的照片文件:分辨率多少乘多少,是多少色等等。这样的文件可以用PhotoShop、CorelPaint等软件来浏览和处理。通过这些软件,我们可以把图形的局部一直放大,到最后一定可以看见一个一个象马赛克一样的色块,这就是图形中的最小元素----像素点。到这里,我们再继续放大图象,将看见马赛克继续变大,直到一个像素占据了整个窗口,窗口就变成单一的颜色。这说明这种图形不能无限放大。 (2)点阵图的文件格式 点阵图的文件类型很多,如*.bmp、*.pcx、*.gif、*.jpg、*.tif、photoshop的*.pcd、kodak photo CD的*.psd、corel photo paint的*.cpt等。同样的图形,存盘成以上几种文件时文件的字节数会有一些差别,尤其是jpg格式,它的大小只有同样的bmp格式的1/20到1/35,这是因为它们的点矩阵经过了复杂的压缩算法的缘故。 (3)点阵图文件的规律 如果你把一组这样的文件存盘,你一定能发现有这样的规律: 1.图形面积越大,文件的字节数越多 2.文件的色彩越丰富,文件的字节数越多

图片常用文件几种格式

图片文件格式简介 一、格式 是英文(位图)地简写,它是操作系统中地标准图像文件格式,能够被多种应用程序所支持.随着操作系统地流行与丰富地应用程序地开发,位图格式理所当然地被广泛应用.这种格式地特点是包含地图像信息较丰富,几乎不进行压缩,但由此导致了它与生俱生来地缺点占用磁盘空间过大.所以,目前在单机上比较流行. 二、格式 是英文(图形交换格式)地缩写.顾名思义,这种格式是用来交换图片地.事实上也是如此,上世纪年代,美国一家著名地在线信息服务机构针对当时网络传输带宽地限制,开发出了这种图像格式. 格式地特点是压缩比高,磁盘空间占用较少,所以这种图像格式迅速得到了广泛地应用. 最初地只是简单地用来存储单幅静止图像(称为),后来随着技术发展,可以同时存储若干幅静止图象进而形成连续地动画,使之成为当时支持动画为数不多地格式之一(称为),而在图像中可指定透明区域,使图像具有非同一般地显示效果,这更使风光十足.目前上大量采用地彩色动画文件多为这种格式地文件,也称为格式文件. 此外,考虑到网络传输中地实际情况,图像格式还增加了渐显方式,也就是说,在图像传输过程中,用户可以先看到图像地大致轮廓,然后随着传输过程地继续而逐步看清图像中地细节部分,从而适应了用户地"从朦胧到清楚"地观赏心理.目前上大量采用地彩色动画文件多为这种格式地文件. 但有个小小地缺点,即不能存储超过色地图像.尽管如此,这种格式仍在网络上大行其道应用,这和图像文件短小、下载速度快、可用许多具有同样大小地图像文件组成动画等优势是分不开地. 三、格式 也是常见地一种图像格式,它由联合照片专家组()开发并以命名为" ",仅仅是一种俗称而已.文件地扩展名为或,其压缩技术十分先进,它用有损压缩方式去除冗余地图像和彩色数据,获取得极高地压缩率地同时能展现十分丰富生动地图像,换句话说,就是可以用最少地磁盘空间得到较好地图像质量. 同时还是一种很灵活地格式,具有调节图像质量地功能,允许你用不同地压缩比例对这种文件压缩,比如我们最高可以把地位图文件压缩至.当然我们完全可以在图像质量和文件尺寸之间找到平衡点. 由于优异地品质和杰出地表现,它地应用也非常广泛,特别是在网络和光盘读物上,肯定都能找到它地影子.目前各类浏览器均支持这种图像格式,因为格式地文件尺寸较小,下载速度快,使得页有可能以较短地下载时间提供大量美观地图像,同时也就顺理成章地成为网络上最受欢迎地图像格式. 四、格式 同样是由组织负责制定地,它有一个正式名称叫做" ",与相比,它具备更高压缩率以及更多新功能地新一代静态影像压缩技术. 作为地升级版,其压缩率比高约左右.与不同地是,同时支持有损和无损压缩,而只能

位图与矢量图以及颜色模式

位图与矢量图以及颜色模式 位图和像素 计算机中显示的图形一般可以分为两在类——位图和矢量图。 位图图像又称为点阵图、栅格图像、像素图,它的概念主要是相对于矢量图而言的。构成位图的最小单位是像素,位图就是由像素阵列的排列来实现其显示效果的,每个像素有自己的颜色信息,在对位图图像进行编辑操作的时候,可操作的对象是每个像素,我们可以改变图像的色相、饱和度、明度、从而改变图像的显示效果。与矢量图不同,位图被缩放后会失真。 矢量图 矢量图使用直线和曲线来描述图形,这些图形的元素是一些点、线、矩形、多边形、圆和弧线等,它们都是通过计算机内部的数字公式计算获得的,所以矢量图形文件体积一般较小。矢量图形最大的优点是无论放大、缩小或旋转等都不会失真,这也是矢量图与位图最大的区别,即它不受分辨率的影响。Adobe公司的Freehand、Illustrator、Corel公司的Corel DRAW是从多矢量图形设计软件中的佼佼者。大名鼎鼎的Flash MX制作的动画也是矢量图形动画。 图像分辨率 图像分辨率,指图像中存储的信息量。这种分辨率有多种衡量方法,典型的是以每英寸的像素(PPi)来衡量,图像分辨率和图像尺寸(高宽的值)一起决定文件所占用的磁盘空间也就越多。图像分辨率以比例关系影响着文件的大小,即文件大小与其图像分辨率的平方

成正比。如果保持图像尺寸不变,将图像分辨率提高1倍,则其文件大小为原来的4倍。 颜色深度 简单地说,颜色深度就是最多支持多少种颜色。一般是用“位”来描述的。例如,一个图片支持256种颜色(如GIF格式),那么就需要256个不同的值来表示进制表示就是从00000000到1111111,总共需要8位二进制数,所以颜色深度是8。颜色深度越大,图片占的空间越大。 颜色模型和颜色模式 颜色模式决定了用于显示和打印图像的颜色模型,它决定了如何描述和重现图像的色彩。常见的颜色模型包括HSB(色相、饱和度、亮度)、RGB(红色、绿色、蓝色)、CMYK(青色、品红、黄色、黑色)和CIE Lab等。此外,有些软件也包括用于特别颜色输出的模式,如Grayscale(灰度)、Index Color(索引颜色0和Duotone(双色调)。

点阵图与矢量图的分类及应用

位图[bitmap],也叫做点阵图,删格图像,像素图 位图文件格式 bmp文件 bmp(bitmap的缩写)文件格式是windows本身的位图文件格式,所谓本身是指windows 内部存储位图即采用这种格式。一个.bmp格式的文件通常有.bmp的扩展名,但有一些是以.rle为扩展名的,rle的意思是行程长度编码(runlengthencoding)。这样的文件意味着其使用的数据压缩方法是.bmp格式文件支持的两种rle方法中的一种。bmp文件可用每象素1、4、8、16或24位来编码颜色信息,这个位数称作图象的颜色深度,它决定了图象所含的最大颜色数。一幅1-bpp(位每象素,bitperpixel)的图象只能有两种颜色。而一幅24-bpp的图象可以有超过16兆种不同的颜色。 下一页的图说明了一个典型.bmp文件的结构。它是以256色也就是8-bpp为例的,文件被分成四个主要的部分:一个位图文件头,一个位图信息头,一个色表和位图数据本身。位图文件头包含关于这个文件的信息。如从哪里开始是位图数据的定位信息,位图信息头含有关于这幅图象的信息,例如以象素为单位的宽度和高度。色表中有图象颜色的rgb值。对显示卡来说,如果它不能一次显示超过256种颜色,读取和显示.bmp文件的程序能够把这些rgb值转换到显示卡的调色板来产生准确的颜色。 bmp文件的位图数据格式依赖于编码每个象素颜色所用的位数。对于一个256色的图象来说,每个象素占用文件中位图数据部分的一个字节。象素的值不是rgb颜色值,而是文件中色表的一个索引。所以在色表中如果第一个r/g/b值是255/0/0,那么象素值为0表示它是鲜红色,象素值按从左到右的顺序存储,通常从最后一行开始。所以在一个256色的文件中,位图数据中第一个字节就是图象左下角的象素的颜色索引,第二个就是它右边的那个象素的颜色索引。如果位图数据中每行的字节数是奇数,就要在每行都加一个附加的字节来调整位图数据边界为16位的整数倍。 并不是所有的bmp文件结构都象表中所列的那样,例如16和24-bpp,文件就没有色表,象素值直接表示rgb值,另外文件私有部分的内部存储格式也是可以变化的。例如,在16和256色.bmp文件中的位图数据采用rle算法来压缩,这种算法用颜色加象素个数来取代一串颜色相同的序列,而且,windows还支持os/2下的.bmp文件,尽管它使用了不同的位图信息头和色表格式。 pcx文件 .pcx是在pc上成为位图文件存储标准的第一种图象文件格式。它最早出现在zsoft公司的paintbrush软件包中,在80年代早期授权给微软与其产品捆绑发行,而后转变为microsoftpaintbrush,并成为windows的一部分。虽然使用这种格式的人在减少,但这种带有.pcx扩展名的文件在今天仍是十分常见的。 pcx文件分为三部分,依次为:pcx文件头,位图数据和一个可选的色表。文件头长达128个字节,分为几个域,包括图象的尺寸和每个象素颜色的编码位数。位图数据用一种简单的rle算法压缩,最后的可选色表有256个rgb值,pcx格式最初是为cga和ega来设计的,后来经过修改也支持vga和真彩色显示卡,现在pcx图象可以用1、4、8或24-bpp来对颜色数据进行编码。

常用图片格式分类

常见的图像文件格式又有哪些呢? 常见的图像文件格式又有哪些呢? 一、BMP格式 BMP是英文Bitmap(位图)的简写,它是Windows操作系统中的标准图像文件格式,能够被多种Windows应用程序所支持。随着Windows操作系统的流行与丰富的Windows应用程序的开发,BMP位图格式理所当然地被广泛应用。这种格式的特点是包含的图像信息较丰富,几乎不进行压缩,但由此导致了它与生俱生来的缺点--占用磁盘空间过大。所以,目前BMP在单机上比较流行。 二、GIF格式 GIF是英文Graphics Interchange Format(图形交换格式)的缩写。顾名思义,这种格式是用来交换图片的。事实上也是如此,上世纪80年代,美国一家著名的在线信息服务机构CompuServe针对当时网络传输带宽的限制,开发出了这种GIF图像格式。 GIF格式的特点是压缩比高,磁盘空间占用较少,所以这种图像格式迅速得到了广泛的应用。最初的GIF只是简单地用来存储单幅静止图像(称为GIF87a),后来随着技术发展,可以同时存储若干幅静止图象进而形成连续的动画,使之成为当时支持2D动画为数不多的格式之一(称为GIF89a),而在GIF89a图像中可指定透明区域,使图像具有非同一般的显示效果,这更使GIF 风光十足。目前Internet上大量采用的彩色动画文件多为这种格式的文件,也称为GIF89a格式 文件。 此外,考虑到网络传输中的实际情况,GIF图像格式还增加了渐显方式,也就是说,在图像传输过程中,用户可以先看到图像的大致轮廓,然后随着传输过程的继续而逐步看清图像中的细节部分,从而适应了用户的"从朦胧到清楚"的观赏心理。目前Internet上大量采用的彩色动画文 件多为这种格式的文件。 但GIF有个小小的缺点,即不能存储超过256色的图像。尽管如此,这种格式仍在网络上大行其道应用,这和GIF图像文件短小、下载速度快、可用许多具有同样大小的图像文件组成动画等 优势是分不开的。 三、JPEG格式 JPEG也是常见的一种图像格式,它由联合照片专家组(Joint Photographic Experts Group)开发并以命名为"ISO 10918-1",JPEG仅仅是一种俗称而已。JPEG文件的扩展名为.jpg或.jpeg,其压缩技术十分先进,它用有损压缩方式去除冗余的图像和彩色数据,获取得极高的压缩率的同时能展现十分丰富生动的图像,换句话说,就是可以用最少的磁盘空间得到较好的图像质量。 同时JPEG还是一种很灵活的格式,具有调节图像质量的功能,允许你用不同的压缩比例对这

photoshop常用图像文件格式

常用图像文件格式 1.PSD格式 PSD格式是Photoshop的专用格式,能保存图像数据的每一个细小部分,包括像素信息、图层信息、通道信息、蒙版信息、色彩模式信息,所以PSD格式的文件较大。而其中的一些内容在转存为其他格式时将会丢失,并且在储存为其他格式的文件时,有时会合并图像中的各图层及附加的蒙版信息,当再次编辑时会产生不少麻烦。因此,最好再备份一个PSD 格式的文件后再进行格式转换。 2.TIFF格式 TIFF格式是一种通用的图像文件格式,是除PSD格式外唯一能存储多个通道的文件格式。几乎所有的扫描仪和多数图像软件都支持该格式。该种格式支持RGB、CMYK、Lab 和灰度等色彩模式,它包含有非压缩方式和LZW压缩方式两种。 3.JPEG格式 JPEG格式也是比较常用的图像格式,压缩比例可大可小,被大多数的图形处理软件所支持。JPEG格式的图像还被广泛应用于网页的制作。该格式还支持CMYK、RGB和灰度色彩模式,但不支持Alpha通道。 4.BMP格式 BMP格式是标准的Windows及OS/2的图像文件格式,是Photoshop中最常用的位图格式。此种格式在保存文件时几乎不经过压缩,因此它的文件体积较大,占用的磁盘空间也较大。此种存储格式支持RGB、灰度、索引、位图等色彩模式,但不支持Alpha通道。它是Windows环境下最不容易出错的文件保存格式。 5.GIF格式 GIF格式是由CompuServe公司制定的,能保存背景透明化的图像形式,但只能处理256种色彩,常用于网络传输,其传输速度要比其他格式的文件快很多,并且可以将多张图像存储为一个文件形成动画效果。 6.PNG格式 PNG格式是CompuServe公司开发出来的格式,广泛应用于网络图像的编辑。它不同于GIF格式图像,除了能保存256色,还可以保存24位的真彩色图像,具有支持透明背景和消除锯齿边缘的功能,可在不失真的情况下进行压缩保存图像。在不久将来,PNG格式将会是未来网页中使用的一种标准图像格式。 PNG格式文件在RGB和灰度模式下支持Alpha通道,但是在索引颜色和位图模式下,不支持Alpha通道。 7.EPS格式 EPS格式为压缩的PostScript格式,可用于绘图或者排版,它最大的优点是可以在排版软件中以低分辨率预览,打印或者出胶片时以高分辨率输出,可以达到效果和图像输出质量两不耽误。EPS格式支持Photoshop里所有的颜色模式,其中在位图模式下还可以支持透明,并可以用来存储点阵图和向量图形。但不支持Alpha通道。 8.PDF格式 PDF格式是Adobe公司开发的Windows,MAC OS,UNIX和DOS系统的一种电子出版软件的文档格式。该格式源于PostScript Level2语言,因此可以覆盖矢量式图像和点阵式图像,且支持超链接。此文件是由Adobe Acrobat软件生成的文件格式,该格式文件可以存储多页信息,包含图形,文档的查找和导航功能。因此在使用该软件时不需要排版就可以获得图文混排的版面。由于该格式支持超文本链接,所以是网络下载经常使用的文件。

【精品】点阵图位图与矢量图的区别

点阵图(位图)与矢量图的区别 位图,也叫做点阵图,删格图象,像素图,简单的说,就是最小单位由象素构成的图,缩放会失真。矢量图,也叫做向量图,采用线条和填充的方式,可以随意改变形状和填充颜色,无论放大或缩小都不会失真,FLASH动画大多使用矢量图做的。教科书上写的不一定准确,不管是位图和矢量图,都可以叫图形,有位图图形,也有矢量图形。图片、图形和图像没有从属关系,说的都是图,只是叫法不同而已,图形重在形,就像工程图,图像重在像,就像效果图,都是图,只是侧重点不同而已。有些软件教科书硬性将图像规定为像素图是不正确的,将图形说成矢量图也是错误的,这种硬性规定是不正确的,至少是不严谨的。 计算机绘图分为点阵图(又称位图或栅格图像)和矢量图形两大类,认识他们的特色和差异,有助于创建、输入、输出编辑和应用数字图像。位图图像和矢量图形没有好坏之分,只是用途不同而已。因此,整合位图图像和矢量图形的优点,才是处理数字图像的最佳方式。

一、点阵图(Bitmap)(1)何谓点阵图及点阵图的特性?与下述基于矢量的绘图程序相比,像Photoshop这样的编辑照片程序则用于处理位图图像。当您处理位图图像时,可以优化微小细节,进行显著改动,以及增强效果。位图图像,亦称为点阵图像或绘制图像,是由称作像素(图片元素)的单个点组成的.这些点可以进行不同的排列和染色以构成图样。当放大位图时,可以看见赖以构成整个图像的无数单个方块.扩大位图尺寸的效果是增多单个像素,从而使线条和形状显得参差不齐。然而,如果从稍远的位置观看它,位图图像的颜色和形状又显得是连续的。由于每一个像素都是单独染色的,您可以通过以每次一个像素的频率操作选择区域而产生近似相片的逼真效果,诸如加深阴影和加重颜色.缩小位图尺寸也会使原图变形,因为此举是通过减少像素来使整个图像变小的。同样,由于位图图像是以排列的像素集合体形式创建的,所以不能单独操作(如移动)局部位图。

【免费下载】常见图片格式介绍

常见图片格式介绍 光栅图片 BMP:Windows 位图 Windows 位图可以用任何颜色深度(从黑白到24 位颜色)存储单个光栅图像。Windows 位图文件格式与其他Microsoft Windows 程序兼容。它不支持文件压缩,也不适用于Web 页。 从总体上看,Windows 位图文件格式的缺点超过了它的优点。为了保证照片图像的质量,请使用PNG 文件、JPEG 文件或TIFF 文件。BMP 文件适用于Windows 中的墙纸。 优点:BMP 支持 1 位到24 位颜色深度。 BMP 格式与现有Windows 程序(尤其是较旧的程序)广泛兼容。 缺点:BMP 不支持压缩,这会造成文件非常大。 BMP 文件不受Web 浏览器支持。 PCX:PC 画笔 “PC 画笔”图片(也被称为Z-Soft 位图)会以任何颜色深度存储单个光栅图像。画笔图片更广泛地用于较早的Windows 程

序和基于MS-DOS 的程序。画笔图片与许多较新的程序兼容。PCX 图片支持“行程长度编码”(RLE) 内部压缩。 优点:PCX 在许多基于Windows 的程序和基于MS-DOS 的程序间是标准格式。 PCX 支持内部压缩。 缺点:PCX 不受Web 浏览器支持。 PNG:可移植网络图形 PNG 图片以任何颜色深度存储单个光栅图像。PNG 是与平台无关的格式。 优点:PNG 支持高级别无损耗压缩。 PNG 支持alpha 通道透明度。 PNG 支持伽玛校正。 PNG 支持交错。 PNG 受最新的Web 浏览器支持。 缺点:较旧的浏览器和程序可能不支持PNG 文件。 作为Internet 文件格式,与JPEG 的有损耗压缩相比,PNG 提供的压缩量较少。 作为Internet 文件格式,PNG 对多图像文件或动画文件不提供任何支持。GIF 格式支持多图像文件和动画文件。

相关主题
文本预览
相关文档 最新文档