LibreOffice Module vcl (master)  1
Macros
wmfwr.cxx File Reference
#include <sal/config.h>
#include <osl/diagnose.h>
#include <algorithm>
#include "wmfwr.hxx"
#include "emfwr.hxx"
#include <rtl/crc.h>
#include <rtl/tencinfo.h>
#include <tools/bigint.hxx>
#include <tools/helpers.hxx>
#include <tools/tenccvt.hxx>
#include <tools/fract.hxx>
#include <tools/stream.hxx>
#include <vcl/dibtools.hxx>
#include <vcl/metaact.hxx>
#include <vcl/FilterConfigItem.hxx>
#include <basegfx/polygon/b2dpolygon.hxx>
#include <basegfx/polygon/b2dpolypolygon.hxx>
#include <memory>
#include <vcl/fontcharmap.hxx>
Include dependency graph for wmfwr.cxx:

Go to the source code of this file.

Macros

#define W_META_SETBKMODE   0x0102
 
#define W_META_SETROP2   0x0104
 
#define W_META_SETSTRETCHBLTMODE   0x0107
 
#define W_META_SETTEXTCOLOR   0x0209
 
#define W_META_SETWINDOWORG   0x020B
 
#define W_META_SETWINDOWEXT   0x020C
 
#define W_META_LINETO   0x0213
 
#define W_META_MOVETO   0x0214
 
#define W_META_INTERSECTCLIPRECT   0x0416
 
#define W_META_ARC   0x0817
 
#define W_META_ELLIPSE   0x0418
 
#define W_META_PIE   0x081A
 
#define W_META_RECTANGLE   0x041B
 
#define W_META_ROUNDRECT   0x061C
 
#define W_META_SAVEDC   0x001E
 
#define W_META_SETPIXEL   0x041F
 
#define W_META_TEXTOUT   0x0521
 
#define W_META_POLYGON   0x0324
 
#define W_META_POLYLINE   0x0325
 
#define W_META_ESCAPE   0x0626
 
#define W_META_RESTOREDC   0x0127
 
#define W_META_SELECTOBJECT   0x012D
 
#define W_META_SETTEXTALIGN   0x012E
 
#define W_META_CHORD   0x0830
 
#define W_META_EXTTEXTOUT   0x0a32
 
#define W_META_POLYPOLYGON   0x0538
 
#define W_META_STRETCHDIB   0x0f43
 
#define W_META_DELETEOBJECT   0x01f0
 
#define W_META_CREATEPENINDIRECT   0x02FA
 
#define W_META_CREATEFONTINDIRECT   0x02FB
 
#define W_META_CREATEBRUSHINDIRECT   0x02FC
 
#define W_TRANSPARENT   1
 
#define W_OPAQUE   2
 
#define W_R2_NOT   6
 
#define W_R2_XORPEN   7
 
#define W_R2_COPYPEN   13
 
#define W_TA_NOUPDATECP   0x0000
 
#define W_TA_LEFT   0x0000
 
#define W_TA_RIGHT   0x0002
 
#define W_TA_TOP   0x0000
 
#define W_TA_BOTTOM   0x0008
 
#define W_TA_BASELINE   0x0018
 
#define W_TA_RTLREADING   0x0100
 
#define W_SRCCOPY   0x00CC0020L
 
#define W_SRCPAINT   0x00EE0086L
 
#define W_SRCAND   0x008800C6L
 
#define W_SRCINVERT   0x00660046L
 
#define W_DSTINVERT   0x00550009L
 
#define W_PS_SOLID   0
 
#define W_PS_DASH   1
 
#define W_PS_DOT   2
 
#define W_PS_DASHDOT   3
 
#define W_PS_DASHDOTDOT   4
 
#define W_PS_NULL   5
 
#define W_LF_FACESIZE   32
 
#define W_ANSI_CHARSET   0
 
#define W_DEFAULT_PITCH   0x00
 
#define W_FIXED_PITCH   0x01
 
#define W_VARIABLE_PITCH   0x02
 
#define W_FF_DONTCARE   0x00
 
#define W_FF_ROMAN   0x10
 
#define W_FF_SWISS   0x20
 
#define W_FF_MODERN   0x30
 
#define W_FF_SCRIPT   0x40
 
#define W_FF_DECORATIVE   0x50
 
#define W_FW_DONTCARE   0
 
