Windows Metafil

Windows Metafil
Udvidelse .wmf, .wmz
MIME -type billede/x-wmf
Udvikler Microsoft
Formattype Vektorgrafik
Udviklet i EMF
Internet side docs.microsoft.com/en-us...
Forbedret metafil
Udvidelse .emf, .emz
MIME -type billede/x-emf
Udvikler Microsoft
Formattype Vektorgrafik
Udvidet fra WMF
Internet side docs.microsoft.com/en-us...

WMF ( engelsk  Windows MetaFile ) er et universelt vektorgrafikfilformat til Windows - applikationer. Bruges til at gemme en samling af Microsoft Clip Gallery- grafiske billeder . Formatet er udviklet af Microsoft og er en integreret del af Windows, da det bevarer en sekvens af hardware-uafhængige GDI -funktioner (Graphical Device Interface), der direkte udsender et billede til en given grafikenhedskontekst (skærm, printer osv.). Meget ofte bruges WMF implicit til at gemme et billede af et programs outputvindue og gendanne det senere, såvel som når der overføres information gennem udklipsholderen. Fra MS Windows er det ekstremt nemt og hurtigt at skrive og læse til en fil i dette format. En fil i dette format kan åbnes med programmerne på tværs af platforme GIMP (for-rasteriseret) og Inkscape . På Macintosh-platformen spiller PICT -formatet en lignende rolle .

Som et vektorgrafikformat understøttes WMF i varierende grad af mange kraftfulde applikationer - AutoCAD , OpenOffice.org , Adobe Illustrator , og kan bruges til at udveksle data mellem dem.

Filstruktur

WMF- og EMF-filer består af en liste over poster, som hver repræsenterer en specifik kommando med et sæt argumenter. WMF- og EMF-postformaterne ligner hinanden, men de vigtigste forskelle er:

Liste over WMF- og EMF-posttyper

