332 #define U_WMR_MAX 255
333 #define U_WMR_MASK 0xFF
334 #define U_WMR_INVALID 0xFFFFFFFF
346 #define BI_BITCOUNT_0 U_BCBM_EXPLICIT
347 #define BI_BITCOUNT_1 U_BCBM_MONOCHROME
348 #define BI_BITCOUNT_2 U_BCBM_COLOR4
349 #define BI_BITCOUNT_3 U_BCBM_COLOR8
350 #define BI_BITCOUNT_4 U_BCBM_COLOR16
351 #define BI_BITCOUNT_5 U_BCBM_COLOR24
352 #define BI_BITCOUNT_6 U_BCBM_COLOR32
370 #define U_DIB_PAL_INDICES 2
378 #define U_BI_CMYK 0x000B
379 #define U_BI_CMYKRLE8 0x000C
380 #define U_BI_CMYKRLE4 = 0x000D
414 #define U_LCS_sRGB 0x73524742
415 #define U_LCS_WINDOWS_COLOR_SPACE 0x57696E20
431 #define U_MFE_NEWFRAME 0x0001
432 #define U_MFE_ABORTDOC 0x0002
433 #define U_MFE_NEXTBAND 0x0003
434 #define U_MFE_SETCOLORTABLE 0x0004
435 #define U_MFE_GETCOLORTABLE 0x0005
436 #define U_MFE_FLUSHOUT 0x0006
437 #define U_MFE_DRAFTMODE 0x0007
438 #define U_MFE_QUERYESCSUPPORT 0x0008
439 #define U_MFE_SETABORTPROC 0x0009
440 #define U_MFE_STARTDOC 0x000A
441 #define U_MFE_ENDDOC 0x000B
442 #define U_MFE_GETPHYSPAGESIZE 0x000C
443 #define U_MFE_GETPRINTINGOFFSET 0x000D
444 #define U_MFE_GETSCALINGFACTOR 0x000E
445 #define U_MFE_META_ESCAPE_ENHANCED_METAFILE 0x000F
446 #define U_MFE_SETPENWIDTH 0x0010
447 #define U_MFE_SETCOPYCOUNT 0x0011
448 #define U_MFE_SETPAPERSOURCE 0x0012
449 #define U_MFE_PASSTHROUGH 0x0013
450 #define U_MFE_GETTECHNOLOGY 0x0014
451 #define U_MFE_SETLINECAP 0x0015
452 #define U_MFE_SETLINEJOIN 0x0016
453 #define U_MFE_SETMITERLIMIT 0x0017
454 #define U_MFE_BANDINFO 0x0018
455 #define U_MFE_DRAWPATTERNRECT 0x0019
456 #define U_MFE_GETVECTORPENSIZE 0x001A
457 #define U_MFE_GETVECTORBRUSHSIZE 0x001B
458 #define U_MFE_ENABLEDUPLEX 0x001C
459 #define U_MFE_GETSETPAPERBINS 0x001D
460 #define U_MFE_GETSETPRINTORIENT 0x001E
461 #define U_MFE_ENUMPAPERBINS 0x001F
462 #define U_MFE_SETDIBSCALING 0x0020
463 #define U_MFE_EPSPRINTING 0x0021
464 #define U_MFE_ENUMPAPERMETRICS 0x0022
465 #define U_MFE_GETSETPAPERMETRICS 0x0023
466 #define U_MFE_POSTSCRIPT_DATA 0x0025
467 #define U_MFE_POSTSCRIPT_IGNORE 0x0026
468 #define U_MFE_GETDEVICEUNITS 0x002A
469 #define U_MFE_GETEXTENDEDTEXTMETRICS 0x0100
470 #define U_MFE_GETPAIRKERNTABLE 0x0102
471 #define U_MFE_EXTTEXTOUT 0x0200
472 #define U_MFE_GETFACENAME 0x0201
473 #define U_MFE_DOWNLOADFACE 0x0202
474 #define U_MFE_METAFILE_DRIVER 0x0801
475 #define U_MFE_QUERYDIBSUPPORT 0x0C01
476 #define U_MFE_BEGIN_PATH 0x1000
477 #define U_MFE_CLIP_TO_PATH 0x1001
478 #define U_MFE_END_PATH 0x1002
479 #define U_MFE_OPEN_CHANNEL 0x100E
480 #define U_MFE_DOWNLOADHEADER 0x100F
481 #define U_MFE_CLOSE_CHANNEL 0x1010
482 #define U_MFE_POSTSCRIPT_PASSTHROUGH 0x1013
483 #define U_MFE_ENCAPSULATED_POSTSCRIPT 0x1014
484 #define U_MFE_POSTSCRIPT_IDENTIFY 0x1015
485 #define U_MFE_POSTSCRIPT_INJECTION 0x1016
486 #define U_MFE_CHECKJPEGFORMAT 0x1017
487 #define U_MFE_CHECKPNGFORMAT 0x1018
488 #define U_MFE_GET_PS_FEATURESETTING 0x1019
489 #define U_MFE_MXDC_ESCAPE 0x101A
490 #define U_MFE_SPCLPASSTHROUGH2 0x11D8
496 #define U_MEMORYMETAFILE 0x0001
497 #define U_DISKMETAFILE 0x0002
504 #define U_METAVERSION100 0x0100
505 #define U_METAVERSION300 0x0300
519 #define U_PC_RESERVED 0x01
520 #define U_PC_EXPLICIT 0x02
521 #define U_PC_NOCOLLAPSE 0x04
546 #define U_WPS_CAP_NOTSET -2
547 #define U_WPS_CAP_FLAT 0
548 #define U_WPS_CAP_ROUND 1
549 #define U_WPS_CAP_SQUARE 2
562 #define U_WPS_JOIN_NOTSET -2
563 #define U_WPS_JOIN_MITER 0
564 #define U_WPS_JOIN_ROUND 1
565 #define U_WPS_JOIN_BEVEL 2
626 #define U_SIZE_PAIRF 8
627 #define U_SIZE_COLORREF 4
628 #define U_SIZE_BRUSH 8
629 #define U_SIZE_FONT 19
630 #define U_SIZE_FONT_CORE 18
631 #define U_SIZE_PLTNTRY 4
632 #define U_SIZE_PALETTE 8
633 #define U_SIZE_PEN 10
634 #define U_SIZE_POINT16 4
635 #define U_SIZE_RECT16 8
636 #define U_SIZE_REGION 20
637 #define U_SIZE_BITMAP16 10
638 #define U_SIZE_BITMAPCOREHEADER 12
639 #define U_SIZE_BITMAPINFOHEADER 40
640 #define U_SIZE_BITMAPV4HEADER 108
641 #define U_SIZE_BITMAPV5HEADER 124
642 #define U_SIZE_WLOGBRUSH 8
643 #define U_SIZE_POLYPOLYGON 4
644 #define U_SIZE_SCAN 8
645 #define U_SIZE_METARECORD 6
646 #define U_SIZE_WMRPLACEABLE 22
647 #define U_SIZE_WMRHEADER 18
648 #define U_SIZE_WMREOF 6
649 #define U_SIZE_WMRSETRELABS 6
650 #define U_SIZE_WMRSAVEDC 6
651 #define U_SIZE_WMRRESTOREDC 8
652 #define U_SIZE_WMRREALIZEPALETTE 6
653 #define U_SIZE_WMRSETBKCOLOR 10
654 #define U_SIZE_WMRSETTEXTCOLOR 10
655 #define U_SIZE_WMRSETBKMODE 8
656 #define U_SIZE_WMRSETROP2 8
657 #define U_SIZE_WMRSETPOLYFILLMODE 8
658 #define U_SIZE_WMRSETSTRETCHBLTMODE 8
659 #define U_SIZE_WMRSETTEXTALIGN 8
660 #define U_SIZE_WMRSETMAPMODE 8
661 #define U_SIZE_WMRSETTEXTCHAREXTRA 8
662 #define U_SIZE_WMRSETTEXTJUSTIFICATION 10
663 #define U_SIZE_WMRSETWINDOWORG 10
664 #define U_SIZE_WMRSETWINDOWEXT 10
665 #define U_SIZE_WMRSETVIEWPORTORG 10
666 #define U_SIZE_WMRSETVIEWPORTEXT 10
667 #define U_SIZE_WMROFFSETWINDOWORG 10
668 #define U_SIZE_WMROFFSETVIEWPORTORG 10
669 #define U_SIZE_WMRLINETO 10
670 #define U_SIZE_WMRMOVETO 10
671 #define U_SIZE_WMROFFSETCLIPRGN 10
672 #define U_SIZE_WMRSCALEWINDOWEXT 14
673 #define U_SIZE_WMRSCALEVIEWPORTEXT 14
674 #define U_SIZE_WMREXCLUDECLIPRECT 14
675 #define U_SIZE_WMRINTERSECTCLIPRECT 14
676 #define U_SIZE_WMRARC 22
677 #define U_SIZE_WMRELLIPSE 14
678 #define U_SIZE_WMRRECTANGLE 14
679 #define U_SIZE_WMRFLOODFILL 16
680 #define U_SIZE_WMREXTFLOODFILL 16
681 #define U_SIZE_WMRSETPIXEL 14
682 #define U_SIZE_WMRPIE 22
683 #define U_SIZE_WMRCHORD 22
684 #define U_SIZE_WMRROUNDRECT 18
685 #define U_SIZE_WMRPATBLT 18
686 #define U_SIZE_WMRTEXTOUT 8
687 #define U_SIZE_WMRBITBLT_NOPX 24
688 #define U_SIZE_WMRBITBLT_PX 22
689 #define U_SIZE_WMRSTRETCHBLT_NOPX 28
690 #define U_SIZE_WMRSTRETCHBLT_PX 26
691 #define U_SIZE_WMRPOLYGON 10
692 #define U_SIZE_WMRPOLYLINE 10
693 #define U_SIZE_WMRESCAPE 10
694 #define U_SIZE_WMRFILLREGION 10
695 #define U_SIZE_WMRFRAMEREGION 14
696 #define U_SIZE_WMRINVERTREGION 8
697 #define U_SIZE_WMRPAINTREGION 8
698 #define U_SIZE_WMRSELECTCLIPREGION 8
699 #define U_SIZE_WMRSELECTOBJECT 8
700 #define U_SIZE_WMRSELECTPALETTE 8
701 #define U_SIZE_WMRRESIZEPALETTE 8
702 #define U_SIZE_WMRDELETEOBJECT 8
703 #define U_SIZE_WMRDRAWTEXT 6
704 #define U_SIZE_WMRCREATEBITMAPINDIRECT 6
705 #define U_SIZE_WMRCREATEBITMAP 6
706 #define U_SIZE_WMRSETMAPPERFLAGS 10
707 #define U_SIZE_WMREXTTEXTOUT 14
708 #define U_SIZE_WMRSETDIBTODEV 22
709 #define U_SIZE_WMRANIMATEPALETTE 14
710 #define U_SIZE_WMRSETPALENTRIES 14
711 #define U_SIZE_WMRCREATEPALETTE 14
712 #define U_SIZE_WMRPOLYPOLYGON 10
713 #define U_SIZE_WMRDIBBITBLT_NOPX 24
714 #define U_SIZE_WMRDIBBITBLT_PX 22
715 #define U_SIZE_WMRDIBSTRETCHBLT_NOPX 28
716 #define U_SIZE_WMRDIBSTRETCHBLT_PX 26
717 #define U_SIZE_WMRDIBCREATEPATTERNBRUSH 10
718 #define U_SIZE_WMRSTRETCHDIB 28
719 #define U_SIZE_WMRCREATEPATTERNBRUSH 6
720 #define U_SIZE_WMRCREATEPENINDIRECT 16
721 #define U_SIZE_WMRCREATEFONTINDIRECT 26
722 #define U_SIZE_WMRCREATEBRUSHINDIRECT 14
723 #define U_SIZE_WMRCREATEREGION 26
727 // ***************************************************************************
736 #define U_TEST_NOPX2(A,B) (A == (uint32_t) (B + 3))
737 #define U_TEST_NOPXB(A,B) (A/2 == (uint32_t) (B + 3))
738 #define U_WMRTYPE(A) (((U_METARECORD *)A)->iType)
739 #define U_WMRXB(A) (((U_METARECORD *)A)->xb)
740 #define U_WMR_XB_FROM_TYPE(A) ((uint8_t) (U_wmr_values(A)>>8))
741 #define U_U16(A) (*(uint16_t *)&A)
742 #define U_P16(A) ( (uint16_t *)&A)
743 #define U_PP16(A) ( (uint16_t *) A)
838 #define U_RCL16_DEF (U_RECT16){0,0,-1,-1}
893 uint16_t bV4BitCount;
894 uint32_t bV4Compression;
895 uint32_t bV4SizeImage;
896 int32_t bV4XPelsPerMeter;
897 int32_t bV4YPelsPerMeter;
899 uint32_t bV4ClrImportant;
901 uint32_t bV4GreenMask;
902 uint32_t bV4BlueMask;
903 uint32_t bV4AlphaMask;
906 uint32_t bV4GammaRed;
907 uint32_t bV4GammaGreen;
908 uint32_t bV4GammaBlue;
919 uint16_t bV5BitCount;
920 uint32_t bV5Compression;
921 uint32_t bV5SizeImage;
922 int32_t bV5XPelsPerMeter;
923 int32_t bV5YPelsPerMeter;
925 uint32_t bV5ClrImportant;
927 uint32_t bV5GreenMask;
928 uint32_t bV5BlueMask;
929 uint32_t bV5AlphaMask;
932 uint32_t bV5GammaRed;
933 uint32_t bV5GammaGreen;
934 uint32_t bV5GammaBlue;
936 uint32_t bV5ProfileData;
937 uint32_t bV5ProfileSize;
938 uint32_t bV5Reserved;
1021 uint16_t aPolyCounts[1];
1047 uint16_t ScanLines[1];
1062 uint16_t Size16_4[2];
1102 uint16_t Size16_4[2];
1114 uint16_t Size16_4[2];
1126 uint16_t Size16_4[2];
1142 uint16_t Size16_4[2];
1164 uint16_t Size16_4[2];
1185 uint16_t Size16_4[2];
1206 uint16_t Size16_4[2];
1229 uint16_t Size16_4[2];
1243 uint16_t Size16_4[2];
1262 uint16_t Size16_4[2];
1278 uint16_t Size16_4[2];
1294 uint16_t Size16_4[2];
1314 uint16_t Size16_4[2];
1330 uint16_t Size16_4[2];
1346 uint16_t Size16_4[2];
1366 uint16_t Size16_4[2];
1384 uint16_t Size16_4[2];
1406 uint16_t Size16_4[2];
1430 uint16_t Size16_4[2];
1455 uint16_t Size16_4[2];
1476 uint16_t Size16_4[2];
1488 uint16_t Size16_4[2];
1500 uint16_t Size16_4[2];
1510 uint16_t Size16_4[2];
1521 uint16_t Size16_4[2];
1542 uint16_t Size16_4[2];
1564 uint16_t Size16_4[2];
1577 uint16_t Size16_4[2];
1596 uint16_t Size16_4[2];
1611 uint16_t Size16_4[2];
1637 uint16_t Size16_4[2];
1649 uint16_t Size16_4[2];
1669 uint16_t Size16_4[2];
1692 uint16_t Size16_4[2];
1716 uint16_t Size16_4[2];
1741 uint16_t Size16_4[2];
1769 uint16_t Size16_4[2];
1781 uint16_t Size16_4[2];
1976 uint16_t Size16_4[2];
1985 uint16_t Size16_4[2];
1995 uint16_t Size16_4[2];
2005 uint16_t Size16_4[2];
2019 uint16_t Size16_4[2];
2067 char *
wmr_dup(
const char *wmr);
2068 int wmf_start(
const char *name, uint32_t initsize, uint32_t chunksize,
WMFTRACK **wt);
2073 int wmf_readdata(
const char *filename,
char **contents,
size_t*length);
2074 #define wmf_fopen emf_fopen
2080 int16_t *
dx16_set( int32_t height, uint32_t weight, uint32_t members);
2091 U_FONT *
U_FONT_set(int16_t Height, int16_t Width, int16_t Escapement, int16_t Orientation,
2092 int16_t Weight, uint8_t Italic, uint8_t Underline, uint8_t StrikeOut,
2093 uint8_t CharSet, uint8_t OutPrecision, uint8_t ClipPrecision,
2094 uint8_t Quality, uint8_t PitchAndFamily,
char *FaceName);
2100 const int16_t LineN,
const uint8_t BitsPixel,
const char *Bits);
2101 U_SCAN *
U_SCAN_set(uint16_t count, uint16_t top, uint16_t bottom, uint16_t *ScanLines);
2111 uint32_t iUsage,
const U_BITMAPINFO *Bmi, uint32_t cbPx,
const char *Px);
2167 char *
U_WMRESCAPE_set(uint16_t Escape, uint16_t Length,
const void *Data);
2187 char *U_WMR3A_set(
void);
2188 char *U_WMR3B_set(
void);
2189 char *U_WMR3C_set(
void);
2190 char *U_WMR3D_set(
void);
2191 char *U_WMR3E_set(
void);
2192 char *U_WMR3F_set(
void);
2194 uint32_t dwRop3,
const U_BITMAPINFO * Bmi, uint32_t cbPx,
const char *Px);
2200 const uint16_t cUsage, uint32_t dwRop3,
const U_BITMAPINFO *Bmi, uint32_t cbPx,
const char *Px);
2201 char *U_WMR44_set(
void);
2202 char *U_WMR45_set(
void);
2203 char *U_WMR46_set(
void);
2204 char *U_WMR47_set(
void);
2206 char *U_WMR49_set(
void);
2207 char *U_WMR4A_set(
void);
2208 char *U_WMR4B_set(
void);
2209 char *U_WMR4C_set(
void);
2210 char *U_WMR4D_set(
void);
2211 char *U_WMR4E_set(
void);
2212 char *U_WMR4F_set(
void);
2213 char *U_WMR50_set(
void);
2214 char *U_WMR51_set(
void);
2215 char *U_WMRABORTDOC_set(
void);
2216 char *U_WMR53_set(
void);
2217 char *U_WMR54_set(
void);
2218 char *U_WMR55_set(
void);
2219 char *U_WMR56_set(
void);
2220 char *U_WMR57_set(
void);
2221 char *U_WMR58_set(
void);
2222 char *U_WMR59_set(
void);
2223 char *U_WMR5A_set(
void);
2224 char *U_WMR5B_set(
void);
2225 char *U_WMR5C_set(
void);
2226 char *U_WMR5D_set(
void);
2227 char *U_WMR5E_set(
void);
2228 char *U_WMR5F_set(
void);
2229 char *U_WMR60_set(
void);
2230 char *U_WMR61_set(
void);
2231 char *U_WMR62_set(
void);
2232 char *U_WMR63_set(
void);
2233 char *U_WMR64_set(
void);
2234 char *U_WMR65_set(
void);
2235 char *U_WMR66_set(
void);
2236 char *U_WMR67_set(
void);
2237 char *U_WMR68_set(
void);
2238 char *U_WMR69_set(
void);
2239 char *U_WMR6A_set(
void);
2240 char *U_WMR6B_set(
void);
2241 char *U_WMR6C_set(
void);
2242 char *U_WMR6D_set(
void);
2243 char *U_WMR6E_set(
void);
2244 char *U_WMR6F_set(
void);
2245 char *U_WMR70_set(
void);
2246 char *U_WMR71_set(
void);
2247 char *U_WMR72_set(
void);
2248 char *U_WMR73_set(
void);
2249 char *U_WMR74_set(
void);
2250 char *U_WMR75_set(
void);
2251 char *U_WMR76_set(
void);
2252 char *U_WMR77_set(
void);
2253 char *U_WMR78_set(
void);
2254 char *U_WMR79_set(
void);
2255 char *U_WMR7A_set(
void);
2256 char *U_WMR7B_set(
void);
2257 char *U_WMR7C_set(
void);
2258 char *U_WMR7D_set(
void);
2259 char *U_WMR7E_set(
void);
2260 char *U_WMR7F_set(
void);
2261 char *U_WMR80_set(
void);
2262 char *U_WMR81_set(
void);
2263 char *U_WMR82_set(
void);
2264 char *U_WMR83_set(
void);
2265 char *U_WMR84_set(
void);
2266 char *U_WMR85_set(
void);
2267 char *U_WMR86_set(
void);
2268 char *U_WMR87_set(
void);
2269 char *U_WMR88_set(
void);
2270 char *U_WMR89_set(
void);
2271 char *U_WMR8A_set(
void);
2272 char *U_WMR8B_set(
void);
2273 char *U_WMR8C_set(
void);
2274 char *U_WMR8D_set(
void);
2275 char *U_WMR8E_set(
void);
2276 char *U_WMR8F_set(
void);
2277 char *U_WMR90_set(
void);
2278 char *U_WMR91_set(
void);
2279 char *U_WMR92_set(
void);
2280 char *U_WMR93_set(
void);
2281 char *U_WMR94_set(
void);
2282 char *U_WMR95_set(
void);
2283 char *U_WMR96_set(
void);
2284 char *U_WMR97_set(
void);
2285 char *U_WMR98_set(
void);
2286 char *U_WMR99_set(
void);
2287 char *U_WMR9A_set(
void);
2288 char *U_WMR9B_set(
void);
2289 char *U_WMR9C_set(
void);
2290 char *U_WMR9D_set(
void);
2291 char *U_WMR9E_set(
void);
2292 char *U_WMR9F_set(
void);
2293 char *U_WMRA0_set(
void);
2294 char *U_WMRA1_set(
void);
2295 char *U_WMRA2_set(
void);
2296 char *U_WMRA3_set(
void);
2297 char *U_WMRA4_set(
void);
2298 char *U_WMRA5_set(
void);
2299 char *U_WMRA6_set(
void);
2300 char *U_WMRA7_set(
void);
2301 char *U_WMRA8_set(
void);
2302 char *U_WMRA9_set(
void);
2303 char *U_WMRAA_set(
void);
2304 char *U_WMRAB_set(
void);
2305 char *U_WMRAC_set(
void);
2306 char *U_WMRAD_set(
void);
2307 char *U_WMRAE_set(
void);
2308 char *U_WMRAF_set(
void);
2309 char *U_WMRB0_set(
void);
2310 char *U_WMRB1_set(
void);
2311 char *U_WMRB2_set(
void);
2312 char *U_WMRB3_set(
void);
2313 char *U_WMRB4_set(
void);
2314 char *U_WMRB5_set(
void);
2315 char *U_WMRB6_set(
void);
2316 char *U_WMRB7_set(
void);
2317 char *U_WMRB8_set(
void);
2318 char *U_WMRB9_set(
void);
2319 char *U_WMRBA_set(
void);
2320 char *U_WMRBB_set(
void);
2321 char *U_WMRBC_set(
void);
2322 char *U_WMRBD_set(
void);
2323 char *U_WMRBE_set(
void);
2324 char *U_WMRBF_set(
void);
2325 char *U_WMRC0_set(
void);
2326 char *U_WMRC1_set(
void);
2327 char *U_WMRC2_set(
void);
2328 char *U_WMRC3_set(
void);
2329 char *U_WMRC4_set(
void);
2330 char *U_WMRC5_set(
void);
2331 char *U_WMRC6_set(
void);
2332 char *U_WMRC7_set(
void);
2333 char *U_WMRC8_set(
void);
2334 char *U_WMRC9_set(
void);
2335 char *U_WMRCA_set(
void);
2336 char *U_WMRCB_set(
void);
2337 char *U_WMRCC_set(
void);
2338 char *U_WMRCD_set(
void);
2339 char *U_WMRCE_set(
void);
2340 char *U_WMRCF_set(
void);
2341 char *U_WMRD0_set(
void);
2342 char *U_WMRD1_set(
void);
2343 char *U_WMRD2_set(
void);
2344 char *U_WMRD3_set(
void);
2345 char *U_WMRD4_set(
void);
2346 char *U_WMRD5_set(
void);
2347 char *U_WMRD6_set(
void);
2348 char *U_WMRD7_set(
void);
2349 char *U_WMRD8_set(
void);
2350 char *U_WMRD9_set(
void);
2351 char *U_WMRDA_set(
void);
2352 char *U_WMRDB_set(
void);
2353 char *U_WMRDC_set(
void);
2354 char *U_WMRDD_set(
void);
2355 char *U_WMRDE_set(
void);
2356 char *U_WMRDF_set(
void);
2357 char *U_WMRE0_set(
void);
2358 char *U_WMRE1_set(
void);
2359 char *U_WMRE2_set(
void);
2360 char *U_WMRE3_set(
void);
2361 char *U_WMRE4_set(
void);
2362 char *U_WMRE5_set(
void);
2363 char *U_WMRE6_set(
void);
2364 char *U_WMRE7_set(
void);
2365 char *U_WMRE8_set(
void);
2366 char *U_WMRE9_set(
void);
2367 char *U_WMREA_set(
void);
2368 char *U_WMREB_set(
void);
2369 char *U_WMREC_set(
void);
2370 char *U_WMRED_set(
void);
2371 char *U_WMREE_set(
void);
2372 char *U_WMREF_set(
void);
2374 char *U_WMRF1_set(
void);
2375 char *U_WMRF2_set(
void);
2376 char *U_WMRF3_set(
void);
2377 char *U_WMRF4_set(
void);
2378 char *U_WMRF5_set(
void);
2379 char *U_WMRF6_set(
void);
2381 char *U_WMRF8_set(
void);
2390 int16_t *
dx16_get( int32_t height, uint32_t weight, uint32_t members);
2396 uint32_t *Planes, uint32_t *BitCount, uint32_t *Compression, uint32_t *SizeImage,
2397 int32_t *XPelsPerMeter, int32_t *YPelsPerMeter, uint32_t *ClrUsed, uint32_t *ClrImportant);
2398 void U_BITMAPCOREHEADER_get(
const char *BmiCh, int32_t *Size, int32_t *Width, int32_t *Height, int32_t *BitCount);
2400 int32_t *width, int32_t *height, int32_t *colortype, int32_t *invert);
2437 int U_WMRPOLYGON_get(
const char *contents, uint16_t *Length,
const char **Data);
2438 int U_WMRPOLYLINE_get(
const char *contents, uint16_t *Length,
const char **Data);
2439 int U_WMRESCAPE_get(
const char *contents, uint16_t *Escape, uint16_t *Length,
const char **Data);
2442 int U_WMRFRAMEREGION_get(
const char *contents, uint16_t *Region, uint16_t *Brush, int16_t *Height, int16_t *Width);
2457 int U_WMRPOLYPOLYGON_get(
const char *contents, uint16_t *nPolys,
const uint16_t **aPolyCounts,
const char **Points);
2459 int U_WMR3A_get(
void);
2460 int U_WMR3B_get(
void);
2461 int U_WMR3C_get(
void);
2462 int U_WMR3D_get(
void);
2463 int U_WMR3E_get(
void);
2464 int U_WMR3F_get(
void);
2469 int U_WMR44_get(
void);
2470 int U_WMR45_get(
void);
2471 int U_WMR46_get(
void);
2472 int U_WMR47_get(
void);
2474 int U_WMR49_get(
void);
2475 int U_WMR4A_get(
void);
2476 int U_WMR4B_get(
void);
2477 int U_WMR4C_get(
void);
2478 int U_WMR4D_get(
void);
2479 int U_WMR4E_get(
void);
2480 int U_WMR4F_get(
void);
2481 int U_WMR50_get(
void);
2482 int U_WMR51_get(
void);
2483 int U_WMRABORTDOC_get(
void);
2484 int U_WMR53_get(
void);
2485 int U_WMR54_get(
void);
2486 int U_WMR55_get(
void);
2487 int U_WMR56_get(
void);
2488 int U_WMR57_get(
void);
2489 int U_WMR58_get(
void);
2490 int U_WMR59_get(
void);
2491 int U_WMR5A_get(
void);
2492 int U_WMR5B_get(
void);
2493 int U_WMR5C_get(
void);
2494 int U_WMR5D_get(
void);
2495 int U_WMR5E_get(
void);
2496 int U_WMR5F_get(
void);
2497 int U_WMR60_get(
void);
2498 int U_WMR61_get(
void);
2499 int U_WMR62_get(
void);
2500 int U_WMR63_get(
void);
2501 int U_WMR64_get(
void);
2502 int U_WMR65_get(
void);
2503 int U_WMR66_get(
void);
2504 int U_WMR67_get(
void);
2505 int U_WMR68_get(
void);
2506 int U_WMR69_get(
void);
2507 int U_WMR6A_get(
void);
2508 int U_WMR6B_get(
void);
2509 int U_WMR6C_get(
void);
2510 int U_WMR6D_get(
void);
2511 int U_WMR6E_get(
void);
2512 int U_WMR6F_get(
void);
2513 int U_WMR70_get(
void);
2514 int U_WMR71_get(
void);
2515 int U_WMR72_get(
void);
2516 int U_WMR73_get(
void);
2517 int U_WMR74_get(
void);
2518 int U_WMR75_get(
void);
2519 int U_WMR76_get(
void);
2520 int U_WMR77_get(
void);
2521 int U_WMR78_get(
void);
2522 int U_WMR79_get(
void);
2523 int U_WMR7A_get(
void);
2524 int U_WMR7B_get(
void);
2525 int U_WMR7C_get(
void);
2526 int U_WMR7D_get(
void);
2527 int U_WMR7E_get(
void);
2528 int U_WMR7F_get(
void);
2529 int U_WMR80_get(
void);
2530 int U_WMR81_get(
void);
2531 int U_WMR82_get(
void);
2532 int U_WMR83_get(
void);
2533 int U_WMR84_get(
void);
2534 int U_WMR85_get(
void);
2535 int U_WMR86_get(
void);
2536 int U_WMR87_get(
void);
2537 int U_WMR88_get(
void);
2538 int U_WMR89_get(
void);
2539 int U_WMR8A_get(
void);
2540 int U_WMR8B_get(
void);
2541 int U_WMR8C_get(
void);
2542 int U_WMR8D_get(
void);
2543 int U_WMR8E_get(
void);
2544 int U_WMR8F_get(
void);
2545 int U_WMR90_get(
void);
2546 int U_WMR91_get(
void);
2547 int U_WMR92_get(
void);
2548 int U_WMR93_get(
void);
2549 int U_WMR94_get(
void);
2550 int U_WMR95_get(
void);
2551 int U_WMR96_get(
void);
2552 int U_WMR97_get(
void);
2553 int U_WMR98_get(
void);
2554 int U_WMR99_get(
void);
2555 int U_WMR9A_get(
void);
2556 int U_WMR9B_get(
void);
2557 int U_WMR9C_get(
void);
2558 int U_WMR9D_get(
void);
2559 int U_WMR9E_get(
void);
2560 int U_WMR9F_get(
void);
2561 int U_WMRA0_get(
void);
2562 int U_WMRA1_get(
void);
2563 int U_WMRA2_get(
void);
2564 int U_WMRA3_get(
void);
2565 int U_WMRA4_get(
void);
2566 int U_WMRA5_get(
void);
2567 int U_WMRA6_get(
void);
2568 int U_WMRA7_get(
void);
2569 int U_WMRA8_get(
void);
2570 int U_WMRA9_get(
void);
2571 int U_WMRAA_get(
void);
2572 int U_WMRAB_get(
void);
2573 int U_WMRAC_get(
void);
2574 int U_WMRAD_get(
void);
2575 int U_WMRAE_get(
void);
2576 int U_WMRAF_get(
void);
2577 int U_WMRB0_get(
void);
2578 int U_WMRB1_get(
void);
2579 int U_WMRB2_get(
void);
2580 int U_WMRB3_get(
void);
2581 int U_WMRB4_get(
void);
2582 int U_WMRB5_get(
void);
2583 int U_WMRB6_get(
void);
2584 int U_WMRB7_get(
void);
2585 int U_WMRB8_get(
void);
2586 int U_WMRB9_get(
void);
2587 int U_WMRBA_get(
void);
2588 int U_WMRBB_get(
void);
2589 int U_WMRBC_get(
void);
2590 int U_WMRBD_get(
void);
2591 int U_WMRBE_get(
void);
2592 int U_WMRBF_get(
void);
2593 int U_WMRC0_get(
void);
2594 int U_WMRC1_get(
void);
2595 int U_WMRC2_get(
void);
2596 int U_WMRC3_get(
void);
2597 int U_WMRC4_get(
void);
2598 int U_WMRC5_get(
void);
2599 int U_WMRC6_get(
void);
2600 int U_WMRC7_get(
void);
2601 int U_WMRC8_get(
void);
2602 int U_WMRC9_get(
void);
2603 int U_WMRCA_get(
void);
2604 int U_WMRCB_get(
void);
2605 int U_WMRCC_get(
void);
2606 int U_WMRCD_get(
void);
2607 int U_WMRCE_get(
void);
2608 int U_WMRCF_get(
void);
2609 int U_WMRD0_get(
void);
2610 int U_WMRD1_get(
void);
2611 int U_WMRD2_get(
void);
2612 int U_WMRD3_get(
void);
2613 int U_WMRD4_get(
void);
2614 int U_WMRD5_get(
void);
2615 int U_WMRD6_get(
void);
2616 int U_WMRD7_get(
void);
2617 int U_WMRD8_get(
void);
2618 int U_WMRD9_get(
void);
2619 int U_WMRDA_get(
void);
2620 int U_WMRDB_get(
void);
2621 int U_WMRDC_get(
void);
2622 int U_WMRDD_get(
void);
2623 int U_WMRDE_get(
void);
2624 int U_WMRDF_get(
void);
2625 int U_WMRE0_get(
void);
2626 int U_WMRE1_get(
void);
2627 int U_WMRE2_get(
void);
2628 int U_WMRE3_get(
void);
2629 int U_WMRE4_get(
void);
2630 int U_WMRE5_get(
void);
2631 int U_WMRE6_get(
void);
2632 int U_WMRE7_get(
void);
2633 int U_WMRE8_get(
void);
2634 int U_WMRE9_get(
void);
2635 int U_WMREA_get(
void);
2636 int U_WMREB_get(
void);
2637 int U_WMREC_get(
void);
2638 int U_WMRED_get(
void);
2639 int U_WMREE_get(
void);
2640 int U_WMREF_get(
void);
2642 int U_WMRF1_get(
void);
2643 int U_WMRF2_get(
void);
2644 int U_WMRF3_get(
void);
2645 int U_WMRF4_get(
void);
2646 int U_WMRF5_get(
void);
2647 int U_WMRF6_get(
void);
2649 int U_WMRF8_get(
void);
int U_WMROFFSETVIEWPORTORG_get(const char *contents, U_POINT16 *offset)
Retrieve values from a U_WMROFFSETVIEWPORTORG record.
Definition: uwmf.c:5057
int16_t xSrc
in logical units (UL corner of Src rect)
Definition: uwmf.h:1389
0x00B0 U_WMRB0 record
Definition: uwmf.h:250
char * U_WMRPAINTREGION_set(uint16_t Region)
Allocate and construct a U_WMRPAINTREGION record.
Definition: uwmf.c:3030
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:1104
uint16_t Region
Index of region to frame in object table.
Definition: uwmf.h:1524
uint8_t Green
Palette entry Green Intensity.
Definition: uwmf.h:798
0x003D U_WMR3D record
Definition: uwmf.h:135
0x0055 U_WMR55 record
Definition: uwmf.h:159
U_FONT font
Font Object.
Definition: uwmf.h:1998
0x0538 U_WMRPOLYPOLYGON record
Definition: uwmf.h:130
0x0228 U_WMRFILLREGION record
Definition: uwmf.h:114
uint16_t Style
PenStyle Enumeration.
Definition: uwmf.h:818
uint8_t Value
0 or PaletteEntryFlag Enumeration
Definition: uwmf.h:796
0x0211 U_WMROFFSETVIEWPORTORG record
Definition: uwmf.h:91
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:1478
struct U_WMRSETWINDOWORG U_WMRLINETO
WMF manual 2.3.3.10, Endpoint X,Y in logical units.
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:1502
int U_WMRCREATEBITMAP_get(void)
Definition: uwmf.c:6914
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:1694
char * U_WMRROUNDRECT_set(int16_t Width, int16_t Height, U_RECT16 rect)
Create and return a U_WMRROUNDRECT record.
Definition: uwmf.c:2713
char * U_WMRESCAPE_set(uint16_t Escape, uint16_t Length, const void *Data)
Allocate and construct a U_WMRESCAPE record. WARNING! Only three Escape record types are fully suppor...
Definition: uwmf.c:2981
0x00D9 U_WMRD9 record
Definition: uwmf.h:291
uint8_t iType
RecordType Enumeration.
Definition: uwmf.h:1693
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:1116
int16_t Width
Average Width in Logical units.
Definition: uwmf.h:776
0x0626 U_WMRESCAPE record
Definition: uwmf.h:112
char * U_WMRCREATEBRUSHINDIRECT_set(U_WLOGBRUSH brush)
Allocate and construct a U_WMRCREATEBRUSHINDIRECT record.
Definition: uwmf.c:4321
U_COLORREF Color
Color.
Definition: uwmf.h:1349
U_WMR_TYPES
WMR Record types.
Definition: uwmf.h:73
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:1743
0x0064 U_WMR64 record
Definition: uwmf.h:174
char * U_WMRRECTANGLE_set(U_RECT16 rect)
Create and return a U_WMRRECTANGLE record.
Definition: uwmf.c:2696
uint8_t Italic
LF_Italic Enumeration.
Definition: uwmf.h:780
0x0079 U_WMR79 record
Definition: uwmf.h:195
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:1544
0x00AB U_WMRAB record
Definition: uwmf.h:245
0x0088 U_WMR88 record
Definition: uwmf.h:210
uint32_t U_wmr_size(const U_METARECORD *record)
Get record size in bytes from U_WMR* record, which may not be aligned.
Definition: uwmf.c:738
int U_WMRROUNDRECT_get(const char *contents, int16_t *Width, int16_t *Height, U_RECT16 *rect)
Retrieve values from a U_WMRROUNDRECT record.
Definition: uwmf.c:5259
0x00D0 U_WMRD0 record
Definition: uwmf.h:282
int16_t xEndArc
Coordinates in logical units.
Definition: uwmf.h:1247
char * U_WMRSETTEXTCOLOR_set(U_COLORREF Color)
Create and return a U_WMRSETTEXTCOLOR record.
Definition: uwmf.c:2481
struct U_WMRSCALEWINDOWEXT U_WMRSCALEVIEWPORTEXT
WMF manual 2.3.5.12.
0x061C U_WMRROUNDRECT record
Definition: uwmf.h:102
char * U_WMRMOVETO_set(U_POINT16 coord)
Create and return a U_WMRMOVETO record.
Definition: uwmf.c:2583
int U_WMRRESIZEPALETTE_get(const char *contents, uint16_t *Palette)
Get data from a U_WMRRESIZEPALETTE record.
Definition: uwmf.c:5853
char * wlinejoin_set(int32_t Type)
Allocate and construct the specified U_WMRESCAPE structure, create a handle and returns it Use this f...
Definition: uwmf.c:2318
int U_WMRDIBBITBLT_get(const char *contents, U_POINT16 *Dst, U_POINT16 *cwh, U_POINT16 *Src, uint32_t *dwRop3, const char **dib)
Get data from a U_WMRDIBITBLT record.
Definition: uwmf.c:5897
int16_t x
X.
Definition: uwmf.h:1351
0x00DF U_WMRDF record
Definition: uwmf.h:297
int16_t U_16_checksum(int16_t *buf, int count)
Calculate the int16_t checksum of the buffer for the number of positions specified. This is XOR of all values.
Definition: uwmf.c:1053
0x0415 U_WMREXCLUDECLIPRECT record
Definition: uwmf.h:95
int16_t yDst
in logical units (UL corner to fill)
Definition: uwmf.h:1336
0x0094 U_WMR94 record
Definition: uwmf.h:222
char * buf
Buffer for constructing the EMF in memory.
Definition: uwmf.h:2041
int16_t wSrc
in logical units (of Src)
Definition: uwmf.h:1746
uint16_t Extra
Number of extra space characters to add to the line.
Definition: uwmf.h:1168
int16_t Top
Coordinates in logical units.
Definition: uwmf.h:1252
char * U_WMROFFSETCLIPRGN_set(U_POINT16 offset)
Allocate and construct a U_WMROFFSETCLIPRGN record.
Definition: uwmf.c:2784
int wmf_finish(WMFTRACK *wt)
Finalize the emf in memory and write it to the file.
Definition: uwmf.c:1491
uint16_t index
(usually) index of region/object in object table
Definition: uwmf.h:1545
int U_WMRPOLYPOLYGON_get(const char *contents, uint16_t *nPolys, const uint16_t **aPolyCounts, const char **Points)
Get data from a U_WMR_POLYPOLYGON record.
Definition: uwmf.c:5832
0x0096 U_WMR96 record
Definition: uwmf.h:224
char * U_WMRCREATEBITMAP_set(void)
Definition: uwmf.c:4333
0x0093 U_WMR93 record
Definition: uwmf.h:221
int16_t Weight
LF_Weight Enumeration.
Definition: uwmf.h:779
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:1368
int U_WMRSETDIBTODEV_get(const char *contents, U_POINT16 *Dst, U_POINT16 *cwh, U_POINT16 *Src, uint16_t *cUsage, uint16_t *ScanCount, uint16_t *StartScan, const char **dib)
Get data from a U_WMRSETDIBTODEV record.
Definition: uwmf.c:5745
0x00A0 U_WMRA0 record
Definition: uwmf.h:234
int U_WMRSETRELABS_get(const char *contents)
Get data from a U_WMRSETRELABS record.
Definition: uwmf.c:4894
uint16_t ScanCount
Number of scan lines in Src.
Definition: uwmf.h:1615
0x00E0 U_WMRE0 record
Definition: uwmf.h:298
uint8_t iType
RecordType Enumeration.
Definition: uwmf.h:1717
int16_t Top
in logical units
Definition: uwmf.h:1321
0x0056 U_WMR56 record
Definition: uwmf.h:160
0x0830 U_WMRCHORD record
Definition: uwmf.h:122
int U_WMRSETSTRETCHBLTMODE_get(const char *contents, uint16_t *Mode)
Retrieve values from a U_WMRSETSTRETCHBLTMODE record.
Definition: uwmf.c:4919
int16_t ySrc
in logical units (UL corner of Src rect)
Definition: uwmf.h:1696
int U_WMRMOVETO_get(const char *contents, U_POINT16 *coord)
Retrieve values from a U_WMRMOVETO record.
Definition: uwmf.c:5098
0x007D U_WMR7D record
Definition: uwmf.h:199
0x005E U_WMR5E record
Definition: uwmf.h:168
0x0436 U_WMRANIMATEPALETTE record
Definition: uwmf.h:128
int U_WMRARC_get(const char *contents, U_POINT16 *StartArc, U_POINT16 *EndArc, U_RECT16 *rect)
Retrieve values from a U_WMRARC record.
Definition: uwmf.c:5139
char * U_WMRSELECTPALETTE_set(uint16_t Palette)
Allocate and construct a U_WMRSELECTPALETTE record.
Definition: uwmf.c:3158
0x02FC U_WMRCREATEBRUSHINDIRECT record
Definition: uwmf.h:326
int16_t right
right coordinate
Definition: uwmf.h:834
0x005B U_WMR5B record
Definition: uwmf.h:165
char * U_WMRDIBCREATEPATTERNBRUSH_set(const uint16_t Style, const uint16_t iUsage, const U_BITMAPINFO *Bmi, const uint32_t cbPx, const char *Px, const U_BITMAP16 *Bm16)
Allocate and construct a U_WMRDIBCREATEPATTERNBRUSH record. Accepts an image as either a DIB (Bmi/CbP...
Definition: uwmf.c:3404
uint16_t ignore
ignore
Definition: uwmf.h:1675
0x00E5 U_WMRE5 record
Definition: uwmf.h:303
char * U_WMRRESIZEPALETTE_set(uint16_t Palette)
Allocate and construct a U_WMRRESIZEPALETTE record.
Definition: uwmf.c:3226
uint16_t Style
BrushStyle Enumeration.
Definition: uwmf.h:1772
char * U_WMRSETMAPMODE_set(uint16_t Mode)
Create and return a U_WMRSETMAPMODE record.
Definition: uwmf.c:2428
uint8_t iType
RecordType Enumeration.
Definition: uwmf.h:1143
struct U_WMRFLOODFILL U_WMREXTFLOODFILL
WMF manual 2.3.3.7.
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:1332
0x00C4 U_WMRC4 record
Definition: uwmf.h:270
0x0086 U_WMR86 record
Definition: uwmf.h:208
int U_WMRBITBLT_get(const char *contents, U_POINT16 *Dst, U_POINT16 *cwh, U_POINT16 *Src, uint32_t *dwRop3, U_BITMAP16 *Bm16, const char **px)
Get data from a U_WMRBITBLT record. Note that unlike U_EMRBITBLT there is no scaling available - the ...
Definition: uwmf.c:5387
0x0104 U_WMRSETROP2 record
Definition: uwmf.h:78
0x00EC U_WMREC record
Definition: uwmf.h:310
int wmf_header_append(U_METARECORD *rec, WMFTRACK *wt, int freerec)
Append an WMF header to a wmf in memory. This may reallocate buf memory. WMF header is not a normal r...
Definition: uwmf.c:1624
0x00F8 U_WMRF8 record
Definition: uwmf.h:322
0x004A U_WMR4A record
Definition: uwmf.h:148
uint8_t String
String to write, storage area must be 2n bytes.
Definition: uwmf.h:1370
Prototypes for functions that manipulate UTF and various types of text.
int U_WMROFFSETWINDOWORG_get(const char *contents, U_POINT16 *offset)
Retrieve values from a U_WMROFFSETWINDOWORG record.
Definition: uwmf.c:5029
uint8_t iType
RecordType Enumeration.
Definition: uwmf.h:1477
int U_WMREXTFLOODFILL_get(const char *contents, uint16_t *Mode, U_COLORREF *Color, U_POINT16 *coord)
Retrieve values from a U_WMREXTFLOODFILL record.
Definition: uwmf.c:6092
int16_t yDst
in logical units (UL corner of Dst rect)
Definition: uwmf.h:1792
U_FONT * U_FONT_set(int16_t Height, int16_t Width, int16_t Escapement, int16_t Orientation, int16_t Weight, uint8_t Italic, uint8_t Underline, uint8_t StrikeOut, uint8_t CharSet, uint8_t OutPrecision, uint8_t ClipPrecision, uint8_t Quality, uint8_t PitchAndFamily, char *FaceName)
Create and return a U_FONT structure.
Definition: uwmf.c:773
int U_WMRCREATEPATTERNBRUSH_get(const char *contents, U_BITMAP16 *Bm16, int *pasize, const char **Pattern)
Get data from a U_WMRCREATEPATTERNBRUSH record. Warning - application support for U_WMRCREATEPATTERNB...
Definition: uwmf.c:6847
0x0412 U_WMRSCALEVIEWPORTEXT record
Definition: uwmf.h:92
0x00F4 U_WMRF4 record
Definition: uwmf.h:318
0x008E U_WMR8E record
Definition: uwmf.h:216
uint16_t top
Y coordinate of the top scanline.
Definition: uwmf.h:1045
char * U_WMRLINETO_set(U_POINT16 coord)
Create and return a U_WMRLINETO record.
Definition: uwmf.c:2574
uint16_t ignore1
unused value
Definition: uwmf.h:843
uint16_t Hatch
HatchStyle Enumeration.
Definition: uwmf.h:980
int U_WMREXCLUDECLIPRECT_get(const char *contents, U_RECT16 *rect)
Retrieve values from a U_WMREXCLUDECLIPRECT record.
Definition: uwmf.c:5111
int16_t xDenom
X denominator.
Definition: uwmf.h:1211
0x0090 U_WMR90 record
Definition: uwmf.h:218
0x0081 U_WMR81 record
Definition: uwmf.h:203
char * U_WMRCREATEBITMAPINDIRECT_set(void)
Definition: uwmf.c:4327
char * U_WMRREALIZEPALETTE_set(void)
Allocate and construct a U_WMRREALIZEPALETTE record.
Definition: uwmf.c:3166
uint16_t Style
BrushStyle Enumeration.
Definition: uwmf.h:978
char * U_WMRSETPALENTRIES_set(const U_PALETTE *Palette)
Allocate and construct a U_WMRSETPALENTRIES record.
Definition: uwmf.c:3184
0x005F U_WMR5F record
Definition: uwmf.h:169
0x0076 U_WMR76 record
Definition: uwmf.h:192
0x00B1 U_WMRB1 record
Definition: uwmf.h:251
uint16_t ignore
ignore
Definition: uwmf.h:1724
struct U_WMRSETWINDOWORG U_WMRSETVIEWPORTORG
WMF manual 2.3.5.29, Viewport X,Y origin.
int U_WMRLINETO_get(const char *contents, U_POINT16 *coord)
Retrieve values from a U_WMRLINETO record.
Definition: uwmf.c:5085
int16_t Height
Height in Logical units.
Definition: uwmf.h:775
0x00A5 U_WMRA5 record
Definition: uwmf.h:239
0x00D4 U_WMRD4 record
Definition: uwmf.h:286
uint8_t iType
RecordType Enumeration.
Definition: uwmf.h:1407
char * U_WMRPOLYLINE_set(uint16_t Length, const U_POINT16 *Data)
Allocate and construct a U_WMRPOLYLINE record.
Definition: uwmf.c:2964
0x006E U_WMR6E record
Definition: uwmf.h:184
int16_t wSrc
in logical units (of Src)
Definition: uwmf.h:1721
char * U_WMRSCALEVIEWPORTEXT_set(U_POINT16 Denom, U_POINT16 Num)
Create and return a U_WMRSCALEVIEWPORTEXT record.
Definition: uwmf.c:2565
0x0418 U_WMRELLIPSE record
Definition: uwmf.h:98
int16_t Bottom
Coordinates in logical units.
Definition: uwmf.h:1232
uint16_t Checksum
Checksum of preceding 10 16 bit values.
Definition: uwmf.h:1078
int U_WMRDRAWTEXT_get(void)
Definition: uwmf.c:5648
int U_WMRCREATEPALETTE_get(const char *contents, U_PALETTE *Palette, const char **PalEntries)
Retrieve values from a U_WMRCREATEPALETTE record.
Definition: uwmf.c:6824
int U_WMRINTERSECTCLIPRECT_get(const char *contents, U_RECT16 *rect)
Retrieve values from a U_WMRINTERSECTCLIPRECT record.
Definition: uwmf.c:5124
uint8_t iType
RecordType Enumeration.
Definition: uwmf.h:1578
0x00CE U_WMRCE record
Definition: uwmf.h:280
uint8_t iType
RecordType Enumeration.
Definition: uwmf.h:1230
U_COLORREF Color
Pen Color, the 32 bit value is not aligned.
Definition: uwmf.h:820
U_BITMAP16 bitmap
Src bitmap.
Definition: uwmf.h:1416
0x009F U_WMR9F record
Definition: uwmf.h:233
int16_t xDst
in logical units (UL corner of Dst rect)
Definition: uwmf.h:1793
int16_t Right
in logical units
Definition: uwmf.h:1302
struct U_WMRANIMATEPALETTE U_WMRCREATEPALETTE
WMF manual 2.3.4.3.
0x0049 U_WMR49 record
Definition: uwmf.h:147
char * U_WMRSETWINDOWEXT_set(U_POINT16 extent)
Create and return a U_WMRSETWINDOWEXT record.
Definition: uwmf.c:2509
int U_WMRSETWINDOWORG_get(const char *contents, U_POINT16 *coord)
Retrieve values from a U_WMRSETWINDOWORG record.
Definition: uwmf.c:4976
char * U_WMRSETROP2_set(uint16_t Mode)
Create and return a U_WMRSETROP2 record.
Definition: uwmf.c:2437
int U_WMRSETBKCOLOR_get(const char *contents, U_COLORREF *Color)
Retrieve values from a U_WMRSETBKCOLOR record.
Definition: uwmf.c:4840
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:1718
int16_t xDst
in logical units (UL corner of Dst rect)
Definition: uwmf.h:1622
0x0817 U_WMRARC record
Definition: uwmf.h:97
uint8_t BitsPixel
number of adjacent color bits on each plane (R bits + G bits + B bits ????)
Definition: uwmf.h:866
0x004F U_WMR4F record
Definition: uwmf.h:153
int U_WMRTEXTOUT_get(const char *contents, U_POINT16 *Dst, int16_t *Length, const char **string)
Get data from a U_WMRTEXTOUT record.
Definition: uwmf.c:5354
0x008F U_WMR8F record
Definition: uwmf.h:217
char * U_WMRSELECTOBJECT_set(uint16_t object)
Allocate and construct a U_WMRSELECTOBJECT record.
Definition: uwmf.c:3048
int U_WMRCREATEBITMAPINDIRECT_get(void)
Definition: uwmf.c:6908
int16_t hSrc
in logical units (of Src)
Definition: uwmf.h:1745
Coordinates of the upper left, lower right corner. Note that the coordinate system is 0...
Definition: uwmf.h:831
uint8_t iType
RecordType Enumeration.
Definition: uwmf.h:1367
int16_t y
Y value (note order!)
Definition: uwmf.h:1188
struct U_WMREOF U_WMRREALIZEPALETTE
WMF manual 2.3.5.8.
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:2007
char * U_WMRPIE_set(U_POINT16 Radial1, U_POINT16 Radial2, U_RECT16 rect)
Create and return a U_WMRPIE record.
Definition: uwmf.c:2677
0x00CA U_WMRCA record
Definition: uwmf.h:276
int16_t Top
Coordinates in logical units.
Definition: uwmf.h:1267
int16_t xSrc
in logical units (UL corner of Src rect)
Definition: uwmf.h:1618
int16_t xSrc
in logical units (UL corner of Src rect)
Definition: uwmf.h:1674
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:1064
0x061D U_WMRPATBLT record
Definition: uwmf.h:103
int16_t Height
in logical units (of Src and Dst)
Definition: uwmf.h:1619
U_COLORREF Color
Color.
Definition: uwmf.h:1282
0x00C1 U_WMRC1 record
Definition: uwmf.h:267
int16_t yDst
in logical units (UL corner of Dst rect)
Definition: uwmf.h:1727
0x00D3 U_WMRD3 record
Definition: uwmf.h:285
0x0103 U_WMRSETMAPMODE record
Definition: uwmf.h:77
FILE * fp
Open file.
Definition: uwmf.h:2034
uint32_t chunk
Number of bytes to add when more space is needed.
Definition: uwmf.h:2040
char * U_wmr_escnames(int idx)
Text description of Escape record type.
Definition: uwmf.c:600
uint8_t iType
RecordType Enumeration.
Definition: uwmf.h:1770
int16_t Width
in logical units (of Src and Dst)
Definition: uwmf.h:1620
char * wcreatepenindirect_set(uint32_t *ihPen, WMFHANDLES *wht, U_PEN pen)
Allocate and construct a U_WMRCREATEPENINDIRECT record, create a handle and returns it Use this funct...
Definition: uwmf.c:2105
0x00DC U_WMRDC record
Definition: uwmf.h:294
U_WLOGBRUSH U_WLOGBRUSH_set(uint16_t Style, U_COLORREF Color, uint16_t Hatch)
Create and return a U_WLOGBRUSH structure.
Definition: uwmf.c:1007
0x00F7 U_WMRCREATEPALETTE record
Definition: uwmf.h:321
0x012D U_WMRSELECTOBJECT record
Definition: uwmf.h:119
uint8_t Red
Palette entry Red Intensity.
Definition: uwmf.h:799
uint16_t eFunc
Escape function.
Definition: uwmf.h:1491
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:1348
0x020B U_WMRSETWINDOWORG record
Definition: uwmf.h:85
void U_BITMAPINFOHEADER_get(const char *Bmih, uint32_t *Size, int32_t *Width, int32_t *Height, uint32_t *Planes, uint32_t *BitCount, uint32_t *Compression, uint32_t *SizeImage, int32_t *XPelsPerMeter, int32_t *YPelsPerMeter, uint32_t *ClrUsed, uint32_t *ClrImportant)
Return parameters from a bitinfoheader. All are returned as 32 bit integers, regardless of their inte...
Definition: uwmf.c:4686
char * wmr_dup(const char *wmr)
Duplicate an WMR record.
Definition: uwmf.c:1404
0x0127 U_WMRRESTOREDC record
Definition: uwmf.h:113
uint8_t iType
RecordType Enumeration.
Definition: uwmf.h:1127
uint16_t Size16w
Total number of 16bit words in record.
Definition: uwmf.h:1086
char * U_WMRSETDIBTODEV_set(void)
Allocate and construct a U_WMRSETDIBTODEV record.
Definition: uwmf.c:3149
For U_LOGCOLORSPACEA and U_LOGCOLORSPACEW lcsEndpints field.
Definition: uemf.h:439
0x0051 U_WMR51 record
Definition: uwmf.h:155
int16_t yDst
in logical units (UL corner of Dst rect)
Definition: uwmf.h:1441
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:1085
0x0099 U_WMR99 record
Definition: uwmf.h:227
int16_t Right
in logical units
Definition: uwmf.h:1320
int16_t Height
in logical units (of Src and Dst)
Definition: uwmf.h:1676
int16_t Left
in logical units
Definition: uwmf.h:1322
0x006C U_WMR6C record
Definition: uwmf.h:182
0x06FF U_WMRCREATEREGION record
Definition: uwmf.h:329
uint16_t nMembers
Unused, should be 0.
Definition: uwmf.h:1091
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:1296
int U_WMRSETTEXTCHAREXTRA_get(const char *contents, uint16_t *Mode)
Retrieve values from a U_WMRSETTEXTCHAREXTRA record.
Definition: uwmf.c:4932
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:1457
char * U_WMRRESTOREDC_set(int16_t DC)
Allocate and construct a U_WMRRESTOREDC record.
Definition: uwmf.c:2990
int16_t Bottom
in logical units
Definition: uwmf.h:1301
int16_t Bottom
in logical units
Definition: uwmf.h:1319
0x00EF U_WMREF record
Definition: uwmf.h:313
char * U_WMRANIMATEPALETTE_set(U_PALETTE *Palette)
Allocate and construct a U_WMRSETPALENTRIES record.
Definition: uwmf.c:3175
struct U_WMRINVERTREGION U_WMRPAINTREGION
WMF manual 2.3.3.11, paint region.
int16_t y
in logical units (draw point)
Definition: uwmf.h:1599
char * wcreateregion_set(uint32_t *ihReg, WMFHANDLES *wht, const U_REGION *Region)
Allocate and construct a U_WMRCREATEREGION record, create a handle and returns it Use this function i...
Definition: uwmf.c:2266
U_RECT16 sRect
bounding rectangle
Definition: uwmf.h:849
0x0231 U_WMRSETMAPPERFLAGS record
Definition: uwmf.h:123
0x00E8 U_WMRE8 record
Definition: uwmf.h:306
int16_t xSrc
in logical units (UL corner of Src rect)
Definition: uwmf.h:1748
int16_t hSrc
in logical units (of Src)
Definition: uwmf.h:1720
0x06FE U_WMRCREATEBITMAP record
Definition: uwmf.h:328
int U_WMRSETPALENTRIES_get(const char *contents, U_PALETTE *Palette, const char **PalEntries)
Get data from a U_WMRSETPALENTRIES record.
Definition: uwmf.c:5816
uint16_t count
Number of entries in the ScanLines array.
Definition: uwmf.h:1044
int16_t Height
in logical units (of frame)
Definition: uwmf.h:1526
0x081A U_WMRPIE record
Definition: uwmf.h:100
void U_sanerect16(U_RECT16 rc, double *left, double *top, double *right, double *bottom)
A U_RECT16 may have its values swapped, L<->R and T<->B, this extracts the leftmost as left...
Definition: uwmf.c:722
0x0548 U_WMREXTFLOODFILL record
Definition: uwmf.h:146
0x00DB U_WMRDB record
Definition: uwmf.h:293
0x00B4 U_WMRB4 record
Definition: uwmf.h:254
0x006F U_WMR6F record
Definition: uwmf.h:185
0x00BE U_WMRBE record
Definition: uwmf.h:264
char * wcreatepatternbrush_set(uint32_t *ihBrush, WMFHANDLES *wht, U_BITMAP16 *Bm16, char *Pattern)
Allocate and construct a U_WMRCREATEPATTERNBRUSH record, create a handle and returns it Use this func...
Definition: uwmf.c:2189
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:1613
uint8_t iType
RecordType Enumeration.
Definition: uwmf.h:1977
0x0059 U_WMR59 record
Definition: uwmf.h:163
uint8_t iType
RecordType Enumeration.
Definition: uwmf.h:2020
int U_WMRSCALEVIEWPORTEXT_get(const char *contents, U_POINT16 *Denom, U_POINT16 *Num)
Retrieve values from a U_WMRSCALEVIEWPORTEXT record.
Definition: uwmf.c:5071
int U_WMRDIBCREATEPATTERNBRUSH_get(const char *contents, uint16_t *Style, uint16_t *cUsage, const char **Bm16, const char **dib)
Get data from a U_WMRDIBCREATEPATTERNBRUSH record. Returns an image as either a DIB (Bmi/CbPx/Px defi...
Definition: uwmf.c:5993
0x00E6 U_WMRE6 record
Definition: uwmf.h:304
U_WLOGBRUSH brush
WLogBrush Object.
Definition: uwmf.h:2008
uint8_t iType
RecordType Enumeration.
Definition: uwmf.h:1103
0x009C U_WMR9C record
Definition: uwmf.h:230
0x020F U_WMROFFSETWINDOWORG record
Definition: uwmf.h:89
char * wcreatedibpatternbrush_srcbm16_set(uint32_t *ihBrush, WMFHANDLES *wht, const uint32_t iUsage, const U_BITMAP16 *Bm16)
Allocate and construct a U_WMRCREATEPATTERNBRUSH record from a U_BITMAP16 object. Use this function i...
Definition: uwmf.c:2168
0x00F2 U_WMRF2 record
Definition: uwmf.h:316
0x0058 U_WMR58 record
Definition: uwmf.h:162
uint16_t Width
DIB width in pixels.
Definition: uwmf.h:873
0x005A U_WMR5A record
Definition: uwmf.h:164
0x00E9 U_WMRE9 record
Definition: uwmf.h:307
char * U_WMRTEXTOUT_set(U_POINT16 Dst, char *string)
Allocate and construct a U_WMRTEXTOUT record.
Definition: uwmf.c:2794
0x009A U_WMR9A record
Definition: uwmf.h:228
0x008C U_WMR8C record
Definition: uwmf.h:214
int16_t Width
in logical units (rounded corner)
Definition: uwmf.h:1318
uint8_t iType
RecordType Enumeration.
Definition: uwmf.h:1115
uint8_t iType
RecordType Enumeration.
Definition: uwmf.h:2006
int16_t Height
in logical units (of Src and Dst rects)
Definition: uwmf.h:1391
0x00F3 U_WMRF3 record
Definition: uwmf.h:317
0x00A9 U_WMRA9 record
Definition: uwmf.h:243
U_COLORREF Color
Brush Color value, 32 bit value is not aligned.
Definition: uwmf.h:766
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:1997
uint32_t maxSize
Largest record in file, in number of 16bit words (This uint32_t is aligned)
Definition: uwmf.h:1090
uint32_t lolimit
Lowest unoccupied table slot, may be a hole created by a deleteobject.
Definition: uwmf.h:2059
int U_WMRSETBKMODE_get(const char *contents, uint16_t *Mode)
Retrieve values from a U_WMRSETBKMODE record.
Definition: uwmf.c:4856
0x0078 U_WMR78 record
Definition: uwmf.h:194
int wmf_start(const char *name, const uint32_t initsize, const uint32_t chunksize, WMFTRACK **wt)
Start constructing an wmf in memory. Supply the file name and initial size.
Definition: uwmf.c:1431
int16_t Width
in logical units (of frame)
Definition: uwmf.h:1527
0x00B6 U_WMRB6 record
Definition: uwmf.h:256
int16_t y
Y.
Definition: uwmf.h:1350
char * U_WMREXTTEXTOUT_set(U_POINT16 Dst, int16_t Length, uint16_t Opts, const char *string, int16_t *dx, U_RECT16 rect)
Allocate and construct a U_WMREXTTEXTOUT record.
Definition: uwmf.c:3107
uint8_t Blue
Palette entry Blue Intensity.
Definition: uwmf.h:797
U_REGION region
Region Object.
Definition: uwmf.h:2022
0x00A7 U_WMRA7 record
Definition: uwmf.h:241
uint8_t iType
RecordType Enumeration, must be 1.
Definition: uwmf.h:1084
U_COLORREF Color
Brush Color value, 32 bit value is not aligned.
Definition: uwmf.h:979
0x0092 U_WMR92 record
Definition: uwmf.h:220
char * U_WMRFILLREGION_set(uint16_t Region, uint16_t Brush)
Allocate and construct a U_WMRFILLREGION record.
Definition: uwmf.c:3000
int U_WMRSETTEXTALIGN_get(const char *contents, uint16_t *Mode)
Get data from a U_WMRSETTEXTALIGN record.
Definition: uwmf.c:5639
0x0213 U_WMRLINETO record
Definition: uwmf.h:93
struct U_WMRINVERTREGION U_WMRSELECTCLIPREGION
WMF manual 2.3.4.9, select as clip region.
int16_t yRadial2
in logical units
Definition: uwmf.h:1297
U_PLTNTRY U_PLTNTRY_set(U_COLORREF Color)
Create and return a U_PLTENTRY structure.
Definition: uwmf.c:817
0x0922 U_WMRBITBLT record
Definition: uwmf.h:108
int16_t yDst
in logical units (UL corner of Dst rect)
Definition: uwmf.h:1393
int16_t Left
in logical units
Definition: uwmf.h:1304
0x0077 U_WMR77 record
Definition: uwmf.h:193
struct U_WMRANIMATEPALETTE U_WMRSETPALENTRIES
WMF manual 2.3.5.19.
uint8_t iType
RecordType Enumeration.
Definition: uwmf.h:1489
uint16_t HWmf
0. (Always. Manual says total number of 16bit words in record, but no examples found like that) ...
Definition: uwmf.h:1074
0x0419 U_WMRFLOODFILL record
Definition: uwmf.h:99
0x00B9 U_WMRB9 record
Definition: uwmf.h:259
char * U_WMRSETTEXTALIGN_set(uint16_t Mode)
Allocate and construct a U_WMRSETTEXTALIGN record.
Definition: uwmf.c:3057
int16_t xRadial2
in logical units
Definition: uwmf.h:1298
int16_t hDst
Height in logical units of Dst rect.
Definition: uwmf.h:1463
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:1432
int16_t WidthBytes
bytes per scan line.
Definition: uwmf.h:864
int16_t y
Y.
Definition: uwmf.h:1283
uint8_t PitchAndFamily
LF_PitchAndFamily Enumeration.
Definition: uwmf.h:787
0x0095 U_WMR95 record
Definition: uwmf.h:223
int16_t Height
in logical units (of Src and Dst rects)
Definition: uwmf.h:1412
0x0108 U_WMRSETTEXTCHAREXTRA record
Definition: uwmf.h:82
char * U_WMRSETSTRETCHBLTMODE_set(uint16_t Mode)
Create and return a U_WMRSETSTRETCHBLTMODE record.
Definition: uwmf.c:2463
int16_t * dx16_get(int32_t height, uint32_t weight, uint32_t members)
Make up an approximate dx array to pass to U_WMREXTTEXTOUT_get(), based on character height and weigh...
Definition: uwmf.c:4377
0x003A U_WMR3A record
Definition: uwmf.h:132
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:2021
0x00C7 U_WMRC7 record
Definition: uwmf.h:273
0x004B U_WMR4B record
Definition: uwmf.h:149
0x0940 U_WMRDIBBITBLT record
Definition: uwmf.h:138
0x012E U_WMRSETTEXTALIGN record
Definition: uwmf.h:120
int16_t wSrc
Wdith in logical units of Dst rect.
Definition: uwmf.h:1435
int U_WMRELLIPSE_get(const char *contents, U_RECT16 *rect)
Retrieve values from a U_WMRELLIPSE record.
Definition: uwmf.c:5165
int16_t xNum
X numerator.
Definition: uwmf.h:1212
char * U_WMRSETRELABS_set(void)
Allocate and construct a U_WMRSETRELABS record.
Definition: uwmf.c:2445
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:1245
int wmf_htable_free(WMFHANDLES **wht)
Free all memory in an htable. Sets the pointer to NULL.
Definition: uwmf.c:1752
int wget_DIB_params(const char *dib, const char **px, const U_RGBQUAD **ct, int32_t *numCt, int32_t *width, int32_t *height, int32_t *colortype, int32_t *invert)
Assume a packed DIB and get the parameters from it, use by DBI_to_RGBA()
Definition: uwmf.c:4730
uint32_t Reserved
must be 0
Definition: uwmf.h:1077
int16_t nPoints
Number of points in aPoints.
Definition: uwmf.h:1479
int16_t x
X value.
Definition: uwmf.h:1189
0x0083 U_WMR83 record
Definition: uwmf.h:205
int U_WMRSELECTCLIPREGION_get(const char *contents, uint16_t *Region)
Get data from a U_WMRSELECTCLIPREGION record.
Definition: uwmf.c:5612
0x0416 U_WMRINTERSECTCLIPRECT record
Definition: uwmf.h:96
struct U_WMRDRAWTEXT U_WMRCREATEBITMAP
in GDI and Wine, not documented in WMF manual.
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:1408
struct U_WMREOF U_WMRSETRELABS
WMF manual 2.3.5.21.
0x01F9 U_WMRCREATEPATTERNBRUSH record
Definition: uwmf.h:323
size_t used
Amount consumed.
Definition: uwmf.h:2036
0x0047 U_WMR47 record
Definition: uwmf.h:145
uint8_t iType
RecordType Enumeration.
Definition: uwmf.h:1165
0x00C0 U_WMRC0 record
Definition: uwmf.h:266
int U_WMRSETVIEWPORTEXT_get(const char *contents, U_POINT16 *extent)
Retrieve values from a U_WMRSETVIEWPORTEXT record.
Definition: uwmf.c:5016
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:1490
int U_WMRDIBSTRETCHBLT_get(const char *contents, U_POINT16 *Dst, U_POINT16 *cDst, U_POINT16 *Src, U_POINT16 *cSrc, uint32_t *dwRop3, const char **dib)
Get data from a U_WMRSTRETCHDIB record.
Definition: uwmf.c:5943
uint16_t ignore
size padding,not used
Definition: uwmf.h:2038
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:1280
uint32_t peak
Highest table slot occupied (ever)
Definition: uwmf.h:2061
uint8_t iType
RecordType Enumeration.
Definition: uwmf.h:1186
char * U_WMRSTRETCHDIB_set(U_POINT16 Dst, U_POINT16 cDst, U_POINT16 Src, U_POINT16 cSrc, uint16_t cUsage, uint32_t dwRop3, const U_BITMAPINFO *Bmi, uint32_t cbPx, const char *Px)
Allocate and construct a U_WMRSTRETCHDIB record.
Definition: uwmf.c:3460
0x02FD U_WMRCREATEBITMAPINDIRECT record
Definition: uwmf.h:327
int U_WMRSETMAPPERFLAGS_get(const char *contents, uint32_t *Mode)
Get data from a U_WMRSETMAPPERFLAGS record.
Definition: uwmf.c:5686
0x007A U_WMR7A record
Definition: uwmf.h:196
int U_WMRSCALEWINDOWEXT_get(const char *contents, U_POINT16 *Denom, U_POINT16 *Num)
Retrieve values from a U_WMRSCALEWINDOWEXT record.
Definition: uwmf.c:5043
int16_t sCount
number of scanlines in region
Definition: uwmf.h:847
U_SCAN * U_SCAN_set(uint16_t count, uint16_t top, uint16_t bottom, uint16_t *ScanLines)
Create and return a U_SCAN structure.
Definition: uwmf.c:942
int16_t xSrc
in logical units (UL corner of Src rect)
Definition: uwmf.h:1789
0x0073 U_WMR73 record
Definition: uwmf.h:189
0x003E U_WMR3E record
Definition: uwmf.h:136
0x0325 U_WMRPOLYLINE record
Definition: uwmf.h:111
int16_t yRadial1
in logical units
Definition: uwmf.h:1299
0x00E1 U_WMRE1 record
Definition: uwmf.h:299
int16_t hDst
in logical units (of Dst)
Definition: uwmf.h:1749
0x00BA U_WMRBA record
Definition: uwmf.h:260
int U_WMRPOLYLINE_get(const char *contents, uint16_t *Length, const char **Data)
Get data from a U_WMRPOLYLINE record.
Definition: uwmf.c:5502
uint16_t Reserved
Ignore (ALSO OPTIONAL - FIELD MAY NOT BE PRESENT!!!!)
Definition: uwmf.h:1130
int16_t Height
in logical units (of Src and Dst)
Definition: uwmf.h:1698
int16_t yNum
Y numerator.
Definition: uwmf.h:1210
struct U_WMRSETBKMODE U_WMRSETROP2
WMF manual 2.3.5.22 Binary Raster Operation Enumeration.
0x00EB U_WMREB record
Definition: uwmf.h:309
int16_t Orientation
Angle in 0.1 degrees between baseline and X axis.
Definition: uwmf.h:778
int16_t xSrc
in logical units (UL corner of Src rect)
Definition: uwmf.h:1462
int U_WMRRESTOREDC_get(const char *contents, int16_t *DC)
Get data from a U_WMRRESTOREDC record.
Definition: uwmf.c:5539
U_POLYPOLYGON PPolygon
PolyPolygon object (size is variable!)
Definition: uwmf.h:1652
0x02FB U_WMRCREATEFONTINDIRECT record
Definition: uwmf.h:325
0x00DA U_WMRDA record
Definition: uwmf.h:292
struct U_WMRINVERTREGION U_WMRDELETEOBJECT
WMF manual 2.3.4.7, delete object.
0x007E U_WMR7E record
Definition: uwmf.h:200
uint8_t iType
RecordType Enumeration.
Definition: uwmf.h:1996
int16_t ySrc
in logical units (UL corner of Src rect)
Definition: uwmf.h:1388
Structures, definitions, and function prototypes for EMF files.
uint32_t records
Number of records already contained.
Definition: uwmf.h:2037
0x0B23 U_WMRSTRETCHBLT record
Definition: uwmf.h:109
int16_t hSrc
Height in logical units of Src rect.
Definition: uwmf.h:1434
uint8_t OutPrecision
LF_OutPrecision Enumeration.
Definition: uwmf.h:784
uint16_t StartScan
First Scan line in Src.
Definition: uwmf.h:1616
uint8_t iType
RecordType Enumeration.
Definition: uwmf.h:1612
int16_t xDst
in logical units (UL corner of Dst rect)
Definition: uwmf.h:1415
int16_t Right
Coordinates in logical units.
Definition: uwmf.h:1251
int16_t x
in logical units (draw point)
Definition: uwmf.h:1600
uint16_t ignore2
unused value
Definition: uwmf.h:845
0x00A2 U_WMRA2 record
Definition: uwmf.h:236
uint8_t iType
RecordType Enumeration.
Definition: uwmf.h:1315
Point type for 16 bit EMR drawing functions.
Definition: uemf.h:541
0x004E U_WMR4E record
Definition: uwmf.h:152
0x0050 U_WMR50 record
Definition: uwmf.h:154
int U_WMRPATBLT_get(const char *contents, U_POINT16 *Dst, U_POINT16 *cwh, uint32_t *dwRop3)
Get data from a U_WMRPATBLT record.
Definition: uwmf.c:5285
int16_t Bottom
Coordinates in logical units.
Definition: uwmf.h:1265
int16_t Type
"bitmap type" MS PDF does not define this field beyond this.
Definition: uwmf.h:861
0x0220 U_WMROFFSETCLIPRGN record
Definition: uwmf.h:106
int16_t wDst
in logical units (of Dst)
Definition: uwmf.h:1726
uint8_t Quality
LF_Quality Enumeration.
Definition: uwmf.h:786
0x0046 U_WMR46 record
Definition: uwmf.h:144
0x0067 U_WMR67 record
Definition: uwmf.h:177
int16_t Bottom
Coordinates in logical units.
Definition: uwmf.h:1250
int16_t left
left coordinate
Definition: uwmf.h:832
int wmf_readdata(const char *filename, char **contents, size_t *length)
Retrieve contents of an WMF file by name.
Definition: uwmf.c:1535
uint8_t iType
RecordType Enumeration.
Definition: uwmf.h:1347
0x0045 U_WMR45 record
Definition: uwmf.h:143
int16_t xDst
in logical units (UL corner of Dst rect)
Definition: uwmf.h:1394
struct U_WMRINVERTREGION U_WMRSELECTOBJECT
WMF manual 2.3.4.10, select object.
struct U_WMRSETWINDOWORG U_WMRSETVIEWPORTEXT
WMF manual 2.3.5.28, Viewport X,Y extent.
char * wdeleteobject_set(uint32_t *ihObject, WMFHANDLES *wht)
Allocate and construct a U_WMRDELETEOBJECT record and also delete the requested object from the table...
Definition: uwmf.c:2065
struct U_WMRPOLYGON U_WMRPOLYLINE
WMF manual 2.3.3.14.
int16_t sMax
largest number of points in any scan
Definition: uwmf.h:848
int U_WMRRECTANGLE_get(const char *contents, U_RECT16 *rect)
Retrieve values from a U_WMRRECTANGLE record.
Definition: uwmf.c:5237
char * U_WMRSELECTCLIPREGION_set(uint16_t Region)
Allocate and construct a U_WMRSELECTCLIPREGION record.
Definition: uwmf.c:3039
int U_WMRSETTEXTJUSTIFICATION_get(const char *contents, uint16_t *Count, uint16_t *Extra)
Retrieve values from a U_WMRSETTEXTJUSTIFICATION record.
Definition: uwmf.c:4962
char * wend_path_set(void)
Allocate and construct the specified U_WMRESCAPE structure, create a handle and returns it Use this f...
Definition: uwmf.c:2291
uint8_t iType
RecordType Enumeration.
Definition: uwmf.h:1986
int16_t wDst
in logical units (of Dst)
Definition: uwmf.h:1791
0x007F U_WMR7F record
Definition: uwmf.h:201
int16_t yDst
in logical units (UL corner of Dst rect)
Definition: uwmf.h:1414
0x00D5 U_WMRD5 record
Definition: uwmf.h:287
char * U_WMRSAVEDC_set(void)
Allocate and construct a U_WMRSAVEDC record.
Definition: uwmf.c:2759
0x00AC U_WMRAC record
Definition: uwmf.h:246
int U_WMRPIE_get(const char *contents, U_POINT16 *Radial1, U_POINT16 *Radial2, U_RECT16 *rect)
Retrieve values from a U_WMRPIE record.
Definition: uwmf.c:5211
0x0060 U_WMR60 record
Definition: uwmf.h:170
0x0052 U_WMR52 record
Definition: uwmf.h:156
int U_WMRSTRETCHBLT_get(const char *contents, U_POINT16 *Dst, U_POINT16 *cDst, U_POINT16 *Src, U_POINT16 *cSrc, uint32_t *dwRop3, U_BITMAP16 *Bm16, const char **px)
Get data from a U_WMRSTRETCHBLT record.
Definition: uwmf.c:5437
int U_WMREXTTEXTOUT_get(const char *contents, U_POINT16 *Dst, int16_t *Length, uint16_t *Opts, const char **string, const int16_t **dx, U_RECT16 *rect)
Get data from a U_WMREXTTEXTOUT record.
Definition: uwmf.c:5707
0x0D33 U_WMRSETDIBTODEV record
Definition: uwmf.h:125
char * U_WMRHEADER_set(U_PAIRF *size, unsigned int dpi)
Set up fields for a (placeable) WMR_HEADER. Most of the fields are blank and are not set until all is...
Definition: uwmf.c:2356
uint8_t iType
RecordType Enumeration.
Definition: uwmf.h:1597
int16_t xDst
in logical units (UL corner of Dst rect)
Definition: uwmf.h:1728
char * U_WMRSETBKMODE_set(uint16_t Mode)
Create and return a U_WMRSETBKMODE record.
Definition: uwmf.c:2419
int16_t xStartArc
Coordinates in logical units.
Definition: uwmf.h:1249
struct U_WMRSETBKMODE U_WMRSETPOLYFILLMODE
WMF manual 2.3.5.20 Mode = PolyFillMode Enumeration.
int16_t ySrc
in logical units (UL corner of Src rect)
Definition: uwmf.h:1436
U_RECT16 U_RECT16_set(U_POINT16 ul, U_POINT16 lr)
Create and return a U_RECT16 structure from Upper Left and Lower Right corner points.
Definition: uwmf.c:878
0x0098 U_WMR98 record
Definition: uwmf.h:226
0x0106 U_WMRSETPOLYFILLMODE record
Definition: uwmf.h:80
char * U_WMRCHORD_set(U_POINT16 Radial1, U_POINT16 Radial2, U_RECT16 rect)
Create and return a U_WMRCHORD record.
Definition: uwmf.c:3074
For U_EMR_* OffBmi* fields.
Definition: uemf.h:2020
0x0234 U_WMRSELECTPALETTE record
Definition: uwmf.h:126
char * U_WMRCREATEPENINDIRECT_set(U_PEN pen)
Allocate and construct a U_WMRCREATEPENINDIRECT record.
Definition: uwmf.c:4292
0x0071 U_WMR71 record
Definition: uwmf.h:187
char * U_WMROFFSETWINDOWORG_set(U_POINT16 offset)
Create and return a U_WMROFFSETWINDOWORG record.
Definition: uwmf.c:2536
struct U_WMRPIE U_WMRCHORD
WMF manual 2.3.3.2.
0x0102 U_WMRSETBKMODE record
Definition: uwmf.h:76
uint16_t BitCount
Pixel Format (BitCount Enumeration)
Definition: uwmf.h:876
char * U_WMREOF_set(void)
Allocate and construct a U_WMREOF record.
Definition: uwmf.c:2401
uint8_t iType
RecordType Enumeration.
Definition: uwmf.h:1670
0x014D U_WMR4D record
Definition: uwmf.h:151
int16_t xDst
in logical units (UL corner of Dst rect)
Definition: uwmf.h:1466
char * wcreatebrushindirect_set(uint32_t *ihBrush, WMFHANDLES *wht, U_WLOGBRUSH lb)
Allocate and construct a U_WMRCREATEBRUSHINDIRECT record, create a handle and returns it Use this fun...
Definition: uwmf.c:2124
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:1579
0x0085 U_WMR85 record
Definition: uwmf.h:207
int16_t ySrc
in logical units (UL corner of Src rect)
Definition: uwmf.h:1410
struct U_WMRSETWINDOWORG U_WMRMOVETO
WMF manual 2.3.3.4, Destination X,Y in logical units.
0x012C U_WMRSELECTCLIPREGION record
Definition: uwmf.h:118
char * U_WMRSCALEWINDOWEXT_set(U_POINT16 Denom, U_POINT16 Num)
Create and return a U_WMRSCALEWINDOWEXT record.
Definition: uwmf.c:2546
0x0105 U_WMRSETRELABS record
Definition: uwmf.h:79
0x0054 U_WMR54 record
Definition: uwmf.h:158
U_PALETTE Palette
Palette object.
Definition: uwmf.h:1640
int16_t xDst
in logical units (UL corner of Dst rect)
Definition: uwmf.h:1442
uint16_t version
Metafile version Enumeration.
Definition: uwmf.h:1087
U_PEN pen
Pen Object.
Definition: uwmf.h:1988
0x007C U_WMR7C record
Definition: uwmf.h:198
0x0062 U_WMR62 record
Definition: uwmf.h:172
0x00E3 U_WMRE3 record
Definition: uwmf.h:301
char * wmiterlimit_set(int32_t limit)
Allocate and construct the specified U_WMRESCAPE structure, create a handle and returns it Use this f...
Definition: uwmf.c:2335
int U_WMRCHORD_get(const char *contents, U_POINT16 *Radial1, U_POINT16 *Radial2, U_RECT16 *rect)
Retrieve values from a U_WMRCHORD record.
Definition: uwmf.c:5660
int16_t Length
Stringlength in bytes.
Definition: uwmf.h:1601
0x00B2 U_WMRB2 record
Definition: uwmf.h:252
uint16_t Mode
Various Enumeraton and other.
Definition: uwmf.h:1145
0x00C2 U_WMRC2 record
Definition: uwmf.h:268
uint8_t iType
RecordType Enumeration.
Definition: uwmf.h:1565
Prototypes for functions for converting WMF records between Big Endian and Little Endian...
int16_t Width
in logical units (of Src and Dst rects)
Definition: uwmf.h:1392
int16_t xSrc
in logical units (UL corner of Src rect)
Definition: uwmf.h:1723
char * U_WMRCREATEPALETTE_set(U_PALETTE *Palette)
Create and return a U_WMRCREATEPALETTE record.
Definition: uwmf.c:4248
char * U_WMRSETPOLYFILLMODE_set(uint16_t Mode)
Create and return a U_WMRSETPOLYFILLMODE record.
Definition: uwmf.c:2454
int16_t xSrc
in logical units (UL corner of Src rect)
Definition: uwmf.h:1411
0x006D U_WMR6D record
Definition: uwmf.h:183
0x0139 U_WMRRESIZEPALETTE record
Definition: uwmf.h:131
uint8_t iType
RecordType Enumeration.
Definition: uwmf.h:1638
int16_t ignore
ignore
Definition: uwmf.h:1390
U_PEN U_PEN_set(uint16_t Style, uint16_t Width, U_COLORREF Color)
Create and return a U_PEN structure.
Definition: uwmf.c:857
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:1264
0x020A U_WMRSETTEXTJUSTIFICATION record
Definition: uwmf.h:84
0x00A1 U_WMRA1 record
Definition: uwmf.h:235
int16_t xDst
in logical units (UL corner of Dst rect)
Definition: uwmf.h:1752
int U_WMRSTRETCHDIB_get(const char *contents, U_POINT16 *Dst, U_POINT16 *cDst, U_POINT16 *Src, U_POINT16 *cSrc, uint16_t *cUsage, uint32_t *dwRop3, const char **dib)
Get data from a U_WMRSTRETCHDIB record.
Definition: uwmf.c:6039
uint8_t iType
RecordType Enumeration.
Definition: uwmf.h:1543
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:1208
0x00AA U_WMRAA record
Definition: uwmf.h:244
char * U_WMRARC_set(U_POINT16 StartArc, U_POINT16 EndArc, U_RECT16 rect)
Create and return a U_WMRARC record.
Definition: uwmf.c:2624
int16_t yDst
in logical units (UL corner of Dst rect)
Definition: uwmf.h:1465
0x00A8 U_WMRA8 record
Definition: uwmf.h:242
0x020C U_WMRSETWINDOWEXT record
Definition: uwmf.h:86
int16_t xDst
in logical units (UL corner to fill)
Definition: uwmf.h:1337
int16_t hSrc
Height in logical units of Src rect.
Definition: uwmf.h:1459
int16_t hSrc
in logical units (of Src)
Definition: uwmf.h:1786
int16_t ySrc
in logical units (UL corner of Src rect)
Definition: uwmf.h:1617
0x00BF U_WMRBF record
Definition: uwmf.h:265
uint8_t iType
RecordType Enumeration.
Definition: uwmf.h:1263
U_REGION * U_REGION_set(int16_t Size, int16_t sCount, int16_t sMax, U_RECT16 sRect, uint16_t *aScans)
Create and return a U_REGION structure.
Definition: uwmf.c:969
int16_t top
top coordinate
Definition: uwmf.h:833
char * U_WMRINVERTREGION_set(uint16_t Region)
Allocate and construct a U_WMRINVERTREGION record.
Definition: uwmf.c:3021
int16_t x
X.
Definition: uwmf.h:1284
int16_t xSrc
in logical units (UL corner of Src rect)
Definition: uwmf.h:1437
int U_WMRSELECTPALETTE_get(const char *contents, uint16_t *Palette)
Get data from a U_WMRSELECTPALETTE record.
Definition: uwmf.c:5776
uint16_t Mode
Various Enumeraton.
Definition: uwmf.h:1129
0x0070 U_WMR70 record
Definition: uwmf.h:186
0x00D8 U_WMRD8 record
Definition: uwmf.h:290
0x0A32 U_WMREXTTEXTOUT record
Definition: uwmf.h:124
uint8_t StrikeOut
LF_StrikeOut Enumeration.
Definition: uwmf.h:782
uint8_t iType
RecordType Enumeration.
Definition: uwmf.h:1650
int U_WMRDELETEOBJECT_get(const char *contents, uint16_t *Object)
Get data from a U_WMRDELETEOBJECT record.
Definition: uwmf.c:6784
0x0053 U_WMR53 record
Definition: uwmf.h:157
0x0080 U_WMR80 record
Definition: uwmf.h:202
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:1671
0x001E U_WMRSAVEDC record
Definition: uwmf.h:104
struct U_WMRSETWINDOWORG U_WMROFFSETWINDOWORG
WMF manual 2.3.5.7, Window X,Y offset in device units.
U_BITMAP16 * U_BITMAP16_set(const int16_t Type, const int16_t Width, const int16_t Height, const int16_t LineN, const uint8_t BitsPixel, const char *Bits)
Create and return a U_BITMAP16 structure.
Definition: uwmf.c:900
char * U_WMRCREATEREGION_set(const U_REGION *region)
Allocate and construct a U_WMRCREATEREGION record.
Definition: uwmf.c:4342
uint16_t Start
Either 0x0300 or an offset into the Palette table.
Definition: uwmf.h:810
uint32_t sumObjects
Number of objects created (used by WMF, not by EMF)
Definition: uwmf.h:2043
uint16_t Opts
ExtTextOutOptions Flags.
Definition: uwmf.h:1602
struct U_WMRSETWINDOWORG U_WMRSETWINDOWEXT
WMF manual 2.3.5.30, Window X,Y extent.
struct U_WMRINVERTREGION U_WMRSELECTPALETTE
WMF manual 2.3.4.11, select palette object.
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:1386
int U_WMRESCAPE_get(const char *contents, uint16_t *Escape, uint16_t *Length, const char **Data)
Get data from a U_WMRESCAPE record. WARNING! Only three Escape record types are fully supported: SETL...
Definition: uwmf.c:5524
uint8_t iType
RecordType Enumeration.
Definition: uwmf.h:1385
uint32_t U_wmr_properties(uint32_t type)
Look up the properties (a bit map) of a type of WMR record. Bits that may be set are defined in "Draw...
Definition: uwmf.c:1118
uint16_t cUsage
See table above.
Definition: uwmf.h:1773
0x00CB U_WMRCB record
Definition: uwmf.h:277
int16_t wSrc
in logical units (of Src)
Definition: uwmf.h:1787
U_PALETTE * U_PLTENTRY_set(uint16_t Start, uint16_t NumEntries, U_PLTNTRY *PalEntries)
Create and return a U_PALETTE structure.
Definition: uwmf.c:833
char * U_WMRDRAWTEXT_set(void)
Definition: uwmf.c:3063
int16_t Right
Coordinates in logical units.
Definition: uwmf.h:1266
0x0066 U_WMR66 record
Definition: uwmf.h:176
struct U_WMREOF U_WMRSAVEDC
WMF manual 2.3.5.11.
uint8_t Underline
LF_Underline Enumeration.
Definition: uwmf.h:781
0x00CF U_WMRCF record
Definition: uwmf.h:281
int wmfheader_get(const char *contents, const char *blimit, U_WMRPLACEABLE *Placeable, U_WMRHEADER *Header)
Get data from a (placeable) WMR_HEADER.
Definition: uwmf.c:4796
int16_t Right
Coordinates in logical units.
Definition: uwmf.h:1233
int16_t Height
bitmap height in scan lines.
Definition: uwmf.h:863
char * U_WMRINTERSECTCLIPRECT_set(U_RECT16 rect)
Create and return a U_WMRINTERSECTCLIPRECT record.
Definition: uwmf.c:2607
0x01F0 U_WMRDELETEOBJECT record
Definition: uwmf.h:314
int U_WMRSETWINDOWEXT_get(const char *contents, U_POINT16 *extent)
Retrieve values from a U_WMRSETWINDOWEXT record.
Definition: uwmf.c:4989
int U_WMRSETROP2_get(const char *contents, uint16_t *Mode)
Retrieve values from a U_WMRSETROP2 record.
Definition: uwmf.c:4882
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:1523
0x0065 U_WMR65 record
Definition: uwmf.h:175
int U_WMRINVERTREGION_get(const char *contents, uint16_t *Region)
Get data from a U_WMRINVERTREGION record.
Definition: uwmf.c:5586
int wmf_append(U_METARECORD *rec, WMFTRACK *wt, int freerec)
Append an WMF record to a wmf in memory. This may reallocate buf memory.
Definition: uwmf.c:1580
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:1771
int16_t Top
Coordinates in logical units.
Definition: uwmf.h:1234
char * U_WMRPOLYPOLYGON_set(const uint16_t nPolys, const uint16_t *aPolyCounts, const U_POINT16 *Points)
Allocate and construct a U_WMR_POLYPOLYGON record.
Definition: uwmf.c:3195
struct U_WMREXCLUDECLIPRECT U_WMRINTERSECTCLIPRECT
WMF manual 2.3.5.3.
0x0097 U_WMR97 record
Definition: uwmf.h:225
0x00A6 U_WMRA6 record
Definition: uwmf.h:240
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:1639
int wmf_free(WMFTRACK **wt)
Release memory for an wmf structure in memory. Call this after wmf_finish().
Definition: uwmf.c:1473
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:1598
0x00F1 U_WMRF1 record
Definition: uwmf.h:315
uint8_t ClipPrecision
LF_ClipPrecision Enumeration.
Definition: uwmf.h:785
uint32_t PalEntries
Number of PalEntries (set from U_EMREOF)
Definition: uwmf.h:2039
0x0044 U_WMR44 record
Definition: uwmf.h:142
int U_WMRFRAMEREGION_get(const char *contents, uint16_t *Region, uint16_t *Brush, int16_t *Height, int16_t *Width)
Get data from a U_WMRFRAMEREGION record.
Definition: uwmf.c:5570
char * U_WMRSETVIEWPORTORG_set(U_POINT16 coord)
Create and return a U_WMRSETVIEWPORTORG record.
Definition: uwmf.c:2518
int U_WMREOF_get(const char *contents)
Get data from a U_WMREOF record.
Definition: uwmf.c:4828
0x0037 U_WMRSETPALENTRIES record
Definition: uwmf.h:129
char * wselectobject_set(uint32_t ihObject, WMFHANDLES *wht)
Allocate and construct a U_WMRSELECTOBJECT record, checks that the handle specified is one that can a...
Definition: uwmf.c:2084
char * U_WMRSETMAPPERFLAGS_set(uint32_t Mode)
Allocate and construct a U_WMRSETMAPPERFLAGS record.
Definition: uwmf.c:3093
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:1651
0x0084 U_WMR84 record
Definition: uwmf.h:206
uint16_t cUsage
ColorUsage Enumeration.
Definition: uwmf.h:1785
char * U_WMRSETBKCOLOR_set(U_COLORREF Color)
Create and return a U_WMRSETBKCOLOR record.
Definition: uwmf.c:2410
U_RECT16 Dst
Destination bounding box in logical units.
Definition: uwmf.h:1075
int U_WMRCREATEBRUSHINDIRECT_get(const char *contents, const char **brush)
Get data from a U_WMRCREATEBRUSHINDIRECT record.
Definition: uwmf.c:6899
int16_t Escapement
Angle in 0.1 degrees betweem escapement vector and X axis.
Definition: uwmf.h:777
char * U_WMRSTRETCHBLT_set(U_POINT16 Dst, U_POINT16 cDst, U_POINT16 Src, U_POINT16 cSrc, uint32_t dwRop3, const U_BITMAP16 *Bm16)
Allocate and construct a U_WMRSTRETCHBLT record.
Definition: uwmf.c:2891
char * U_WMRPOLYGON_set(uint16_t Length, const U_POINT16 *Data)
Allocate and construct a U_WMRPOLYGON record.
Definition: uwmf.c:2954
struct U_WMRSETBKMODE U_WMRSETSTRETCHBLTMODE
WMF manual 2.3.5.23 Mode = StretchMode Enumeration.
uint8_t iType
RecordType Enumeration.
Definition: uwmf.h:1331
0x007B U_WMR7B record
Definition: uwmf.h:197
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:1783
0x0214 U_WMRMOVETO record
Definition: uwmf.h:94
0x008B U_WMR8B record
Definition: uwmf.h:213
int16_t yDst
in logical units (UL corner of Dst rect)
Definition: uwmf.h:1700
int16_t Length
Stringlength in bytes.
Definition: uwmf.h:1369
0x0082 U_WMR82 record
Definition: uwmf.h:204
int U_WMROFFSETCLIPRGN_get(const char *contents, U_POINT16 *offset)
Get data from a U_WMROFFSETCLIPRGN record.
Definition: uwmf.c:5339
char * wsetpaletteentries_set(uint32_t *ihPal, WMFHANDLES *wht, const U_PALETTE *Palettes)
Allocate and construct a U_WMRSETPALENTRIES record, create a handle and returns it Use this function ...
Definition: uwmf.c:2247
uint32_t U_wmr_values(int idx)
Look up the full numeric type of a WMR record by type.
Definition: uwmf.c:58
char * U_WMRPATBLT_set(U_POINT16 Dst, U_POINT16 cwh, uint32_t dwRop3)
Allocate and construct a U_WMRPATBLT record.
Definition: uwmf.c:2732
uint32_t Key
MUST be 0x9AC6CDD7.
Definition: uwmf.h:1073
uint8_t iType
RecordType Enumeration.
Definition: uwmf.h:1244
0x012A U_WMRINVERTREGION record
Definition: uwmf.h:116
0x006A U_WMR6A record
Definition: uwmf.h:180
size_t U_WMRRECSAFE_get(const char *contents, const char *blimit)
Return the size of a WMF record, or 0 if it is found to be invalid. A valid record will have a size t...
Definition: uwmf.c:4402
U_PAIRF * U_PAIRF_set(float x, float y)
Create and return a U_PAIRF structure.
Definition: uwmf.c:1029
int16_t yDst
in logical units (UL corner of Dst rect)
Definition: uwmf.h:1678
uint32_t largest
Largest record size, in bytes (used by WMF, not by EMF)
Definition: uwmf.h:2042
uint8_t iType
RecordType Enumeration.
Definition: uwmf.h:1501
size_t allocated
Slots in the buffer.
Definition: uwmf.h:2057
0x009B U_WMR9B record
Definition: uwmf.h:229
int U_WMRFLOODFILL_get(const char *contents, uint16_t *Mode, U_COLORREF *Color, U_POINT16 *coord)
Retrieve values from a U_WMRFLOODFILL record.
Definition: uwmf.c:5187
int16_t * dx16_set(int32_t height, uint32_t weight, uint32_t members)
Make up an approximate dx array to pass to U_WMREXTTEXTOUT_set(), based on character height and weigh...
Definition: uwmf.c:1096
0x00C5 U_WMRC5 record
Definition: uwmf.h:271
0x00EA U_WMREA record
Definition: uwmf.h:308
0x00C8 U_WMRC8 record
Definition: uwmf.h:274
char * U_WMRSETWINDOWORG_set(U_POINT16 coord)
Create and return a U_WMRSETWINDOWORG record.
Definition: uwmf.c:2500
uint8_t iType
RecordType Enumeration.
Definition: uwmf.h:1782
struct U_WMRSETBKCOLOR U_WMRSETTEXTCOLOR
WMF manual 2.3.5.26.
0x00E7 U_WMRE7 record
Definition: uwmf.h:305
uint8_t iType
RecordType Enumeration.
Definition: uwmf.h:1295
0x0000 U_WMREOF record
Definition: uwmf.h:74
int wmf_htable_create(uint32_t initsize, uint32_t chunksize, WMFHANDLES **wht)
Create a handle table. Entries filled with 0 are empty, entries >0 hold a handle. ...
Definition: uwmf.c:1663
struct U_WMRINVERTREGION U_WMRRESIZEPALETTE
WMF manual 2.3.5.9, resize the system palette to "index".
int U_WMRCREATEREGION_get(const char *contents, const char **Region)
Get data from a U_WMRCREATEREGION record.
Definition: uwmf.c:6924
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:1128
0x0087 U_WMR87 record
Definition: uwmf.h:209
int16_t ySrc
in logical units (UL corner of Src rect)
Definition: uwmf.h:1788
int16_t Height
in logical units (of Rect to Fill)
Definition: uwmf.h:1334
char * wcreatedibpatternbrush_srcdib_set(uint32_t *ihBrush, WMFHANDLES *wht, const uint32_t iUsage, const U_BITMAPINFO *Bmi, const uint32_t cbPx, const char *Px)
Allocate and construct a U_WMRDIBCREATEPATTERNBRUSH record from a DIB. Use this function instead of c...
Definition: uwmf.c:2145
0x008D U_WMR8D record
Definition: uwmf.h:215
char * U_WMREXCLUDECLIPRECT_set(U_RECT16 rect)
Create and return a U_WMREXCLUDECLIPRECT record.
Definition: uwmf.c:2592
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:1187
uint16_t nObjects
Total number of brushes, pens, and other graphics objects defined in this file.
Definition: uwmf.h:1089
0x005D U_WMR5D record
Definition: uwmf.h:167
uint8_t iType
RecordType Enumeration.
Definition: uwmf.h:1279
0x0063 U_WMR63 record
Definition: uwmf.h:173
int U_WMRSETVIEWPORTORG_get(const char *contents, U_POINT16 *coord)
Retrieve values from a U_WMRSETVIEWPORTORG record.
Definition: uwmf.c:5002
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:1978
int16_t hDst
in logical units (of Dst)
Definition: uwmf.h:1790
0x0075 U_WMR75 record
Definition: uwmf.h:191
int U_WMRSELECTOBJECT_get(const char *contents, uint16_t *Object)
Get data from a U_WMRSELECTOBJECT record.
Definition: uwmf.c:5626
0x0107 U_WMRSETSTRETCHBLTMODE record
Definition: uwmf.h:81
U_COLORREF Color
Color value, the 32 bit value is not aligned.
Definition: uwmf.h:1117
0x003B U_WMR3B record
Definition: uwmf.h:133
uint32_t * table
Array Buffer for constructing the WMF in memory.
Definition: uwmf.h:2056
0x00ED U_WMRED record
Definition: uwmf.h:311
0x00F5 U_WMRF5 record
Definition: uwmf.h:319
int16_t ySrc
in logical units (UL corner of Src rect)
Definition: uwmf.h:1747
char * U_WMRCREATEFONTINDIRECT_set(U_FONT *font)
Allocate and construct a U_WMRCREATEFONTINDIRECT record.
Definition: uwmf.c:4301
0x00B7 U_WMRB7 record
Definition: uwmf.h:257
For U_BITMAPINFO crColor field.
Definition: uemf.h:452
int16_t Width
bitmap width in pixels.
Definition: uwmf.h:862
0x020E U_WMRSETVIEWPORTEXT record
Definition: uwmf.h:88
struct U_WMRSETMAPMODE U_WMRSETTEXTCHAREXTRA
WMF manual 2.3.5.25, Mode = Extra space in logical units to add to each character.
0x009D U_WMR9D record
Definition: uwmf.h:231
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:1566
0x00E4 U_WMRE4 record
Definition: uwmf.h:302
int16_t ySrc
in logical units (UL corner of Src rect)
Definition: uwmf.h:1722
0x0089 U_WMR89 record
Definition: uwmf.h:211
char * U_WMRSETVIEWPORTEXT_set(U_POINT16 extent)
Create and return a U_WMRSETVIEWPORTEXT record.
Definition: uwmf.c:2527
0x0429 U_WMRFRAMEREGION record
Definition: uwmf.h:115
char * wcreatefontindirect_set(uint32_t *ihFont, WMFHANDLES *wht, U_FONT *uf)
Allocate and construct a U_WMRCREATEFONTINDIRECT record, create a handle and returns it Use this func...
Definition: uwmf.c:2209
int16_t yDst
in logical units (UL corner of Dst rect)
Definition: uwmf.h:1751
int16_t Width
in logical units (of Src and Dst rects)
Definition: uwmf.h:1413
uint16_t Height
DIB height in pixels.
Definition: uwmf.h:874
void U_BITMAPCOREHEADER_get(const char *BmiCh, int32_t *Size, int32_t *Width, int32_t *Height, int32_t *BitCount)
Return parameters from a bitmapcoreheader. All are returned as 32 bit integers, regardless of their i...
Definition: uwmf.c:4652
char * U_WMREXTFLOODFILL_set(uint16_t Mode, U_COLORREF Color, U_POINT16 coord)
Create and return a U_WMREXTFLOODFILL record.
Definition: uwmf.c:3528
uint16_t cUsage
ColorUsage Enumeration.
Definition: uwmf.h:1614
0x0201 U_WMRSETBKCOLOR record
Definition: uwmf.h:75
int16_t Left
Coordinates in logical units.
Definition: uwmf.h:1235
int16_t xDst
in logical units (UL corner of Dst rect)
Definition: uwmf.h:1679
char * U_WMRSETTEXTCHAREXTRA_set(uint16_t Mode)
Create and return a U_WMRSETTEXTCHAREXTRA record.
Definition: uwmf.c:2472
uint16_t Region
Index of region to fill in object table.
Definition: uwmf.h:1513
int16_t xRadial1
in logical units
Definition: uwmf.h:1300
0x00F6 U_WMRF6 record
Definition: uwmf.h:320
struct U_WMRELLIPSE U_WMRRECTANGLE
WMF manual 2.3.3.17.
uint8_t iType
RecordType Enumeration.
Definition: uwmf.h:1063
0x0035 U_WMRREALIZEPALETTE record
Definition: uwmf.h:127
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:1987
0x00E2 U_WMRE2 record
Definition: uwmf.h:300
0x0074 U_WMR74 record
Definition: uwmf.h:190
0x00BB U_WMRBB record
Definition: uwmf.h:261
0x02FA U_WMRCREATEPENINDIRECT record
Definition: uwmf.h:324
uint8_t iType
RecordType Enumeration.
Definition: uwmf.h:1742
0x003F U_WMR3F record
Definition: uwmf.h:137
int16_t Width
in logical units (of Src and Dst)
Definition: uwmf.h:1699
0x0072 U_WMR72 record
Definition: uwmf.h:188
size_t chunk
Number to add if a realloc is required.
Definition: uwmf.h:2058
int U_WMRPAINTREGION_get(const char *contents, uint16_t *Region)
Get data from a U_WMRPAINTREGION record.
Definition: uwmf.c:5599
int wmf_htable_insert(uint32_t *ih, WMFHANDLES *wht)
Returns the index of the first free slot. Call realloc() if needed. The slot is set to handle (indica...
Definition: uwmf.c:1721
struct U_WMRSETWINDOWORG U_WMROFFSETVIEWPORTORG
WMF manual 2.3.5.6, Viewport X,Y offset in device units.
0x0068 U_WMR68 record
Definition: uwmf.h:178
struct U_WMRSETBKMODE U_WMRSETTEXTALIGN
WMF manual 2.3.5.24 Mode = TextAlignment Enumeration.
uint8_t iType
RecordType Enumeration.
Definition: uwmf.h:1456
int16_t DC
DC to restore (negative is relative to current, positive is absolute)
Definition: uwmf.h:1503
0x00D6 U_WMRD6 record
Definition: uwmf.h:288
int16_t wDst
in logical units (of Dst)
Definition: uwmf.h:1750
0x00A4 U_WMRA4 record
Definition: uwmf.h:238
0x0142 U_WMRDIBCREATEPATTERNBRUSH record
Definition: uwmf.h:140
int16_t ySrc
in logical units (UL corner of Src rect)
Definition: uwmf.h:1461
0x00C3 U_WMRC3 record
Definition: uwmf.h:269
uint16_t bottom
Y coordinate of the bottom scanline.
Definition: uwmf.h:1046
0x00A3 U_WMRA3 record
Definition: uwmf.h:237
uint16_t Planes
must be 1
Definition: uwmf.h:875
char * wlinecap_set(int32_t Type)
Allocate and construct the specified U_WMRESCAPE structure, create a handle and returns it Use this f...
Definition: uwmf.c:2301
int16_t Width
in logical units (of Src and Dst)
Definition: uwmf.h:1677
uint16_t Brush
Index of brush to use in object table.
Definition: uwmf.h:1514
int16_t xSrc
in logical units (UL corner of Src rect)
Definition: uwmf.h:1697
0x00D7 U_WMRD7 record
Definition: uwmf.h:289
int16_t wDst
Wdith in logical units of Dst rect.
Definition: uwmf.h:1440
char * U_WMRCREATEPATTERNBRUSH_set(U_BITMAP16 *Bm16, char *Pattern)
Allocate and construct a U_WMRCREATEPATTERNBRUSH record. Warning - application support for U_WMRCREAT...
Definition: uwmf.c:4265
For U_BITMAPINFO bmiColors field.
Definition: uemf.h:570
struct U_WMRSETWINDOWORG U_WMROFFSETCLIPRGN
WMF manual 2.3.5.5, Y offset in logical units.
uint8_t iType
RecordType Enumeration.
Definition: uwmf.h:1207
0x00D2 U_WMRD2 record
Definition: uwmf.h:284
0x0069 U_WMR69 record
Definition: uwmf.h:179
0x00B5 U_WMRB5 record
Definition: uwmf.h:255
0x014C U_WMR4C record
Definition: uwmf.h:150
char * wbegin_path_set(void)
Allocate and construct the specified U_WMRESCAPE structure, create a handle and returns it Use this f...
Definition: uwmf.c:2282
0x0061 U_WMR61 record
Definition: uwmf.h:171
int16_t Mode
FloodFill Enumeration.
Definition: uwmf.h:1281
int16_t hDst
in logical units (of Dst)
Definition: uwmf.h:1725
int16_t yStartArc
Coordinates in logical units.
Definition: uwmf.h:1248
0x00D1 U_WMRD1 record
Definition: uwmf.h:283
uint16_t Type
must be 0x0006.
Definition: uwmf.h:844
char * U_WMRDELETEOBJECT_set(uint16_t object)
Create and return a U_WMRDELETEOBJECT record.
Definition: uwmf.c:4213
struct U_WMRDRAWTEXT U_WMRCREATEBITMAPINDIRECT
in GDI and Wine, not documented in WMF manual.
0x00CC U_WMRCC record
Definition: uwmf.h:278
size_t allocated
Size of the buffer.
Definition: uwmf.h:2035
0x00DD U_WMRDD record
Definition: uwmf.h:295
0x020D U_WMRSETVIEWPORTORG record
Definition: uwmf.h:87
int16_t ignore
ignored
Definition: uwmf.h:1438
int16_t xDst
in logical units (UL corner of Dst rect)
Definition: uwmf.h:1701
0x00AD U_WMRAD record
Definition: uwmf.h:247
int16_t Left
Coordinates in logical units.
Definition: uwmf.h:1268
int16_t yEndArc
Coordinates in logical units.
Definition: uwmf.h:1246
0x00AE U_WMRAE record
Definition: uwmf.h:248
int U_WMRSETPOLYFILLMODE_get(const char *contents, uint16_t *Mode)
Retrieve values from a U_WMRSETPOLYFILLMODE record.
Definition: uwmf.c:4906
uint16_t Inch
Logical units/inch (convention if not specified: 1440 logical units/inch)
Definition: uwmf.h:1076
uint8_t CharSet
LF_CharSet Enumeration.
Definition: uwmf.h:783
uint16_t nBytes
bytes in the data array
Definition: uwmf.h:1492
uint16_t Count
Number of space characters in the line.
Definition: uwmf.h:1167
char * U_WMRFLOODFILL_set(uint16_t Mode, U_COLORREF Color, U_POINT16 coord)
Create and return a U_WMRFLOODFILL record.
Definition: uwmf.c:2660
0x0209 U_WMRSETTEXTCOLOR record
Definition: uwmf.h:83
char * U_wmr_names(int idx)
Look up the name of the WMR record by type. Returns U_WMR_INVALID if out of range.
Definition: uwmf.c:330
int16_t Left
Coordinates in logical units.
Definition: uwmf.h:1253
uint32_t hilimit
Highest table slot occupied (currently)
Definition: uwmf.h:2060
0x006B U_WMR6B record
Definition: uwmf.h:181
0x0091 U_WMR91 record
Definition: uwmf.h:219
uint8_t iType
RecordType Enumeration.
Definition: uwmf.h:1431
0x00AF U_WMRAF record
Definition: uwmf.h:249
0x00B3 U_WMRB3 record
Definition: uwmf.h:253
char * U_WMROFFSETVIEWPORTORG_set(U_POINT16 offset)
Create and return a U_WMROFFSETVIEWPORTORG record.
Definition: uwmf.c:2555
0x00C6 U_WMRC6 record
Definition: uwmf.h:272
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:1144
0x008A U_WMR8A record
Definition: uwmf.h:212
uint16_t Style
BrushStyle Enumeration.
Definition: uwmf.h:765
0x0410 U_WMRSCALEWINDOWEXT record
Definition: uwmf.h:90
0x00CD U_WMRCD record
Definition: uwmf.h:279
char * U_WMRDIBBITBLT_set(U_POINT16 Dst, U_POINT16 cwh, U_POINT16 Src, uint32_t dwRop3, const U_BITMAPINFO *Bmi, uint32_t cbPx, const char *Px)
Allocate and construct a U_WMRDIBITBLT record.
Definition: uwmf.c:3268
int U_WMRSETMAPMODE_get(const char *contents, uint16_t *Mode)
Retrieve values from a U_WMRSETMAPMODE record.
Definition: uwmf.c:4869
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:1231
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:1512
int16_t Width
in logical units (of Rect to Fill)
Definition: uwmf.h:1335
0x009E U_WMR9E record
Definition: uwmf.h:232
char * wcreatepalette_set(uint32_t *ihPal, WMFHANDLES *wht, U_PALETTE *up)
Allocate and construct a U_WMRCREATEPALETTE record, create a handle and returns it Use this function ...
Definition: uwmf.c:2228
U_BITMAP16 bitmap
Src bitmap.
Definition: uwmf.h:1467
int U_WMRCREATEFONTINDIRECT_get(const char *contents, const char **font)
Get data from a U_WMRCREATEFONTINDIRECT record.
Definition: uwmf.c:6886
0x005C U_WMR5C record
Definition: uwmf.h:166
0x003C U_WMR3C record
Definition: uwmf.h:134
int16_t bottom
bottom coordinate
Definition: uwmf.h:835
char * U_WMRSETTEXTJUSTIFICATION_set(uint16_t Count, uint16_t Extra)
Create and return a U_WMRSETTEXTJUSTIFICATION record.
Definition: uwmf.c:2491
0x041F U_WMRSETPIXEL record
Definition: uwmf.h:105
uint8_t iType
RecordType Enumeration.
Definition: uwmf.h:1522
int U_WMRSETTEXTCOLOR_get(const char *contents, U_COLORREF *Color)
Retrieve values from a U_WMRSETTEXTCOLOR record.
Definition: uwmf.c:4945
uint16_t nPolys
Number of polygons.
Definition: uwmf.h:1020
int16_t Height
in logical units (rounded corner)
Definition: uwmf.h:1317
int U_WMRANIMATEPALETTE_get(const char *contents, U_PALETTE *Palette, const char **PalEntries)
Get data from a U_WMRSETPALENTRIES record.
Definition: uwmf.c:5801
0x00B8 U_WMRB8 record
Definition: uwmf.h:258
int16_t Top
in logical units
Definition: uwmf.h:1303
0x0324 U_WMRPOLYGON record
Definition: uwmf.h:110
uint16_t NumEntries
Number of U_LOGPLTNTRY objects.
Definition: uwmf.h:811
int16_t yDst
in logical units (UL corner of Dst rect)
Definition: uwmf.h:1621
0x062F U_WMRDRAWTEXT record
Definition: uwmf.h:121
int16_t hDst
Height in logical units of Dst rect.
Definition: uwmf.h:1439
0x00C9 U_WMRC9 record
Definition: uwmf.h:275
int16_t ySrc
in logical units (UL corner of Src rect)
Definition: uwmf.h:1673
uint8_t Planes
must be 1.
Definition: uwmf.h:865
int16_t yDenom
Y denominator.
Definition: uwmf.h:1209
int wmr_arc_points(U_RECT16 rclBox16, U_POINT16 ArcStart16, U_POINT16 ArcEnd16, int *f1, int f2, U_PAIRF *center, U_PAIRF *start, U_PAIRF *end, U_PAIRF *size)
Derive from bounding box and start and end arc, for WMF arc, chord, or pie records, the center, start, and end points, and the bounding rectangle.
Definition: uwmf.c:690
int16_t wSrc
Wdith in logical units of Dst rect.
Definition: uwmf.h:1460
int U_WMRSETPIXEL_get(const char *contents, U_COLORREF *Color, U_POINT16 *Coord)
Get data from a U_WMRSETPIXEL record.
Definition: uwmf.c:5319
int wmf_htable_delete(uint32_t *ih, WMFHANDLES *wht)
Delete an entry from the handle table. Move it back onto the stack. The specified slot is filled with...
Definition: uwmf.c:1697
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:1316
0x0521 U_WMRTEXTOUT record
Definition: uwmf.h:107
0x0B41 U_WMRDIBSTRETCHBLT record
Definition: uwmf.h:139
0x00EE U_WMREE record
Definition: uwmf.h:312
int U_WMRSAVEDC_get(const char *contents)
Get data from a U_WMRSAVEDC record.
Definition: uwmf.c:5306
0x012B U_WMRPAINTREGION record
Definition: uwmf.h:117
0x041B U_WMRRECTANGLE record
Definition: uwmf.h:101
int U_WMRPOLYGON_get(const char *contents, uint16_t *Length, const char **Data)
Get data from a U_WMRPOLYGON record.
Definition: uwmf.c:5487
0x00BC U_WMRBC record
Definition: uwmf.h:262
0x0057 U_WMR57 record
Definition: uwmf.h:161
char * U_WMRDIBSTRETCHBLT_set(U_POINT16 Dst, U_POINT16 cDst, U_POINT16 Src, U_POINT16 cSrc, uint32_t dwRop3, const U_BITMAPINFO *Bmi, uint32_t cbPx, const char *Px)
Allocate and construct a U_WMRSTRETCHDIB record.
Definition: uwmf.c:3335
int16_t wDst
Wdith in logical units of Dst rect.
Definition: uwmf.h:1464
int16_t Size
aScans in bytes + regions size in bytes (size of this header plus all U_SCAN objects?)
Definition: uwmf.h:846
uint8_t xb
Extra high order byte associated with record type.
Definition: uwmf.h:1166
0x00BD U_WMRBD record
Definition: uwmf.h:263
char * U_WMRELLIPSE_set(U_RECT16 rect)
Create and return a U_WMRELLIPSE record.
Definition: uwmf.c:2643
char * U_WMRBITBLT_set(U_POINT16 Dst, U_POINT16 cwh, U_POINT16 Src, uint32_t dwRop3, const U_BITMAP16 *Bm16)
Allocate and construct a U_WMRBITBLT record. Note that unlike U_EMRBITBLT there is no scaling availab...
Definition: uwmf.c:2829
uint16_t Brush
Index of brush to use in frame in object table.
Definition: uwmf.h:1525
int U_WMRREALIZEPALETTE_get(const char *contents)
Get data from a U_WMRREALIZEPALETTE record.
Definition: uwmf.c:5788
char * U_WMRSETPIXEL_set(U_COLORREF Color, U_POINT16 Coord)
Allocate and construct a U_WMRSETPIXEL record.
Definition: uwmf.c:2769
0x00DE U_WMRDE record
Definition: uwmf.h:296
uint8_t iType
RecordType Enumeration.
Definition: uwmf.h:1511
int U_WMRFILLREGION_get(const char *contents, uint16_t *Region, uint16_t *Brush)
Get data from a U_WMRFILLREGION record.
Definition: uwmf.c:5553
int U_WMRCREATEPENINDIRECT_get(const char *contents, U_PEN *pen)
Get data from a U_WMRCREATEPENINDIRECT record.
Definition: uwmf.c:6870
char * U_WMRFRAMEREGION_set(uint16_t Region, uint16_t Brush, int16_t Height, int16_t Width)
Allocate and construct a U_WMRFRAMEREGION record.
Definition: uwmf.c:3012
0x0F43 U_WMRSTRETCHDIB record
Definition: uwmf.h:141