#define W_FW_THIN   100
 
#define W_FW_LIGHT   300
 
#define W_FW_NORMAL   400
 
#define W_FW_MEDIUM   500
 
#define W_FW_SEMIBOLD   600
 
#define W_FW_BOLD   700
 
#define W_FW_ULTRALIGHT   200
 
#define W_FW_ULTRABOLD   800
 
#define W_FW_BLACK   900
 
#define W_BS_SOLID   0
 
#define W_BS_HOLLOW   1
 
#define W_MFCOMMENT   15
 
#define PRIVATE_ESCAPE_UNICODE   2
 

Macro Definition Documentation

#define PRIVATE_ESCAPE_UNICODE   2

Definition at line 135 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_Escape_Unicode().

#define W_ANSI_CHARSET   0

Definition at line 106 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_CreateFontIndirect().

#define W_BS_HOLLOW   1

Definition at line 131 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_CreateBrushIndirect().

#define W_BS_SOLID   0

Definition at line 130 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_CreateBrushIndirect().

#define W_DEFAULT_PITCH   0x00

Definition at line 108 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_CreateFontIndirect().

#define W_DSTINVERT   0x00550009L

Definition at line 95 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_StretchDIB().

#define W_FF_DECORATIVE   0x50

Definition at line 117 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_CreateFontIndirect().

#define W_FF_DONTCARE   0x00

Definition at line 112 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_CreateFontIndirect().

#define W_FF_MODERN   0x30

Definition at line 115 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_CreateFontIndirect().

#define W_FF_ROMAN   0x10

Definition at line 113 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_CreateFontIndirect().

#define W_FF_SCRIPT   0x40

Definition at line 116 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_CreateFontIndirect().

#define W_FF_SWISS   0x20

Definition at line 114 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_CreateFontIndirect().

#define W_FIXED_PITCH   0x01

Definition at line 109 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_CreateFontIndirect().

#define W_FW_BLACK   900

Definition at line 128 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_CreateFontIndirect().

#define W_FW_BOLD   700

Definition at line 125 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_CreateFontIndirect().

#define W_FW_DONTCARE   0

Definition at line 119 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_CreateFontIndirect().

#define W_FW_LIGHT   300

Definition at line 121 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_CreateFontIndirect().

#define W_FW_MEDIUM   500

Definition at line 123 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_CreateFontIndirect().

#define W_FW_NORMAL   400

Definition at line 122 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_CreateFontIndirect().

#define W_FW_SEMIBOLD   600

Definition at line 124 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_CreateFontIndirect().

#define W_FW_THIN   100

Definition at line 120 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_CreateFontIndirect().

#define W_FW_ULTRABOLD   800

Definition at line 127 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_CreateFontIndirect().

#define W_FW_ULTRALIGHT   200

Definition at line 126 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_CreateFontIndirect().

#define W_LF_FACESIZE   32

Definition at line 104 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_CreateFontIndirect().

#define W_META_ARC   0x0817

Definition at line 53 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_Arc().

#define W_META_CHORD   0x0830

Definition at line 67 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_Chord().

#define W_META_CREATEBRUSHINDIRECT   0x02FC

Definition at line 74 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_CreateBrushIndirect().

#define W_META_CREATEFONTINDIRECT   0x02FB

Definition at line 73 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_CreateFontIndirect().

#define W_META_CREATEPENINDIRECT   0x02FA

Definition at line 72 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_CreatePenIndirect().

#define W_META_DELETEOBJECT   0x01f0

Definition at line 71 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_DeleteObject().

#define W_META_ELLIPSE   0x0418

Definition at line 54 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_Ellipse().

#define W_META_ESCAPE   0x0626

Definition at line 63 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_Escape(), and WMFWriter::WriteEMFRecord().

#define W_META_EXTTEXTOUT   0x0a32

Definition at line 68 of file wmfwr.cxx.

Referenced by WMFWriter::TrueExtTextOut().

#define W_META_INTERSECTCLIPRECT   0x0416

Definition at line 52 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_IntersectClipRect().

#define W_META_LINETO   0x0213

Definition at line 50 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_LineTo().

#define W_META_MOVETO   0x0214

Definition at line 51 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_MoveTo().

#define W_META_PIE   0x081A

Definition at line 55 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_Pie().

#define W_META_POLYGON   0x0324