WMF rekord WMF record kode EMF rekord EMF registreringskode Beskrivelse
EMR_HEADER 0x00000001 header
EMR_POLYBEZIER 0x00000002
EMR_POLYBEZIER16 0x00000055
META_POLYGON 0x0324 EMR_POLYGON 0x00000003 Tegn en lukket polylinje
EMR_POLYGON16 0x00000056
META_POLYLINE 0x0325 EMR_POLYLINE 0x00000004
EMR_POLYLINE16 0x00000057
EMR_POLYBEZIERTO 0x00000005
EMR_POLYBEZIERTO16 0x00000058
META_POLYPOLYGON 0x0538 EMR_POLYPOLYGON 0x00000008
EMR_POLYPOLYGON16 0x0000005B
META_SETWINDOWEXT 0x020C EMR_SETWINDOWEXTEX 0x00000009 Indstil vinduesdimensioner (bredde og højde)
META_SETWINDOWORG 0x020B EMR_SETWINDOWORGEX 0x0000000A Indstil placeringen af ​​vinduets øverste venstre hjørne (x og y)
META_SETVIEWPORTEXT 0x020E EMR_SETVIEWPORTEXTEX 0x0000000B Indstil outputenhedens dimensioner (bredde og højde)
META_SETVIEWPORTORG 0x020D EMR_SETVIEWPORTORGEX 0x0000000C Indstil placeringen af ​​det øverste venstre hjørne af outputenheden (x og y)
EMR_SETBRUSHORGEX 0x0000000D
META_EOF 0x0000 EMR_EOF 0x0000000E Slut på fil
EMR_SETPIXELV 0x0000000F
META_SETMAPPERFLAGS 0x0231 EMR_SETMAPPERFLAGS 0x00000010
META_SETMAPMODE 0x0103 EMR_SETMAPMODE 0x00000011 Angiver tilstanden for konvertering af logiske vinduesenheder til outputenheder
META_SETBKMODE 0x0102 EMR_SETBKMODE 0x00000012 Indstil udfyldningstilstand (0 - udfyldning, 1 - udfyldning på)
META_SETPOLYFILLMODE 0x0106 EMR_SETPOLYFILLMODE 0x00000013
META_SETROP2 0x0104 EMR_SETROP2 0x00000014 Indstil en boolesk operation, når du tegner (for at overlejre et gennemsigtigt/omvendt billede osv.)
META_SETSTRETCHBLTMODE 0x0107 EMR_SETSTRETCHBLTMODE 0x00000015
META_SETTEXTALIGN 0x012E EMR_SETTEXTALIGN 0x00000016 Indstil vandret og lodret justering (angivet ved hjælp af flag kombineret via logisk ELLER)
EMR_SETCOLORADJUSTMENT 0x00000017
META_SETTEXTCOLOR 0x0209 EMR_SETTEXTCOLOR 0x00000018 Indstil tekstfarve (32-bit RGB0)
META_SETBKCOLOR 0x0201 EMR_SETBKCOLOR 0x00000019 Indstil fyldfarve (32-bit RGB0)
META_OFFSETCLIPRGN 0x0220 EMR_OFFSETCLIPRGN 0x0000001A
META_MOVETO 0x0214 EMR_MOVETOEX 0x0000001B
META_EXCLUDECLIPRECT 0x0415 EMR_EXCLUDECLIPRECT 0x0000001D
META_INTERSECTCLIPRECT 0x0416 EMR_INTERSECTCLIPRECT 0x0000001E
META_SCALEVIEWPORTEXT 0x0412 EMR_SCALEVIEWPORTEXTEX 0x0000001F Stræk outputenheden vandret og lodret (to brøkfaktorer er angivet, x og y, hver som to heltal - brøkens tæller og nævner)
META_SCALEWINDOWEXT 0x0410 EMR_SCALEWINDOWEXTEX 0x00000020 Stræk vinduet vandret og lodret (to brøkfaktorer er angivet, x og y, hver i form af to heltal - brøkens tæller og nævner)
META_RESTOREDC 0x0127 EMR_RESTOREDC 0x00000022 Gendan outputenhedens tilstand til den, der tidligere er gemt med SAVEDC-kommandoen
META_SELECTOBJECT 0x012D EMR_SELECTOBJECT 0x00000025
META_CREATEBRUSHINDIRECT 0x02FC EMR_CREATEBRUSHINDIRECT 0x00000027
META_DELETEOBJECT 0x01f0 EMR_DELETEOBJECT 0x00000028
EMR_ANGLEARC 0x00000029
META_ELLIPSE 0x0418 EMR_ELLIPSE 0x0000002A
META_REKTANGLE 0x041B EMR_RECTANGLE 0x0000002B
META_ROUNDRECT 0x061C EMR_ROUNDRECT 0x0000002C
META_ARC 0x0817 EMR_ARC 0x0000002D
META_CHORD 0x0830 EMR_CHORD 0x0000002E
META_PIE 0x081A EMR_PIE 0x0000002F
META_SELECTPALETTE 0x0234 EMR_SELECTPALETTE 0x00000030
META_CREATEPALETTE 0x00f7 EMR_CREATEPALETTE 0x00000031
META_SETPALENTRIES 0x0037 EMR_SETPALETTENTRIES 0x00000032 Indstil palet
META_RESIZEPALET 0x0139 EMR_RESIZEPALETTE 0x00000033
META_EXTFLOEDFILL 0x0548 EMR_EXTFLOODFILL 0x00000035
META_LINETO 0x0213 EMR_LINETO 0x00000036
EMR_ARCTO 0x00000037
EMR_SETARCDIRECTION 0x00000039
EMR_SETMITERLIMIT 0x0000003A
EMR_STROKEPATH 0x00000040
EMR_COMMENT 0x00000046
META_FILLREGION 0x0228 EMR_FILLRGN 0x00000047
META_INVERTREGION 0x012A EMR_INVERTRGN 0x00000049 Inverter farver i et område defineret af foreningen af ​​flere rektangler
META_PAINTREGION 0x012B EMR_PAINTRGN 0x0000004A
META_SELECTCLIPREGION 0x012C EMR_EXTSELECTCLIPRGN 0x0000004B
META_BITBLT 0x0922 EMR_BITBLT 0x0000004C
META_STRETCHBLT 0x0B23 EMR_STRETCHBLT 0x0000004D
META_SETDIBTODEV 0x0d33 EMR_SETDIBITSTODEVICE 0x00000050
META_DIBSTRETCHBLT 0x0b41 EMR_STRETCHDIBITS 0x00000051
META_CREATEFONTINDIRECT 0x02FB EMR_EXTCREATEFONTINDIRECTW 0x00000052
META_CREATEPENINDIRECT 0x02FA EMR_EXTCREATEPEN 0x0000005F
EMR_SETICMMODE 0x00000062
EMR_CREATECOLORSPACE 0x00000063
EMR_SETCOLORSPACE 0x00000064
EMR_DELETECOLORSPACE 0x00000065
EMR_GLSRECORD 0x00000066
EMR_GLSBOUNDEDRECORD 0x00000067
EMR_PIXELFORMAT 0x00000068
EMR_FORCEUFIMAPPING 0x0000006D
EMR_COLORCORRECTPALETTE 0x0000006F
EMR_SETICMPROFILEA 0x00000070
EMR_SETICMPROFILEW 0x00000071
META_SETLAYOUT 0x0149 EMR_SETLAYOUT 0x00000073 Indstiller retningen for visning af tekst og billeder - venstre mod højre eller højre mod venstre (i sidstnævnte tilfælde kan du angive, om du vil vise billeder vendt fra venstre mod højre)
EMR_GRADIENTFILL 0x00000076
EMR_SETLINKEDUFIS 0x00000077
META_SETTEXTJUSTIFICATION 0x020A EMR_SETTEXT JUSTIFICATION 0x00000078
META_REALISEPALET 0x0035
META_SETRELABS 0x0105
META_SETTEXTCHAREXTRA 0x0108
META_DIBCREATEPATTERNBRUSH 0x0142
META_OFFSETVIEWPORTORG 0x0211
META_OFFSETWINDOWORG 0x020F
META_FLOODFILL 0x0419
META_FRAMEREGION 0x0429
META_ANIMATEPALETT 0x0436
META_TEXTOUT 0x0521
META_SETPIXEL 0x041F
META_PATBLT 0x061D
META_SAVEDC 0x001E Gem outputenhedens tilstand
META_ESCAPE 0x0626
META_DIBBITBLT 0x0940
META_EXTTEXTOUT 0x0a32
META_STRETCHDIB 0x0f43
META_CREATEPATTERNBRUSH 0x01F9
META_CREATEREGION 0x06FF

Links