Acce .Image控件PictureData属性数组格式

文章作者 100test 发表时间 2007:10:10 12:46:02
来源 100Test.Com百考试题网


以下为EMF版(Access 2000及更高版本)的PictureData结构:

PictureData信息头
PictureData(0-7) PictureData信息头

EMF信息头
PictureData(8) iType As Long
PictureData(12) nSize As Long
PictureData(16) rclBounds{Long,Long,Long,Long}
PictureData(32) rclFrame{Long,Long,Long,Long}
PictureData(48) dSignature As Long
PictureData(52) nVersion As Long
PictureData(56) nBytes As Long
PictureData(60) nRecords As Long
PictureData(64) nHandles As Integer
PictureData(66) sReserved As Integer
PictureData(68) nDescription As Long
PictureData(72) offDescription As Long
PictureData(76) nPalEntries As Long
PictureData(80) szlDevice{Width As Long,Height As Long}
PictureData(88) szlMillimeters{Long,Long}
PictureData(96) cbPixelFormat As Long
PictureData(100) offPixelFormat As Long
PictureData(104) bOpenGL As Long
PictureData(108) szMicroMeters{Long,Long}

EMF数据段
PictureData(116)~结尾

【PictureData信息头】

PictureData(0)指定整个图形的格式:
  DIB:设备无关图元(=40),文件头长度为40,其后为像素数据。
  WMF:Windows MetaFile(=3),文件头长度为8,其后为WMF。
  EMF:Enhanced MetaFile(=14),文件头长度为8,其后为EMF。
Access97及以下版本使用DIB和WMF,Access 2000及以上版本使用DIB/WMF/EMF。

【EMF信息头】

iType指定BMP版本:
  BMP3.0:BITMAPINFOHEADER(=40)也就是DIB
  BMP4.0:BITMAPV4HEADER(=108)
  BMP5.0:BITMAPV5HEADER(=124)
实际上,iType等价于文件头的长度,PictureData(8)~PictureData(8 iType)即图形信息头的全部内容。

【EMF数据段】

由多条EMF记录(EMR)构成,每条记录均包含EMR定义和EMR参数。(EMF信息头其实也是一条特殊的EMR,同样符合EMR格式定义)

EMR定义:
iType As Long
nSize As Long

EMR.iType
EMR_HEADER 1
EMR_POLYBEZIER 2
EMR_POLYGON 3
EMR_POLYLINE 4
EMR_POLYBEZIERTO 5
EMR_POLYLINETO 6
EMR_POLYPOLYLINE 7
EMR_POLYPOLYGON 8
EMR_SETWINDOWEXTEX 9
EMR_SETWINDOWORGEX 10
EMR_SETVIEWPORTEXTEX 11
EMR_SETVIEWPORTORGEX 12
EMR_SETBRUSHORGEX 13
EMR_EOF 14
EMR_SETPIXELV 15
EMR_SETMAPPERFLAGS 16
EMR_SETMAPMODE 17
EMR_SETBKMODE 18
EMR_SETPOLYFILLMODE 19
EMR_SETROP2 20
EMR_SETSTRETCHBLTMODE 21
EMR_SETTEXTALIGN 22
EMR_SETCOLORADJUSTMENT 23
EMR_SETTEXTCOLOR 24
EMR_SETBKCOLOR 25
EMR_OFFSETCLIPRGN 26
EMR_MOVETOEX 27
EMR_SETMETARGN 28
EMR_EXCLUDECLIPRECT 29
EMR_INTERSECTCLIPRECT 30
EMR_SCALEVIEWPORTEXTEX 31
EMR_SCALEWINDOWEXTEX 32
EMR_SAVEDC 33
EMR_RESTOREDC 34
EMR_SETWORLDTRANSFORM 35
EMR_MODIFYWORLDTRANSFORM 36
EMR_SELECTOBJECT 37
EMR_CREATEPEN 38
EMR_CREATEBRUSHINDIRECT 39
EMR_DELETEOBJECT 40
EMR_ANGLEARC 41
EMR_ELLIPSE 42
EMR_RECTANGLE 43
EMR_ROUNDRECT 44
EMR_ARC 45
EMR_CHORD 46
EMR_PIE 47
EMR_SELECTPALETTE 48
EMR_CREATEPALETTE 49
EMR_SETPALETTEENTRIES 50
EMR_RESIZEPALETTE 51
EMR_REALIZEPALETTE 52
EMR_EXTFLOODFILL 53
EMR_LINETO 54
EMR_ARCTO 55
EMR_POLYDRAW 56
EMR_SETARCDIRECTION 57
EMR_SETMITERLIMIT &.nbs


相关文章


Acce 支持三表或三表以上的join操作
长假后谨防利用ACCE 漏洞木马
Acce .Image控件PictureData属性数组格式
关于ACCE 中默认保存路径的修改方法
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