Definition at line 61 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_Polygon().

#define W_META_POLYLINE   0x0325

Definition at line 62 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_PolyLine().

#define W_META_POLYPOLYGON   0x0538

Definition at line 69 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_PolyPolygon().

#define W_META_RECTANGLE   0x041B

Definition at line 56 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_Rectangle().

#define W_META_RESTOREDC   0x0127

Definition at line 64 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_RestoreDC().

#define W_META_ROUNDRECT   0x061C

Definition at line 57 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_RoundRect().

#define W_META_SAVEDC   0x001E

Definition at line 58 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_SaveDC().

#define W_META_SELECTOBJECT   0x012D

Definition at line 65 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_SelectObject().

#define W_META_SETBKMODE   0x0102

Definition at line 44 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_SetBkMode().

#define W_META_SETPIXEL   0x041F

Definition at line 59 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_SetPixel().

#define W_META_SETROP2   0x0104

Definition at line 45 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_SetROP2().

#define W_META_SETSTRETCHBLTMODE   0x0107

Definition at line 46 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_SetStretchBltMode().

#define W_META_SETTEXTALIGN   0x012E

Definition at line 66 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_SetTextAlign().

#define W_META_SETTEXTCOLOR   0x0209

Definition at line 47 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_SetTextColor().

#define W_META_SETWINDOWEXT   0x020C

Definition at line 49 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_SetWindowExt().

#define W_META_SETWINDOWORG   0x020B

Definition at line 48 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_SetWindowOrg().

#define W_META_STRETCHDIB   0x0f43

Definition at line 70 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_StretchDIB().

#define W_META_TEXTOUT   0x0521

Definition at line 60 of file wmfwr.cxx.

Referenced by WMFWriter::TrueTextOut().

#define W_MFCOMMENT   15

Definition at line 133 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_Escape(), and WMFWriter::WriteEMFRecord().

#define W_OPAQUE   2

Definition at line 77 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_SetBkMode().

#define W_PS_DASH   1

Definition at line 98 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_CreatePenIndirect().

#define W_PS_DASHDOT   3

Definition at line 100 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_CreatePenIndirect().

#define W_PS_DASHDOTDOT   4

Definition at line 101 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_CreatePenIndirect().

#define W_PS_DOT   2

Definition at line 99 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_CreatePenIndirect().

#define W_PS_NULL   5

Definition at line 102 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_CreatePenIndirect().

#define W_PS_SOLID   0

Definition at line 97 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_CreatePenIndirect().

#define W_R2_COPYPEN   13

Definition at line 81 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_SetROP2().

#define W_R2_NOT   6

Definition at line 79 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_SetROP2().

#define W_R2_XORPEN   7

Definition at line 80 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_SetROP2().

#define W_SRCAND   0x008800C6L

Definition at line 93 of file wmfwr.cxx.

Referenced by WMFWriter::WriteRecords().

#define W_SRCCOPY   0x00CC0020L

Definition at line 91 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_StretchDIB().

#define W_SRCINVERT   0x00660046L

Definition at line 94 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_StretchDIB().

#define W_SRCPAINT   0x00EE0086L

Definition at line 92 of file wmfwr.cxx.

Referenced by WMFWriter::WriteRecords().

#define W_TA_BASELINE   0x0018

Definition at line 88 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_SetTextAlign().

#define W_TA_BOTTOM   0x0008

Definition at line 87 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_SetTextAlign().

#define W_TA_LEFT   0x0000

Definition at line 84 of file wmfwr.cxx.

Referenced by WMFWriter::WriteWMF().

#define W_TA_NOUPDATECP   0x0000

Definition at line 83 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_SetTextAlign().

#define W_TA_RIGHT   0x0002

Definition at line 85 of file wmfwr.cxx.

Referenced by WMFWriter::WriteRecords().

#define W_TA_RTLREADING   0x0100

Definition at line 89 of file wmfwr.cxx.

Referenced by WMFWriter::WriteRecords().

#define W_TA_TOP   0x0000

Definition at line 86 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_SetTextAlign().

#define W_TRANSPARENT   1

Definition at line 76 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_SetBkMode().

#define W_VARIABLE_PITCH   0x02

Definition at line 110 of file wmfwr.cxx.

Referenced by WMFWriter::WMFRecord_CreateFontIndirect().