Changeset 241 for branch


Ignore:
Timestamp:
2007/05/09 22:26:36 (5 years ago)
Author:
egtra
Message:

GDI+に対して名前空間で囲ったものの、現在コンパイルできないため分岐させておく

Location:
branch/egtra-gdiplus
Files:
6 added
20 edited
4 copied

Legend:

Unmodified
Added
Removed
  • branch/egtra-gdiplus/Classes/System/Drawing/CharacterRange.ab

    r166 r241  
    33#ifndef __SYSTEM_DRAWING_CHARACTERRANGE_AB__ 
    44#define __SYSTEM_DRAWING_CHARACTERRANGE_AB__ 
     5 
     6Namespace System 
     7Namespace Drawing 
    58 
    69Class CharacterRange 
     
    912        first = f 
    1013        length = l 
    11     End Sub 
    12  
    13     Sub CharacterRange(ByRef c As CharacterRange) 
    14         first = c.first 
    15         length = c.length 
    1614    End Sub 
    1715 
     
    3735    End Sub 
    3836 
    39     Sub Operator = (ByRef c As CharacterRange) 
    40         first  = c.first 
    41         length = c.length 
    42     End Sub 
    43  
    4437    Function Operator ==(c As CharacterRange) 
    4538        Return Equals(c) 
     
    6356End Class 
    6457 
     58End Namespace 'Drawing 
     59End Namespace 'System 
     60 
     61 
    6562#endif '__SYSTEM_DRAWING_CHARACTERRANGE_AB__ 
  • branch/egtra-gdiplus/Classes/System/Drawing/Color.ab

    r212 r241  
    44#define __SYSTEM_DRAWING_COLOR_AB__ 
    55 
     6#include <GdiplusTypes.ab> 
    67#include <Classes/System/Math.ab> 
    78#include <Classes/System/Drawing/Imaging/misc.ab> 
     9 
     10Namespace System 
     11Namespace Drawing 
    812 
    913Class Color 
    1014Public 
    1115    Sub Color() 
    12         argb = MakeARGB(255, 0, 0, 0) ' Black 
    13     End Sub 
    14  
    15     Sub Color(ByRef c As Color) 
    16         argb = c.argb 
     16        argb = MakeARGB(255, 0, 0, 0) 'Black 
    1717    End Sub 
    1818 
     
    2525    End Sub 
    2626 
    27     Sub Color(newArgb As ARGB) 
     27    Sub Color(newArgb As Gdiplus.ARGB) 
    2828        argb = newArgb 
    2929    End Sub 
    30 /* 
    31     Sub Operator =(c As Color) 
    32         argb = c.argb 
    33     End Sub 
    34 */ 
     30 
    3531    Function Operator ==(c As Color) As Boolean 
    3632        Return Equals(c) 
     
    5753    End Function 
    5854 
    59     Function Value() As ARGB 
     55    Function Value() As Gdiplus.ARGB 
    6056        Return argb 
    6157    End Function 
    6258 
    63     Sub Value(value As ARGB) 
     59    Sub Value(value As Gdiplus.ARGB) 
    6460        argb = value 
    6561    End Sub 
     
    7773    End Function 
    7874 
    79     Function ToArgb() As ARGB 
     75    Function ToArgb() As Gdiplus.ARGB 
    8076        Return argb 
    8177    End Function 
    8278 
    83     Static Function FromArgb(argb As ARGB) As Color 
     79    Static Function FromArgb(argb As Gdiplus.ARGB) As Color 
    8480        Dim c As Color(argb) 
    8581        Rteurn c 
     
    301297    End Enum 
    302298*/ 
    303     Static Function MakeARGB(a As Byte, r As Byte, g As Byte, b As Byte) As ARGB 
    304         MakeARGB = (((b As ARGB) <<  BLUE_SHIFT) Or _ 
    305                     ((g As ARGB) << GREEN_SHIFT) Or _ 
    306                     ((r As ARGB) <<   RED_SHIFT) Or _ 
    307                     ((a As ARGB) << ALPHA_SHIFT)) 
     299    Static Function MakeARGB(a As Byte, r As Byte, g As Byte, b As Byte) As Gdiplus.ARGB 
     300        MakeARGB = (((b As Gdiplus.ARGB) <<  Gdiplus.BLUE_SHIFT) Or _ 
     301                    ((g As Gdiplus.ARGB) << Gdiplus.GREEN_SHIFT) Or _ 
     302                    ((r As Gdiplus.ARGB) <<   Gdiplus.RED_SHIFT) Or _ 
     303                    ((a As Gdiplus.ARGB) << Gdiplus.ALPHA_SHIFT)) 
    308304    End Function 
    309305 
    310306Protected 
    311     argb As ARGB 
     307    argb As Gdiplus.ARGB 
    312308End Class 
    313309 
     310End Namespace 'Drawing 
     311End Namespace 'System 
     312 
    314313#endif '__SYSTEM_DRAWING_COLOR_AB__ 
  • branch/egtra-gdiplus/Classes/System/Drawing/Drawing2D/Matrix.ab

    r77 r241  
    44#define __SYSTEM_DRAWING_DRAWING2D_MATRIX_AB__ 
    55 
     6#include <GdiPlusGpStubs.ab> 
     7 
    68Class Matrix 
     9Public 
     10    Function NativeMatrix() As *Gdiplus.GpMatrix 
     11        Return 0 '仮 
     12    End Function 
    713End Class 
    814 
  • branch/egtra-gdiplus/Classes/System/Drawing/Drawing2D/misc.ab

    r77 r241  
    33#ifndef __SYSTEM_DRAWING_DRAWING2D_MISC_AB__ 
    44#define __SYSTEM_DRAWING_DRAWING2D_MISC_AB__ 
     5 
     6#require <gdiplusenums.ab> 
     7 
     8Namespace System 
     9Namespace Drawing 
     10Namespace Drawing2D 
    511 
    612Enum CombineMode 
     
    8591End Enum 
    8692 
     93Enum WarpMode 
     94    Perspective     ' 0 
     95    Bilinear        ' 1 
     96End Enum 
     97 
     98Enum DashCap 
     99    Flat             = 0 
     100    Round            = 2 
     101    Triangle         = 3 
     102End Enum 
     103 
     104Enum LineCap 
     105    Flat             = 0 
     106    Square           = 1 
     107    Round            = 2 
     108    Triangle         = 3 
     109 
     110    NoAnchor         = &h10 
     111    SquareAnchor     = &h11 
     112    RoundAnchor      = &h12 
     113    DiamondAnchor    = &h13 
     114    ArrowAnchor      = &h14 
     115 
     116    Custom           = &hff 
     117 
     118    AnchorMask       = &hf0 
     119End Enum 
     120 
     121Enum PenAlignment 
     122    Center       = 0 
     123    Inset        = 1 
     124End Enum 
     125 
     126Enum LineJoin 
     127    Miter        = 0 
     128    Bevel        = 1 
     129    Round        = 2 
     130    MiterClipped = 3 
     131End Enum 
     132 
     133Enum PenType 
     134    SolidColor       = Gdiplus.BrushTypeSolidColor 
     135    HatchFill        = Gdiplus.BrushTypeHatchFill 
     136    TextureFill      = Gdiplus.BrushTypeTextureFill 
     137    PathGradient     = Gdiplus.BrushTypePathGradient 
     138    LinearGradient   = Gdiplus.BrushTypeLinearGradient 
     139    Unknown          = -1 
     140End Enum 
     141 
     142End Namespace 'Drawing2D 
     143End Namespace 'Drawing 
     144End Namespace 'System 
     145 
    87146#endif '__SYSTEM_DRAWING_DRAWING2D_MISC_AB__ 
  • branch/egtra-gdiplus/Classes/System/Drawing/Font.ab

    r212 r241  
    22#define _GDIPLUSFONT_H 
    33 
    4 #require <GdiPlus.ab> 
     4#require <GdiPlusTypes.ab> 
     5#require <GdiPlusGpStubs.ab> 
     6#require <GdiPlusFlat.ab> 
    57#require <Classes/System/Drawing/misc.ab> 
    68#require <Classes/System/Drawing/Graphics.ab> 
    79 
     10Namespace System 
     11Namespace Drawing 
     12 
    813Class FontFamily : End Class 
     14 
     15Namespace Text 
    916Class FontCollection : End Class 
     17End Namespace 
     18 
     19'Todo: コンストラクタ内での別コンストラクタ呼出を修正せよ 
    1020 
    1121Class Font 
     
    1424 
    1525    Sub Font(/*IN*/ hdc As HDC) 
    16         Dim font = 0 As *GpFont 
    17         lastResult = GdipCreateFontFromDC(hdc, font) 
     26        Dim font = 0 As *Gdiplus.GpFont 
     27        lastResult = Gdiplus.DllExports.GdipCreateFontFromDC(hdc, font) 
    1828        SetNativeFont(font) 
    1929    End Sub 
    2030 
    2131    Sub Font(/*IN*/ hdc As HDC, /*IN const*/ ByRef logfont As LOGFONTA) 
    22         Dim font = 0 As *GpFont 
    23         lastResult =GdipCreateFontFromLogfontA(hdc, logfont, font) 
     32        Dim font = 0 As *Gdiplus.GpFont 
     33        lastResult = Gdiplus.DllExports.GdipCreateFontFromLogfontA(hdc, logfont, font) 
    2434        SetNativeFont(font) 
    2535    End Sub 
    2636 
    2737    Sub Font(/*IN*/ hdc As HDC, /*IN const*/ ByRef logfont As LOGFONTW) 
    28         Dim font = 0 As *GpFont 
    29         lastResult =GdipCreateFontFromLogfontW(hdc, logfont, font) 
     38        Dim font = 0 As *Gdiplus.GpFont 
     39        lastResult = Gdiplus.DllExports.GdipCreateFontFromLogfontW(hdc, logfont, font) 
    3040        SetNativeFont(font) 
    3141    End Sub 
    3242 
    3343    Sub Font(/*IN*/ hdc As HDC, /*IN const*/ hfont As HFONT) 
    34         Dim font = 0 As *GpFont 
     44        Dim font = 0 As *Gdiplus.GpFont 
    3545        If hfont <> 0 Then 
    3646            Dim lf As LOGFONTA 
    37             If GetObjectA(hfont, sizeof (LOGFONTA), lf) <> 0 Then 
    38                 lastResult = GdipCreateFontFromLogfontA(hdc, lf, font) 
     47            If GetObjectA(hfont, SizeOf (LOGFONTA), lf) <> 0 Then 
     48                lastResult = Gdiplus.DllExports.GdipCreateFontFromLogfontA(hdc, lf, font) 
    3949            Else 
    40                 lastResult = GdipCreateFontFromDC(hdc, font) 
     50                lastResult = Gdiplus.DllExports.GdipCreateFontFromDC(hdc, font) 
    4151            End If 
    4252        Else 
    43             lastResult = GdipCreateFontFromDC(hdc, font) 
     53            lastResult = Gdiplus.DllExports.GdipCreateFontFromDC(hdc, font) 
    4454        End If 
    4555        SetNativeFont(font) 
     
    5969        /*IN*/ style As Long, /*IN*/ unit As GraphicsUnit) 
    6070 
    61         Dim font = 0 As *GpFont 
    62         lastResult = GdipCreateFont( 
    63             family.NativeFamily, emSize, style, unit, font) 
     71        Dim font = 0 As *Gdiplus.GpFont 
     72        lastResult = Gdiplus.DllExports.GdipCreateFont(family.NativeFamily, emSize, style, unit, font) 
    6473        SetNativeFont(font) 
    6574    End Sub 
     
    95104    Sub Font(/*IN const*/ familyName As PCWSTR, /*IN*/ emSize As Single, 
    96105        /*IN*/ style As Long, /*IN*/ unit As GraphicsUnit, 
    97         /*IN const*/ ByRef fontCollection As FontCollection) 
     106        /*IN const*/ ByRef fontCollection As Text.FontCollection) 
    98107 
    99108        nativeFont = 0 
     
    104113        lastResult = family.GetLastStatus() 
    105114 
    106         If lastResult <> Ok Then 
    107             nativeFamily = FontFamily.GenericSansSerif()->NativeFamily 
    108             lastResult = FontFamily.GenericSansSerif()->lastResult 
    109             If lastResult <> Ok Then 
     115        If lastResult <> Gdiplus.Status.Ok Then 
     116            nativeFamily = FontFamily.GenericSansSerif().NativeFamily 
     117            lastResult = FontFamily.GenericSansSerif().lastResult 
     118            If lastResult <> Gdiplus.Status.Ok Then 
    110119                Exit Sub 
    111120            End If 
    112121        End If 
    113122 
    114         lastResult = GdipCreateFont( 
     123        lastResult = Gdiplus.DllExports.GdipCreateFont( 
    115124            nativeFamily, emSize, style, unit, nativeFont) 
    116125 
    117         If lastResult <> Ok Then 
    118             nativeFamily = FontFamily.GenericSansSerif()->NativeFamily 
    119             lastResult = FontFamily.GenericSansSerif()->lastResult 
    120             If lastResult <> Ok Then 
     126        If lastResult <> Gdiplus.Status.Ok Then 
     127            nativeFamily = FontFamily.GenericSansSerif().NativeFamily 
     128            lastResult = FontFamily.GenericSansSerif().lastResult 
     129            If lastResult <> Gdiplus.Status.Ok Then 
    121130                Exit Sub 
    122131            End If 
    123132 
    124             lastResult = GdipCreateFont( 
    125                 nativeFamily, emSize, style, unit, nativeFont) 
     133            lastResult = Gdiplus.DllExports.GdipCreateFont(nativeFamily, emSize, style, unit, nativeFont) 
    126134        End If 
    127135    End Sub 
     
    129137    Sub Font(/*IN const*/ familyName As String, /*IN*/ emSize As Single, 
    130138        /*IN*/ style As Long, /*IN*/ unit As GraphicsUnit, 
    131         /*IN const*/ fontCollection As FontCollection) 
    132 #ifdef __STRING_IS_NOT_UNICODE 
    133         Dim oldAlloc = _System_AllocForConvertedString 
    134         _System_AllocForConvertedString = AddressOf (_System_malloc) 
    135         Dim name = ToWCStr(familyName) 
    136         Font(name, emSize, style, unit, fontCollection) 
    137         _System_free(name) 
    138         _System_AllocForConvertedString = oldAlloc 
    139 #else 
    140         Font(familyName.Chars, emSize, style, unit, fontCollection) 
    141 #endif 
    142     End Sub 
    143  
    144     Const Function GetLogFontA(/*IN const*/ g As Graphics, /*OUT*/ ByRef lf As LOGFONTA) As Status 
     139        /*IN const*/ fontCollection As Text.FontCollection) 
     140        Font(ToWCStr(familyName), emSize, style, unit, fontCollection) 
     141    End Sub 
     142 
     143    Const Function GetLogFontA(/*IN const*/ g As Graphics, /*OUT*/ ByRef lf As LOGFONTA) As Gdiplus.Status 
    145144        Dim nativeGraphics As *GpGraphics 
    146145        If VarPtr(g) <> 0 Then 
    147146            nativeGraphics = g.nativeGraphics 
    148147        End If 
    149         Return SetStatus(GdipGetLogFontA(nativeFont, nativeGraphics, lf)) 
    150     End Function 
    151  
    152     Const Function GetLogFontW(/*IN const*/ g As Graphics, /*OUT*/ ByRef lf As LOGFONTW) As Status 
     148        Return SetStatus(Gdiplus.DllExports.GdipGetLogFontA(nativeFont, nativeGraphics, lf)) 
     149    End Function 
     150 
     151    Const Function GetLogFontW(/*IN const*/ g As Graphics, /*OUT*/ ByRef lf As LOGFONTW) As Gdiplus.Status 
    153152        Dim nativeGraphics As *GpGraphics 
    154153        If VarPtr(g) <> 0 Then 
    155154            nativeGraphics = g.nativeGraphics 
    156155        End If 
    157         Return SetStatus(GdipGetLogFontW(nativeFont, nativeGraphics, lf)) 
    158     End Function 
    159  
    160     Const Function GetLogFont(/*IN const*/ g As Graphics, /*OUT*/ ByRef lf As LOGFONT) As Status 
     156        Return SetStatus(Gdiplus.DllExports.GdipGetLogFontW(nativeFont, nativeGraphics, lf)) 
     157    End Function 
     158 
     159    Const Function GetLogFont(/*IN const*/ g As Graphics, /*OUT*/ ByRef lf As LOGFONT) As Gdiplus.Status 
    161160        Dim nativeGraphics As *GpGraphics 
    162161        If VarPtr(g) <> 0 Then 
     
    164163        End If 
    165164#ifdef UNICODE 
    166         Return SetStatus(GdipGetLogFontW(nativeFont, nativeGraphics, lf)) 
     165        Return SetStatus(Gdiplus.DllExports.GdipGetLogFontW(nativeFont, nativeGraphics, lf)) 
    167166#else 
    168         Return SetStatus(GdipGetLogFontA(nativeFont, nativeGraphics, lf)) 
     167        Return SetStatus(Gdiplus.DllExports.GdipGetLogFontA(nativeFont, nativeGraphics, lf)) 
    169168#endif 
    170169    End Function 
    171170 
    172171    Const Function Clone() As Font 
    173         Dim cloneFont = 0 As *GpFont 
    174         SetStatus(GdipCloneFont(nativeFont, cloneFont)) 
     172        Dim cloneFont = 0 As *Gdiplus.GpFont 
     173        SetStatus(Gdiplus.DllExports.GdipCloneFont(nativeFont, cloneFont)) 
    175174        Return New Font(cloneFont, lastResult) 
    176175    End Function 
    177176 
     177    Sub Dispose() 
     178        Gdiplus.DllExports.GdipDeleteFont(nativeFont) 
     179        nativeFont = 0 
     180    End Sub 
     181 
    178182    Sub ~Font() 
    179         GdipDeleteFont(nativeFont) 
     183        If nativeFont <> 0 Then 
     184            Dispose() 
     185        End If 
    180186    End Sub 
    181187 
     
    185191 
    186192    Const Function Style() As Long 
    187         SetStatus(GdipGetFontStyle(nativeFont, Style)) 
     193        SetStatus(Gdiplus.DllExports.GdipGetFontStyle(nativeFont, Style)) 
    188194    End Function 
    189195 
    190196    Const Function Size() As Single 
    191         SetStatus(GdipGetFontSize(nativeFont, Size)) 
    192     End Function 
    193  
    194     Const Function SizeInPoints() As Single 
     197        SetStatus(Gdiplus.DllExports.GdipGetFontSize(nativeFont, Size)) 
     198    End Function 
     199 
     200'   Const Function SizeInPoints() As Single 
    195201 
    196202    Const Function Unit() As GraphicsUnit 
    197         SetStatus(GdipGetFontUnit(nativeFont, Unit)) 
    198     End Function 
    199  
    200     Const Function LastStatus() As Status 
     203        SetStatus(Gdiplus.DllExports.GdipGetFontUnit(nativeFont, Unit)) 
     204    End Function 
     205 
     206    Const Function LastStatus() As Gdiplus.Status 
    201207        Return lastResult 
    202208    End Function 
     
    207213 
    208214    Const Function GetHeight() As Single 
    209         SetStatus(GdipGetFontHeight(nativeFont, 0, GetHeight)) 
     215        SetStatus(Gdiplus.DllExports.GdipGetFontHeight(nativeFont, 0, GetHeight)) 
    210216    End Function 
    211217 
    212218    Const Function GetHeight(/*IN const*/ g As Graphics) As Single 
    213         Dim nativeGraphics As *GpGraphics 
     219        Dim nativeGraphics As *Gdiplus.GpGraphics 
    214220        If VarPtr(g) <> 0 Then 
    215221            nativeGraphics = g.NativeGraphics 
    216222        End If 
    217         SetStatus(GdipGetFontHeight(nativeFont, nativeGraphics, GetHeight)) 
     223        SetStatus(Gdiplus.DllExports.GdipGetFontHeight(nativeFont, nativeGraphics, GetHeight)) 
    218224    End Function 
    219225 
    220226    Const Function GetHeight(/*IN*/ dpi As Single) As Single 
    221         SetStatus(GdipGetFontHeightGivenDPI(nativeFont, dpi, GetHeight)) 
     227        SetStatus(Gdiplus.DllExports.GdipGetFontHeightGivenDPI(nativeFont, dpi, GetHeight)) 
    222228    End Function 
    223229 
    224230'    Const Function FontFamily(/*OUT*/ ByRef family As FontFamily) 
    225 '       If VarPtr(family) = 0 Then 
    226 '           Return SetStatus(Status.InvalidParameter) 
    227 '       End If 
    228 '       Dim status = GdipGetFamily(nativeFont, family->nativeFamily) 
    229 '       family->SetStatus(status) 
     231'       family = New FontFamily 
     232'       Dim status = GdipGetFamily(nativeFont, family.nativeFamily) 
     233'       family.SetStatus(status) 
    230234'       Return SetStatus(status) 
    231235'   End Function 
     
    245249    'Const Function GdiVerticalFont() As Boolean 
    246250 
    247     Const Function NativeFont() As *GpFont 
     251    Const Function NativeFont() As *Gdiplus.GpFont 
    248252        Return nativeFont 
    249253    End Function 
     
    270274    'Const Function SizeInPoint() As Boolean 
    271275 
    272     Const Function NativeFont() As *GpFont 
     276    Const Function NativeFont() As *Gdiplus.GpFont 
    273277        Return nativeFont 
    274278    End Function 
     
    315319    End Sub 
    316320 
    317 Private 
    318 '   Sub Font(ByRef f As Font) 
    319  
    320 Protected 
    321     Sub Font(f As *GpFont, status As Status) 
     321'Protected 
     322    Sub Font(f As *Gdiplus.GpFont, status As Gdiplus.Status) 
    322323        lastResult = status 
    323324        SetNativeFont(f) 
    324325    End Sub 
    325  
    326     Sub SetNativeFont(f As *GpFont) 
     326Protected 
     327    Sub SetNativeFont(f As *Gdiplus.GpFont) 
    327328        nativeFont = f 
    328329    End Sub 
    329330 
    330     Const Function SetStatus(s As Status) As Status 
    331         If s <> Status.Ok Then 
     331    Const Function SetStatus(s As Gdiplus.Status) As Gdiplus.Status 
     332        If s <> Gdiplus.Status.Ok Then 
    332333            lastResult = s 
    333334            Return s 
     
    338339 
    339340Protected 
    340     nativeFont As *GpFont 
    341     /*mutable*/ lastResult As Status 
     341    nativeFont As *Gdiplus.GpFont 
     342    /*mutable*/ lastResult As Gdiplus.Status 
    342343End Class 
    343344 
     345End Namespace 'Drawing 
     346End Namespace 'System 
     347 
    344348#endif 
  • branch/egtra-gdiplus/Classes/System/Drawing/Graphics.ab

    r212 r241  
    44#define __SYSTEM_DRAWING_GRAPHICS_AB__ 
    55 
    6 Class Brush : End Class 
     6#require <GdiplusGpStubs.ab> 
     7#require <GdiPlusFlat.ab> 
     8#require <Classes/System/Drawing/misc.ab> 
     9#require <Classes/System/Drawing/Rectangle.ab> 
     10#require <Classes/System/Drawing/RectangleF.ab> 
     11#require <Classes/System/Drawing/Point.ab> 
     12#require <Classes/System/Drawing/PointF.ab> 
     13#require <Classes/System/Drawing/SizeF.ab> 
     14#require <Classes/System/Drawing/Font.ab> 
     15#require <Classes/System/Drawing/Brush.ab> 
     16'#require <Classes/System/Drawing/Pen.ab> 
     17'#require <Classes/System/Drawing/Region.ab> 
     18'#require <Classes/System/Drawing/StringFormat.ab> 
     19'#require <Classes/System/Drawing/Image.ab> 
     20#require <Classes/System/Drawing/Drawing2D/misc.ab> 
     21#require <Classes/System/Drawing/Drawing2D/Matrix.ab> 
     22#require <Classes/System/Drawing/Imaging/ImageAttributes.ab> 
     23 
     24Namespace System 
     25Namespace Drawing 
     26 
    727Class Pen : End Class 
    828Class StringFormat : End Class 
    929Class Image : End Class 
    10 Class ImageAttributes : End Class 
    1130Class Metafile : End Class 
    1231Class Region : End Class 
    1332Class GraphicsPath : End Class 
    1433Class CachedBitmap : End Class 
    15  
    16 #include <GdiplusGpStubs.ab> 
    17 #include <GdiPlusFlat.ab> 
    18 #include <Classes/System/Drawing/misc.ab> 
    19 #include <Classes/System/Drawing/Rectangle.ab> 
    20 #include <Classes/System/Drawing/RectangleF.ab> 
    21 #include <Classes/System/Drawing/Point.ab> 
    22 #include <Classes/System/Drawing/PointF.ab> 
    23 #include <Classes/System/Drawing/SizeF.ab> 
    24 #include <Classes/System/Drawing/Font.ab> 
    25 '#include <Classes/System/Drawing/Brush.ab> 
    26 '#include <Classes/System/Drawing/Pen.ab> 
    27 '#include <Classes/System/Drawing/Region.ab> 
    28 '#include <Classes/System/Drawing/StringFormat.ab> 
    29 '#include <Classes/System/Drawing/Image.ab> 
    30 #include <Classes/System/Drawing/Drawing2D/misc.ab> 
    31 #include <Classes/System/Drawing/Drawing2D/Matrix.ab> 
    3234 
    3335Class Graphics 
     
    104106    End Function 
    105107 
    106     Function PageScale(scale As Single) As Status 
     108    Function PageScale(scale As Single) As Gdiplus.Status 
    107109        Return SetStatus(GdipSetPageScale(nativeGraphics, scale)) 
    108110    End Function 
     
    120122    End Function 
    121123 
    122     Function PageUnit(unit As GraphicsUnit) As Status 
     124    Function PageUnit(unit As GraphicsUnit) As Gdiplus.Status 
    123125        Return SetStatus(GdipSetPageUnit(nativeGraphics, unit)) 
    124126    End Function 
     
    206208 
    207209    Sub Graphics(hdc As HDC) 
    208         Dim graphics = 0 As GpGraphics 
     210        Dim graphics = 0 As Gdiplus.GpGraphics 
    209211        lastResult = GdipCreateFromHDC(hdc, graphics) 
    210212        SetNativeGraphics(graphics) 
     
    212214 
    213215    Sub Graphics(hdc As HDC, hdevice As HANDLE) 
    214         Dim graphics = 0 As *GpGraphics 
     216        Dim graphics = 0 As *Gdiplus.GpGraphics 
    215217        lastResult = GdipCreateFromHDC2(hdc, hdevice, graphics) 
    216218        SetNativeGraphics(graphics) 
     
    218220 
    219221    Sub Graphics(hwnd As HWND) 
    220         Dim graphics = 0 As *GpGraphics 
     222        Dim graphics = 0 As *Gdiplus.GpGraphics 
    221223        lastResult = GdipCreateFromHWND(hwnd, graphics) 
    222224        SetNativeGraphics(graphics) 
     
    224226 
    225227    Sub Graphics(hwnd As HWND, icm As BOOL) 
    226         Dim graphics = 0 As *GpGraphics 
     228        Dim graphics = 0 As *Gdiplus.GpGraphics 
    227229        If icm <> FALSE Then 
    228230            lastResult = GdipCreateFromHWNDICM(hwnd, graphics) 
     
    234236 
    235237    Sub Graphics(image As Image) 
    236         Dim graphics = 0 As *GpGraphics 
     238        Dim graphics = 0 As *Gdiplus.GpGraphics 
    237239        If (image != 0) 
    238240            lastResult = GdipGetImageGraphicsContext(image->NativeImage, graphics) 
     
    273275    '------------------------------------------------------------------------ 
    274276 
    275     Function SetRenderingOrigin(x As Long, y As Long) As Status 
     277    Function SetRenderingOrigin(x As Long, y As Long) As Gdiplus.Status 
    276278        Return SetStatus(GdipSetRenderingOrigin(nativeGraphics, x, y)) 
    277279    End Function 
    278280 
    279     Const Function GetRenderingOrigin(x As Long, y As Long) As Status 
     281    Const Function GetRenderingOrigin(x As Long, y As Long) As Gdiplus.Status 
    280282        Return SetStatus(GdipGetRenderingOrigin(nativeGraphics, x, y)) 
    281283    End Function 
    282284 
    283     Function SetCompositingMode(compositingMode As CompositingMode) As Status 
     285    Function SetCompositingMode(compositingMode As CompositingMode) As Gdiplus.Status 
    284286        Return SetStatus(GdipSetCompositingMode(nativeGraphics, compositingMode)) 
    285287    End Function 
     
    301303    End Function 
    302304 
    303     Function SetTextRenderingHint(newMode As TextRenderingHint) As Status 
     305    Function SetTextRenderingHint(newMode As TextRenderingHint) As Gdiplus.Status 
    304306        Return SetStatus(GdipSetTextRenderingHint(nativeGraphics, newMode)) 
    305307    End Function 
     
    311313    End Function 
    312314 
    313     Function SetTextContrast(contrast As DWord) As Status 
     315    Function SetTextContrast(contrast As DWord) As Gdiplus.Status 
    314316        Return SetStatus(GdipSetTextContrast(nativeGraphics, contrast)) 
    315317    End Function 
     
    327329    End Function 
    328330 
    329     Function SetInterpolationMode(interpolationMode As InterpolationMode) As Status 
     331    Function SetInterpolationMode(interpolationMode As InterpolationMode) As Gdiplus.Status 
    330332        Return SetStatus(GdipSetInterpolationMode(nativeGraphics, interpolationMode)) 
    331333    End Function 
     
    337339    End Function 
    338340 
    339     Function SetSmoothingMode(smoothingMode As SmoothingMode) As Status 
     341    Function SetSmoothingMode(smoothingMode As SmoothingMode) As Gdiplus.Status 
    340342        Return SetStatus(GdipSetSmoothingMode(nativeGraphics, smoothingMode)) 
    341343    End Function 
     
    347349    End Function 
    348350 
    349     Function SetPixelOffsetMode(pixelOffsetMode As PixelOffsetMode) As Status 
     351    Function SetPixelOffsetMode(pixelOffsetMode As PixelOffsetMode) As Gdiplus.Status 
    350352        Return SetStatus(GdipSetPixelOffsetMode(nativeGraphics, pixelOffsetMode)) 
    351353    End Function 
     
    355357    '------------------------------------------------------------------------ 
    356358 
    357     Function SetTransform(matrix As /*Const*/ *Matrix) As Status 
     359    Function SetTransform(matrix As /*Const*/ *Matrix) As Gdiplus.Status 
    358360        Return SetStatus(GdipSetWorldTransform(nativeGraphics, matrix->nativeMatrix)) 
    359361    End Function 
    360362 
    361     Function ResetTransform() As Status 
     363    Function ResetTransform() As Gdiplus.Status 
    362364        Return SetStatus(GdipResetWorldTransform(nativeGraphics)) 
    363365    End Function 
    364366 
    365     Function MultiplyTransform(matrix As /*Const*/ Matrix) As Status 
     367    Function MultiplyTransform(matrix As /*Const*/ Matrix) As Gdiplus.Status 
    366368        Return SetStatus(GdipMultiplyWorldTransform(nativeGraphics, matrix->nativeMatrix, MatrixOrder.Prepend)) 
    367369    End Function 
    368370 
    369     Function MultiplyTransform(matrix As /*Const*/ Matrix, order As MatrixOrder) As Status 
     371    Function MultiplyTransform(matrix As /*Const*/ Matrix, order As MatrixOrder) As Gdiplus.Status 
    370372        Return SetStatus(GdipMultiplyWorldTransform(nativeGraphics, matrix->nativeMatrix, order)) 
    371373    End Function 
    372374 
    373     Function TranslateTransform(dx As Single, dy As Single) As Status 
     375    Function TranslateTransform(dx As Single, dy As Single) As Gdiplus.Status 
    374376        Return SetStatus(GdipTranslateWorldTransform(nativeGraphics, dx, dy, MatrixOrder.Prepend)) 
    375377    End Function 
    376378 
    377     Function TranslateTransform(dx As Single, dy As Single, order As MatrixOrder) As Status 
     379    Function TranslateTransform(dx As Single, dy As Single, order As MatrixOrder) As Gdiplus.Status 
    378380        Return SetStatus(GdipTranslateWorldTransform(nativeGraphics, dx, dy, order)) 
    379381    End Function 
    380382 
    381     Function ScaleTransform(sx As Single, sy As Single) As Status 
     383    Function ScaleTransform(sx As Single, sy As Single) As Gdiplus.Status 
    382384        Return SetStatus(GdipScaleWorldTransform(nativeGraphics, sx, sy, MatrixOrder.Prepend)) 
    383385    End Function 
    384386 
    385     Function ScaleTransform(sx As Single, sy As Single, order As MatrixOrder) As Status 
     387    Function ScaleTransform(sx As Single, sy As Single, order As MatrixOrder) As Gdiplus.Status 
    386388        Return SetStatus(GdipScaleWorldTransform(nativeGraphics, sx, sy, order)) 
    387389    End Function 
    388390 
    389     Function RotateTransform(angle As Single) As Status 
     391    Function RotateTransform(angle As Single) As Gdiplus.Status 
    390392        Return SetStatus(GdipRotateWorldTransform(nativeGraphics, angle, MatrixOrder.Prepend)) 
    391393    End Function 
    392394 
    393     Function RotateTransform(angle As Single, order As MatrixOrder) As Status 
     395    Function RotateTransform(angle As Single, order As MatrixOrder) As Gdiplus.Status 
    394396        Return SetStatus(GdipRotateWorldTransform(nativeGraphics, angle, order)) 
    395397    End Function 
    396398 
    397     Const Function GetTransform(matrix As Matrix) As Status 
     399    Const Function GetTransform(matrix As Matrix) As Gdiplus.Status 
    398400        Return SetStatus(GdipGetWorldTransform(nativeGraphics, matrix->nativeMatrix)) 
    399401    End Function 
    400402 
    401     Const Function TransformPoints(destSpace As CoordinateSpace, srcSpace As CoordinateSpace, pts As PointF, count As Long) As Status 
     403    Const Function TransformPoints(destSpace As CoordinateSpace, srcSpace As CoordinateSpace, pts As PointF, count As Long) As Gdiplus.Status 
    402404        Return SetStatus(GdipTransformPoints(nativeGraphics, destSpace, srcSpace, pts, count)) 
    403405    End Function 
    404406 
    405     Const Function TransformPoints(destSpace As CoordinateSpace, srcSpace As CoordinateSpace, pts As Point, count As Long) As Status 
     407    Const Function TransformPoints(destSpace As CoordinateSpace, srcSpace As CoordinateSpace, pts As Point, count As Long) As Gdiplus.Status 
    406408        Return SetStatus(GdipTransformPointsI(nativeGraphics, destSpace, srcSpace, pts, count)) 
    407409    End Function 
     
    411413    '------------------------------------------------------------------------ 
    412414 
    413     Const Function GetNearestColor(color As Color) As Status 
     415    Const Function GetNearestColor(color As Color) As Gdiplus.Status 
    414416        Dim argb = color->Value 
    415417        Dim status = SetStatus(GdipGetNearestColor(nativeGraphics, argb)) 
     
    418420    End Function 
    419421 
    420     Function DrawLine(pen As /*Const*/ Pen, x1 As Single, y1 As Single, x2 As Single, y2 As Single) As Status 
     422    Function DrawLine(pen As /*Const*/ Pen, x1 As Single, y1 As Single, x2 As Single, y2 As Single) As Gdiplus.Status 
    421423        Return SetStatus(GdipDrawLine(nativeGraphics, pen->nativePen, x1, y1, x2, y2)) 
    422424    End Function 
    423425 
    424     Function DrawLine(pen As /*Const*/ Pen, pt1 As /*Const*/ PointF, pt2 As /*Const*/ PointF) As Status 
     426    Function DrawLine(pen As /*Const*/ Pen, pt1 As /*Const*/ PointF, pt2 As /*Const*/ PointF) As Gdiplus.Status 
    425427        Return DrawLine(pen, pt1.X, pt1.Y, pt2.X, pt2.Y) 
    426428    End Function 
    427429 
    428     Function DrawLines(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long) As Status 
     430    Function DrawLines(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long) As Gdiplus.Status 
    429431        Return SetStatus(GdipDrawLines(nativeGraphics, pen->nativePen, points, count)) 
    430432    End Function 
    431433 
    432     Function DrawLine(pen As /*Const*/ Pen, x1 As Long, y1 As Long, x2 As Long, y2 As Long) As Status 
     434    Function DrawLine(pen As /*Const*/ Pen, x1 As Long, y1 As Long, x2 As Long, y2 As Long) As Gdiplus.Status 
    433435        Return SetStatus(GdipDrawLineI(nativeGraphics, pen->nativePen, x1, y1, x2, y2)) 
    434436    End Function 
    435437 
    436     Function DrawLine(pen As /*Const*/ Pen, pt1 As /*Const*/ Point, pt2 As /*Const*/ Point) As Status 
     438    Function DrawLine(pen As /*Const*/ Pen, pt1 As /*Const*/ Point, pt2 As /*Const*/ Point) As Gdiplus.Status 
    437439        Return DrawLine(pen, pt1.X, pt1.Y, pt2.X, pt2.Y) 
    438440    End Function 
    439441 
    440     Function DrawLines(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long) As Status 
     442    Function DrawLines(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long) As Gdiplus.Status 
    441443        Return SetStatus(GdipDrawLinesI(nativeGraphics, pen->nativePen, points, count)) 
    442444    End Function 
    443445 
    444     Function DrawArc(pen As /*Const*/ Pen, x As Single, y As Single, width As Single, height As Single, startAngle As Single, sweepAngle As Single) As Status 
     446    Function DrawArc(pen As /*Const*/ Pen, x As Single, y As Single, width As Single, height As Single, startAngle As Single, sweepAngle As Single) As Gdiplus.Status 
    445447        Return SetStatus(GdipDrawArc(nativeGraphics, pen->nativePen, x, y, width, height, startAngle, sweepAngle)) 
    446448    End Function 
    447449 
    448     Function DrawArc(pen As /*Const*/ Pen, rect As /*Const*/ RectangleF, startAngle As Single, sweepAngle As Single) As Status 
     450    Function DrawArc(pen As /*Const*/ Pen, rect As /*Const*/ RectangleF, startAngle As Single, sweepAngle As Single) As Gdiplus.Status 
    449451        Return DrawArc(pen, rect.X, rect.Y, rect.Width, rect.Height, startAngle, sweepAngle) 
    450452    End Function 
    451453 
    452     Function DrawArc(pen As /*Const*/ Pen, x As Long, y As Long, width As Long, height As Long, startAngle As Single, sweepAngle As Single) As Status 
     454    Function DrawArc(pen As /*Const*/ Pen, x As Long, y As Long, width As Long, height As Long, startAngle As Single, sweepAngle As Single) As Gdiplus.Status 
    453455        Return SetStatus(GdipDrawArcI(nativeGraphics, pen->nativePen, x, y, width, height, startAngle, sweepAngle)) 
    454456    End Function 
    455457 
    456     Function DrawArc(pen As /*Const*/ Pen, rect As /*Const*/ Rectangle, startAngle As Single, sweepAngle As Single) As Status 
     458    Function DrawArc(pen As /*Const*/ Pen, rect As /*Const*/ Rectangle, startAngle As Single, sweepAngle As Single) As Gdiplus.Status 
    457459        Return DrawArc(pen, rect.X, rect.Y, rect.Width, rect.Height, startAngle, sweepAngle) 
    458460    End Function 
    459461 
    460     Function DrawBezier(pen As /*Const*/ Pen, x1 As Single, y1 As Single, x2 As Single, y2 As Single, x3 As Single, y3 As Single, x4 As Single, y4 As Single) As Status 
     462    Function DrawBezier(pen As /*Const*/ Pen, x1 As Single, y1 As Single, x2 As Single, y2 As Single, x3 As Single, y3 As Single, x4 As Single, y4 As Single) As Gdiplus.Status 
    461463        Return SetStatus(GdipDrawBezier(nativeGraphics, pen->nativePen, x1, y1,x2, y2, x3, y3, x4, y4)) 
    462464    End Function 
    463465 
    464     Function DrawBezier(pen As /*Const*/ Pen, pt1 As /*Const*/ PointF, pt2 As /*Const*/ PointF, pt3 As /*Const*/ PointF, pt4 As /*Const*/ PointF) As Status 
     466    Function DrawBezier(pen As /*Const*/ Pen, pt1 As /*Const*/ PointF, pt2 As /*Const*/ PointF, pt3 As /*Const*/ PointF, pt4 As /*Const*/ PointF) As Gdiplus.Status 
    465467        Return DrawBezier(pen, pt1.X, pt1.Y, pt2.X, pt2.Y, pt3.X, pt3.Y, pt4.X, pt4.Y) 
    466468    End Function 
    467469 
    468     Function DrawBeziers(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long) As Status 
     470    Function DrawBeziers(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long) As Gdiplus.Status 
    469471        Return SetStatus(GdipDrawBeziers(nativeGraphics, pen->nativePen, points, count)) 
    470472    End Function 
    471473 
    472     Function DrawBezier(pen As /*Const*/ Pen, x1 As Long, y1 As Long, x2 As Long, y2 As Long, x3 As Long, y3 As Long, x4 As Long, y4 As Long) As Status 
     474    Function DrawBezier(pen As /*Const*/ Pen, x1 As Long, y1 As Long, x2 As Long, y2 As Long, x3 As Long, y3 As Long, x4 As Long, y4 As Long) As Gdiplus.Status 
    473475        Return SetStatus(GdipDrawBezierI(nativeGraphics, pen->nativePen, x1, y1, x2, y2, x3, y3, x4, y4)) 
    474476    End Function 
    475477 
    476     Function DrawBezier(pen As /*Const*/ Pen, pt1 As /*Const*/ Point, pt2 As /*Const*/ Point, pt3 As /*Const*/ Point, pt4 As /*Const*/ Point) As Status 
     478    Function DrawBezier(pen As /*Const*/ Pen, pt1 As /*Const*/ Point, pt2 As /*Const*/ Point, pt3 As /*Const*/ Point, pt4 As /*Const*/ Point) As Gdiplus.Status 
    477479        Return DrawBezier(pen pt1.X, pt1.Y, pt2.X, pt2.Y, pt3.X, pt3.Y, pt4.X, pt4.Y) 
    478480    End Function 
    479481 
    480     Function DrawBeziers(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long) As Status 
     482    Function DrawBeziers(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long) As Gdiplus.Status 
    481483        Return SetStatus(GdipDrawBeziersI(nativeGraphics, pen->nativePen, points, count)) 
    482484    End Function 
    483485 
    484     Function DrawRectangle(pen As /*Const*/ Pen, rect As /*Const*/ RectangleF) As Status 
     486    Function DrawRectangle(pen As /*Const*/ Pen, rect As /*Const*/ RectangleF) As Gdiplus.Status 
    485487        Return DrawRectangle(pen, rect.X, rect.Y, rect.Width, rect.Height) 
    486488    End Function 
    487489 
    488     Function DrawRectangle(pen As /*Const*/ Pen, x As Single, y As Single, width As Single, height As Single) As Status 
     490    Function DrawRectangle(pen As /*Const*/ Pen, x As Single, y As Single, width As Single, height As Single) As Gdiplus.Status 
    489491        Return SetStatus(GdipDrawRectangle(nativeGraphics, pen->nativePen, x, y, width, height)) 
    490492    End Function 
    491493 
    492     Function DrawRectangles(pen As /*Const*/ Pen, rects As /*Const*/ *RectangleF, count As Long) As Status 
     494    Function DrawRectangles(pen As /*Const*/ Pen, rects As /*Const*/ *RectangleF, count As Long) As Gdiplus.Status 
    493495        Return SetStatus(GdipDrawRectangles(nativeGraphics, pen->nativePen, rects, count)) 
    494496    End Function 
    495497 
    496     Function DrawRectangle(pen As /*Const*/ Pen, rect As /*Const*/ Rectangle) As Status 
     498    Function DrawRectangle(pen As /*Const*/ Pen, rect As /*Const*/ Rectangle) As Gdiplus.Status 
    497499        Return DrawRectangle(pen, rect.X, rect.Y, rect.Width, rect.Height) 
    498500    End Function 
    499501 
    500     Function DrawRectangle(pen As /*Const*/ Pen, x As Long, y As Long, width As Long, height As Long) As Status 
     502    Function DrawRectangle(pen As /*Const*/ Pen, x As Long, y As Long, width As Long, height As Long) As Gdiplus.Status 
    501503        Return SetStatus(GdipDrawRectangleI(nativeGraphics, pen->nativePen, x, y, width, height)) 
    502504    End Function 
    503505 
    504     Function DrawRectangles(pen As /*Const*/ Pen, rects As /*Const*/ *Rectangle,  count As Long) As Status 
     506    Function DrawRectangles(pen As /*Const*/ Pen, rects As /*Const*/ *Rectangle,  count As Long) As Gdiplus.Status 
    505507        Return SetStatus(GdipDrawRectanglesI(nativeGraphics, pen->nativePen, rects, count)) 
    506508    End Function 
    507509 
    508     Function DrawEllipse(pen As /*Const*/ Pen, rect As /*Const*/ RectangleF) As Status 
     510    Function DrawEllipse(pen As /*Const*/ Pen, rect As /*Const*/ RectangleF) As Gdiplus.Status 
    509511        Return DrawEllipse(pen, rect.X, rect.Y, rect.Width, rect.Height) 
    510512    End Function 
    511513 
    512     Function DrawEllipse(pen As /*Const*/ Pen, x As Single, y As Single, width As Single, height As Single) As Status 
     514    Function DrawEllipse(pen As /*Const*/ Pen, x As Single, y As Single, width As Single, height As Single) As Gdiplus.Status 
    513515        Return SetStatus(GdipDrawEllipse(nativeGraphics, pen->nativePen, x, y, width, height)) 
    514516    End Function 
    515517 
    516     Function DrawEllipse(pen As /*Const*/ Pen, rect As /*Const*/ Rectangle) As Status 
     518    Function DrawEllipse(pen As /*Const*/ Pen, rect As /*Const*/ Rectangle) As Gdiplus.Status 
    517519        Return DrawEllipse(pen, rect.X, rect.Y, rect.Width, rect.Height) 
    518520    End Function 
    519521 
    520     Function DrawEllipse(pen As /*Const*/ Pen, x As Long, y As Long, width As Long, height As Long) As Status 
     522    Function DrawEllipse(pen As /*Const*/ Pen, x As Long, y As Long, width As Long, height As Long) As Gdiplus.Status 
    521523        Return SetStatus(GdipDrawEllipseI(nativeGraphics, pen->nativePen, x, y, width, height)) 
    522524    End Function 
    523525 
    524     Function DrawPie(pen As /*Const*/ Pen, rect As /*Const*/ RectangleF, startAngle As Single, sweepAngle As Single) As Status 
     526    Function DrawPie(pen As /*Const*/ Pen, rect As /*Const*/ RectangleF, startAngle As Single, sweepAngle As Single) As Gdiplus.Status 
    525527        Return DrawPie(pen, rect.X, rect.Y, rect.Width, rect.Height, startAngle, sweepAngle) 
    526528    End Function 
    527529 
    528     Function DrawPie(pen As /*Const*/ Pen, x As Single, y As Single, width As Single, height As Single, startAngle As Single, sweepAngle As Single) As Status 
     530    Function DrawPie(pen As /*Const*/ Pen, x As Single, y As Single, width As Single, height As Single, startAngle As Single, sweepAngle As Single) As Gdiplus.Status 
    529531        Return SetStatus(GdipDrawPie(nativeGraphics, pen->nativePen, x, y, width, height, startAngle, sweepAngle)) 
    530532    End Function 
    531533 
    532     Function DrawPie(pen As /*Const*/ Pen, rect As /*Const*/ Rectangle, startAngle As Single, sweepAngle As Single) As Status 
     534    Function DrawPie(pen As /*Const*/ Pen, rect As /*Const*/ Rectangle, startAngle As Single, sweepAngle As Single) As Gdiplus.Status 
    533535        Return DrawPie(pen, rect.X, rect.Y, rect.Width, rect.Height, startAngle, sweepAngle) 
    534536    End Function 
    535537 
    536     Function DrawPie(pen As /*Const*/ Pen, x As Long, y As Long, width As Long, height As Long, startAngle As Single, sweepAngle As Single) As Status 
     538    Function DrawPie(pen As /*Const*/ Pen, x As Long, y As Long, width As Long, height As Long, startAngle As Single, sweepAngle As Single) As Gdiplus.Status 
    537539        Return SetStatus(GdipDrawPieI(nativeGraphics, pen->nativePen, x, y, width, height, startAngle, sweepAngle)) 
    538540    End Function 
    539541 
    540     Function DrawPolygon(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long) As Status 
     542    Function DrawPolygon(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long) As Gdiplus.Status 
    541543        Return SetStatus(GdipDrawPolygon(nativeGraphics, pen->nativePen, points, count)) 
    542544    End Function 
    543545 
    544     Function DrawPolygon(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long) As Status 
     546    Function DrawPolygon(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long) As Gdiplus.Status 
    545547        Return SetStatus(GdipDrawPolygonI(nativeGraphics, pen->nativePen, points, count)) 
    546548    End Function 
    547549 
    548     Function DrawPath(pen As /*Const*/ Pen, path As /*Const*/ GraphicsPath) As Status 
     550    Function DrawPath(pen As /*Const*/ Pen, path As /*Const*/ GraphicsPath) As Gdiplus.Status 
    549551        Return SetStatus(GdipDrawPath(nativeGraphics, pen->nativePen, path->nativePath)) 
    550552'       Return SetStatus(GdipDrawPath(nativeGraphics, pen ? pen->nativePen : NULL, path ? path->nativePath : NULL)) 
    551553    End Function 
    552554 
    553     Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long) As Status 
     555    Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long) As Gdiplus.Status 
    554556        Return SetStatus(GdipDrawCurve(nativeGraphics, pen->nativePen, points, count)) 
    555557    End Function 
    556558 
    557     Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long, tension As Single) As Status 
     559    Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long, tension As Single) As Gdiplus.Status 
    558560        Return SetStatus(GdipDrawCurve2(nativeGraphics, pen->nativePen, points,count, tension)) 
    559561    End Function 
    560562 
    561     Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long, offset As Long, numberOfSegments As Long) As Status 
     563    Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long, offset As Long, numberOfSegments As Long) As Gdiplus.Status 
    562564        Return SetStatus(GdipDrawCurve3(nativeGraphics, pen->nativePen, points, count, offset,numberOfSegments, 0.5)) 
    563565    End Function 
    564566 
    565     Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long, offset As Long, numberOfSegments As Long, tension As Single) As Status 
     567    Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long, offset As Long, numberOfSegments As Long, tension As Single) As Gdiplus.Status 
    566568        Return SetStatus(GdipDrawCurve3(nativeGraphics, pen->nativePen, points, count, offset,numberOfSegments, tension)) 
    567569    End Function 
    568570 
    569     Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long) As Status 
     571    Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long) As Gdiplus.Status 
    570572        Return SetStatus(GdipDrawCurveI(nativeGraphics, pen->nativePen, points, count)) 
    571573    End Function 
    572574 
    573     Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long, tension As Single) As Status 
     575    Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long, tension As Single) As Gdiplus.Status 
    574576        Return SetStatus(GdipDrawCurve2I(nativeGraphics, pen->nativePen, points, count, tension)) 
    575577    End Function 
    576578 
    577     Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long, offset As Long, numberOfSegments As Long) As Status 
     579    Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long, offset As Long, numberOfSegments As Long) As Gdiplus.Status 
    578580        Return SetStatus(GdipDrawCurve3I(nativeGraphics, pen->nativePen, points, count, offset, numberOfSegments, 0.5)) 
    579581    End Function 
    580582 
    581     Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long, offset As Long, numberOfSegments As Long, tension As Single) As Status 
     583    Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long, offset As Long, numberOfSegments As Long, tension As Single) As Gdiplus.Status 
    582584        Return SetStatus(GdipDrawCurve3I(nativeGraphics, pen->nativePen, points, count, offset, numberOfSegments, tension)) 
    583585    End Function 
    584586 
    585     Function DrawClosedCurve(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long) As Status 
     587    Function DrawClosedCurve(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long) As Gdiplus.Status 
    586588        Return SetStatus(GdipDrawClosedCurve(nativeGraphics, pen->nativePen, points, count)) 
    587589    End Function 
    588590 
    589     Function DrawClosedCurve(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long, tension As Single) As Status 
     591    Function DrawClosedCurve(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long, tension As Single) As Gdiplus.Status 
    590592        Return SetStatus(GdipDrawClosedCurve2(nativeGraphics, pen->nativePen, points, count, tension)) 
    591593    End Function 
    592594 
    593     Function DrawClosedCurve(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long) As Status 
     595    Function DrawClosedCurve(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long) As Gdiplus.Status 
    594596        Return SetStatus(GdipDrawClosedCurveI(nativeGraphics, pen->nativePen, points, count)) 
    595597    End Function 
    596598 
    597     Function DrawClosedCurve(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long, tension As Single) As Status 
     599    Function DrawClosedCurve(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long, tension As Single) As Gdiplus.Status 
    598600        Return SetStatus(GdipDrawClosedCurve2I(nativeGraphics, pen->nativePen, points, count, tension)) 
    599601    End Function 
    600602 
    601     Function Clear(color As /*Const*/ Color) As Status 
     603    Function Clear(color As /*Const*/ Color) As Gdiplus.Status 
    602604        Return SetStatus(GdipGraphicsClear(nativeGraphics, color.Value)) 
    603605    End Function 
    604606 
    605     Function FillRectangle(brush As /*Const*/ Brush, rect As /*Const*/ RectangleF) As Status 
     607    Function FillRectangle(brush As /*Const*/ Brush, rect As /*Const*/ RectangleF) As Gdiplus.Status 
    606608        Return FillRectangle(brush, rect.X, rect.Y, rect.Width, rect.Height) 
    607609    End Function 
    608610 
    609     Function FillRectangle(brush As /*Const*/ Brush, x As Single, y As Single, width As Single, height As Single) As Status 
     611    Function FillRectangle(brush As /*Const*/ Brush, x As Single, y As Single, width As Single, height As Single) As Gdiplus.Status 
    610612        Return SetStatus(GdipFillRectangle(nativeGraphics, brush->nativeBrush, x, y, width, height)) 
    611613    End Function 
    612614 
    613     Function FillRectangles(brush As /*Const*/ Brush, rects As /*Const*/ *RectangleF, count As Long) As Status 
     615    Function FillRectangles(brush As /*Const*/ Brush, rects As /*Const*/ *RectangleF, count As Long) As Gdiplus.Status 
    614616        Return SetStatus(GdipFillRectangles(nativeGraphics,brush->nativeBrush,rects, count)) 
    615617    End Function 
    616618 
    617     Function FillRectangle(brush As /*Const*/ Brush, rect As /*Const*/ Rectangle) As Status 
     619    Function FillRectangle(brush As /*Const*/ Brush, rect As /*Const*/ Rectangle) As Gdiplus.Status 
    618620        Return FillRectangle(brush, rect.X, rect.Y, rect.Width, rect.Height) 
    619621    End Function 
    620622 
    621     Function FillRectangle(brush As /*Const*/ Brush, x As Long, y As Long, width As Long, height As Long) As Status 
     623    Function FillRectangle(brush As /*Const*/ Brush, x As Long, y As Long, width As Long, height As Long) As Gdiplus.Status 
    622624        Return SetStatus(GdipFillRectangleI(nativeGraphics, brush->nativeBrush, x, y, width, height)) 
    623625    End Function 
    624626 
    625     Function FillRectangles(brush As /*Const*/ Brush, rects As /*Const*/ *Rectangle, count As Long) As Status 
     627    Function FillRectangles(brush As /*Const*/ Brush, rects As /*Const*/ *Rectangle, count As Long) As Gdiplus.Status 
    626628        Return SetStatus(GdipFillRectanglesI(nativeGraphics, brush->nativeBrush, rects, count)) 
    627629    End Function 
    628630 
    629     Function FillPolygon(brush As /*Const*/ Brush, points As /*Const*/ *PointF, count As Long) As Status 
     631    Function FillPolygon(brush As /*Const*/ Brush, points As /*Const*/ *PointF, count As Long) As Gdiplus.Status 
    630632        Return FillPolygon(brush, points, count, FillModeAlternate) 
    631633    End Function 
    632634 
    633     Function FillPolygon(brush As /*Const*/ Brush, points As /*Const*/ *PointF, count As Long, fillMode As FillMode) As Status 
     635    Function FillPolygon(brush As /*Const*/ Brush, points As /*Const*/ *PointF, count As Long, fillMode As FillMode) As Gdiplus.Status 
    634636        Return SetStatus(GdipFillPolygon(nativeGraphics, brush->nativeBrush, points, count, fillMode)) 
    635637    End Function 
    636638 
    637     Function FillPolygon(brush As /*Const*/ Brush, points As /*Const*/ *Point, count As Long) As Status 
     639    Function FillPolygon(brush As /*Const*/ Brush, points As /*Const*/ *Point, count As Long) As Gdiplus.Status 
    638640        Return FillPolygon(brush, points, count, FillModeAlternate) 
    639641    End Function 
    640642 
    641     Function FillPolygon(brush As /*Const*/ Brush, points As /*Const*/ *Point, count As Long, fillMode As FillMode) As Status 
     643    Function FillPolygon(brush As /*Const*/ Brush, points As /*Const*/ *Point, count As Long, fillMode As FillMode) As Gdiplus.Status 
    642644        Return SetStatus(GdipFillPolygonI(nativeGraphics, brush->nativeBrush, points, count, fillMode)) 
    643645    End Function 
    644646 
    645     Function FillEllipse(brush As /*Const*/ Brush, rect As /*Const*/ RectangleF) As Status 
     647    Function FillEllipse(brush As /*Const*/ Brush, rect As /*Const*/ RectangleF) As Gdiplus.Status 
    646648        Return FillEllipse(brush, rect.X, rect.Y, rect.Width, rect.Height) 
    647649    End Function 
    648650 
    649     Function FillEllipse(brush As /*Const*/ Brush, x As Single, y As Single, width As Single, height As Single) As Status 
     651    Function FillEllipse(brush As /*Const*/ Brush, x As Single, y As Single, width As Single, height As Single) As Gdiplus.Status 
    650652        Return SetStatus(GdipFillEllipse(nativeGraphics, brush->nativeBrush, x, y, width, height)) 
    651653    End Function 
    652654 
    653     Function FillEllipse(brush As /*Const*/ Brush, rect As /*Const*/ Rectangle) As Status 
     655    Function FillEllipse(brush As /*Const*/ Brush, rect As /*Const*/ Rectangle) As Gdiplus.Status 
    654656        Return FillEllipse(brush, rect.X, rect.Y, rect.Width, rect.Height) 
    655657    End Function 
    656658 
    657     Function FillEllipse(brush As /*Const*/ Brush, x As Long, y As Long, width As Long, height As Long) As Status 
     659    Function FillEllipse(brush As /*Const*/ Brush, x As Long, y As Long, width As Long, height As Long) As Gdiplus.Status 
    658660        Return SetStatus(GdipFillEllipseI(nativeGraphics, brush->nativeBrush, x, y, width, height)) 
    659661    End Function 
    660662 
    661     Function FillPie(brush As /*Const*/ Brush, rect As /*Const*/ RectangleF, startAngle As Single, sweepAngle As Single) As Status 
     663    Function FillPie(brush As /*Const*/ Brush, rect As /*Const*/ RectangleF, startAngle As Single, sweepAngle As Single) As Gdiplus.Status 
    662664        Return FillPie(brush, rect.X, rect.Y, rect.Width, rect.Height, startAngle, sweepAngle) 
    663665    End Function 
    664666 
    665     Function FillPie(brush As /*Const*/ Brush, x As Single, y As Single, width As Single, height As Single, startAngle As Single, sweepAngle As Single) As Status 
     667    Function FillPie(brush As /*Const*/ Brush, x As Single, y As Single, width As Single, height As Single, startAngle As Single, sweepAngle As Single) As Gdiplus.Status 
    666668        Return SetStatus(GdipFillPie(nativeGraphics, brush->nativeBrush, x, y, width, height, startAngle, sweepAngle)) 
    667669    End Function 
    668670 
    669     Function FillPie(brush As /*Const*/ Brush, rect As /*Const*/ Rectangle, startAngle As Single, sweepAngle As Single) As Status 
     671    Function FillPie(brush As /*Const*/ Brush, rect As /*Const*/ Rectangle, startAngle As Single, sweepAngle As Single) As Gdiplus.Status 
    670672        Return FillPie(brush, rect.X, rect.Y, rect.Width, rect.Height, startAngle, sweepAngle) 
    671673    End Function 
    672674 
    673     Function FillPie(brush As /*Const*/ Brush, x As Long, y As Long, width As Long, height As Long, startAngle As Single, sweepAngle As Single) As Status 
     675    Function FillPie(brush As /*Const*/ Brush, x As Long, y As Long, width As Long, height As Long, startAngle As Single, sweepAngle As Single) As Gdiplus.Status 
    674676        Return SetStatus(GdipFillPieI(nativeGraphics, brush->nativeBrush, x, y, width, height, startAngle, sweepAngle)) 
    675677    End Function 
    676678 
    677     Function FillPath(brush As /*Const*/ Brush, path As /*Const*/ GraphicsPath) As Status 
     679    Function FillPath(brush As /*Const*/ Brush, path As /*Const*/ GraphicsPath) As Gdiplus.Status 
    678680        Return SetStatus(GdipFillPath(nativeGraphics, brush->nativeBrush, path->nativePath)) 
    679681    End Function 
    680682 
    681     Function FillClosedCurve(brush As /*Const*/ Brush, points As /*Const*/ *PointF, count As Long) As Status 
     683    Function FillClosedCurve(brush As /*Const*/ Brush, points As /*Const*/ *PointF, count As Long) As Gdiplus.Status 
    682684        Return SetStatus(GdipFillClosedCurve(nativeGraphics, brush->nativeBrush, points, count)) 
    683685    End Function 
    684686 
    685     Function FillClosedCurve(brush As /*Const*/ Brush, points As /*Const*/ *PointF, count As Long, fillMode As FillMode) As Status 
     687    Function FillClosedCurve(brush As /*Const*/ Brush, points As /*Const*/ *PointF, count As Long, fillMode As FillMode) As Gdiplus.Status 
    686688        Return SetStatus(GdipFillClosedCurve2(nativeGraphics, brush->nativeBrush, points, count, 0.5, fillMode)) 
    687689    End Function 
    688690 
    689     Function FillClosedCurve(brush As /*Const*/ Brush, points As /*Const*/ *PointF, count As Long, fillMode As FillMode, tension As Single) As Status 
     691    Function FillClosedCurve(brush As /*Const*/ Brush, points As /*Const*/ *PointF, count As Long, fillMode As FillMode, tension As Single) As Gdiplus.Status 
    690692        Return SetStatus(GdipFillClosedCurve2(nativeGraphics, brush->nativeBrush, points, count, tension, fillMode)) 
    691693    End Function 
    692694 
    693     Function FillClosedCurve(brush As /*Const*/ Brush, points As /*Const*/ *Point, count As Long) As Status 
     695    Function FillClosedCurve(brush As /*Const*/ Brush, points As /*Const*/ *Point, count As Long) As Gdiplus.Status 
    694696        Return SetStatus(GdipFillClosedCurveI(nativeGraphics, brush->nativeBrush, points, count)) 
    695697    End Function 
    696698 
    697     Function FillClosedCurve(brush As /*Const*/ Brush, points As /*Const*/ *Point, count As Long, fillMode As FillMode) As Status 
     699    Function FillClosedCurve(brush As /*Const*/ Brush, points As /*Const*/ *Point, count As Long, fillMode As FillMode) As Gdiplus.Status 
    698700        Return SetStatus(GdipFillClosedCurve2I(nativeGraphics, brush->nativeBrush, points, count, 0.5, fillMode)) 
    699701    End Function 
    700702 
    701     Function FillClosedCurve(brush As /*Const*/ Brush, points As /*Const*/ *Point, count As Long, fillMode As FillMode, tension As Single) As Status 
     703    Function FillClosedCurve(brush As /*Const*/ Brush, points As /*Const*/ *Point, count As Long, fillMode As FillMode, tension As Single) As Gdiplus.Status 
    702704        Return SetStatus(GdipFillClosedCurve2I(nativeGraphics, brush->nativeBrush, points, count, tension, fillMode)) 
    703705    End Function 
    704706 
    705     Function FillRegion(brush As /*Const*/ Brush, region As /*Const*/ Region) As Status 
     707    Function FillRegion(brush As /*Const*/ Brush, region As /*Const*/ Region) As Gdiplus.Status 
    706708        Return SetStatus(GdipFillRegion(nativeGraphics, brush->nativeBrush, region->nativeRegion)) 
    707709    End Function 
    708710 
    709     Function DrawString(str As PCWSTR, length As Long, font As /*Const*/ Font, layoutRect As /*Const*/ RectangleF) As Status 
     711    Function DrawString(str As PCWSTR, length As Long, font As /*Const*/ Font, layoutRect As /*Const*/ RectangleF) As Gdiplus.Status 
    710712        Dim nativeFont As *GpFont 
    711713        If VarPtr(font) <> 0 Then 
     
    718720 
    719721    Function DrawString(str As PCWSTR, length As Long, font As /*Const*/ Font, layoutRect As /*Const*/ Rectangle, 
    720         stringFormat As /*Const*/ StringFormat, brush As /*Const*/ Brush) As Status 
     722        stringFormat As /*Const*/ StringFormat, brush As /*Const*/ Brush) As Gdiplus.Status 
    721723 
    722724        Dim nativeFont As *GpFont 
     
    736738 
    737739    Function DrawString(str As PCWSTR, length As Long, font As /*Const*/ Font, layoutRect As /*Const*/ RectangleF, 
    738         stringFormat As /*Const*/ StringFormat, brush As /*Const*/ Brush) As Status 
     740        stringFormat As /*Const*/ StringFormat, brush As /*Const*/ Brush) As Gdiplus.Status 
    739741 
    740742        Dim nativeFont As *GpFont 
     
    759761    End Function 
    760762 
    761     Function DrawString(str As PCWSTR, length As Long, font As /*Const*/ Font, origin As /*Const*/ Point) As Status 
     763    Function DrawString(str As PCWSTR, length As Long, font As /*Const*/ Font, origin As /*Const*/ Point) As Gdiplus.Status 
    762764        Dim rect As RectangleF(origin.X, origin.Y, 0.0, 0.0) 
    763765        Dim nativeFont As *GpFont 
     
    771773 
    772774    Function DrawString(str As PCWSTR, length As Long, font As /*Const*/ Font, origin As /*Const*/ PointF, 
    773         brush As /*Const*/ Brush) As Status 
     775        brush As /*Const*/ Brush) As Gdiplus.Status 
    774776 
    775777        Dim rect As RectangleF(origin.X, origin.Y, 0.0, 0.0) 
     
    789791    End Function 
    790792 
    791     Function DrawString(str As PCWSTR, length As Long, font As /*Const*/ Font, origin As /*Const*/ PointF) As Status 
     793    Function DrawString(str As PCWSTR, length As Long, font As /*Const*/ Font, origin As /*Const*/ PointF) As Gdiplus.Status 
    792794        Dim rect As RectangleF(origin.X, origin.Y, 0.0, 0.0) 
    793795        Dim nativeFont As *GpFont 
     
    801803 
    802804    Function DrawString(str As PCWSTR, length As Long, font As /*Const*/ Font, origin As /*Const*/ PointF, 
    803         stringFormat As /*Const*/ StringFormat) As Status 
     805        stringFormat As /*Const*/ StringFormat) As Gdiplus.Status 
    804806 
    805807        Dim rect As RectangleF(origin.X, origin.Y, 0.0, 0.0) 
     
    820822 
    821823    Function DrawString(str As PCWSTR, length As Long, font As /*Const*/ Font, origin As /*Const*/ PointF, 
    822         stringFormat As /*Const*/ StringFormat, brush As /*Const*/ Brush) As Status 
     824        stringFormat As /*Const*/ StringFormat, brush As /*Const*/ Brush) As Gdiplus.Status 
    823825 
    824826        Dim rect As RectangleF(origin.X, origin.Y, 0.0, 0.0) 
     
    844846 
    845847    Const Function MeasureString(str As PCWSTR, length As Long, font As /*Const*/ Font, layoutRect As /*Const*/ RectangleF, 
    846         stringFormat As /*Const*/ StringFormat, boundingBox As RectangleF) As Status 
     848        stringFormat As /*Const*/ StringFormat, boundingBox As RectangleF) As Gdiplus.Status 
    847849 
    848850        Return MeasureString(str, length, font, layoutRect, stringFormat, boundingBox, ByVal 0, ByVal 0) 
     
    851853    Const Function MeasureString(str As PCWSTR, length As Long, font As /*Const*/ Font, layoutRect As /*Const*/ RectangleF, 
    852854        stringFormat As /*Const*/ StringFormat, boundingBox As RectangleF, 
    853         codepointsFitted As Long) As Status 
     855        codepointsFitted As Long) As Gdiplus.Status 
    854856 
    855857        Return MeasureString(str, length, font, layoutRect, stringFormat, boundingBox, codepointsFitted, ByVal 0) 
     
    858860    Const Function MeasureString(str As PCWSTR, length As Long, font As /*Const*/ Font, layoutRect As /*Const*/ RectangleF, 
    859861        stringFormat As /*Const*/ StringFormat, boundingBox As RectangleF, 
    860         codepointsFitted As Long, linesFilled As Long) As Status 
     862        codepointsFitted As Long, linesFilled As Long) As Gdiplus.Status 
    861863 
    862864        Dim nativeFont As *GpFont 
     
    878880    Const Function MeasureString(str As PCWSTR, length As Long, font As /*Const*/ Font, 
    879881        layoutRectSize As /*Const*/ SizeF, stringFormat As /*Const*/ StringFormat, 
    880         size As SizeF) As Status 
     882        size As SizeF) As Gdiplus.Status 
    881883 
    882884            Return MeasureString(str, length, font, layoutRectSize, stringFormat, size, ByVal 0, ByVal 0) 
     
    885887    Const Function MeasureString(str As PCWSTR, length As Long, font As /*Const*/ Font, 
    886888        layoutRectSize As /*Const*/ SizeF, stringFormat As /*Const*/ StringFormat, 
    887         size As SizeF, codepointsFitted As Long) As Status 
     889        size As SizeF, codepointsFitted As Long) As Gdiplus.Status 
    888890 
    889891            Return MeasureString(str, length, font, layoutRectSize, stringFormat, size, codepointsFitted, ByVal 0) 
     
    892894    Const Function MeasureString(str As PCWSTR, length As Long, font As /*Const*/ Font, 
    893895        layoutRectSize As /*Const*/ SizeF, stringFormat As /*Const*/ StringFormat, 
    894         size As SizeF, codepointsFitted As Long, linesFilled As Long) As Status 
     896        size As SizeF, codepointsFitted As Long, linesFilled As Long) As Gdiplus.Status 
    895897 
    896898        Dim layoutRect As RectangleF(0, 0, layoutRectSize.Width, layoutRectSize.Height) 
     
    917919            nativeFont, layoutRect, nativeFormat, pBoundingBox, codepointsFitted, linesFilled)) 
    918920 
    919         If VarPtr(size) <> 0 And status = Status.Ok Then 
     921        If VarPtr(size) <> 0 And status = Gdiplus.Status.Ok Then 
    920922            size.Width  = boundingBox.Width 
    921923            size.Height = boundingBox.Height 
     
    927929    Const Function MeasureString(str As PCWSTR, length As Long, font As /*Const*/ Font, 
    928930        origin As /*Const*/ PointF, stringFormat As /*Const*/ StringFormat, 
    929         boundingBox As RectangleF) As Status 
     931        boundingBox As RectangleF) As Gdiplus.Status 
    930932 
    931933        Dim rect As RectangleF(origin.X, origin.Y, 0.0f, 0.0f) 
     
    947949 
    948950    Const Function MeasureString(str As PCWSTR, length As Long, font As /*Const*/ Font, 
    949         layoutRect As /*Const*/ RectangleF, boundingBox As RectangleF) As Status 
     951        layoutRect As /*Const*/ RectangleF, boundingBox As RectangleF) As Gdiplus.Status 
    950952 
    951953        Dim nativeFont As *GpFont 
     
    960962 
    961963    Const Function MeasureString(str As PCWSTR, length As Long, font As /*Const*/ Font, 
    962         origin As /*Const*/ PointF, boundingBox As RectangleF) As Status 
     964        origin As /*Const*/ PointF, boundingBox As RectangleF) As Gdiplus.Status 
    963965        Dim rect As RectangleF(origin.X, origin.Y, 0.0, 0.0) 
    964966 
     
    974976    Const Function MeasureCharacterRanges(str As PCWSTR, length As Long, font As /*Const*/ Font, 
    975977        layoutRect As /*Const*/ RectangleF, stringFormat As /*Const*/ StringFormat, 
    976         regionCount As Long, regions As *Region) As Status 
     978        regionCount As Long, regions As *Region) As Gdiplus.Status 
    977979        If regions = 0 Or regionCount <= 0 Then 
    978980            Return InvalidParameter 
     
    10101012 
    10111013    Function DrawDriverString(text As /*Const*/ Word, length As Long, font As /*Const*/ Font, 
    1012         brush As /*Const*/ Brush, positions As /*Const*/ *PointF, flags As Long) As Status 
     1014        brush As /*Const*/ Brush, positions As /*Const*/ *PointF, flags As Long) As Gdiplus.Status 
    10131015 
    10141016        Return DrawDriverString(text, length, font, brush, positions, flags, ByVal 0) 
     
    10161018 
    10171019    Function DrawDriverString(text As /*Const*/ Word, length As Long, font As /*Const*/ Font, 
    1018         brush As /*Const*/ Brush, positions As /*Const*/ *PointF, flags As Long, matrix As /*Const*/ Matrix) As Status 
     1020        brush As /*Const*/ Brush, positions As /*Const*/ *PointF, flags As Long, matrix As /*Const*/ Matrix) As Gdiplus.Status 
    10191021 
    10201022        Dim nativeFont As *GpFont 
     
    10401042 
    10411043    Const Function MeasureDriverString(text As /*Const*/ Word, length As Long, font As /*Const*/ Font, 
    1042         positions As /*Const*/ *PointF, flags As Long, matrix As /*Const*/ Matrix, boundingBox As RectangleF) As Status 
     1044        positions As /*Const*/ *PointF, flags As Long, matrix As /*Const*/ Matrix, boundingBox As RectangleF) As Gdiplus.Status 
    10431045 
    10441046        Dim nativeFont As *GpFont 
     
    10611063    ' native format differs from this Graphics. 
    10621064 
    1063     Function DrawCachedBitmap(cb As CachedBitmap, x As Long, y As Long) As Status 
     1065    Function DrawCachedBitmap(cb As CachedBitmap, x As Long, y As Long) As Gdiplus.Status 
    10641066        Return SetStatus(GdipDrawCachedBitmap(nativeGraphics, cb->nativeCachedBitmap, x, y)) 
    10651067    End Function 
    10661068 
    1067     Function DrawImage(image As Image, point As /*Const*/ PointF) As Status 
     1069    Function DrawImage(image As Image, point As /*Const*/ PointF) As Gdiplus.Status 
    10681070        Return DrawImage(image, point.X, point.Y) 
    10691071    End Function 
    10701072 
    1071     Function DrawImage(image As Image, x As Single, y As Single) As Status 
     1073    Function DrawImage(image As Image, x As Single, y As Single) As Gdiplus.Status 
    10721074        Dim nativeImage As *GpImage 
    10731075        If VarPtr(image) <> 0 Then 
     
    10791081    End Function 
    10801082 
    1081     Function DrawImage(image As Image, rect As /*Const*/ RectangleF) As Status 
     1083    Function DrawImage(image As Image, rect As /*Const*/ RectangleF) As Gdiplus.Status 
    10821084        Return DrawImage(image, rect.X, rect.Y, rect.Width, rect.Height) 
    10831085    End Function 
    10841086 
    1085     Function DrawImage(image As Image, x As Single, y As Single, width As Single, height As Single) As Status 
     1087    Function DrawImage(image As Image, x As Single, y As Single, width As Single, height As Single) As Gdiplus.Status 
    10861088        Dim nativeImage As *GpImage 
    10871089        If VarPtr(image) <> 0 Then 
     
    10931095    End Function 
    10941096 
    1095     Function DrawImage(image As Image, point As /*Const*/ Point) As Status 
    1096         Return DrawImage(image, point.X, point.Y) As Status 
    1097     End Function 
    1098  
    1099     Function DrawImage(image As Image, x As Long, y As Long) As Status 
     1097    Function DrawImage(image As Image, point As /*Const*/ Point) As Gdiplus.Status 
     1098        Return DrawImage(image, point.X, point.Y) As Gdiplus.Status 
     1099    End Function 
     1100 
     1101    Function DrawImage(image As Image, x As Long, y As Long) As Gdiplus.Status 
    11001102        Dim nativeImage As *GpImage 
    11011103        If VarPtr(image) <> 0 Then 
     
    11071109    End Function 
    11081110 
    1109     Function DrawImage(image As Image, rect As /*Const*/ Rectangle) As Status 
     1111    Function DrawImage(image As Image, rect As /*Const*/ Rectangle) As Gdiplus.Status 
    11101112        Return DrawImage(image, rect.X, rect.Y, rect.Width, rect.Height) 
    11111113    End Function 
    11121114 
    1113     Function DrawImage(image As Image, x As Long, y As Long, width As Long, height As Long) As Status 
     1115    Function DrawImage(image As Image, x As Long, y As Long, width As Long, height As Long) As Gdiplus.Status 
    11141116        Dim nativeImage As *GpImage 
    11151117        If VarPtr(image) <> 0 Then 
     
    11291131    '      destPoints[3] <=> bottom-right corner 
    11301132 
    1131     Function DrawImage(image As Image, destPoints As /*Const*/ PointF, count As Long) As Status 
     1133    Function DrawImage(image As Image, destPoints As /*Const*/ PointF, count As Long) As Gdiplus.Status 
    11321134        If count <> 3 And count <> 4 Then 
    11331135            Return SetStatus(InvalidParameter) 
     
    11431145    End Function 
    11441146 
    1145     Function DrawImage(image As Image, destPoints As /*Const*/ Point, count As Long) As Status 
     1147    Function DrawImage(image As Image, destPoints As /*Const*/ Point, count As Long) As Gdiplus.Status 
    11461148        If count <> 3 And count <> 4 Then 
    11471149            Return SetStatus(InvalidParameter) 
     
    11581160 
    11591161    Function DrawImage(image As Image, x As Single, y As Single, 
    1160         srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit) As Status 
     1162        srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit) As Gdiplus.Status 
    11611163 
    11621164        Dim nativeImage As *GpImage 
     
    11701172 
    11711173    Function DrawImage(image As Image, destRect As /*Const*/ RectangleF, 
    1172         srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit) As Status 
     1174        srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit) As Gdiplus.Status 
    11731175 
    11741176        Return DrawImage(image, destRect, srcx, srcy, srcwidth, srcheight, srcUnit, 0, 0, 0) 
     
    11771179    Function DrawImage(image As Image, destRect As /*Const*/ RectangleF, 
    11781180        srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit, 
    1179         imageAttributes As /*Const*/ ImageAttributes) As Status 
     1181        imageAttributes As /*Const*/ ImageAttributes) As Gdiplus.Status 
    11801182 
    11811183        Return DrawImage(image, destRect, srcx, srcy, srcwidth, srcheight, srcUnit, imageAttributes, 0, 0) 
     
    11851187        srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit, 
    11861188        imageAttributes As /*Const*/ ImageAttributes, 
    1187         callback As DrawImageAbort) As Status 
     1189        callback As DrawImageAbort) As Gdiplus.Status 
    11881190 
    11891191        Return DrawImage(image, destRect, srcx, srcy, srcwidth, srcheight, srcUnit, imageAttributes, callback, 0) 
     
    11921194    Function DrawImage(image As Image, destRect As /*Const*/ RectangleF, 
    11931195        srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit, 
    1194         imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort, callbackData As VoidPtr) As Status 
     1196        imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort, callbackData As VoidPtr) As Gdiplus.Status 
    11951197 
    11961198        Dim nativeImage As *GpImage 
     
    12001202            nativeImage = 0 
    12011203        End If 
    1202         Dim nativeImageAttr As *GpImageAttributes 
    1203         If VarPtr(imageAttributes) <> 0 Then 
    1204             nativeImageAttr = image.NativeImageAttr 
    1205         Else 
    1206             nativeImageAttr = 0 
    1207         End If 
    12081204 
    12091205        Return SetStatus(GdipDrawImageRectRect(nativeGraphics, nativeImageAttr, 
    12101206            destRect.X, destRect.Y, destRect.Width, destRect.Height, srcx, srcy, srcwidth, srcheight, 
    1211             srcUnit, nativeImageAttr, callback, callbackData)) 
     1207            srcUnit, ImageAttributes.Native(imageAttributes), callback, callbackData)) 
    12121208    End Function 
    12131209 
    12141210    Function DrawImage(image As Image, destPoints As /*Const*/ PointF, count As Long, 
    1215         srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit) As Status 
     1211        srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit) As Gdiplus.Status 
    12161212 
    12171213        Return DrawImage(image, destPoints, count, srcx, srcy, srcwidth, srcheight, srcUnit, 0, 0, 0) 
     
    12201216    Function DrawImage(image As Image, destPoints As /*Const*/ PointF, count As Long, 
    12211217        srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit, 
    1222         imageAttributes As /*Const*/ ImageAttributes) As Status 
     1218        imageAttributes As /*Const*/ ImageAttributes) As Gdiplus.Status 
    12231219 
    12241220        Return DrawImage(image, destPoints, count, srcx, srcy, srcwidth, srcheight, srcUnit, imageAttributes, 0, 0) 
     
    12281224        srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit, 
    12291225        imageAttributes As /*Const*/ ImageAttributes, 
    1230         callback As DrawImageAbort) As Status 
     1226        callback As DrawImageAbort) As Gdiplus.Status 
    12311227 
    12321228        Return DrawImage(image, destPoints, count, srcx, srcy, srcwidth, srcheight, srcUnit, imageAttributes, callback, 0) 
     
    12351231    Function DrawImage(image As Image, destPoints As /*Const*/ PointF, count As Long, 
    12361232        srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit, 
    1237         imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort, callbackData As VoidPtr) As Status 
     1233        imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort, callbackData As VoidPtr) As Gdiplus.Status 
    12381234 
    12391235        Dim nativeImage As *GpImage 
     
    12431239            nativeImage = 0 
    12441240        End If 
    1245         Dim nativeImageAttr As *GpImageAttributes 
    1246         If VarPtr(imageAttributes) <> 0 Then 
    1247             nativeImageAttr = image.NativeImageAttr 
    1248         Else 
    1249             nativeImageAttr = 0 
    1250         End If 
    12511241 
    12521242        Return SetStatus(GdipDrawImagePointsRect(nativeGraphics, nativeImage, destPoints, count, 
    1253             srcx, srcy, srcwidth, srcheight, srcUnit, nativeImageAttr, callback, callbackData)) 
     1243            srcx, srcy, srcwidth, srcheight, srcUnit, ImageAttributes.Native(imageAttributes), callback, callbackData)) 
    12541244    End Function 
    12551245 
    12561246    Function DrawImage(image As Image, x As Long, y As Long, 
    1257         srcx As Long, srcy As Long, srcwidth As Long, srcheight As Long, srcUnit As GraphicsUnit) As Status 
     1247        srcx As Long, srcy As Long, srcwidth As Long, srcheight As Long, srcUnit As GraphicsUnit) As Gdiplus.Status 
    12581248 
    12591249        Dim nativeImage As *GpImage 
     
    12671257 
    12681258    Function DrawImage(image As Image, destRect As /*Const*/ Rectangle, 
    1269         srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit) As Status 
     1259        srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit) As Gdiplus.Status 
    12701260 
    12711261        Return DrawImage(image, destRect, srcx, srcy, srcwidth, srcheight, srcUnit, 0, 0, 0) 
     
    12741264    Function DrawImage(image As Image, destRect As /*Const*/ Rectangle, 
    12751265        srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit, 
    1276         imageAttributes As /*Const*/ ImageAttributes) As Status 
     1266        imageAttributes As /*Const*/ ImageAttributes) As Gdiplus.Status 
    12771267 
    12781268        Return DrawImage(image, destRect, srcx, srcy, srcwidth, srcheight, srcUnit, imageAttributes, 0, 0) 
     
    12811271    Function DrawImage(image As Image, destRect As /*Const*/ Rectangle, 
    12821272        srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit, 
    1283         imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort) As Status 
     1273        imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort) As Gdiplus.Status 
    12841274 
    12851275        Return DrawImage(image, destRect, srcx, srcy, srcwidth, srcheight, srcUnit, imageAttributes, callback, 0) 
     
    12881278    Function DrawImage(image As Image, destRect As /*Const*/ Rectangle, 
    12891279        srcx As Long, srcy As Long, srcwidth As Long, srcheight As Long, srcUnit As GraphicsUnit, 
    1290         imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort, callbackData As VoidPtr) As Status 
     1280        imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort, callbackData As VoidPtr) As Gdiplus.Status 
    12911281 
    12921282        Dim nativeImage As *GpImage 
     
    12961286            nativeImage = 0 
    12971287        End If 
    1298         Dim nativeImageAttr As *GpImageAttributes 
    1299         If VarPtr(imageAttributes) <> 0 Then 
    1300             nativeImageAttr = image.NativeImageAttr 
    1301         Else 
    1302             nativeImageAttr = 0 
    1303         End If 
    13041288 
    13051289        Return SetStatus(GdipDrawImageRectRectI(nativeGraphics, nativeImage, 
    13061290            destRect.X, destRect.Y, destRect.Width, destRect.Height, 
    1307             srcx, srcy, srcwidth, srcheight, srcUnit, nativeImageAttr, callback, callbackData)) 
     1291            srcx, srcy, srcwidth, srcheight, srcUnit, ImageAttributes.Native(imageAttributes), callback, callbackData)) 
    13081292    End Function 
    13091293 
    13101294    Function DrawImage(image As Image, destPoints As /*Const*/ Point, count As Long, 
    1311         srcx As Long, srcy As Long, srcwidth As Long, srcheight As Long, srcUnit As GraphicsUnit) As Status 
     1295        srcx As Long, srcy As Long, srcwidth As Long, srcheight As Long, srcUnit As GraphicsUnit) As Gdiplus.Status 
    13121296 
    13131297        Return DrawImage(image, destPoints, count, srcx, srcy, srcwidth, srcheight, srcUnit, 0, 0, 0) 
     
    13161300    Function DrawImage(image As Image, destPoints As /*Const*/ Point, count As Long, 
    13171301        srcx As Long, srcy As Long, srcwidth As Long, srcheight As Long, srcUnit As GraphicsUnit, 
    1318         imageAttributes As /*Const*/ ImageAttributes) As Status 
     1302        imageAttributes As /*Const*/ ImageAttributes) As Gdiplus.Status 
    13191303 
    13201304        Return DrawImage(image, destPoints, count, srcx, srcy, srcwidth, srcheight, srcUnit, imageAttributes, 0, 0) 
     
    13241308        srcx As Long, srcy As Long, srcwidth As Long, srcheight As Long, srcUnit As GraphicsUnit, _ 
    13251309        imageAttributes As /*Const*/ ImageAttributes, 
    1326         callback As DrawImageAbort) As Status 
     1310        callback As DrawImageAbort) As Gdiplus.Status 
    13271311 
    13281312        Return DrawImage(image, destPoints, count, srcx, srcy, srcwidth, srcheight, srcUnit, imageAttributes, callback, 0) 
     
    13311315    Function DrawImage(image As Image, destPoints As /*Const*/ Point, count As Long, 
    13321316        srcx As Long, srcy As Long, srcwidth As Long, srcheight As Long, srcUnit As GraphicsUnit, 
    1333         imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort, callbackData As VoidPtr) As Status 
     1317        imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort, callbackData As VoidPtr) As Gdiplus.Status 
    13341318 
    13351319        Dim nativeImage As *GpImage 
     
    13391323            nativeImage = 0 
    13401324        End If 
    1341         Dim nativeImageAttr As *GpImageAttributes 
    1342         If VarPtr(imageAttributes) <> 0 Then 
    1343             nativeImageAttr = image.NativeImageAttr 
    1344         Else 
    1345             nativeImageAttr = 0 
    1346         End If 
    13471325 
    13481326        Return SetStatus(GdipDrawImagePointsRectI(nativeGraphics, nativeImage, destPoints, count, 
    1349             srcx, srcy, srcwidth, srcheight, srcUnit, nativeImageAttr, callback, callbackData)) 
    1350     End Function 
    1351  
    1352     Function DrawImage(image As Image, destPoints As /*Const*/ *Point, count As Long, srcRect As Rectangle, srcUnit As GraphicsUnit) As Status 
     1327            srcx, srcy, srcwidth, srcheight, srcUnit, ImageAttributes.Native(imageAttributes), callback, callbackData)) 
     1328    End Function 
     1329 
     1330    Function DrawImage(image As Image, destPoints As /*Const*/ *Point, count As Long, srcRect As Rectangle, srcUnit As GraphicsUnit) As Gdiplus.Status 
    13531331        Return DrawImage(image, destPoints, count, srcRect.X, srcRect.Y, srcRect.Width, srcRect.Height, srcUnit) 
    13541332    End Function 
    13551333 
    1356     Function DrawImage(image As Image, destPoints As /*Const*/ *PointF, count As Long, srcRect As RectangleF, srcUnit As GraphicsUnit) As Status 
     1334    Function DrawImage(image As Image, destPoints As /*Const*/ *PointF, count As Long, srcRect As RectangleF, srcUnit As GraphicsUnit) As Gdiplus.Status 
    13571335        Return DrawImage(image, destPoints, count, srcRect.X, srcRect.Y, srcRect.Width, srcRect.Height, srcUnit) 
    13581336    End Function 
    13591337 
    1360     Function DrawImage(image As Image, x As Long, y As Long, srcRect As Rectangle, srcUnit As GraphicsUnit) As Status 
     1338    Function DrawImage(image As Image, x As Long, y As Long, srcRect As Rectangle, srcUnit As GraphicsUnit) As Gdiplus.Status 
    13611339        Return DrawImage(image, x, y, count, srcRect.X, srcRect.Y, srcRect.Width, srcRect.Height, srcUnit) 
    13621340    End Function 
    13631341 
    1364     Function DrawImage(image As Image, x As Single, y As Single, srcRect As RectangleF, srcUnit As GraphicsUnit) As Status 
     1342    Function DrawImage(image As Image, x As Single, y As Single, srcRect As RectangleF, srcUnit As GraphicsUnit) As Gdiplus.Status 
    13651343        Return DrawImage(image, x, y, count, srcRect.X, srcRect.Y, srcRect.Width, srcRect.Height, srcUnit) 
    13661344    End Function 
    13671345 
    1368     Function DrawImage(image As Image, destPoints As /*Const*/ *Point, count As Long, srcRect As Rectangle, srcUnit As GraphicsUnit, imageAttributes As /*Const*/ ImageAttributes) As Status 
     1346    Function DrawImage(image As Image, destPoints As /*Const*/ *Point, count As Long, srcRect As Rectangle, srcUnit As GraphicsUnit, imageAttributes As /*Const*/ ImageAttributes) As Gdiplus.Status 
    13691347        Return DrawImage(image, destPoints, count, srcRect.X, srcRect.Y, srcRect.Width, srcRect.Height, srcUnit, imageAttributes) 
    13701348    End Function 
    13711349 
    1372     Function DrawImage(image As Image, destPoints As /*Const*/ *PointF, count As Long, srcRect As RectangleF, srcUnit As GraphicsUnit, imageAttributes As /*Const*/ ImageAttributes) As Status 
     1350    Function DrawImage(image As Image, destPoints As /*Const*/ *PointF, count As Long, srcRect As RectangleF, srcUnit As GraphicsUnit, imageAttributes As /*Const*/ ImageAttributes) As Gdiplus.Status 
    13731351        Return DrawImage(image, destPoints, count, srcRect.X, srcRect.Y, srcRect.Width, srcRect.Height, srcUnit, imageAttributes) 
    13741352    End Function 
    13751353 
    1376     Function DrawImage(image As Image, destPoints As /*Const*/ *Point, count As Long, srcRect As Rectangle, srcUnit As GraphicsUnit, imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort) As Status 
     1354    Function DrawImage(image As Image, destPoints As /*Const*/ *Point, count As Long, srcRect As Rectangle, srcUnit As GraphicsUnit, imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort) As Gdiplus.Status 
    13771355        Return DrawImage(image, destPoints, count, srcRect.X, srcRect.Y, srcRect.Width, srcRect.Height, srcUnit, imageAttributes, callback) 
    13781356    End Function 
    13791357 
    1380     Function DrawImage(image As Image, destPoints As /*Const*/ *PointF, count As Long, srcRect As RectangleF, srcUnit As GraphicsUnit, imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort) As Status 
     1358    Function DrawImage(image As Image, destPoints As /*Const*/ *PointF, count As Long, srcRect As RectangleF, srcUnit As GraphicsUnit, imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort) As Gdiplus.Status 
    13811359        Return DrawImage(image, destPoints, count, srcRect.X, srcRect.Y, srcRect.Width, srcRect.Height, srcUnit, imageAttributes, callback) 
    13821360    End Function 
    13831361 
    1384     Function DrawImage(image As Image, destPoints As /*Const*/ *Point, count As Long, srcRect As Rectangle, srcUnit As GraphicsUnit, imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort, callbackData As VoidPtr) As Status 
     1362    Function DrawImage(image As Image, destPoints As /*Const*/ *Point, count As Long, srcRect As Rectangle, srcUnit As GraphicsUnit, imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort, callbackData As VoidPtr) As Gdiplus.Status 
    13851363        Return DrawImage(image, destPoints, count, srcRect.X, srcRect.Y, srcRect.Width, srcRect.Height, srcUnit, imageAttributes, callback, callbackData) 
    13861364    End Function 
    13871365 
    1388     Function DrawImage(image As Image, destPoints As /*Const*/ *PointF, count As Long, srcRect As RectangleF, srcUnit As GraphicsUnit, imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort, callbackData As VoidPtr) As Status 
     1366    Function DrawImage(image As Image, destPoints As /*Const*/ *PointF, count As Long, srcRect As RectangleF, srcUnit As GraphicsUnit, imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort, callbackData As VoidPtr) As Gdiplus.Status 
    13891367        Return DrawImage(image, destPoints, count, srcRect.X, srcRect.Y, srcRect.Width, srcRect.Height, srcUnit, imageAttributes, callback, callbackData) 
    13901368    End Function 
     
    13971375 
    13981376    Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoint As /*Const*/ PointF, 
    1399         callback As EnumerateMetafileProc) As Status 
     1377        callback As EnumerateMetafileProc) As Gdiplus.Status 
    14001378 
    14011379        Return EnumerateMetafile(metafile, destPoint, callback, 0, 0) 
     
    14031381 
    14041382    Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoint As /*Const*/ PointF, 
    1405         callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status 
     1383        callback As EnumerateMetafileProc, callbackData As VoidPtr) As Gdiplus.Status 
    14061384 
    14071385        Return EnumerateMetafile(metafile, destPoint, callback, callbackData, 0) 
     
    14091387 
    14101388    Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoint As /*Const*/ PointF, 
    1411         callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status 
     1389        callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Gdiplus.Status 
    14121390 
    14131391        Dim nativeImage As /*Const*/ *GpMetafile 
     
    14171395            nativeImage = 0 
    14181396        End If 
    1419         Dim nativeImageAttr As *GpImageAttributes 
    1420         If VarPtr(imageAttributes) <> 0 Then 
    1421             nativeImageAttr = image.NativeImageAttr 
    1422         Else 
    1423             nativeImageAttr = 0 
    1424         End If 
    14251397 
    14261398        Return SetStatus(GdipEnumerateMetafileDestPoint(nativeGraphics, 
    1427             nativeImage, destPoint, callback, callbackData,nativeImageAttr)) 
     1399            nativeImage, destPoint, callback, callbackData, ImageAttributes.Native(imageAttributes))) 
    14281400    End Function 
    14291401 
    14301402    Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoint As /*Const*/ Point, 
    1431         callback As EnumerateMetafileProc) As Status 
     1403        callback As EnumerateMetafileProc) As Gdiplus.Status 
    14321404 
    14331405        Return EnumerateMetafile(metafile, destPoint, callback, 0, 0) 
     
    14351407 
    14361408    Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoint As /*Const*/ Point, 
    1437         callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status 
     1409        callback As EnumerateMetafileProc, callbackData As VoidPtr) As Gdiplus.Status 
    14381410 
    14391411        Return EnumerateMetafile(metafile, destPoint, callback, callbackData, 0) 
     
    14411413 
    14421414    Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoint As /*Const*/ Point, 
    1443         callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status 
     1415        callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Gdiplus.Status 
    14441416 
    14451417        Dim nativeImage As /*Const*/ *GpMetafile 
     
    14491421            nativeImage = 0 
    14501422        End If 
    1451         Dim nativeImageAttr As *GpImageAttributes 
    1452         If VarPtr(imageAttributes) <> 0 Then 
    1453             nativeImageAttr = image.NativeImageAttr 
    1454         Else 
    1455             nativeImageAttr = 0 
    1456         End If 
    14571423 
    14581424        Return SetStatus(GdipEnumerateMetafileDestPointI(nativeGraphics, 
    1459             nativeImage, destPoint, callback, callbackData,nativeImageAttr)) 
     1425            nativeImage, destPoint, callback, callbackData, ImageAttributes.Native(imageAttributes))) 
    14601426    End Function 
    14611427 
    14621428    Function EnumerateMetafile(metafile As /*Const*/ Metafile, destRect As /*Const*/ RectangleF, 
    1463         callback As EnumerateMetafileProc) As Status 
     1429        callback As EnumerateMetafileProc) As Gdiplus.Status 
    14641430 
    14651431        Return EnumerateMetafile(metafile, destRect, callback, 0, 0) 
     
    14671433 
    14681434    Function EnumerateMetafile(metafile As /*Const*/ Metafile, destRect As /*Const*/ RectangleF, 
    1469         callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status 
     1435        callback As EnumerateMetafileProc, callbackData As VoidPtr) As Gdiplus.Status 
    14701436 
    14711437        Return EnumerateMetafile(metafile, destRect, callback, callbackData, 0) 
     
    14731439 
    14741440    Function EnumerateMetafile(metafile As /*Const*/ Metafile, destRect As /*Const*/ RectangleF, 
    1475         callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status 
     1441        callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Gdiplus.Status 
    14761442 
    14771443        Dim nativeImage As /*Const*/ *GpMetafile 
     
    14811447            nativeImage = 0 
    14821448        End If 
    1483         Dim nativeImageAttr As *GpImageAttributes 
    1484         If VarPtr(imageAttributes) <> 0 Then 
    1485             nativeImageAttr = image.NativeImageAttr 
    1486         Else 
    1487             nativeImageAttr = 0 
    1488         End If 
    14891449 
    14901450        Return SetStatus(GdipEnumerateMetafileDestRect(nativeGraphics, 
    1491             nativeImage, destRect, callback, callbackData, nativeImageAttr)) 
     1451            nativeImage, destRect, callback, callbackData, ImageAttributes.Native(imageAttributes))) 
    14921452    End Function 
    14931453 
    14941454    Function EnumerateMetafile(metafile As /*Const*/ Metafile, destRect As /*Const*/ Rectangle, 
    1495         callback As EnumerateMetafileProc) As Status 
     1455        callback As EnumerateMetafileProc) As Gdiplus.Status 
    14961456 
    14971457        Return EnumerateMetafile(metafile, destRect, callback, 0, 0) 
     
    14991459 
    15001460    Function EnumerateMetafile(metafile As /*Const*/ Metafile, destRect As /*Const*/ Rectangle, 
    1501         callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status 
     1461        callback As EnumerateMetafileProc, callbackData As VoidPtr) As Gdiplus.Status 
    15021462 
    15031463        Return EnumerateMetafile(metafile, destRect, callback, callbackData, 0) 
     
    15051465 
    15061466    Function EnumerateMetafile(metafile As /*Const*/ Metafile, destRect As /*Const*/ Rectangle, 
    1507         callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status 
     1467        callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Gdiplus.Status 
    15081468 
    15091469        Dim nativeImage As /*Const*/ *GpMetafile 
     
    15131473            nativeImage = 0 
    15141474        End If 
    1515         Dim nativeImageAttr As *GpImageAttributes 
    1516         If VarPtr(imageAttributes) <> 0 Then 
    1517             nativeImageAttr = image.NativeImageAttr 
    1518         Else 
    1519             nativeImageAttr = 0 
    1520         End If 
    15211475 
    15221476        Return SetStatus(GdipEnumerateMetafileDestRectI(nativeGraphics, 
    1523             nativeImage, destRect, callback, callbackData, nativeImageAttr)) 
     1477            nativeImage, destRect, callback, callbackData, ImageAttributes.Native(imageAttributes))) 
    15241478    End Function 
    15251479 
    15261480    Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoints As /*Const*/ *PointF, count As Long, 
    1527         callback As EnumerateMetafileProc) As Status 
     1481        callback As EnumerateMetafileProc) As Gdiplus.Status 
    15281482 
    15291483        Return EnumerateMetafile(metafile, destPoints, count, callback, 0, 0) 
     
    15311485 
    15321486    Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoints As /*Const*/ *PointF, count As Long, 
    1533         callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status 
     1487        callback As EnumerateMetafileProc, callbackData As VoidPtr) As Gdiplus.Status 
    15341488 
    15351489        Return EnumerateMetafile(metafile, destPoints, count, callback, callbackData, 0) 
     
    15371491 
    15381492    Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoints As /*Const*/ *PointF, count As Long, 
    1539         callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status 
     1493        callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Gdiplus.Status 
    15401494 
    15411495        Dim nativeImage As /*Const*/ *GpMetafile 
     
    15451499            nativeImage = 0 
    15461500        End If 
    1547         Dim nativeImageAttr As *GpImageAttributes 
    1548         If VarPtr(imageAttributes) <> 0 Then 
    1549             nativeImageAttr = image.NativeImageAttr 
    1550         Else 
    1551             nativeImageAttr = 0 
    1552         End If 
    15531501 
    15541502        Return SetStatus(GdipEnumerateMetafileDestPoints(nativeGraphics, 
    1555             nativeImage,destPoints, count, callback, callbackData, nativeImageAttr)) 
     1503            nativeImage,destPoints, count, callback, callbackData, ImageAttributes.Native(imageAttributes))) 
    15561504    End Function 
    15571505 
    15581506    Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoints As /*Const*/ *Point, count As Long, 
    1559         callback As EnumerateMetafileProc) As Status 
     1507        callback As EnumerateMetafileProc) As Gdiplus.Status 
    15601508 
    15611509        Return EnumerateMetafile(metafile, destPoints, count, callback, 0, 0) 
     
    15631511 
    15641512    Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoints As /*Const*/ *Point, count As Long, 
    1565         callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status 
     1513        callback As EnumerateMetafileProc, callbackData As VoidPtr) As Gdiplus.Status 
    15661514 
    15671515        Return EnumerateMetafile(metafile, destPoints, count, callback, callbackData, 0) 
     
    15691517 
    15701518    Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoints As /*Const*/ *Point, count As Long, 
    1571         callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status 
     1519        callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Gdiplus.Status 
    15721520 
    15731521        Dim nativeImage As /*Const*/ *GpMetafile 
     
    15771525            nativeImage = 0 
    15781526        End If 
    1579         Dim nativeImageAttr As *GpImageAttributes 
    1580         If VarPtr(imageAttributes) <> 0 Then 
    1581             nativeImageAttr = image.NativeImageAttr 
    1582         Else 
    1583             nativeImageAttr = 0 
    1584         End If 
    15851527 
    15861528        Return SetStatus(GdipEnumerateMetafileDestPointsI(nativeGraphics, 
    1587             nativeImage,destPoints, count, callback, callbackData, nativeImageAttr)) 
     1529            nativeImage,destPoints, count, callback, callbackData, ImageAttributes.Native(imageAttributes))) 
    15881530    End Function 
    15891531 
    15901532    Function EnumerateMetafile(metafile As /*Const*/ Metafile, 
    15911533        destPoint As /*Const*/ PointF, srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit, 
    1592         callback As EnumerateMetafileProc) As Status 
     1534        callback As EnumerateMetafileProc) As Gdiplus.Status 
    15931535 
    15941536        Return EnumerateMetafile(metafile, destPoint, count, srcUnit, callback, 0, 0) 
     
    15971539    Function EnumerateMetafile(metafile As /*Const*/ Metafile, 
    15981540        destPoint As /*Const*/ PointF, srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit, 
    1599         callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status 
     1541        callback As EnumerateMetafileProc, callbackData As VoidPtr) As Gdiplus.Status 
    16001542 
    16011543        Return EnumerateMetafile(metafile, destPoint, srcRect, srcUnit, callback, callbackData, 0) 
     
    16041546    Function EnumerateMetafile(metafile As /*Const*/ Metafile, 
    16051547        destPoint As /*Const*/ PointF, srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit, 
    1606         callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status 
     1548        callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Gdiplus.Status 
    16071549 
    16081550        Dim nativeImage As /*Const*/ *GpMetafile 
     
    16121554            nativeImage = 0 
    16131555        End If 
    1614         Dim nativeImageAttr As *GpImageAttributes 
    1615         If VarPtr(imageAttributes) <> 0 Then 
    1616             nativeImageAttr = image.NativeImageAttr 
    1617         Else 
    1618             nativeImageAttr = 0 
    1619         End If 
    16201556 
    16211557        Return SetStatus(GdipEnumerateMetafileSrcRectDestPoint(nativeGraphics, _ 
    1622             nativeImage, destPoint, srcRect, srcUnit, callback, callbackData, nativeImageAttr)) 
     1558            nativeImage, destPoint, srcRect, srcUnit, callback, callbackData, ImageAttributes.Native(imageAttributes))) 
    16231559    End Function 
    16241560 
    16251561    Function EnumerateMetafile(metafile As /*Const*/ Metafile, _ 
    16261562        destPoint As /*Const*/ Point, srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _ 
    1627         callback As EnumerateMetafileProc) As Status 
     1563        callback As EnumerateMetafileProc) As Gdiplus.Status 
    16281564 
    16291565        Return EnumerateMetafile(metafile, destPoint, count, srcUnit, callback, 0, 0) 
     
    16321568    Function EnumerateMetafile(metafile As /*Const*/ Metafile, _ 
    16331569        destPoint As /*Const*/ Point, srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _ 
    1634         callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status 
     1570        callback As EnumerateMetafileProc, callbackData As VoidPtr) As Gdiplus.Status 
    16351571 
    16361572        Return EnumerateMetafile(metafile, destPoint, srcRect, srcUnit, callback, callbackData, 0) 
     
    16391575    Function EnumerateMetafile(metafile As /*Const*/ Metafile, _ 
    16401576        destPoint As /*Const*/ Point, srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _ 
    1641         callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status 
     1577        callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Gdiplus.Status 
    16421578 
    16431579        Dim nativeImage As /*Const*/ *GpMetafile 
     
    16471583            nativeImage = 0 
    16481584        End If 
    1649         Dim nativeImageAttr As *GpImageAttributes 
    1650         If VarPtr(imageAttributes) <> 0 Then 
    1651             nativeImageAttr = image.NativeImageAttr 
    1652         Else 
    1653             nativeImageAttr = 0 
    1654         End If 
    16551585 
    16561586        Return SetStatus(GdipEnumerateMetafileSrcRectDestPointI(nativeGraphics, _ 
    1657             nativeImage, destPoint, srcRect, srcUnit, callback, callbackData, nativeImageAttr)) 
     1587            nativeImage, destPoint, srcRect, srcUnit, callback, callbackData, ImageAttributes.Native(imageAttributes))) 
    16581588    End Function 
    16591589 
    16601590    Function EnumerateMetafile(metafile As /*Const*/ Metafile, _ 
    16611591        destRect As /*Const*/ RectangleF, srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit, _ 
    1662         callback As EnumerateMetafileProc) As Status 
     1592        callback As EnumerateMetafileProc) As Gdiplus.Status 
    16631593 
    16641594        Return EnumerateMetafile(metafile, destRect, count, srcUnit, callback, 0, 0) 
     
    16671597    Function EnumerateMetafile(metafile As /*Const*/ Metafile, _ 
    16681598        destRect As /*Const*/ RectangleF, srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit, _ 
    1669         callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status 
     1599        callback As EnumerateMetafileProc, callbackData As VoidPtr) As Gdiplus.Status 
    16701600 
    16711601        Return EnumerateMetafile(metafile, destRect, srcRect, srcUnit, callback, callbackData, 0) 
     
    16741604    Function EnumerateMetafile(metafile As /*Const*/ Metafile, _ 
    16751605        destRect As /*Const*/ RectangleF, srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit, _ 
    1676         callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status 
     1606        callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Gdiplus.Status 
    16771607 
    16781608        Dim nativeImage As /*Const*/ *GpMetafile 
     
    16821612            nativeImage = 0 
    16831613        End If 
    1684         Dim nativeImageAttr As *GpImageAttributes 
    1685         If VarPtr(imageAttributes) <> 0 Then 
    1686             nativeImageAttr = image.NativeImageAttr 
    1687         Else 
    1688             nativeImageAttr = 0 
    1689         End If 
    16901614 
    16911615        Return SetStatus(GdipEnumerateMetafileSrcRectDestRect(nativeGraphics, _ 
    1692             nativeImage, destRect, srcRect, srcUnit, callback, callbackData, nativeImageAttr)) 
     1616            nativeImage, destRect, srcRect, srcUnit, callback, callbackData, ImageAttributes.Native(imageAttributes))) 
    16931617    End Function 
    16941618 
    16951619    Function EnumerateMetafile(metafile As /*Const*/ Metafile, _ 
    16961620        destRect As /*Const*/ Rectangle, srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _ 
    1697         callback As EnumerateMetafileProc) As Status 
     1621        callback As EnumerateMetafileProc) As Gdiplus.Status 
    16981622 
    16991623        Return EnumerateMetafile(metafile, destRect, srcRect, srcUnit, callback, 0, 0) 
     
    17021626    Function EnumerateMetafile(metafile As /*Const*/ Metafile, _ 
    17031627        destRect As /*Const*/ Rectangle, srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _ 
    1704         callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status 
     1628        callback As EnumerateMetafileProc, callbackData As VoidPtr) As Gdiplus.Status 
    17051629 
    17061630        Return EnumerateMetafile(metafile, destRect, srcRect, srcUnit, callback, callbackData, 0) 
     
    17091633    Function EnumerateMetafile(metafile As /*Const*/ Metafile, _ 
    17101634        destRect As /*Const*/ Rectangle, srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _ 
    1711         callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status 
     1635        callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Gdiplus.Status 
    17121636 
    17131637        Dim nativeImage As /*Const*/ *GpMetafile 
     
    17171641            nativeImage = 0 
    17181642        End If 
    1719         Dim nativeImageAttr As *GpImageAttributes 
    1720         If VarPtr(imageAttributes) <> 0 Then 
    1721             nativeImageAttr = image.NativeImageAttr 
    1722         Else 
    1723             nativeImageAttr = 0 
    1724         End If 
    17251643 
    17261644        Return SetStatus(GdipEnumerateMetafileSrcRectDestRectI(nativeGraphics, _ 
    1727             nativeImage, destRect, srcRect, srcUnit, callback, callbackData, nativeImageAttr)) 
     1645            nativeImage, destRect, srcRect, srcUnit, callback, callbackData, ImageAttributes.Native(imageAttributes))) 
    17281646    End Function 
    17291647 
    17301648    Function EnumerateMetafile(metafile As /*Const*/ Metafile, _ 
    17311649        destPoints As /*Const*/ *PointF, count As Long, srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit, _ 
    1732         callback As EnumerateMetafileProc) As Status 
     1650        callback As EnumerateMetafileProc) As Gdiplus.Status 
    17331651 
    17341652        Return EnumerateMetafile(metafile, destPoints, count, srcRect, srcUnit, callback, 0, 0) 
     
    17371655    Function EnumerateMetafile(metafile As /*Const*/ Metafile, _ 
    17381656        destPoints As /*Const*/ *PointF, count As Long, srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit, _ 
    1739         callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status 
     1657        callback As EnumerateMetafileProc, callbackData As VoidPtr) As Gdiplus.Status 
    17401658 
    17411659        Return EnumerateMetafile(metafile, destPoints, count, srcRect, srcUnit, callback, callbackData, 0) 
     
    17441662    Function EnumerateMetafile(metafile As /*Const*/ Metafile, _ 
    17451663        destPoints As /*Const*/ *PointF, count As Long, srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit, _ 
    1746         callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status 
     1664        callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Gdiplus.Status 
    17471665 
    17481666        Dim nativeImage As /*Const*/ *GpMetafile 
     
    17521670            nativeImage = 0 
    17531671        End If 
    1754         Dim nativeImageAttr As *GpImageAttributes 
    1755         If VarPtr(imageAttributes) <> 0 Then 
    1756             nativeImageAttr = image.NativeImageAttr 
    1757         Else 
    1758             nativeImageAttr = 0 
    1759         End If 
    17601672 
    17611673        Return SetStatus(GdipEnumerateMetafileSrcRectDestPoints(nativeGraphics, _ 
    1762             nativeImage, destPoints, count, srcRect, srcUnit, callback, callbackData, nativeImageAttr)) 
     1674            nativeImage, destPoints, count, srcRect, srcUnit, callback, callbackData, ImageAttributes.Native(imageAttributes))) 
    17631675    End Function 
    17641676 
    17651677    Function EnumerateMetafile(metafile As /*Const*/ Metafile, _ 
    17661678        destPoints As /*Const*/ *Point, count As Long, srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _ 
    1767         callback As EnumerateMetafileProc) As Status 
     1679        callback As EnumerateMetafileProc) As Gdiplus.Status 
    17681680 
    17691681        Return EnumerateMetafile(metafile, destPoints, count, srcRect, srcUnit, callback, 0, 0) 
     
    17721684    Function EnumerateMetafile(metafile As /*Const*/ Metafile, _ 
    17731685        destPoints As /*Const*/ *Point, count As Long, srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _ 
    1774         callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status 
     1686        callback As EnumerateMetafileProc, callbackData As VoidPtr) As Gdiplus.Status 
    17751687 
    17761688        Return EnumerateMetafile(metafile, destPoints, count, srcRect, srcUnit, callback, callbackData, 0) 
     
    17791691    Function EnumerateMetafile(metafile As /*Const*/ Metafile, _ 
    17801692        destPoints As /*Const*/ *Point, count As Long, srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _ 
    1781         callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status 
     1693        callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Gdiplus.Status 
    17821694 
    17831695        Dim nativeImage As /*Const*/ *GpMetafile 
     
    17871699            nativeImage = 0 
    17881700        End If 
    1789         Dim nativeImageAttr As *GpImageAttributes 
    1790         If VarPtr(imageAttributes) <> 0 Then 
    1791             nativeImageAttr = image.NativeImageAttr 
    1792         Else 
    1793             nativeImageAttr = 0 
    1794         End If 
    17951701 
    17961702        Return SetStatus(GdipEnumerateMetafileSrcRectDestPointsI(nativeGraphics, nativeImage, _ 
    1797             destPoints, count, srcRect, srcUnit, callback, callbackData, nativeImageAttr)) 
    1798     End Function 
    1799  
    1800     Function SetClip(g As /*Const*/ Graphics) As Status 
     1703            destPoints, count, srcRect, srcUnit, callback, callbackData, ImageAttributes.Native(imageAttributes))) 
     1704    End Function 
     1705 
     1706    Function SetClip(g As /*Const*/ Graphics) As Gdiplus.Status 
    18011707        Return SetClip(g, CombineMode.Replace) 
    18021708    End Function 
    18031709 
    1804     Function SetClip(rc As /*Const*/ RectangleF) As Status 
     1710    Function SetClip(rc As /*Const*/ RectangleF) As Gdiplus.Status 
    18051711        Return SetStatus(GdipSetClipRect(nativeGraphics, rc.X, rc.Y, rc.Width, rc.Height, CombineMode.Replace)) 
    18061712    End Function 
    18071713 
    1808     Function SetClip(rc As /*Const*/ Rectangle) As Status 
     1714    Function SetClip(rc As /*Const*/ Rectangle) As Gdiplus.Status 
    18091715        Return SetStatus(GdipSetClipRectI(nativeGraphics, rc.X, rc.Y, rc.Width, rc.Height, CombineMode.Replace)) 
    18101716    End Function 
    18111717 
    1812     Function SetClip(path As /*Const*/ GraphicsPath) As Status 
     1718    Function SetClip(path As /*Const*/ GraphicsPath) As Gdiplus.Status 
    18131719        Return SetStatus(GdipSetClipPath(nativeGraphics, path->nativePath, CombineMode.Replace)) 
    18141720    End Function 
    18151721 
    1816     Function SetClip(region As /*Const*/ Region) As Status 
     1722    Function SetClip(region As /*Const*/ Region) As Gdiplus.Status 
    18171723        Return SetStatus(GdipSetClipRegion(nativeGraphics, region->nativeRegion, CombineMode.Replace)) 
    18181724    End Function 
    18191725 
    1820     Function SetClip(g As /*Const*/ Graphics, combineMode As CombineMode) As Status 
     1726    Function SetClip(g As /*Const*/ Graphics, combineMode As CombineMode) As Gdiplus.Status 
    18211727        Return SetStatus(GdipSetClipGraphics(nativeGraphics, g->nativeGraphics, combineMode)) 
    18221728    End Function 
    18231729 
    1824     Function SetClip(rc As /*Const*/ RectangleF, combineMode As CombineMode) As Status 
     1730    Function SetClip(rc As /*Const*/ RectangleF, combineMode As CombineMode) As Gdiplus.Status 
    18251731        Return SetStatus(GdipSetClipRect(nativeGraphics, rc.X, rc.Y, rc.Width, rc.Height, combineMode)) 
    18261732    End Function 
    18271733 
    1828     Function SetClip(rc As /*Const*/ Rectangle, combineMode As CombineMode) As Status 
     1734    Function SetClip(rc As /*Const*/ Rectangle, combineMode As CombineMode) As Gdiplus.Status 
    18291735        Return SetStatus(GdipSetClipRectI(nativeGraphics, rc.X, rc.Y, rc.Width, rc.Height, combineMode)) 
    18301736    End Function 
    18311737 
    1832     Function SetClip(path As /*Const*/ GraphicsPath, combineMode As CombineMode) As Status 
     1738    Function SetClip(path As /*Const*/ GraphicsPath, combineMode As CombineMode) As Gdiplus.Status 
    18331739        Return SetStatus(GdipSetClipPath(nativeGraphics, path->nativePath, combineMode)) 
    18341740    End Function 
    18351741 
    1836     Function SetClip(region As /*Const*/ Region, combineMode As CombineMode) As Status 
     1742    Function SetClip(region As /*Const*/ Region, combineMode As CombineMode) As Gdiplus.Status 
    18371743        Return SetStatus(GdipSetClipRegion(nativeGraphics, region->nativeRegion, combineMode)) 
    18381744    End Function 
     
    18421748    ' the coordinates in the HRGN. 
    18431749 
    1844     Function SetClip(hrgn As HRGN, combineMode As CombineMode /* = CombineModeReplace*/) As Status 
     1750    Function SetClip(hrgn As HRGN, combineMode As CombineMode /* = CombineModeReplace*/) As Gdiplus.Status 
    18451751        Return SetStatus(GdipSetClipHrgn(nativeGraphics, hrgn, combineMode)) 
    18461752    End Function 
    18471753 
    1848     Function IntersectClip(rc As /*Const*/ RectangleF) As Status 
     1754    Function IntersectClip(rc As /*Const*/ RectangleF) As Gdiplus.Status 
    18491755        Return SetStatus(GdipSetClipRect(nativeGraphics, rc.X, rc.Y, rc.Width, rc.Height, CombineMode.Intersect)) 
    18501756    End Function 
    18511757 
    1852     Function IntersectClip(rc As /*Const*/ Rectangle) As Status 
     1758    Function IntersectClip(rc As /*Const*/ Rectangle) As Gdiplus.Status 
    18531759        Return SetStatus(GdipSetClipRectI(nativeGraphics, rc.X, rc.Y, rc.Width, rc.Height, CombineMode.Intersect)) 
    18541760    End Function 
    18551761 
    1856     Function IntersectClip(region As /*Const*/ Region) As Status 
     1762    Function IntersectClip(region As /*Const*/ Region) As Gdiplus.Status 
    18571763        Return SetStatus(GdipSetClipRegion(nativeGraphics, region->nativeRegion, CombineMode.Intersect)) 
    18581764    End Function 
    18591765 
    1860     Function ExcludeClip(rc As /*Const*/ RectangleF) As Status 
     1766    Function ExcludeClip(rc As /*Const*/ RectangleF) As Gdiplus.Status 
    18611767        Return SetStatus(GdipSetClipRect(nativeGraphics, rc.X, rc.Y, rc.Width, rc.Height, CombineMode.Exclude)) 
    18621768    End Function 
    18631769 
    1864     Function ExcludeClip(rc As /*Const*/ Rectangle) As Status 
     1770    Function ExcludeClip(rc As /*Const*/ Rectangle) As Gdiplus.Status 
    18651771        Return SetStatus(GdipSetClipRectI(nativeGraphics, rc.X, rc.Y, rc.Width, rc.Height, CombineMode.Exclude)) 
    18661772    End Function 
    18671773 
    1868     Function ExcludeClip(region As /*Const*/ Region) As Status 
     1774    Function ExcludeClip(region As /*Const*/ Region) As Gdiplus.Status 
    18691775        Return SetStatus(GdipSetClipRegion(nativeGraphics, region->nativeRegion, CombineMode.Exclude)) 
    18701776    End Function 
    18711777 
    1872     Function ResetClip() As Status 
     1778    Function ResetClip() As Gdiplus.Status 
    18731779        Return SetStatus(GdipResetClip(nativeGraphics)) 
    18741780    End Function 
    18751781 
    1876     Function TranslateClip(dx As Single, dy As Single) As Status 
     1782    Function TranslateClip(dx As Single, dy As Single) As Gdiplus.Status 
    18771783        Return SetStatus(GdipTranslateClip(nativeGraphics, dx, dy)) 
    18781784    End Function 
    18791785 
    1880     Function TranslateClip(dx As Long, dy As Long) As Status 
     1786    Function TranslateClip(dx As Long, dy As Long) As Gdiplus.Status 
    18811787        Return SetStatus(GdipTranslateClipI(nativeGraphics, dx, dy)) 
    18821788    End Function 
    18831789 
    1884     Const Function GetClip(region As Region) As Status 
     1790    Const Function GetClip(region As Region) As Gdiplus.Status 
    18851791        Return SetStatus(GdipGetClip(nativeGraphics, region->nativeRegion)) 
    18861792    End Function 
    18871793 
    1888     Const Function GetClipBounds(rc As RectangleF) As Status 
     1794    Const Function GetClipBounds(rc As RectangleF) As Gdiplus.Status 
    18891795        Return SetStatus(GdipGetClipBounds(nativeGraphics, rc)) 
    18901796    End Function 
    18911797 
    1892     Const Function GetClipBounds(rc As Rectangle) As Status 
     1798    Const Function GetClipBounds(rc As Rectangle) As Gdiplus.Status 
    18931799        Return SetStatus(GdipGetClipBoundsI(nativeGraphics, rc)) 
    18941800    End Function 
    18951801 
    1896     Const Function GetVisibleClipBounds(rc As RectangleF) As Status 
     1802    Const Function GetVisibleClipBounds(rc As RectangleF) As Gdiplus.Status 
    18971803        Return SetStatus(GdipGetVisibleClipBounds(nativeGraphics, rc)) 
    18981804    End Function 
    18991805 
    1900     Const Function GetVisibleClipBounds(rc As Rectangle) As Status 
     1806    Const Function GetVisibleClipBounds(rc As Rectangle) As Gdiplus.Status 
    19011807        Return SetStatus(GdipGetVisibleClipBoundsI(nativeGraphics, rc)) 
    19021808    End Function 
     
    19701876    End Function 
    19711877 
    1972     Function EndContainer(state As GraphicsContainer) As Status 
     1878    Function EndContainer(state As GraphicsContainer) As Gdiplus.Status 
    19731879        Return SetStatus(GdipEndContainer(nativeGraphics, state)) 
    19741880    End Function 
     
    19841890    End Function 
    19851891 
    1986     Const Function GetLastStatus() As Status 
     1892    Const Function GetLastStatus() As Gdiplus.Status 
    19871893        Dim lastStatus = lastResult 
    1988         lastResult = Status.Ok 
     1894        lastResult = Gdiplus.Status.Ok 
    19891895        Return lastStatus 
    19901896    End Function 
     
    19941900'       Debug 
    19951901'   End Sub 
    1996     Sub Operator =(gr As Graphics) 
    1997         Debug 
    1998     End Sub 
    19991902 
    20001903Protected 
    2001     Sub Graphics(graphics As *GpGraphics) 
    2002         lastResult = Status.Ok 
     1904    Sub Graphics(graphics As *Gdiplus.GpGraphics) 
     1905        lastResult = Gdiplus.Status.Ok 
    20031906        SetNativeGraphics(graphics) 
    20041907    End Sub 
    20051908 
    2006     Sub SetNativeGraphics(graphics As *GpGraphics) 
     1909    Sub SetNativeGraphics(graphics As *Gdiplus.GpGraphics) 
    20071910        This.nativeGraphics = graphics 
    20081911    End Sub 
    20091912 
    2010     Const Function SetStatus(status As Status) As Status 
    2011         If status <> Status.Ok Then 
     1913    Const Function SetStatus(status As Gdiplus.Status) As Gdiplus.Status 
     1914        If status <> Gdiplus.Status.Ok Then 
    20121915            lastResult = status 
    20131916        End If 
     
    20151918    End Function 
    20161919 
    2017     Const Function GetNativeGraphics() As *GpGraphics 
     1920    Const Function GetNativeGraphics() As *Gdiplus.GpGraphics 
    20181921        Return This.nativeGraphics 
    20191922    End Function 
     
    20241927 
    20251928Protected 
    2026     nativeGraphics As *GpGraphics 
    2027     lastResult As /*Mutable*/ Status 
     1929    nativeGraphics As *Gdiplus.GpGraphics 
     1930    lastResult As /*Mutable*/ Gdiplus.Status 
    20281931End Class 
    20291932 
     1933End Namespace 'Drawing 
     1934End Namespace 'System 
     1935 
    20301936#endif 
  • branch/egtra-gdiplus/Classes/System/Drawing/Imaging/misc.ab

    r212 r241  
    1 ' Classes/System/Drawing/Imaging/misc.ab 
     1'Classes/System/Drawing/Imaging/misc.ab 
    22 
    33#ifndef __SYSTEM_DRAWING_IMAGING_MISC_AB__ 
     
    66#include <Classes/System/Drawing/Color.ab> 
    77 
    8 TypeDef ARGB = DWord 
    9 TypeDef ARGB64 = QWord 
     8Namespace System 
     9Namespace Drawing 
     10Namespace Imaging 
    1011 
    1112Enum ColorMode 
     
    1314    ARGB64 = 1 
    1415End Enum 
    15  
    16 Const ALPHA_SHIFT = 24 As DWord 
    17 Const RED_SHIFT   = 16 As DWord 
    18 Const GREEN_SHIFT = 8 As DWord 
    19 Const BLUE_SHIFT  = 0 As DWord 
    20 Const ALPHA_MASK  = ((&hff As ARGB) << ALPHA_SHIFT) 
    2116 
    2217' In-memory pixel data formats: 
     
    5449End Enum 
    5550 
    56 Const GetPixelFormatSize(pixfmt) = ((((pixfmt As PixelFormat) >> 8) And &hff) As DWord) 
    57  
    58 Const IsIndexedPixelFormat(pixfmt) = ((((pixfmt As PixelFormat) And PixelFormat.Indexed) <> 0) As BOOL) 
    59  
    60 Const IsAlphaPixelFormat(pixfmt) = ((((pixfmt As PixelFormat) And PixelFormat.Alpha) <> 0) As BOOL) 
    61  
    62 Const IsExtendedPixelFormat(pixfmt) = ((((pixfmt As PixelFormat) And PixelFormat.Extended) <> 0) As BOOL) 
    63  
    64 Const IsCanonicalPixelFormat(pixfmt) = ((((pixfmt As PixelFormat) And PixelFormat.Canonical) <> 0) As BOOL) 
    65  
    6651Enum PaletteFlags 
    6752    PaletteFlagsHasAlpha    = &h0001 
     
    6954    PaletteFlagsHalftone    = &h0004 
    7055End Enum 
    71  
    72 Type Align(8) ColorPalette 
    73     Flags As DWord 
    74     Count As DWord 
    75     Entries[1] As ARGB 
    76 End Type 
    7756 
    7857Enum ColorAdjustType 
     
    8665End Enum 
    8766 
    88 Type ColorMatrix 
    89     m[5][5] As Single 
    90 End Type 
    91  
    9267Type ColorMap 
    9368    OldColor As Color 
     
    129104End Type 
    130105 
    131 Type Align(8) EncoderParameter 
    132     Guid As GUID 
    133     NumberOfValues As DWord 
    134     EncoderType As DWord '元はTypeという名前 
    135     Value As VoidPtr 
    136 End Type 
    137  
    138 Type Align(8) EncoderParameters 
    139     Count As DWord 
    140     Parameter[1] As EncoderParameter 
    141 End Type 
    142  
    143106Type Align(8) PropertyItem 
    144107    id As PROPID 
     
    148111End Type 
    149112 
    150 Const PropertyTagTypeByte        = 1 
    151 Const PropertyTagTypeASCII       = 2 
    152 Const PropertyTagTypeShort       = 3 
    153 Const PropertyTagTypeLong        = 4 
    154 Const PropertyTagTypeRational    = 5 
    155 Const PropertyTagTypeUndefined   = 7 
    156 Const PropertyTagTypeSLONG       = 9 
    157 Const PropertyTagTypeSRational  = 10 
    158  
    159 Const PropertyTagExifIFD             = &h8769 
    160 Const PropertyTagGpsIFD              = &h8825 
    161  
    162 Const PropertyTagNewSubfileType      = &h00FE 
    163 Const PropertyTagSubfileType         = &h00FF 
    164 Const PropertyTagImageWidth          = &h0100 
    165 Const PropertyTagImageHeight         = &h0101 
    166 Const PropertyTagBitsPerSample       = &h0102 
    167 Const PropertyTagCompression         = &h0103 
    168 Const PropertyTagPhotometricInterp   = &h0106 
    169 Const PropertyTagThreshHolding       = &h0107 
    170 Const PropertyTagCellWidth           = &h0108 
    171 Const PropertyTagCellHeight          = &h0109 
    172 Const PropertyTagFillOrder           = &h010A 
    173 Const PropertyTagDocumentName        = &h010D 
    174 Const PropertyTagImageDescription    = &h010E 
    175 Const PropertyTagEquipMake           = &h010F 
    176 Const PropertyTagEquipModel          = &h0110 
    177 Const PropertyTagStripOffsets        = &h0111 
    178 Const PropertyTagOrientation         = &h0112 
    179 Const PropertyTagSamplesPerPixel     = &h0115 
    180 Const PropertyTagRowsPerStrip        = &h0116 
    181 Const PropertyTagStripBytesCount     = &h0117 
    182 Const PropertyTagMinSampleValue      = &h0118 
    183 Const PropertyTagMaxSampleValue      = &h0119 
    184 Const PropertyTagXResolution         = &h011A   ' Image resolution in width direction 
    185 Const PropertyTagYResolution         = &h011B   ' Image resolution in height direction 
    186 Const PropertyTagPlanarConfig        = &h011C   ' Image data arrangement 
    187 Const PropertyTagPageName            = &h011D 
    188 Const PropertyTagXPosition           = &h011E 
    189 Const PropertyTagYPosition           = &h011F 
    190 Const PropertyTagFreeOffset          = &h0120 
    191 Const PropertyTagFreeByteCounts      = &h0121 
    192 Const PropertyTagGrayResponseUnit    = &h0122 
    193 Const PropertyTagGrayResponseCurve   = &h0123 
    194 Const PropertyTagT4Option            = &h0124 
    195 Const PropertyTagT6Option            = &h0125 
    196 Const PropertyTagResolutionUnit      = &h0128   ' Unit of X and Y resolution 
    197 Const PropertyTagPageNumber          = &h0129 
    198 Const PropertyTagTransferFuncition   = &h012D 
    199 Const PropertyTagSoftwareUsed        = &h0131 
    200 Const PropertyTagDateTime            = &h0132 
    201 Const PropertyTagArtist              = &h013B 
    202 Const PropertyTagHostComputer        = &h013C 
    203 Const PropertyTagPredictor           = &h013D 
    204 Const PropertyTagWhitePoint          = &h013E 
    205 Const PropertyTagPrimaryChromaticities = &h013F 
    206 Const PropertyTagColorMap            = &h0140 
    207 Const PropertyTagHalftoneHints       = &h0141 
    208 Const PropertyTagTileWidth           = &h0142 
    209 Const PropertyTagTileLength          = &h0143 
    210 Const PropertyTagTileOffset          = &h0144 
    211 Const PropertyTagTileByteCounts      = &h0145 
    212 Const PropertyTagInkSet              = &h014C 
    213 Const PropertyTagInkNames            = &h014D 
    214 Const PropertyTagNumberOfInks        = &h014E 
    215 Const PropertyTagDotRange            = &h0150 
    216 Const PropertyTagTargetPrinter       = &h0151 
    217 Const PropertyTagExtraSamples        = &h0152 
    218 Const PropertyTagSampleFormat        = &h0153 
    219 Const PropertyTagSMinSampleValue     = &h0154 
    220 Const PropertyTagSMaxSampleValue     = &h0155 
    221 Const PropertyTagTransferRange       = &h0156 
    222  
    223 Const PropertyTagJPEGProc            = &h0200 
    224 Const PropertyTagJPEGInterFormat     = &h0201 
    225 Const PropertyTagJPEGInterLength     = &h0202 
    226 Const PropertyTagJPEGRestartInterval = &h0203 
    227 Const PropertyTagJPEGLosslessPredictors  = &h0205 
    228 Const PropertyTagJPEGPointTransforms     = &h0206 
    229 Const PropertyTagJPEGQTables         = &h0207 
    230 Const PropertyTagJPEGDCTables        = &h0208 
    231 Const PropertyTagJPEGACTables        = &h0209 
    232  
    233 Const PropertyTagYCbCrCoefficients   = &h0211 
    234 Const PropertyTagYCbCrSubsampling    = &h0212 
    235 Const PropertyTagYCbCrPositioning    = &h0213 
    236 Const PropertyTagREFBlackWhite       = &h0214 
    237  
    238 Const PropertyTagICCProfile          = &h8773   ' This TAG is defined by ICC 
    239                                                 ' for embedded ICC in TIFF 
    240 Const PropertyTagGamma               = &h0301 
    241 Const PropertyTagICCProfileDescriptor = &h0302 
    242 Const PropertyTagSRGBRenderingIntent = &h0303 
    243  
    244 Const PropertyTagImageTitle          = &h0320 
    245 Const PropertyTagCopyright           = &h8298 
    246  
    247 ' Extra TAGs (Like Adobe Image Information tags etc.) 
    248  
    249 Const PropertyTagResolutionXUnit           = &h5001 
    250 Const PropertyTagResolutionYUnit           = &h5002 
    251 Const PropertyTagResolutionXLengthUnit     = &h5003 
    252 Const PropertyTagResolutionYLengthUnit     = &h5004 
    253 Const PropertyTagPrintFlags                = &h5005 
    254 Const PropertyTagPrintFlagsVersion         = &h5006 
    255 Const PropertyTagPrintFlagsCrop            = &h5007 
    256 Const PropertyTagPrintFlagsBleedWidth      = &h5008 
    257 Const PropertyTagPrintFlagsBleedWidthScale = &h5009 
    258 Const PropertyTagHalftoneLPI               = &h500A 
    259 Const PropertyTagHalftoneLPIUnit           = &h500B 
    260 Const PropertyTagHalftoneDegree            = &h500C 
    261 Const PropertyTagHalftoneShape             = &h500D 
    262 Const PropertyTagHalftoneMisc              = &h500E 
    263 Const PropertyTagHalftoneScreen            = &h500F 
    264 Const PropertyTagJPEGQuality               = &h5010 
    265 Const PropertyTagGridSize                  = &h5011 
    266 Const PropertyTagThumbnailFormat           = &h5012  ' 1 = JPEG, 0 = RAW RGB 
    267 Const PropertyTagThumbnailWidth            = &h5013 
    268 Const PropertyTagThumbnailHeight           = &h5014 
    269 Const PropertyTagThumbnailColorDepth       = &h5015 
    270 Const PropertyTagThumbnailPlanes           = &h5016 
    271 Const PropertyTagThumbnailRawBytes         = &h5017 
    272 Const PropertyTagThumbnailSize             = &h5018 
    273 Const PropertyTagThumbnailCompressedSize   = &h5019 
    274 Const PropertyTagColorTransferFunction     = &h501A 
    275 Const PropertyTagThumbnailData             = &h501B' RAW thumbnail bits in 
    276                                                    ' JPEG format or RGB format 
    277                                                    ' depends on 
    278                                                    ' PropertyTagThumbnailFormat 
    279  
    280 ' Thumbnail related TAGs 
    281  
    282 Const PropertyTagThumbnailImageWidth       = &h5020  ' Thumbnail width 
    283 Const PropertyTagThumbnailImageHeight      = &h5021  ' Thumbnail height 
    284 Const PropertyTagThumbnailBitsPerSample    = &h5022  ' Number of bits per 
    285                                                      ' component 
    286 Const PropertyTagThumbnailCompression      = &h5023  ' Compression Scheme 
    287 Const PropertyTagThumbnailPhotometricInterp = &h5024 ' Pixel composition 
    288 Const PropertyTagThumbnailImageDescription = &h5025  ' Image Tile 
    289 Const PropertyTagThumbnailEquipMake        = &h5026  ' Manufacturer of Image 
    290                                                      ' Input equipment 
    291 Const PropertyTagThumbnailEquipModel       = &h5027  ' Model of Image input 
    292                                                      ' equipment 
    293 Const PropertyTagThumbnailStripOffsets     = &h5028  ' Image data location 
    294 Const PropertyTagThumbnailOrientation      = &h5029  ' Orientation of image 
    295 Const PropertyTagThumbnailSamplesPerPixel  = &h502A  ' Number of components 
    296 Const PropertyTagThumbnailRowsPerStrip     = &h502B  ' Number of rows per strip 
    297 Const PropertyTagThumbnailStripBytesCount  = &h502C  ' Bytes per compressed 
    298                                                      ' strip 
    299 Const PropertyTagThumbnailResolutionX      = &h502D  ' Resolution in width 
    300                                                      ' direction 
    301 Const PropertyTagThumbnailResolutionY      = &h502E  ' Resolution in height 
    302                                                      ' direction 
    303 Const PropertyTagThumbnailPlanarConfig     = &h502F  ' Image data arrangement 
    304 Const PropertyTagThumbnailResolutionUnit   = &h5030  ' Unit of X and Y 
    305                                                      ' Resolution 
    306 Const PropertyTagThumbnailTransferFunction = &h5031  ' Transfer function 
    307 Const PropertyTagThumbnailSoftwareUsed     = &h5032  ' Software used 
    308 Const PropertyTagThumbnailDateTime         = &h5033  ' File change date and 
    309                                                      ' time 
    310 Const PropertyTagThumbnailArtist           = &h5034  ' Person who created the 
    311                                                      ' image 
    312 Const PropertyTagThumbnailWhitePoint       = &h5035  ' White point chromaticity 
    313 Const PropertyTagThumbnailPrimaryChromaticities = &h5036 
    314                                                      ' Chromaticities of 
    315                                                      ' primaries 
    316 Const PropertyTagThumbnailYCbCrCoefficients = &h5037 ' Color space transforma- 
    317                                                      ' tion coefficients 
    318 Const PropertyTagThumbnailYCbCrSubsampling = &h5038  ' Subsampling ratio of Y 
    319                                                      ' to C 
    320 Const PropertyTagThumbnailYCbCrPositioning = &h5039  ' Y and C position 
    321 Const PropertyTagThumbnailRefBlackWhite    = &h503A  ' Pair of black and white 
    322                                                      ' reference values 
    323 Const PropertyTagThumbnailCopyRight        = &h503B  ' CopyRight holder 
    324  
    325 Const PropertyTagLuminanceTable            = &h5090 
    326 Const PropertyTagChrominanceTable          = &h5091 
    327  
    328 Const PropertyTagFrameDelay                = &h5100 
    329 Const PropertyTagLoopCount                 = &h5101 
    330  
    331 Const PropertyTagPixelUnit         = &h5110  ' Unit specifier for pixel/unit 
    332 Const PropertyTagPixelPerUnitX     = &h5111  ' Pixels per unit in X 
    333 Const PropertyTagPixelPerUnitY     = &h5112  ' Pixels per unit in Y 
    334 Const PropertyTagPaletteHistogram  = &h5113  ' Palette histogram 
    335  
    336 ' EXIF specific tag 
    337  
    338 Const PropertyTagExifExposureTime  = &h829A 
    339 Const PropertyTagExifFNumber       = &h829D 
    340  
    341 Const PropertyTagExifExposureProg  = &h8822 
    342 Const PropertyTagExifSpectralSense = &h8824 
    343 Const PropertyTagExifISOSpeed      = &h8827 
    344 Const PropertyTagExifOECF          = &h8828 
    345  
    346 Const PropertyTagExifVer            = &h9000 
    347 Const PropertyTagExifDTOrig         = &h9003 ' Date & time of original 
    348 Const PropertyTagExifDTDigitized    = &h9004 ' Date & time of digital data generation 
    349  
    350 Const PropertyTagExifCompConfig     = &h9101 
    351 Const PropertyTagExifCompBPP        = &h9102 
    352  
    353 Const PropertyTagExifShutterSpeed   = &h9201 
    354 Const PropertyTagExifAperture       = &h9202 
    355 Const PropertyTagExifBrightness     = &h9203 
    356 Const PropertyTagExifExposureBias   = &h9204 
    357 Const PropertyTagExifMaxAperture    = &h9205 
    358 Const PropertyTagExifSubjectDist    = &h9206 
    359 Const PropertyTagExifMeteringMode   = &h9207 
    360 Const PropertyTagExifLightSource    = &h9208 
    361 Const PropertyTagExifFlash          = &h9209 
    362 Const PropertyTagExifFocalLength    = &h920A 
    363 Const PropertyTagExifMakerNote      = &h927C 
    364 Const PropertyTagExifUserComment    = &h9286 
    365 Const PropertyTagExifDTSubsec       = &h9290  ' Date & Time subseconds 
    366 Const PropertyTagExifDTOrigSS       = &h9291  ' Date & Time original subseconds 
    367 Const PropertyTagExifDTDigSS        = &h9292  ' Date & TIme digitized subseconds 
    368  
    369 Const PropertyTagExifFPXVer         = &hA000 
    370 Const PropertyTagExifColorSpace     = &hA001 
    371 Const PropertyTagExifPixXDim        = &hA002 
    372 Const PropertyTagExifPixYDim        = &hA003 
    373 Const PropertyTagExifRelatedWav     = &hA004  ' related sound file 
    374 Const PropertyTagExifInterop        = &hA005 
    375 Const PropertyTagExifFlashEnergy    = &hA20B 
    376 Const PropertyTagExifSpatialFR      = &hA20C  ' Spatial Frequency Response 
    377 Const PropertyTagExifFocalXRes      = &hA20E  ' Focal Plane X Resolution 
    378 Const PropertyTagExifFocalYRes      = &hA20F  ' Focal Plane Y Resolution 
    379 Const PropertyTagExifFocalResUnit   = &hA210  ' Focal Plane Resolution Unit 
    380 Const PropertyTagExifSubjectLoc     = &hA214 
    381 Const PropertyTagExifExposureIndex  = &hA215 
    382 Const PropertyTagExifSensingMethod  = &hA217 
    383 Const PropertyTagExifFileSource     = &hA300 
    384 Const PropertyTagExifSceneType      = &hA301 
    385 Const PropertyTagExifCfaPattern     = &hA302 
    386  
    387 Const PropertyTagGpsVer             = &h0000 
    388 Const PropertyTagGpsLatitudeRef     = &h0001 
    389 Const PropertyTagGpsLatitude        = &h0002 
    390 Const PropertyTagGpsLongitudeRef    = &h0003 
    391 Const PropertyTagGpsLongitude       = &h0004 
    392 Const PropertyTagGpsAltitudeRef     = &h0005 
    393 Const PropertyTagGpsAltitude        = &h0006 
    394 Const PropertyTagGpsGpsTime         = &h0007 
    395 Const PropertyTagGpsGpsSatellites   = &h0008 
    396 Const PropertyTagGpsGpsStatus       = &h0009 
    397 Const PropertyTagGpsGpsMeasureMode  = &h00A 
    398 Const PropertyTagGpsGpsDop          = &h000B  ' Measurement precision 
    399 Const PropertyTagGpsSpeedRef        = &h000C 
    400 Const PropertyTagGpsSpeed           = &h000D 
    401 Const PropertyTagGpsTrackRef        = &h000E 
    402 Const PropertyTagGpsTrack           = &h000F 
    403 Const PropertyTagGpsImgDirRef       = &h0010 
    404 Const PropertyTagGpsImgDir          = &h0011 
    405 Const PropertyTagGpsMapDatum        = &h0012 
    406 Const PropertyTagGpsDestLatRef      = &h0013 
    407 Const PropertyTagGpsDestLat         = &h0014 
    408 Const PropertyTagGpsDestLongRef     = &h0015 
    409 Const PropertyTagGpsDestLong        = &h0016 
    410 Const PropertyTagGpsDestBearRef     = &h0017 
    411 Const PropertyTagGpsDestBear        = &h0018 
    412 Const PropertyTagGpsDestDistRef     = &h0019 
    413 Const PropertyTagGpsDestDist        = &h001A 
    414  
    415 Type ImageCodecInfo 
    416     Clsid As CLSID 
    417     FormatID As GUID 
    418     CodecName As PCWSTR 
    419     DllName As PCWSTR 
    420     FormatDescription As PCWSTR 
    421     FilenameExtension As PCWSTR 
    422     MimeType As PCWSTR 
    423     Flags As DWord 
    424     Version As DWord 
    425     SigCount As DWord 
    426     SigSize As DWord 
    427     SigPattern As *Byte 
    428     SigMask As DWord 
    429 End Type 
    430  
    431113Enum ColorChannelFlag 
    432114    ColorChannelC = 0 
     
    437119End Enum 
    438120 
     121Const GDIP_EMFPLUS_RECORD_BASE        = &h00004000 
     122Const GDIP_WMF_RECORD_BASE            = &h00010000 
     123Const GDIP_WMF_RECORD_TO_EMFPLUS(n)   = ((n) Or GDIP_WMF_RECORD_BASE) ' As EmfPlusRecordType 
     124Const GDIP_EMFPLUS_RECORD_TO_WMF(n)   = ((n) And (Not GDIP_WMF_RECORD_BASE)) 
     125'Const GDIP_IS_WMF_RECORDTYPE(n)       (((n) And GDIP_WMF_RECORD_BASE) <> 0) 
     126Function GDIP_IS_WMF_RECORDTYPE(n As DWord) As BOOL 
     127    If (n And GDIP_WMF_RECORD_BASE) <> 0 Then 
     128        GDIP_IS_WMF_RECORDTYPE = TRUE 
     129    Else 
     130        GDIP_IS_WMF_RECORDTYPE = FALSE 
     131    End If 
     132End Function 
     133 
     134Enum EmfPlusRecordType 
     135/* 
     136    WmfRecordTypeSetBkColor              = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETBKCOLOR) 
     137    WmfRecordTypeSetBkMode               = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETBKMODE) 
     138    WmfRecordTypeSetMapMode              = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETMAPMODE) 
     139    WmfRecordTypeSetROP2                 = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETROP2) 
     140    WmfRecordTypeSetRelAbs               = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETRELABS) 
     141    WmfRecordTypeSetPolyFillMode         = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETPOLYFILLMODE) 
     142    WmfRecordTypeSetStretchBltMode       = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETSTRETCHBLTMODE) 
     143    WmfRecordTypeSetTextCharExtra        = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETTEXTCHAREXTRA) 
     144    WmfRecordTypeSetTextColor            = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETTEXTCOLOR) 
     145    WmfRecordTypeSetTextJustification    = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETTEXTJUSTIFICATION) 
     146    WmfRecordTypeSetWindowOrg            = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETWINDOWORG) 
     147    WmfRecordTypeSetWindowExt            = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETWINDOWEXT) 
     148    WmfRecordTypeSetViewportOrg          = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETVIEWPORTORG) 
     149    WmfRecordTypeSetViewportExt          = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETVIEWPORTEXT) 
     150    WmfRecordTypeOffsetWindowOrg         = GDIP_WMF_RECORD_TO_EMFPLUS(META_OFFSETWINDOWORG) 
     151    WmfRecordTypeScaleWindowExt          = GDIP_WMF_RECORD_TO_EMFPLUS(META_SCALEWINDOWEXT) 
     152    WmfRecordTypeOffsetViewportOrg       = GDIP_WMF_RECORD_TO_EMFPLUS(META_OFFSETVIEWPORTORG) 
     153    WmfRecordTypeScaleViewportExt        = GDIP_WMF_RECORD_TO_EMFPLUS(META_SCALEVIEWPORTEXT) 
     154    WmfRecordTypeLineTo                  = GDIP_WMF_RECORD_TO_EMFPLUS(META_LINETO) 
     155    WmfRecordTypeMoveTo                  = GDIP_WMF_RECORD_TO_EMFPLUS(META_MOVETO) 
     156    WmfRecordTypeExcludeClipRect         = GDIP_WMF_RECORD_TO_EMFPLUS(META_EXCLUDECLIPRECT) 
     157    WmfRecordTypeIntersectClipRect       = GDIP_WMF_RECORD_TO_EMFPLUS(META_INTERSECTCLIPRECT) 
     158    WmfRecordTypeArc                     = GDIP_WMF_RECORD_TO_EMFPLUS(META_ARC) 
     159    WmfRecordTypeEllipse                 = GDIP_WMF_RECORD_TO_EMFPLUS(META_ELLIPSE) 
     160    WmfRecordTypeFloodFill               = GDIP_WMF_RECORD_TO_EMFPLUS(META_FLOODFILL) 
     161    WmfRecordTypePie                     = GDIP_WMF_RECORD_TO_EMFPLUS(META_PIE) 
     162    WmfRecordTypeRectangle               = GDIP_WMF_RECORD_TO_EMFPLUS(META_RECTANGLE) 
     163    WmfRecordTypeRoundRect               = GDIP_WMF_RECORD_TO_EMFPLUS(META_ROUNDRECT) 
     164    WmfRecordTypePatBlt                  = GDIP_WMF_RECORD_TO_EMFPLUS(META_PATBLT) 
     165    WmfRecordTypeSaveDC                  = GDIP_WMF_RECORD_TO_EMFPLUS(META_SAVEDC) 
     166    WmfRecordTypeSetPixel                = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETPIXEL) 
     167    WmfRecordTypeOffsetClipRgn           = GDIP_WMF_RECORD_TO_EMFPLUS(META_OFFSETCLIPRGN) 
     168    WmfRecordTypeTextOut                 = GDIP_WMF_RECORD_TO_EMFPLUS(META_TEXTOUT) 
     169    WmfRecordTypeBitBlt                  = GDIP_WMF_RECORD_TO_EMFPLUS(META_BITBLT) 
     170    WmfRecordTypeStretchBlt              = GDIP_WMF_RECORD_TO_EMFPLUS(META_STRETCHBLT) 
     171    WmfRecordTypePolygon                 = GDIP_WMF_RECORD_TO_EMFPLUS(META_POLYGON) 
     172    WmfRecordTypePolyline                = GDIP_WMF_RECORD_TO_EMFPLUS(META_POLYLINE) 
     173    WmfRecordTypeEscape                  = GDIP_WMF_RECORD_TO_EMFPLUS(META_ESCAPE) 
     174    WmfRecordTypeRestoreDC               = GDIP_WMF_RECORD_TO_EMFPLUS(META_RESTOREDC) 
     175    WmfRecordTypeFillRegion              = GDIP_WMF_RECORD_TO_EMFPLUS(META_FILLREGION) 
     176    WmfRecordTypeFrameRegion             = GDIP_WMF_RECORD_TO_EMFPLUS(META_FRAMEREGION) 
     177    WmfRecordTypeInvertRegion            = GDIP_WMF_RECORD_TO_EMFPLUS(META_INVERTREGION) 
     178    WmfRecordTypePaintRegion             = GDIP_WMF_RECORD_TO_EMFPLUS(META_PAINTREGION) 
     179    WmfRecordTypeSelectClipRegion        = GDIP_WMF_RECORD_TO_EMFPLUS(META_SELECTCLIPREGION) 
     180    WmfRecordTypeSelectObject            = GDIP_WMF_RECORD_TO_EMFPLUS(META_SELECTOBJECT) 
     181    WmfRecordTypeSetTextAlign            = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETTEXTALIGN) 
     182    WmfRecordTypeDrawText                = GDIP_WMF_RECORD_TO_EMFPLUS(&h062F)   ' META_DRAWTEXT 
     183    WmfRecordTypeChord                   = GDIP_WMF_RECORD_TO_EMFPLUS(META_CHORD) 
     184    WmfRecordTypeSetMapperFlags          = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETMAPPERFLAGS) 
     185    WmfRecordTypeExtTextOut              = GDIP_WMF_RECORD_TO_EMFPLUS(META_EXTTEXTOUT) 
     186    WmfRecordTypeSetDIBToDev             = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETDIBTODEV) 
     187    WmfRecordTypeSelectPalette           = GDIP_WMF_RECORD_TO_EMFPLUS(META_SELECTPALETTE) 
     188    WmfRecordTypeRealizePalette          = GDIP_WMF_RECORD_TO_EMFPLUS(META_REALIZEPALETTE) 
     189    WmfRecordTypeAnimatePalette          = GDIP_WMF_RECORD_TO_EMFPLUS(META_ANIMATEPALETTE) 
     190    WmfRecordTypeSetPalEntries           = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETPALENTRIES) 
     191    WmfRecordTypePolyPolygon             = GDIP_WMF_RECORD_TO_EMFPLUS(META_POLYPOLYGON) 
     192    WmfRecordTypeResizePalette           = GDIP_WMF_RECORD_TO_EMFPLUS(META_RESIZEPALETTE) 
     193    WmfRecordTypeDIBBitBlt               = GDIP_WMF_RECORD_TO_EMFPLUS(META_DIBBITBLT) 
     194    WmfRecordTypeDIBStretchBlt           = GDIP_WMF_RECORD_TO_EMFPLUS(META_DIBSTRETCHBLT) 
     195    WmfRecordTypeDIBCreatePatternBrush   = GDIP_WMF_RECORD_TO_EMFPLUS(META_DIBCREATEPATTERNBRUSH) 
     196    WmfRecordTypeStretchDIB              = GDIP_WMF_RECORD_TO_EMFPLUS(META_STRETCHDIB) 
     197    WmfRecordTypeExtFloodFill            = GDIP_WMF_RECORD_TO_EMFPLUS(META_EXTFLOODFILL) 
     198    WmfRecordTypeSetLayout               = GDIP_WMF_RECORD_TO_EMFPLUS(&h0149)   ' META_SETLAYOUT 
     199    WmfRecordTypeResetDC                 = GDIP_WMF_RECORD_TO_EMFPLUS(&h014C)   ' META_RESETDC 
     200    WmfRecordTypeStartDoc                = GDIP_WMF_RECORD_TO_EMFPLUS(&h014D)   ' META_STARTDOC 
     201    WmfRecordTypeStartPage               = GDIP_WMF_RECORD_TO_EMFPLUS(&h004F)   ' META_STARTPAGE 
     202    WmfRecordTypeEndPage                 = GDIP_WMF_RECORD_TO_EMFPLUS(&h0050)   ' META_ENDPAGE 
     203    WmfRecordTypeAbortDoc                = GDIP_WMF_RECORD_TO_EMFPLUS(&h0052)   ' META_ABORTDOC 
     204    WmfRecordTypeEndDoc                  = GDIP_WMF_RECORD_TO_EMFPLUS(&h005E)   ' META_ENDDOC 
     205    WmfRecordTypeDeleteObject            = GDIP_WMF_RECORD_TO_EMFPLUS(META_DELETEOBJECT) 
     206    WmfRecordTypeCreatePalette           = GDIP_WMF_RECORD_TO_EMFPLUS(META_CREATEPALETTE) 
     207    WmfRecordTypeCreateBrush             = GDIP_WMF_RECORD_TO_EMFPLUS(&h00F8)   ' META_CREATEBRUSH 
     208    WmfRecordTypeCreatePatternBrush      = GDIP_WMF_RECORD_TO_EMFPLUS(META_CREATEPATTERNBRUSH) 
     209    WmfRecordTypeCreatePenIndirect       = GDIP_WMF_RECORD_TO_EMFPLUS(META_CREATEPENINDIRECT) 
     210    WmfRecordTypeCreateFontIndirect      = GDIP_WMF_RECORD_TO_EMFPLUS(META_CREATEFONTINDIRECT) 
     211    WmfRecordTypeCreateBrushIndirect     = GDIP_WMF_RECORD_TO_EMFPLUS(META_CREATEBRUSHINDIRECT) 
     212    WmfRecordTypeCreateBitmapIndirect    = GDIP_WMF_RECORD_TO_EMFPLUS(&h02FD)   ' META_CREATEBITMAPINDIRECT 
     213    WmfRecordTypeCreateBitmap            = GDIP_WMF_RECORD_TO_EMFPLUS(&h06FE)   ' META_CREATEBITMAP 
     214    WmfRecordTypeCreateRegion            = GDIP_WMF_RECORD_TO_EMFPLUS(META_CREATEREGION) 
     215 
     216    EmfRecordTypeHeader                  = EMR_HEADER 
     217    EmfRecordTypePolyBezier              = EMR_POLYBEZIER 
     218    EmfRecordTypePolygon                 = EMR_POLYGON 
     219    EmfRecordTypePolyline                = EMR_POLYLINE 
     220    EmfRecordTypePolyBezierTo            = EMR_POLYBEZIERTO 
     221    EmfRecordTypePolyLineTo              = EMR_POLYLINETO 
     222    EmfRecordTypePolyPolyline            = EMR_POLYPOLYLINE 
     223    EmfRecordTypePolyPolygon             = EMR_POLYPOLYGON 
     224    EmfRecordTypeSetWindowExtEx          = EMR_SETWINDOWEXTEX 
     225    EmfRecordTypeSetWindowOrgEx          = EMR_SETWINDOWORGEX 
     226    EmfRecordTypeSetViewportExtEx        = EMR_SETVIEWPORTEXTEX 
     227    EmfRecordTypeSetViewportOrgEx        = EMR_SETVIEWPORTORGEX 
     228    EmfRecordTypeSetBrushOrgEx           = EMR_SETBRUSHORGEX 
     229    EmfRecordTypeEOF                     = EMR_EOF 
     230    EmfRecordTypeSetPixelV               = EMR_SETPIXELV 
     231    EmfRecordTypeSetMapperFlags          = EMR_SETMAPPERFLAGS 
     232    EmfRecordTypeSetMapMode              = EMR_SETMAPMODE 
     233    EmfRecordTypeSetBkMode               = EMR_SETBKMODE 
     234    EmfRecordTypeSetPolyFillMode         = EMR_SETPOLYFILLMODE 
     235    EmfRecordTypeSetROP2                 = EMR_SETROP2 
     236    EmfRecordTypeSetStretchBltMode       = EMR_SETSTRETCHBLTMODE 
     237    EmfRecordTypeSetTextAlign            = EMR_SETTEXTALIGN 
     238    EmfRecordTypeSetColorAdjustment      = EMR_SETCOLORADJUSTMENT 
     239    EmfRecordTypeSetTextColor            = EMR_SETTEXTCOLOR 
     240    EmfRecordTypeSetBkColor              = EMR_SETBKCOLOR 
     241    EmfRecordTypeOffsetClipRgn           = EMR_OFFSETCLIPRGN 
     242    EmfRecordTypeMoveToEx                = EMR_MOVETOEX 
     243    EmfRecordTypeSetMetaRgn              = EMR_SETMETARGN 
     244    EmfRecordTypeExcludeClipRect         = EMR_EXCLUDECLIPRECT 
     245    EmfRecordTypeIntersectClipRect       = EMR_INTERSECTCLIPRECT 
     246    EmfRecordTypeScaleViewportExtEx      = EMR_SCALEVIEWPORTEXTEX 
     247    EmfRecordTypeScaleWindowExtEx        = EMR_SCALEWINDOWEXTEX 
     248    EmfRecordTypeSaveDC                  = EMR_SAVEDC 
     249    EmfRecordTypeRestoreDC               = EMR_RESTOREDC 
     250    EmfRecordTypeSetWorldTransform       = EMR_SETWORLDTRANSFORM 
     251    EmfRecordTypeModifyWorldTransform    = EMR_MODIFYWORLDTRANSFORM 
     252    EmfRecordTypeSelectObject            = EMR_SELECTOBJECT 
     253    EmfRecordTypeCreatePen               = EMR_CREATEPEN 
     254    EmfRecordTypeCreateBrushIndirect     = EMR_CREATEBRUSHINDIRECT 
     255    EmfRecordTypeDeleteObject            = EMR_DELETEOBJECT 
     256    EmfRecordTypeAngleArc                = EMR_ANGLEARC 
     257    EmfRecordTypeEllipse                 = EMR_ELLIPSE 
     258    EmfRecordTypeRectangle               = EMR_RECTANGLE 
     259    EmfRecordTypeRoundRect               = EMR_ROUNDRECT 
     260    EmfRecordTypeArc                     = EMR_ARC 
     261    EmfRecordTypeChord                   = EMR_CHORD 
     262    EmfRecordTypePie                     = EMR_PIE 
     263    EmfRecordTypeSelectPalette           = EMR_SELECTPALETTE 
     264    EmfRecordTypeCreatePalette           = EMR_CREATEPALETTE 
     265    EmfRecordTypeSetPaletteEntries       = EMR_SETPALETTEENTRIES 
     266    EmfRecordTypeResizePalette           = EMR_RESIZEPALETTE 
     267    EmfRecordTypeRealizePalette          = EMR_REALIZEPALETTE 
     268    EmfRecordTypeExtFloodFill            = EMR_EXTFLOODFILL 
     269    EmfRecordTypeLineTo                  = EMR_LINETO 
     270    EmfRecordTypeArcTo                   = EMR_ARCTO 
     271    EmfRecordTypePolyDraw                = EMR_POLYDRAW 
     272    EmfRecordTypeSetArcDirection         = EMR_SETARCDIRECTION 
     273    EmfRecordTypeSetMiterLimit           = EMR_SETMITERLIMIT 
     274    EmfRecordTypeBeginPath               = EMR_BEGINPATH 
     275    EmfRecordTypeEndPath                 = EMR_ENDPATH 
     276    EmfRecordTypeCloseFigure             = EMR_CLOSEFIGURE 
     277    EmfRecordTypeFillPath                = EMR_FILLPATH 
     278    EmfRecordTypeStrokeAndFillPath       = EMR_STROKEANDFILLPATH 
     279    EmfRecordTypeStrokePath              = EMR_STROKEPATH 
     280    EmfRecordTypeFlattenPath             = EMR_FLATTENPATH 
     281    EmfRecordTypeWidenPath               = EMR_WIDENPATH 
     282    EmfRecordTypeSelectClipPath          = EMR_SELECTCLIPPATH 
     283    EmfRecordTypeAbortPath               = EMR_ABORTPATH 
     284    EmfRecordTypeReserved_069            = 69   ' Not Used 
     285    EmfRecordTypeGdiComment              = EMR_GDICOMMENT 
     286    EmfRecordTypeFillRgn                 = EMR_FILLRGN 
     287    EmfRecordTypeFrameRgn                = EMR_FRAMERGN 
     288    EmfRecordTypeInvertRgn               = EMR_INVERTRGN 
     289    EmfRecordTypePaintRgn                = EMR_PAINTRGN 
     290    EmfRecordTypeExtSelectClipRgn        = EMR_EXTSELECTCLIPRGN 
     291    EmfRecordTypeBitBlt                  = EMR_BITBLT 
     292    EmfRecordTypeStretchBlt              = EMR_STRETCHBLT 
     293    EmfRecordTypeMaskBlt                 = EMR_MASKBLT 
     294    EmfRecordTypePlgBlt                  = EMR_PLGBLT 
     295    EmfRecordTypeSetDIBitsToDevice       = EMR_SETDIBITSTODEVICE 
     296    EmfRecordTypeStretchDIBits           = EMR_STRETCHDIBITS 
     297    EmfRecordTypeExtCreateFontIndirect   = EMR_EXTCREATEFONTINDIRECTW 
     298    EmfRecordTypeExtTextOutA             = EMR_EXTTEXTOUTA 
     299    EmfRecordTypeExtTextOutW             = EMR_EXTTEXTOUTW 
     300    EmfRecordTypePolyBezier16            = EMR_POLYBEZIER16 
     301    EmfRecordTypePolygon16               = EMR_POLYGON16 
     302    EmfRecordTypePolyline16              = EMR_POLYLINE16 
     303    EmfRecordTypePolyBezierTo16          = EMR_POLYBEZIERTO16 
     304    EmfRecordTypePolylineTo16            = EMR_POLYLINETO16 
     305    EmfRecordTypePolyPolyline16          = EMR_POLYPOLYLINE16 
     306    EmfRecordTypePolyPolygon16           = EMR_POLYPOLYGON16 
     307    EmfRecordTypePolyDraw16              = EMR_POLYDRAW16 
     308    EmfRecordTypeCreateMonoBrush         = EMR_CREATEMONOBRUSH 
     309    EmfRecordTypeCreateDIBPatternBrushPt = EMR_CREATEDIBPATTERNBRUSHPT 
     310    EmfRecordTypeExtCreatePen            = EMR_EXTCREATEPEN 
     311    EmfRecordTypePolyTextOutA            = EMR_POLYTEXTOUTA 
     312    EmfRecordTypePolyTextOutW            = EMR_POLYTEXTOUTW 
     313    EmfRecordTypeSetICMMode              = 98   ' EMR_SETICMMODE 
     314    EmfRecordTypeCreateColorSpace        = 99   ' EMR_CREATECOLORSPACE 
     315    EmfRecordTypeSetColorSpace           = 100  ' EMR_SETCOLORSPACE 
     316    EmfRecordTypeDeleteColorSpace        = 101  ' EMR_DELETECOLORSPACE 
     317    EmfRecordTypeGLSRecord               = 102  ' EMR_GLSRECORD 
     318    EmfRecordTypeGLSBoundedRecord        = 103  ' EMR_GLSBOUNDEDRECORD 
     319    EmfRecordTypePixelFormat             = 104  ' EMR_PIXELFORMAT 
     320    EmfRecordTypeDrawEscape              = 105  ' EMR_RESERVED_105 
     321    EmfRecordTypeExtEscape               = 106  ' EMR_RESERVED_106 
     322    EmfRecordTypeStartDoc                = 107  ' EMR_RESERVED_107 
     323    EmfRecordTypeSmallTextOut            = 108  ' EMR_RESERVED_108 
     324    EmfRecordTypeForceUFIMapping         = 109  ' EMR_RESERVED_109 
     325    EmfRecordTypeNamedEscape             = 110  ' EMR_RESERVED_110 
     326    EmfRecordTypeColorCorrectPalette     = 111  ' EMR_COLORCORRECTPALETTE 
     327    EmfRecordTypeSetICMProfileA          = 112  ' EMR_SETICMPROFILEA 
     328    EmfRecordTypeSetICMProfileW          = 113  ' EMR_SETICMPROFILEW 
     329    EmfRecordTypeAlphaBlend              = 114  ' EMR_ALPHABLEND 
     330    EmfRecordTypeSetLayout               = 115  ' EMR_SETLAYOUT 
     331    EmfRecordTypeTransparentBlt          = 116  ' EMR_TRANSPARENTBLT 
     332    EmfRecordTypeReserved_117            = 117  ' Not Used 
     333    EmfRecordTypeGradientFill            = 118  ' EMR_GRADIENTFILL 
     334    EmfRecordTypeSetLinkedUFIs           = 119  ' EMR_RESERVED_119 
     335    EmfRecordTypeSetTextJustification    = 120  ' EMR_RESERVED_120 
     336    EmfRecordTypeColorMatchToTargetW     = 121  ' EMR_COLORMATCHTOTARGETW 
     337    EmfRecordTypeCreateColorSpaceW       = 122  ' EMR_CREATECOLORSPACEW 
     338    EmfRecordTypeMax                     = 122 
     339    EmfRecordTypeMin                     = 1 
     340 
     341    EmfPlusRecordTypeInvalid = GDIP_EMFPLUS_RECORD_BASE 
     342    EmfPlusRecordTypeHeader 
     343    EmfPlusRecordTypeEndOfFile 
     344 
     345    EmfPlusRecordTypeComment 
     346 
     347    EmfPlusRecordTypeGetDC 
     348 
     349    EmfPlusRecordTypeMultiFormatStart 
     350    EmfPlusRecordTypeMultiFormatSection 
     351    EmfPlusRecordTypeMultiFormatEnd 
     352 
     353    EmfPlusRecordTypeObject 
     354 
     355    EmfPlusRecordTypeClear 
     356    EmfPlusRecordTypeFillRects 
     357    EmfPlusRecordTypeDrawRects 
     358    EmfPlusRecordTypeFillPolygon 
     359    EmfPlusRecordTypeDrawLines 
     360    EmfPlusRecordTypeFillEllipse 
     361    EmfPlusRecordTypeDrawEllipse 
     362    EmfPlusRecordTypeFillPie 
     363    EmfPlusRecordTypeDrawPie 
     364    EmfPlusRecordTypeDrawArc 
     365    EmfPlusRecordTypeFillRegion 
     366    EmfPlusRecordTypeFillPath 
     367    EmfPlusRecordTypeDrawPath 
     368    EmfPlusRecordTypeFillClosedCurve 
     369    EmfPlusRecordTypeDrawClosedCurve 
     370    EmfPlusRecordTypeDrawCurve 
     371    EmfPlusRecordTypeDrawBeziers 
     372    EmfPlusRecordTypeDrawImage 
     373    EmfPlusRecordTypeDrawImagePoints 
     374    EmfPlusRecordTypeDrawString 
     375 
     376    EmfPlusRecordTypeSetRenderingOrigin 
     377    EmfPlusRecordTypeSetAntiAliasMode 
     378    EmfPlusRecordTypeSetTextRenderingHint 
     379    EmfPlusRecordTypeSetTextContrast 
     380    EmfPlusRecordTypeSetInterpolationMode 
     381    EmfPlusRecordTypeSetPixelOffsetMode 
     382    EmfPlusRecordTypeSetCompositingMode 
     383    EmfPlusRecordTypeSetCompositingQuality 
     384    EmfPlusRecordTypeSave 
     385    EmfPlusRecordTypeRestore 
     386    EmfPlusRecordTypeBeginContainer 
     387    EmfPlusRecordTypeBeginContainerNoParams 
     388    EmfPlusRecordTypeEndContainer 
     389    EmfPlusRecordTypeSetWorldTransform 
     390    EmfPlusRecordTypeResetWorldTransform 
     391    EmfPlusRecordTypeMultiplyWorldTransform 
     392    EmfPlusRecordTypeTranslateWorldTransform 
     393    EmfPlusRecordTypeScaleWorldTransform 
     394    EmfPlusRecordTypeRotateWorldTransform 
     395    EmfPlusRecordTypeSetPageTransform 
     396    EmfPlusRecordTypeResetClip 
     397    EmfPlusRecordTypeSetClipRect 
     398    EmfPlusRecordTypeSetClipPath 
     399    EmfPlusRecordTypeSetClipRegion 
     400    EmfPlusRecordTypeOffsetClip 
     401 
     402    EmfPlusRecordTypeDrawDriverString 
     403 
     404    EmfPlusRecordTotal 
     405 
     406    EmfPlusRecordTypeMax = EmfPlusRecordTotal-1 
     407    EmfPlusRecordTypeMin = EmfPlusRecordTypeHeader */ 
     408End Enum 
     409 
     410End Namespace 'System 
     411End Namespace 'Drawing 
     412End Namespace 'Imaging 
     413 
     414 
    439415#endif '__SYSTEM_DRAWING_IMAGING_MISC_AB__ 
  • branch/egtra-gdiplus/Classes/System/Drawing/Point.ab

    r223 r241  
    77#require <Classes/System/Drawing/Size.ab> 
    88#require <Classes/System/Drawing/SizeF.ab> 
     9 
     10Namespace System 
     11Namespace Drawing 
    912 
    1013Class Point 
     
    136139End Class 
    137140 
     141End Namespace 'Drawing 
     142End Namespace 'System 
     143 
    138144#endif '__SYSTEM_DRAWING_POINT_AB__ 
  • branch/egtra-gdiplus/Classes/System/Drawing/PointF.ab

    r212 r241  
    44#define __SYSTEM_DRAWING_POINTF_AB__ 
    55 
    6 #include <Classes/System/Drawing/Size.ab> 
    7 #include <Classes/System/Drawing/SizeF.ab> 
     6#require <Classes/System/Drawing/Size.ab> 
     7#require <Classes/System/Drawing/SizeF.ab> 
     8 
     9Namespace System 
     10Namespace Drawing 
    811 
    912Class PointF 
     
    4851        Return x = 0 And y = 0 
    4952    End Function 
    50 /* 
    51     Sub Operator = (ByRef pt As PointF) 
    52         x = pt.x 
    53         y = pt.y 
    54     End Sub 
    55 */ 
     53 
    5654    Function Operator + (pt As PointF) As PointF 
    5755        Return Add(This, pt) 
     
    129127End Class 
    130128 
     129End Namespace 'Drawing 
     130End Namespace 'System 
     131 
    131132#endif '__SYSTEM_DRAWING_POINTF_AB__ 
  • branch/egtra-gdiplus/Classes/System/Drawing/Rectangle.ab

    r223 r241  
    88#require <Classes/System/Drawing/Point.ab> 
    99#require <Classes/System/Drawing/Size.ab> 
     10 
     11Namespace System 
     12Namespace Drawing 
    1013 
    1114Class Rectangle 
     
    243246End Class 
    244247 
     248End Namespace 'Drawing 
     249End Namespace 'System 
     250 
    245251#endif '__SYSTEM_DRAWING_RECTFANGLE_AB__ 
  • branch/egtra-gdiplus/Classes/System/Drawing/RectangleF.ab

    r212 r241  
    44#define __SYSTEM_DRAWING_RECTANGLEF_AB__ 
    55 
    6 #include <Classes/System/Math.ab> 
    7 #include <Classes/System/Drawing/PointF.ab> 
    8 #include <Classes/System/Drawing/SizeF.ab> 
     6#require <Classes/System/Math.ab> 
     7#require <Classes/System/Drawing/PointF.ab> 
     8#require <Classes/System/Drawing/SizeF.ab> 
     9 
     10Namespace System 
     11Namespace Drawing 
    912 
    1013Class RectangleF 
     
    112115        End If 
    113116    End Function 
    114 /* 
    115     Function Operator =(ByRef rc As RectangleF) 
    116         With rc 
    117             x = .x 
    118             y = .y 
    119             width = .width 
    120             height = .height 
    121         End With 
    122     End Function 
    123 */ 
     117 
    124118    Function Operator ==(rc As RectangleF) 
    125119        Return Equals(rc) 
     
    185179        This = RectangleF.Intersect(This, rect) 
    186180    End Sub 
    187      
     181 
    188182    Static Function Intersect(a As RectangleF, b As RectangleF) As RectangleF 
    189183        Dim right As Single, bottom As Single, left As Single, top As Single 
     
    231225End Class 
    232226 
     227End Namespace 'Drawing 
     228End Namespace 'System 
     229 
    233230#endif '__SYSTEM_DRAWING_RECTFANGLE_AB__ 
  • branch/egtra-gdiplus/Classes/System/Drawing/Size.ab

    r223 r241  
    44#define __SYSTEM_DRAWING_SIZE_AB__ 
    55 
    6 #include <Classes/System/Math.ab> 
    7 #include <Classes/System/Drawing/SizeF.ab> 
     6#require <Classes/System/Math.ab> 
     7#require <Classes/System/Drawing/SizeF.ab> 
     8 
     9Namespace System 
     10Namespace Drawing 
    811 
    912Class Size 
     
    6265        Return Not Equals(sz) 
    6366    End Function 
    64 /* 
    65     Sub Operator =(ByRef sz As Size) 
    66         width = sz.width 
    67         height = sz.height 
    68     End Sub 
    69 */ 
     67 
    7068    Function Equals(sz As Size) As Boolean 
    7169        If width = sz.width And height = sz.height Then 
     
    112110End Class 
    113111 
     112End Namespace 'Drawing 
     113End Namespace 'System 
     114 
    114115#endif '__SYSTEM_DRAWING_SIZE_AB__ 
  • branch/egtra-gdiplus/Classes/System/Drawing/SizeF.ab

    r223 r241  
    44#define __SYSTEM_DRAWING_SIZEF_AB__ 
    55 
    6 #include <Classes/System/Drawing/Size.ab> 
    7 #include <Classes/System/Drawing/PointF.ab> 
     6#require <Classes/System/Drawing/Size.ab> 
     7#require <Classes/System/Drawing/PointF.ab> 
     8 
     9Namespace System 
     10Namespace Drawing 
    811 
    912Class SizeF 
     
    5760        Return Not Equals(sz) 
    5861    End Function 
    59 /* 
    60     Sub Operator =(ByRef sz As SizeF) 
    61         width = sz.width 
    62         height = sz.height 
    63     End Sub 
    64 */ 
     62 
    6563    Function Equals(sz As SizeF) As Boolean 
    6664        Return width = sz.width And height = sz.height 
     
    9189        Return pt 
    9290    End Function 
     91 
    9392Private 
    9493    width As Single 
     
    9695End Class 
    9796 
     97End Namespace 'Drawing 
     98End Namespace 'System 
     99 
    98100#endif '__SYSTEM_DRAWING_SIZEF_AB__ 
  • branch/egtra-gdiplus/Classes/System/Drawing/misc.ab

    r137 r241  
    33#ifndef __SYSTEM_DRAWING_MISC_AB__ 
    44#define __SYSTEM_DRAWING_MISC_AB__ 
     5 
     6Namespace System 
     7Namespace Drawing 
    58 
    69Enum RotateFlipType 
     
    4447End Enum 
    4548 
     49End Namespace 'Drawing 
     50End Namespace 'System 
    4651 
    4752#endif '__SYSTEM_DRAWING_MISC_AB__ 
  • branch/egtra-gdiplus/GdiPlus.ab

    r119 r241  
    44#define GDIPLUS_AB 
    55 
     6Namespace Gdiplu 
    67Declare Function GdipAlloc Lib "Gdiplus.dll" (size As SIZE_T) As VoidPtr 
    78Declare Sub GdipFree Lib "Gdiplus.dll" (ptr As VoidPtr) 
     
    1011'これにはC++の配置new (placement new)が使われているので、実装を保留する。 
    1112End Class 
     13 
     14End Namespace 
    1215 
    1316#include <GdiplusEnums.ab> 
  • branch/egtra-gdiplus/GdiPlusEnums.ab

    r33 r241  
    2626End Enum 
    2727 
    28 Const Enum HatchStyle 
    29     HatchStyleHorizontal                    ' 0 
    30     HatchStyleVertical                      ' 1 
    31     HatchStyleForwardDiagonal               ' 2 
    32     HatchStyleBackwardDiagonal              ' 3 
    33     HatchStyleCross                         ' 4 
    34     HatchStyleDiagonalCross                 ' 5 
    35     HatchStyle05Percent                     ' 6 
    36     HatchStyle10Percent                     ' 7 
    37     HatchStyle20Percent                     ' 8 
    38     HatchStyle25Percent                     ' 9 
    39     HatchStyle30Percent                     ' 10 
    40     HatchStyle40Percent                     ' 11 
    41     HatchStyle50Percent                     ' 12 
    42     HatchStyle60Percent                     ' 13 
    43     HatchStyle70Percent                     ' 14 
    44     HatchStyle75Percent                     ' 15 
    45     HatchStyle80Percent                     ' 16 
    46     HatchStyle90Percent                     ' 17 
    47     HatchStyleLightDownwardDiagonal         ' 18 
    48     HatchStyleLightUpwardDiagonal           ' 19 
    49     HatchStyleDarkDownwardDiagonal          ' 20 
    50     HatchStyleDarkUpwardDiagonal            ' 21 
    51     HatchStyleWideDownwardDiagonal          ' 22 
    52     HatchStyleWideUpwardDiagonal            ' 23 
    53     HatchStyleLightVertical                 ' 24 
    54     HatchStyleLightHorizontal               ' 25 
    55     HatchStyleNarrowVertical                ' 26 
    56     HatchStyleNarrowHorizontal              ' 27 
    57     HatchStyleDarkVertical                  ' 28 
    58     HatchStyleDarkHorizontal                ' 29 
    59     HatchStyleDashedDownwardDiagonal        ' 30 
    60     HatchStyleDashedUpwardDiagonal          ' 31 
    61     HatchStyleDashedHorizontal              ' 32 
    62     HatchStyleDashedVertical                ' 33 
    63     HatchStyleSmallConfetti                 ' 34 
    64     HatchStyleLargeConfetti                 ' 35 
    65     HatchStyleZigZag                        ' 36 
    66     HatchStyleWave                          ' 37 
    67     HatchStyleDiagonalBrick                 ' 38 
    68     HatchStyleHorizontalBrick               ' 39 
    69     HatchStyleWeave                         ' 40 
    70     HatchStylePlaid                         ' 41 
    71     HatchStyleDivot                         ' 42 
    72     HatchStyleDottedGrid                    ' 43 
    73     HatchStyleDottedDiamond                 ' 44 
    74     HatchStyleShingle                       ' 45 
    75     HatchStyleTrellis                       ' 46 
    76     HatchStyleSphere                        ' 47 
    77     HatchStyleSmallGrid                     ' 48 
    78     HatchStyleSmallCheckerBoard             ' 49 
    79     HatchStyleLargeCheckerBoard             ' 50 
    80     HatchStyleOutlinedDiamond               ' 51 
    81     HatchStyleSolidDiamond                  ' 52 
    82  
    83     HatchStyleTotal 
    84 '   HatchStyleLargeGrid = HatchStyleCross   ' 4 
    85  
    86 '   HatchStyleMin       = HatchStyleHorizontal 
    87 '   HatchStyleMax       = HatchStyleTotal - 1 
    88 End Enum 
    89  
    9028Const Enum DashStyle 
    9129    DashStyleSolid           ' 0 
     
    9735End Enum 
    9836 
    99 Const Enum DashCap 
    100     DashCapFlat             = 0 
    101     DashCapRound            = 2 
    102     DashCapTriangle         = 3 
    103 End Enum 
    104  
    105 Const Enum LineCap 
    106     LineCapFlat             = 0 
    107     LineCapSquare           = 1 
    108     LineCapRound            = 2 
    109     LineCapTriangle         = 3 
    110  
    111     LineCapNoAnchor         = &h10 
    112     LineCapSquareAnchor     = &h11 
    113     LineCapRoundAnchor      = &h12 
    114     LineCapDiamondAnchor    = &h13 
    115     LineCapArrowAnchor      = &h14 
    116  
    117     LineCapCustom           = &hff 
    118  
    119     LineCapAnchorMask       = &hf0 
    120 End Enum 
    121  
    12237Const Enum CustomLineCapType 
    12338    CustomLineCapTypeDefault         = 0 
    12439    CustomLineCapTypeAdjustableArrow = 1 
    125 End Enum 
    126  
    127 Const Enum LineJoin 
    128     LineJoinMiter        = 0 
    129     LineJoinBevel        = 1 
    130     LineJoinRound        = 2 
    131     LineJoinMiterClipped = 3 
    13240End Enum 
    13341 
     
    14351End Enum 
    14452 
    145 Const Enum WarpMode 
    146     WarpModePerspective     ' 0 
    147     WarpModeBilinear        ' 1 
    148 End Enum 
    149  
    150 Const Enum LinearGradientMode 
    151     LinearGradientModeHorizontal          ' 0 
    152     LinearGradientModeVertical            ' 1 
    153     LinearGradientModeForwardDiagonal     ' 2 
    154     LinearGradientModeBackwardDiagonal    ' 3 
    155 End Enum 
    156  
    15753Const Enum ImageType 
    15854    ImageTypeUnknown    ' 0 
    15955    ImageTypeBitmap     ' 1 
    16056    ImageTypeMetafile   ' 2 
    161 End Enum 
    162  
    163 Const Enum PenAlignment 
    164     PenAlignmentCenter       = 0 
    165     PenAlignmentInset        = 1 
    16657End Enum 
    16758 
     
    17263    BrushTypePathGradient     = 3 
    17364    BrushTypeLinearGradient   = 4 
    174 End Enum 
    175  
    176 Const Enum PenType 
    177     PenTypeSolidColor       = BrushTypeSolidColor 
    178     PenTypeHatchFill        = BrushTypeHatchFill 
    179     PenTypeTextureFill      = BrushTypeTextureFill 
    180     PenTypePathGradient     = BrushTypePathGradient 
    181     PenTypeLinearGradient   = BrushTypeLinearGradient 
    182     PenTypeUnknown          = -1 
    18365End Enum 
    18466 
     
    230112 
    231113Const ObjectTypeIsValid(type_) = (type_ >= ObjectTypeMin) And (type_ <= ObjectTypeMax) 
    232  
    233 Const GDIP_EMFPLUS_RECORD_BASE        = &h00004000 
    234 Const GDIP_WMF_RECORD_BASE            = &h00010000 
    235 Const GDIP_WMF_RECORD_TO_EMFPLUS(n)   = ((n) Or GDIP_WMF_RECORD_BASE) ' As EmfPlusRecordType 
    236 Const GDIP_EMFPLUS_RECORD_TO_WMF(n)   = ((n) And (Not GDIP_WMF_RECORD_BASE)) 
    237 'Const GDIP_IS_WMF_RECORDTYPE(n)       (((n) And GDIP_WMF_RECORD_BASE) <> 0) 
    238 Function GDIP_IS_WMF_RECORDTYPE(n As DWord) As BOOL 
    239     If (n And GDIP_WMF_RECORD_BASE) <> 0 Then 
    240         GDIP_IS_WMF_RECORDTYPE = TRUE 
    241     Else 
    242         GDIP_IS_WMF_RECORDTYPE = FALSE 
    243     End If 
    244 End Function 
    245  
    246 Const Enum EmfPlusRecordType 
    247 /* 
    248     WmfRecordTypeSetBkColor              = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETBKCOLOR) 
    249     WmfRecordTypeSetBkMode               = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETBKMODE) 
    250     WmfRecordTypeSetMapMode              = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETMAPMODE) 
    251     WmfRecordTypeSetROP2                 = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETROP2) 
    252     WmfRecordTypeSetRelAbs               = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETRELABS) 
    253     WmfRecordTypeSetPolyFillMode         = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETPOLYFILLMODE) 
    254     WmfRecordTypeSetStretchBltMode       = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETSTRETCHBLTMODE) 
    255     WmfRecordTypeSetTextCharExtra        = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETTEXTCHAREXTRA) 
    256     WmfRecordTypeSetTextColor            = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETTEXTCOLOR) 
    257     WmfRecordTypeSetTextJustification    = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETTEXTJUSTIFICATION) 
    258     WmfRecordTypeSetWindowOrg            = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETWINDOWORG) 
    259     WmfRecordTypeSetWindowExt            = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETWINDOWEXT) 
    260     WmfRecordTypeSetViewportOrg          = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETVIEWPORTORG) 
    261     WmfRecordTypeSetViewportExt          = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETVIEWPORTEXT) 
    262     WmfRecordTypeOffsetWindowOrg         = GDIP_WMF_RECORD_TO_EMFPLUS(META_OFFSETWINDOWORG) 
    263     WmfRecordTypeScaleWindowExt          = GDIP_WMF_RECORD_TO_EMFPLUS(META_SCALEWINDOWEXT) 
    264     WmfRecordTypeOffsetViewportOrg       = GDIP_WMF_RECORD_TO_EMFPLUS(META_OFFSETVIEWPORTORG) 
    265     WmfRecordTypeScaleViewportExt        = GDIP_WMF_RECORD_TO_EMFPLUS(META_SCALEVIEWPORTEXT) 
    266     WmfRecordTypeLineTo                  = GDIP_WMF_RECORD_TO_EMFPLUS(META_LINETO) 
    267     WmfRecordTypeMoveTo                  = GDIP_WMF_RECORD_TO_EMFPLUS(META_MOVETO) 
    268     WmfRecordTypeExcludeClipRect         = GDIP_WMF_RECORD_TO_EMFPLUS(META_EXCLUDECLIPRECT) 
    269     WmfRecordTypeIntersectClipRect       = GDIP_WMF_RECORD_TO_EMFPLUS(META_INTERSECTCLIPRECT) 
    270     WmfRecordTypeArc                     = GDIP_WMF_RECORD_TO_EMFPLUS(META_ARC) 
    271     WmfRecordTypeEllipse                 = GDIP_WMF_RECORD_TO_EMFPLUS(META_ELLIPSE) 
    272     WmfRecordTypeFloodFill               = GDIP_WMF_RECORD_TO_EMFPLUS(META_FLOODFILL) 
    273     WmfRecordTypePie                     = GDIP_WMF_RECORD_TO_EMFPLUS(META_PIE) 
    274     WmfRecordTypeRectangle               = GDIP_WMF_RECORD_TO_EMFPLUS(META_RECTANGLE) 
    275     WmfRecordTypeRoundRect               = GDIP_WMF_RECORD_TO_EMFPLUS(META_ROUNDRECT) 
    276     WmfRecordTypePatBlt                  = GDIP_WMF_RECORD_TO_EMFPLUS(META_PATBLT) 
    277     WmfRecordTypeSaveDC                  = GDIP_WMF_RECORD_TO_EMFPLUS(META_SAVEDC) 
    278     WmfRecordTypeSetPixel                = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETPIXEL) 
    279     WmfRecordTypeOffsetClipRgn           = GDIP_WMF_RECORD_TO_EMFPLUS(META_OFFSETCLIPRGN) 
    280     WmfRecordTypeTextOut                 = GDIP_WMF_RECORD_TO_EMFPLUS(META_TEXTOUT) 
    281     WmfRecordTypeBitBlt                  = GDIP_WMF_RECORD_TO_EMFPLUS(META_BITBLT) 
    282     WmfRecordTypeStretchBlt              = GDIP_WMF_RECORD_TO_EMFPLUS(META_STRETCHBLT) 
    283     WmfRecordTypePolygon                 = GDIP_WMF_RECORD_TO_EMFPLUS(META_POLYGON) 
    284     WmfRecordTypePolyline                = GDIP_WMF_RECORD_TO_EMFPLUS(META_POLYLINE) 
    285     WmfRecordTypeEscape                  = GDIP_WMF_RECORD_TO_EMFPLUS(META_ESCAPE) 
    286     WmfRecordTypeRestoreDC               = GDIP_WMF_RECORD_TO_EMFPLUS(META_RESTOREDC) 
    287     WmfRecordTypeFillRegion              = GDIP_WMF_RECORD_TO_EMFPLUS(META_FILLREGION) 
    288     WmfRecordTypeFrameRegion             = GDIP_WMF_RECORD_TO_EMFPLUS(META_FRAMEREGION) 
    289     WmfRecordTypeInvertRegion            = GDIP_WMF_RECORD_TO_EMFPLUS(META_INVERTREGION) 
    290     WmfRecordTypePaintRegion             = GDIP_WMF_RECORD_TO_EMFPLUS(META_PAINTREGION) 
    291     WmfRecordTypeSelectClipRegion        = GDIP_WMF_RECORD_TO_EMFPLUS(META_SELECTCLIPREGION) 
    292     WmfRecordTypeSelectObject            = GDIP_WMF_RECORD_TO_EMFPLUS(META_SELECTOBJECT) 
    293     WmfRecordTypeSetTextAlign            = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETTEXTALIGN) 
    294     WmfRecordTypeDrawText                = GDIP_WMF_RECORD_TO_EMFPLUS(&h062F)   ' META_DRAWTEXT 
    295     WmfRecordTypeChord                   = GDIP_WMF_RECORD_TO_EMFPLUS(META_CHORD) 
    296     WmfRecordTypeSetMapperFlags          = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETMAPPERFLAGS) 
    297     WmfRecordTypeExtTextOut              = GDIP_WMF_RECORD_TO_EMFPLUS(META_EXTTEXTOUT) 
    298     WmfRecordTypeSetDIBToDev             = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETDIBTODEV) 
    299     WmfRecordTypeSelectPalette           = GDIP_WMF_RECORD_TO_EMFPLUS(META_SELECTPALETTE) 
    300     WmfRecordTypeRealizePalette          = GDIP_WMF_RECORD_TO_EMFPLUS(META_REALIZEPALETTE) 
    301     WmfRecordTypeAnimatePalette          = GDIP_WMF_RECORD_TO_EMFPLUS(META_ANIMATEPALETTE) 
    302     WmfRecordTypeSetPalEntries           = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETPALENTRIES) 
    303     WmfRecordTypePolyPolygon             = GDIP_WMF_RECORD_TO_EMFPLUS(META_POLYPOLYGON) 
    304     WmfRecordTypeResizePalette           = GDIP_WMF_RECORD_TO_EMFPLUS(META_RESIZEPALETTE) 
    305     WmfRecordTypeDIBBitBlt               = GDIP_WMF_RECORD_TO_EMFPLUS(META_DIBBITBLT) 
    306     WmfRecordTypeDIBStretchBlt           = GDIP_WMF_RECORD_TO_EMFPLUS(META_DIBSTRETCHBLT) 
    307     WmfRecordTypeDIBCreatePatternBrush   = GDIP_WMF_RECORD_TO_EMFPLUS(META_DIBCREATEPATTERNBRUSH) 
    308     WmfRecordTypeStretchDIB              = GDIP_WMF_RECORD_TO_EMFPLUS(META_STRETCHDIB) 
    309     WmfRecordTypeExtFloodFill            = GDIP_WMF_RECORD_TO_EMFPLUS(META_EXTFLOODFILL) 
    310     WmfRecordTypeSetLayout               = GDIP_WMF_RECORD_TO_EMFPLUS(&h0149)   ' META_SETLAYOUT 
    311     WmfRecordTypeResetDC                 = GDIP_WMF_RECORD_TO_EMFPLUS(&h014C)   ' META_RESETDC 
    312     WmfRecordTypeStartDoc                = GDIP_WMF_RECORD_TO_EMFPLUS(&h014D)   ' META_STARTDOC 
    313     WmfRecordTypeStartPage               = GDIP_WMF_RECORD_TO_EMFPLUS(&h004F)   ' META_STARTPAGE 
    314     WmfRecordTypeEndPage                 = GDIP_WMF_RECORD_TO_EMFPLUS(&h0050)   ' META_ENDPAGE 
    315     WmfRecordTypeAbortDoc                = GDIP_WMF_RECORD_TO_EMFPLUS(&h0052)   ' META_ABORTDOC 
    316     WmfRecordTypeEndDoc                  = GDIP_WMF_RECORD_TO_EMFPLUS(&h005E)   ' META_ENDDOC 
    317     WmfRecordTypeDeleteObject            = GDIP_WMF_RECORD_TO_EMFPLUS(META_DELETEOBJECT) 
    318     WmfRecordTypeCreatePalette           = GDIP_WMF_RECORD_TO_EMFPLUS(META_CREATEPALETTE) 
    319     WmfRecordTypeCreateBrush             = GDIP_WMF_RECORD_TO_EMFPLUS(&h00F8)   ' META_CREATEBRUSH 
    320     WmfRecordTypeCreatePatternBrush      = GDIP_WMF_RECORD_TO_EMFPLUS(META_CREATEPATTERNBRUSH) 
    321     WmfRecordTypeCreatePenIndirect       = GDIP_WMF_RECORD_TO_EMFPLUS(META_CREATEPENINDIRECT) 
    322     WmfRecordTypeCreateFontIndirect      = GDIP_WMF_RECORD_TO_EMFPLUS(META_CREATEFONTINDIRECT) 
    323     WmfRecordTypeCreateBrushIndirect     = GDIP_WMF_RECORD_TO_EMFPLUS(META_CREATEBRUSHINDIRECT) 
    324     WmfRecordTypeCreateBitmapIndirect    = GDIP_WMF_RECORD_TO_EMFPLUS(&h02FD)   ' META_CREATEBITMAPINDIRECT 
    325     WmfRecordTypeCreateBitmap            = GDIP_WMF_RECORD_TO_EMFPLUS(&h06FE)   ' META_CREATEBITMAP 
    326     WmfRecordTypeCreateRegion            = GDIP_WMF_RECORD_TO_EMFPLUS(META_CREATEREGION) 
    327  
    328     EmfRecordTypeHeader                  = EMR_HEADER 
    329     EmfRecordTypePolyBezier              = EMR_POLYBEZIER 
    330     EmfRecordTypePolygon                 = EMR_POLYGON 
    331     EmfRecordTypePolyline                = EMR_POLYLINE 
    332     EmfRecordTypePolyBezierTo            = EMR_POLYBEZIERTO 
    333     EmfRecordTypePolyLineTo              = EMR_POLYLINETO 
    334     EmfRecordTypePolyPolyline            = EMR_POLYPOLYLINE 
    335     EmfRecordTypePolyPolygon             = EMR_POLYPOLYGON 
    336     EmfRecordTypeSetWindowExtEx          = EMR_SETWINDOWEXTEX 
    337     EmfRecordTypeSetWindowOrgEx          = EMR_SETWINDOWORGEX 
    338     EmfRecordTypeSetViewportExtEx        = EMR_SETVIEWPORTEXTEX 
    339     EmfRecordTypeSetViewportOrgEx        = EMR_SETVIEWPORTORGEX 
    340     EmfRecordTypeSetBrushOrgEx           = EMR_SETBRUSHORGEX 
    341     EmfRecordTypeEOF                     = EMR_EOF 
    342     EmfRecordTypeSetPixelV               = EMR_SETPIXELV 
    343     EmfRecordTypeSetMapperFlags          = EMR_SETMAPPERFLAGS 
    344     EmfRecordTypeSetMapMode              = EMR_SETMAPMODE 
    345     EmfRecordTypeSetBkMode               = EMR_SETBKMODE 
    346     EmfRecordTypeSetPolyFillMode         = EMR_SETPOLYFILLMODE 
    347     EmfRecordTypeSetROP2                 = EMR_SETROP2 
    348     EmfRecordTypeSetStretchBltMode       = EMR_SETSTRETCHBLTMODE 
    349     EmfRecordTypeSetTextAlign            = EMR_SETTEXTALIGN 
    350     EmfRecordTypeSetColorAdjustment      = EMR_SETCOLORADJUSTMENT 
    351     EmfRecordTypeSetTextColor            = EMR_SETTEXTCOLOR 
    352     EmfRecordTypeSetBkColor              = EMR_SETBKCOLOR 
    353     EmfRecordTypeOffsetClipRgn           = EMR_OFFSETCLIPRGN 
    354     EmfRecordTypeMoveToEx                = EMR_MOVETOEX 
    355     EmfRecordTypeSetMetaRgn              = EMR_SETMETARGN 
    356     EmfRecordTypeExcludeClipRect         = EMR_EXCLUDECLIPRECT 
    357     EmfRecordTypeIntersectClipRect       = EMR_INTERSECTCLIPRECT 
    358     EmfRecordTypeScaleViewportExtEx      = EMR_SCALEVIEWPORTEXTEX 
    359     EmfRecordTypeScaleWindowExtEx        = EMR_SCALEWINDOWEXTEX 
    360     EmfRecordTypeSaveDC                  = EMR_SAVEDC 
    361     EmfRecordTypeRestoreDC               = EMR_RESTOREDC 
    362     EmfRecordTypeSetWorldTransform       = EMR_SETWORLDTRANSFORM 
    363     EmfRecordTypeModifyWorldTransform    = EMR_MODIFYWORLDTRANSFORM 
    364     EmfRecordTypeSelectObject            = EMR_SELECTOBJECT 
    365     EmfRecordTypeCreatePen               = EMR_CREATEPEN 
    366     EmfRecordTypeCreateBrushIndirect     = EMR_CREATEBRUSHINDIRECT 
    367     EmfRecordTypeDeleteObject            = EMR_DELETEOBJECT 
    368     EmfRecordTypeAngleArc                = EMR_ANGLEARC 
    369     EmfRecordTypeEllipse                 = EMR_ELLIPSE 
    370     EmfRecordTypeRectangle               = EMR_RECTANGLE 
    371     EmfRecordTypeRoundRect               = EMR_ROUNDRECT 
    372     EmfRecordTypeArc                     = EMR_ARC 
    373     EmfRecordTypeChord                   = EMR_CHORD 
    374     EmfRecordTypePie                     = EMR_PIE 
    375     EmfRecordTypeSelectPalette           = EMR_SELECTPALETTE 
    376     EmfRecordTypeCreatePalette           = EMR_CREATEPALETTE 
    377     EmfRecordTypeSetPaletteEntries       = EMR_SETPALETTEENTRIES 
    378     EmfRecordTypeResizePalette           = EMR_RESIZEPALETTE 
    379     EmfRecordTypeRealizePalette          = EMR_REALIZEPALETTE 
    380     EmfRecordTypeExtFloodFill            = EMR_EXTFLOODFILL 
    381     EmfRecordTypeLineTo                  = EMR_LINETO 
    382     EmfRecordTypeArcTo                   = EMR_ARCTO 
    383     EmfRecordTypePolyDraw                = EMR_POLYDRAW 
    384     EmfRecordTypeSetArcDirection         = EMR_SETARCDIRECTION 
    385     EmfRecordTypeSetMiterLimit           = EMR_SETMITERLIMIT 
    386     EmfRecordTypeBeginPath               = EMR_BEGINPATH 
    387     EmfRecordTypeEndPath                 = EMR_ENDPATH 
    388     EmfRecordTypeCloseFigure             = EMR_CLOSEFIGURE 
    389     EmfRecordTypeFillPath                = EMR_FILLPATH 
    390     EmfRecordTypeStrokeAndFillPath       = EMR_STROKEANDFILLPATH 
    391     EmfRecordTypeStrokePath              = EMR_STROKEPATH 
    392     EmfRecordTypeFlattenPath             = EMR_FLATTENPATH 
    393     EmfRecordTypeWidenPath               = EMR_WIDENPATH 
    394     EmfRecordTypeSelectClipPath          = EMR_SELECTCLIPPATH 
    395     EmfRecordTypeAbortPath               = EMR_ABORTPATH 
    396     EmfRecordTypeReserved_069            = 69   ' Not Used 
    397     EmfRecordTypeGdiComment              = EMR_GDICOMMENT 
    398     EmfRecordTypeFillRgn                 = EMR_FILLRGN 
    399     EmfRecordTypeFrameRgn                = EMR_FRAMERGN 
    400     EmfRecordTypeInvertRgn               = EMR_INVERTRGN 
    401     EmfRecordTypePaintRgn                = EMR_PAINTRGN 
    402     EmfRecordTypeExtSelectClipRgn        = EMR_EXTSELECTCLIPRGN 
    403     EmfRecordTypeBitBlt                  = EMR_BITBLT 
    404     EmfRecordTypeStretchBlt              = EMR_STRETCHBLT 
    405     EmfRecordTypeMaskBlt                 = EMR_MASKBLT 
    406     EmfRecordTypePlgBlt                  = EMR_PLGBLT 
    407     EmfRecordTypeSetDIBitsToDevice       = EMR_SETDIBITSTODEVICE 
    408     EmfRecordTypeStretchDIBits           = EMR_STRETCHDIBITS 
    409     EmfRecordTypeExtCreateFontIndirect   = EMR_EXTCREATEFONTINDIRECTW 
    410     EmfRecordTypeExtTextOutA             = EMR_EXTTEXTOUTA 
    411     EmfRecordTypeExtTextOutW             = EMR_EXTTEXTOUTW 
    412     EmfRecordTypePolyBezier16            = EMR_POLYBEZIER16 
    413     EmfRecordTypePolygon16               = EMR_POLYGON16 
    414     EmfRecordTypePolyline16              = EMR_POLYLINE16 
    415     EmfRecordTypePolyBezierTo16          = EMR_POLYBEZIERTO16 
    416     EmfRecordTypePolylineTo16            = EMR_POLYLINETO16 
    417     EmfRecordTypePolyPolyline16          = EMR_POLYPOLYLINE16 
    418     EmfRecordTypePolyPolygon16           = EMR_POLYPOLYGON16 
    419     EmfRecordTypePolyDraw16              = EMR_POLYDRAW16 
    420     EmfRecordTypeCreateMonoBrush         = EMR_CREATEMONOBRUSH 
    421     EmfRecordTypeCreateDIBPatternBrushPt = EMR_CREATEDIBPATTERNBRUSHPT 
    422     EmfRecordTypeExtCreatePen            = EMR_EXTCREATEPEN 
    423     EmfRecordTypePolyTextOutA            = EMR_POLYTEXTOUTA 
    424     EmfRecordTypePolyTextOutW            = EMR_POLYTEXTOUTW 
    425     EmfRecordTypeSetICMMode              = 98   ' EMR_SETICMMODE 
    426     EmfRecordTypeCreateColorSpace        = 99   ' EMR_CREATECOLORSPACE 
    427     EmfRecordTypeSetColorSpace           = 100  ' EMR_SETCOLORSPACE 
    428     EmfRecordTypeDeleteColorSpace        = 101  ' EMR_DELETECOLORSPACE 
    429     EmfRecordTypeGLSRecord               = 102  ' EMR_GLSRECORD 
    430     EmfRecordTypeGLSBoundedRecord        = 103  ' EMR_GLSBOUNDEDRECORD 
    431     EmfRecordTypePixelFormat             = 104  ' EMR_PIXELFORMAT 
    432     EmfRecordTypeDrawEscape              = 105  ' EMR_RESERVED_105 
    433     EmfRecordTypeExtEscape               = 106  ' EMR_RESERVED_106 
    434     EmfRecordTypeStartDoc                = 107  ' EMR_RESERVED_107 
    435     EmfRecordTypeSmallTextOut            = 108  ' EMR_RESERVED_108 
    436     EmfRecordTypeForceUFIMapping         = 109  ' EMR_RESERVED_109 
    437     EmfRecordTypeNamedEscape             = 110  ' EMR_RESERVED_110 
    438     EmfRecordTypeColorCorrectPalette     = 111  ' EMR_COLORCORRECTPALETTE 
    439     EmfRecordTypeSetICMProfileA          = 112  ' EMR_SETICMPROFILEA 
    440     EmfRecordTypeSetICMProfileW          = 113  ' EMR_SETICMPROFILEW 
    441     EmfRecordTypeAlphaBlend              = 114  ' EMR_ALPHABLEND 
    442     EmfRecordTypeSetLayout               = 115  ' EMR_SETLAYOUT 
    443     EmfRecordTypeTransparentBlt          = 116  ' EMR_TRANSPARENTBLT 
    444     EmfRecordTypeReserved_117            = 117  ' Not Used 
    445     EmfRecordTypeGradientFill            = 118  ' EMR_GRADIENTFILL 
    446     EmfRecordTypeSetLinkedUFIs           = 119  ' EMR_RESERVED_119 
    447     EmfRecordTypeSetTextJustification    = 120  ' EMR_RESERVED_120 
    448     EmfRecordTypeColorMatchToTargetW     = 121  ' EMR_COLORMATCHTOTARGETW 
    449     EmfRecordTypeCreateColorSpaceW       = 122  ' EMR_CREATECOLORSPACEW 
    450     EmfRecordTypeMax                     = 122 
    451     EmfRecordTypeMin                     = 1 
    452  
    453     EmfPlusRecordTypeInvalid = GDIP_EMFPLUS_RECORD_BASE 
    454     EmfPlusRecordTypeHeader 
    455     EmfPlusRecordTypeEndOfFile 
    456  
    457     EmfPlusRecordTypeComment 
    458  
    459     EmfPlusRecordTypeGetDC 
    460  
    461     EmfPlusRecordTypeMultiFormatStart 
    462     EmfPlusRecordTypeMultiFormatSection 
    463     EmfPlusRecordTypeMultiFormatEnd 
    464  
    465     EmfPlusRecordTypeObject 
    466  
    467     EmfPlusRecordTypeClear 
    468     EmfPlusRecordTypeFillRects 
    469     EmfPlusRecordTypeDrawRects 
    470     EmfPlusRecordTypeFillPolygon 
    471     EmfPlusRecordTypeDrawLines 
    472     EmfPlusRecordTypeFillEllipse 
    473     EmfPlusRecordTypeDrawEllipse 
    474     EmfPlusRecordTypeFillPie 
    475     EmfPlusRecordTypeDrawPie 
    476     EmfPlusRecordTypeDrawArc 
    477     EmfPlusRecordTypeFillRegion 
    478     EmfPlusRecordTypeFillPath 
    479     EmfPlusRecordTypeDrawPath 
    480     EmfPlusRecordTypeFillClosedCurve 
    481     EmfPlusRecordTypeDrawClosedCurve 
    482     EmfPlusRecordTypeDrawCurve 
    483     EmfPlusRecordTypeDrawBeziers 
    484     EmfPlusRecordTypeDrawImage 
    485     EmfPlusRecordTypeDrawImagePoints 
    486     EmfPlusRecordTypeDrawString 
    487  
    488     EmfPlusRecordTypeSetRenderingOrigin 
    489     EmfPlusRecordTypeSetAntiAliasMode 
    490     EmfPlusRecordTypeSetTextRenderingHint 
    491     EmfPlusRecordTypeSetTextContrast 
    492     EmfPlusRecordTypeSetInterpolationMode 
    493     EmfPlusRecordTypeSetPixelOffsetMode 
    494     EmfPlusRecordTypeSetCompositingMode 
    495     EmfPlusRecordTypeSetCompositingQuality 
    496     EmfPlusRecordTypeSave 
    497     EmfPlusRecordTypeRestore 
    498     EmfPlusRecordTypeBeginContainer 
    499     EmfPlusRecordTypeBeginContainerNoParams 
    500     EmfPlusRecordTypeEndContainer 
    501     EmfPlusRecordTypeSetWorldTransform 
    502     EmfPlusRecordTypeResetWorldTransform 
    503     EmfPlusRecordTypeMultiplyWorldTransform 
    504     EmfPlusRecordTypeTranslateWorldTransform 
    505     EmfPlusRecordTypeScaleWorldTransform 
    506     EmfPlusRecordTypeRotateWorldTransform 
    507     EmfPlusRecordTypeSetPageTransform 
    508     EmfPlusRecordTypeResetClip 
    509     EmfPlusRecordTypeSetClipRect 
    510     EmfPlusRecordTypeSetClipPath 
    511     EmfPlusRecordTypeSetClipRegion 
    512     EmfPlusRecordTypeOffsetClip 
    513  
    514     EmfPlusRecordTypeDrawDriverString 
    515  
    516     EmfPlusRecordTotal 
    517  
    518     EmfPlusRecordTypeMax = EmfPlusRecordTotal-1 
    519     EmfPlusRecordTypeMin = EmfPlusRecordTypeHeader */ 
    520 End Enum 
    521114 
    522115Const Enum StringFormatFlags 
  • branch/egtra-gdiplus/GdiPlusFlat.ab

    r119 r241  
    1212 
    1313TypeDef PDirectDrawSurface7 = VoidPtr '*IDirectDrawSurface7 
     14 
     15Namespace Gdiplus 
     16Namespace DllExprots 
    1417 
    1518' GraphicsPath APIs 
     
    666669Declare Sub GdiplusNotificationUnhook Lib "gdiplus.dll" (ByVal token As ULONG_PTR) 
    667670 
     671End Namespace 'DllExports 
     672End Namespace 'Gdiplus 
     673 
    668674#endif '__GDIPLUS_FLATAPI_AB__ 
  • branch/egtra-gdiplus/GdiPlusGpStubs.ab

    r119 r241  
    99#require <Classes/System/Drawing/Drawing2D/Matrix.ab> 
    1010 
    11 Class GpGraphics 
    12 End Class 
     11Namespace Gdiplus 
    1312 
    14 Class GpBrush 
    15 End Class 
    16 Class GpTexture 
    17     Inherits GpBrush 
    18 End Class 
    19 Class GpSolidFill 
    20     Inherits GpBrush 
    21 End Class 
    22 Class GpLineGradient 
    23     Inherits GpBrush 
    24 End Class 
    25 Class GpPathGradient 
    26     Inherits GpBrush 
    27 End Class 
    28 Class GpHatch 
    29     Inherits GpBrush 
    30 End Class 
     13Type GpGraphics 
     14End Type 
    3115 
    32 Class GpPen 
    33 End Class 
    34 Class GpCustomLineCap 
    35 End Class 
    36 Class GpAdjustableArrowCap 
    37     Inherits GpCustomLineCap 
    38 End Class 
     16Type GpBrush 
     17End Type 
     18Type GpTexture 
     19'   Inherits GpBrush 
     20End Type 
     21Type GpSolidFill 
     22'   Inherits GpBrush 
     23End Type 
     24Type GpLineGradient 
     25'   Inherits GpBrush 
     26End Type 
     27Type GpPathGradient 
     28'   Inherits GpBrush 
     29End Type 
     30Type GpHatch 
     31'   Inherits GpBrush 
     32End Type 
    3933 
    40 Class GpImage 
    41 End Class 
    42 Class GpBitmap 
    43     Inherits GpImage 
    44 End Class 
    45 Class GpMetafile 
    46     Inherits GpImage 
    47 End Class 
    48 Class GpImageAttributes 
    49 End Class 
     34Type GpPen 
     35End Type 
     36Type GpCustomLineCap 
     37End Type 
     38Type GpAdjustableArrowCap 
     39'   Inherits GpCustomLineCap 
     40End Type 
    5041 
    51 Class GpPath 
    52 End Class 
    53 Class GpRegion 
    54 End Class 
    55 Class GpPathIterator 
    56 End Class 
     42Type GpImage 
     43End Type 
     44Type GpBitmap 
     45'   Inherits GpImage 
     46End Type 
     47Type GpMetafile 
     48'   Inherits GpImage 
     49End Type 
     50Type GpImageAttributes 
     51End Type 
    5752 
    58 Class GpFontFamily 
    59 End Class 
    60 Class GpFont 
    61 End Class 
    62 Class GpStringFormat 
    63 End Class 
    64 Class GpFontCollection 
    65 End Class 
    66 Class GpInstalledFontCollection 
    67     Inherits GpFontCollection 
    68 End Class 
    69 Class GpPrivateFontCollection 
    70     Inherits GpFontCollection 
    71 End Class 
     53Type GpPath 
     54End Type 
     55Type GpRegion 
     56End Type 
     57Type GpPathIterator 
     58End Type 
    7259 
    73 'Class GpCachedBitmap; 
    74 Class GpCachedBitmap 
    75 End Class 
     60Type GpFontFamily 
     61End Type 
     62Type GpFont 
     63End Type 
     64Type GpStringFormat 
     65End Type 
     66Type GpFontCollection 
     67End Type 
     68Type GpInstalledFontCollection 
     69'   Inherits GpFontCollection 
     70End Type 
     71Type GpPrivateFontCollection 
     72'   Inherits GpFontCollection 
     73End Type 
    7674 
    77 TypeDef GpStatus = Status 
    78 TypeDef GpFillMode = FillMode 
    79 TypeDef GpWrapMode = WrapMode 
    80 TypeDef GpUnit = GraphicsUnit 
    81 TypeDef GpCoordinateSpace = CoordinateSpace 
    82 TypeDef GpPointF = PointF 
    83 TypeDef GpPoint = Point 
    84 TypeDef GpRectF = RectangleF 
    85 TypeDef GpRect = Rectangle 
    86 TypeDef GpSizeF = SizeF 
    87 TypeDef GpHatchStyle = HatchStyle 
    88 TypeDef GpDashStyle = DashStyle 
    89 TypeDef GpLineCap = LineCap 
    90 TypeDef GpDashCap = DashCap 
     75'Type GpCachedBitmap; 
     76Type GpCachedBitmap 
     77End Type 
     78 
     79TypeDef GpStatus = Gdiplus.Status 
     80TypeDef GpFillMode = System.Drawing.Drawing2D.FillMode 
     81TypeDef GpWrapMode = System.Drawing.Drawing2D.WrapMode 
     82TypeDef GpUnit = System.Drawing.GraphicsUnit 
     83TypeDef GpCoordinateSpace = System.Drawing.Drawing2D.CoordinateSpace 
     84TypeDef GpPointF = System.Drawing.PointF 
     85TypeDef GpPoint = System.Drawing.Point 
     86TypeDef GpRectF = System.Drawing.RectangleF 
     87TypeDef GpRect = System.Drawing.Rectangle 
     88TypeDef GpSizeF = System.Drawing.SizeF 
     89TypeDef GpHatchStyle = System.Drawing.Drawing2D.HatchStyle 
     90TypeDef GpDashStyle = System.Drawing.Drawing2D.DashStyle 
     91TypeDef GpLineCap = System.Drawing.Drawing2D.LineCap 
     92TypeDef GpDashCap = System.Drawing.Drawing2D.DashCap 
    9193 
    9294 
    93 TypeDef GpPenAlignment = PenAlignment 
     95TypeDef GpPenAlignment = System.Drawing.Drawing2D.PenAlignment 
    9496 
    95 TypeDef GpLineJoin = LineJoin 
    96 TypeDef GpPenType = PenType 
     97TypeDef GpLineJoin = System.Drawing.Drawing2D.LineJoin 
     98TypeDef GpPenType = System.Drawing.PenType 
    9799 
    98 TypeDef GpMatrix = Matrix 
     100'TypeDef GpMatrix = Matrix 
     101Type GpMatrix 
     102End Type 
     103 
    99104TypeDef GpBrushType = BrushType 
    100 TypeDef GpMatrixOrder = MatrixOrder 
    101 TypeDef GpFlushIntention = FlushIntention 
     105TypeDef GpMatrixOrder = System.Drawing.Drawing2D.MatrixOrder 
     106TypeDef GpFlushIntention = System.Drawing.Drawing2D.FlushIntention 
    102107TypeDef GpPathData = PathData 
    103108 
     109End Namespace 
     110 
    104111#endif '__GDIPLUSGPSTUBS_AB__ 
    105  
  • branch/egtra-gdiplus/GdiPlusInit.ab

    r77 r241  
    33#ifndef __GDIPLUSINIT_AB__ 
    44#define __GDIPLUSINIT_AB__ 
     5 
     6Namespace Gdiplus 
    57 
    68Enum DebugEventLevel 
     
    3436End Type 
    3537 
    36 Declare Function GdiplusStartup Lib "GdiPlus.dll" ( 
     38Declare Function GdiplusStartup Lib "Gdiplus.dll" ( 
    3739    /*OUT*/ ByRef token As ULONG_PTR, 
    3840            ByRef input As GdiplusStartupInput, 
    3941    /*OUT*/ ByVal output As *GdiplusStartupOutput) As Status 
    4042 
    41 Declare Sub GdiplusShutdown Lib "GdiPlus.dll" (ByVal token As ULONG_PTR) 
     43Declare Sub GdiplusShutdown Lib "Gdiplus.dll" (ByVal token As ULONG_PTR) 
     44 
     45End Namespace 
    4246 
    4347#endif '__GDIPLUSINIT_AB__ 
  • branch/egtra-gdiplus/GdiPlusTypes.ab

    r13 r241  
    1 ' GdiPlusTypes.sbp 
     1' GdiPlusTypes.ab 
    22 
    33#ifndef __GDIPLUSTYPES_AB__ 
    44#define __GDIPLUSTYPES_AB__ 
    55 
    6 #include <Classes/System/Math.ab> 
     6#require <Classes/System/Math.ab> 
     7#require <Classes/System/Drawing/Imaging/misc.ab> 
     8 
     9#require <Classes/System/Drawing/SizeF.ab> 
     10#require <Classes/System/Drawing/Size.ab> 
     11#require <Classes/System/Drawing/PointF.ab> 
     12#require <Classes/System/Drawing/Point.ab> 
     13#require <Classes/System/Drawing/RectangleF.ab> 
     14#require <Classes/System/Drawing/Rectangle.ab> 
     15#require <Classes/System/Drawing/CharacterRange.ab> 
     16 
     17Namespace Gdiplus 
    718 
    819TypeDef ImageAbort = *Function(p As VoidPtr) As BOOL 
     
    1021TypeDef GetThumbnailImageAbort = ImageAbort 
    1122 
    12 TypeDef EnumerateMetafileProc = *Function(recordType As EmfPlusRecordType, flags As DWord, dataSize As DWord, data As BytePtr, callbackData As VoidPtr) As BOOL 
     23TypeDef EnumerateMetafileProc = *Function(recordType As System.Drawing.Imaging.EmfPlusRecordType, flags As DWord, dataSize As DWord, data As BytePtr, callbackData As VoidPtr) As BOOL 
    1324 
    1425'Const REAL_MAX           = FLT_MAX 
     
    1728'Const REAL_EPSILON       = 1.192092896e-07 'FLT_EPSILON 
    1829 
    19 Const Enum Status 
     30Enum Status 
    2031    Ok = 0 
    2132    GenericError = 1 
     
    4152End Enum 
    4253 
    43 #include <Classes/System/Drawing/SizeF.ab> 
    44 #include <Classes/System/Drawing/Size.ab> 
    45 #include <Classes/System/Drawing/PointF.ab> 
    46 #include <Classes/System/Drawing/Point.ab> 
    47 #include <Classes/System/Drawing/RectangleF.ab> 
    48 #include <Classes/System/Drawing/Rectangle.ab> 
    49 #include <Classes/System/Drawing/CharacterRange.ab> 
    50  
    5154Class PathData 
    5255Public 
     
    7780Public 
    7881    Count As Long 
    79     Points As *PointF 
     82    Points As *System.Drawing.PointF 
    8083    Types As *BYTE 
    8184End Class 
    8285 
     86' -------- 
     87 
     88TypeDef ARGB = DWord 
     89TypeDef ARGB64 = QWord 
     90 
     91Const ALPHA_SHIFT = 24 As DWord 
     92Const RED_SHIFT   = 16 As DWord 
     93Const GREEN_SHIFT = 8 As DWord 
     94Const BLUE_SHIFT  = 0 As DWord 
     95Const ALPHA_MASK  = ((&hff As ARGB) << ALPHA_SHIFT) 
     96 
     97Const GetPixelFormatSize(pixfmt) = ((((pixfmt As PixelFormat) >> 8) And &hff) As DWord) 
     98 
     99Const IsIndexedPixelFormat(pixfmt) = ((((pixfmt As PixelFormat) And PixelFormat.Indexed) <> 0) As BOOL) 
     100 
     101Const IsAlphaPixelFormat(pixfmt) = ((((pixfmt As PixelFormat) And PixelFormat.Alpha) <> 0) As BOOL) 
     102 
     103Const IsExtendedPixelFormat(pixfmt) = ((((pixfmt As PixelFormat) And PixelFormat.Extended) <> 0) As BOOL) 
     104 
     105Const IsCanonicalPixelFormat(pixfmt) = ((((pixfmt As PixelFormat) And PixelFormat.Canonical) <> 0) As BOOL) 
     106 
     107Type Align(8) ColorPalette 
     108    Flags As DWord 
     109    Count As DWord 
     110    Entries[1] As ARGB 
     111End Type 
     112 
     113Type ColorMatrix 
     114    m[5][5] As Single 
     115End Type 
     116 
     117Type Align(8) EncoderParameter 
     118    Guid As GUID 
     119    NumberOfValues As DWord 
     120    EncoderType As DWord '元はTypeという名前 
     121    Value As VoidPtr 
     122End Type 
     123 
     124Type Align(8) EncoderParameters 
     125    Count As DWord 
     126    Parameter[1] As EncoderParameter 
     127End Type 
     128 
     129Const PropertyTagTypeByte        = 1 
     130Const PropertyTagTypeASCII       = 2 
     131Const PropertyTagTypeShort       = 3 
     132Const PropertyTagTypeLong        = 4 
     133Const PropertyTagTypeRational    = 5 
     134Const PropertyTagTypeUndefined   = 7 
     135Const PropertyTagTypeSLONG       = 9 
     136Const PropertyTagTypeSRational  = 10 
     137 
     138Const PropertyTagExifIFD             = &h8769 
     139Const PropertyTagGpsIFD              = &h8825 
     140 
     141Const PropertyTagNewSubfileType      = &h00FE 
     142Const PropertyTagSubfileType         = &h00FF 
     143Const PropertyTagImageWidth          = &h0100 
     144Const PropertyTagImageHeight         = &h0101 
     145Const PropertyTagBitsPerSample       = &h0102 
     146Const PropertyTagCompression         = &h0103 
     147Const PropertyTagPhotometricInterp   = &h0106 
     148Const PropertyTagThreshHolding       = &h0107 
     149Const PropertyTagCellWidth           = &h0108 
     150Const PropertyTagCellHeight          = &h0109 
     151Const PropertyTagFillOrder           = &h010A 
     152Const PropertyTagDocumentName        = &h010D 
     153Const PropertyTagImageDescription    = &h010E 
     154Const PropertyTagEquipMake           = &h010F 
     155Const PropertyTagEquipModel          = &h0110 
     156Const PropertyTagStripOffsets        = &h0111 
     157Const PropertyTagOrientation         = &h0112 
     158Const PropertyTagSamplesPerPixel     = &h0115 
     159Const PropertyTagRowsPerStrip        = &h0116 
     160Const PropertyTagStripBytesCount     = &h0117 
     161Const PropertyTagMinSampleValue      = &h0118 
     162Const PropertyTagMaxSampleValue      = &h0119 
     163Const PropertyTagXResolution         = &h011A   ' Image resolution in width direction 
     164Const PropertyTagYResolution         = &h011B   ' Image resolution in height direction 
     165Const PropertyTagPlanarConfig        = &h011C   ' Image data arrangement 
     166Const PropertyTagPageName            = &h011D 
     167Const PropertyTagXPosition           = &h011E 
     168Const PropertyTagYPosition           = &h011F 
     169Const PropertyTagFreeOffset          = &h0120 
     170Const PropertyTagFreeByteCounts      = &h0121 
     171Const PropertyTagGrayResponseUnit    = &h0122 
     172Const PropertyTagGrayResponseCurve   = &h0123 
     173Const PropertyTagT4Option            = &h0124 
     174Const PropertyTagT6Option            = &h0125 
     175Const PropertyTagResolutionUnit      = &h0128   ' Unit of X and Y resolution 
     176Const PropertyTagPageNumber          = &h0129 
     177Const PropertyTagTransferFuncition   = &h012D 
     178Const PropertyTagSoftwareUsed        = &h0131 
     179Const PropertyTagDateTime            = &h0132 
     180Const PropertyTagArtist              = &h013B 
     181Const PropertyTagHostComputer        = &h013C 
     182Const PropertyTagPredictor           = &h013D 
     183Const PropertyTagWhitePoint          = &h013E 
     184Const PropertyTagPrimaryChromaticities = &h013F 
     185Const PropertyTagColorMap            = &h0140 
     186Const PropertyTagHalftoneHints       = &h0141 
     187Const PropertyTagTileWidth           = &h0142 
     188Const PropertyTagTileLength          = &h0143 
     189Const PropertyTagTileOffset          = &h0144 
     190Const PropertyTagTileByteCounts      = &h0145 
     191Const PropertyTagInkSet              = &h014C 
     192Const PropertyTagInkNames            = &h014D 
     193Const PropertyTagNumberOfInks        = &h014E 
     194Const PropertyTagDotRange            = &h0150 
     195Const PropertyTagTargetPrinter       = &h0151 
     196Const PropertyTagExtraSamples        = &h0152 
     197Const PropertyTagSampleFormat        = &h0153 
     198Const PropertyTagSMinSampleValue     = &h0154 
     199Const PropertyTagSMaxSampleValue     = &h0155 
     200Const PropertyTagTransferRange       = &h0156 
     201 
     202Const PropertyTagJPEGProc            = &h0200 
     203Const PropertyTagJPEGInterFormat     = &h0201 
     204Const PropertyTagJPEGInterLength     = &h0202 
     205Const PropertyTagJPEGRestartInterval = &h0203 
     206Const PropertyTagJPEGLosslessPredictors  = &h0205 
     207Const PropertyTagJPEGPointTransforms     = &h0206 
     208Const PropertyTagJPEGQTables         = &h0207 
     209Const PropertyTagJPEGDCTables        = &h0208 
     210Const PropertyTagJPEGACTables        = &h0209 
     211 
     212Const PropertyTagYCbCrCoefficients   = &h0211 
     213Const PropertyTagYCbCrSubsampling    = &h0212 
     214Const PropertyTagYCbCrPositioning    = &h0213 
     215Const PropertyTagREFBlackWhite       = &h0214 
     216 
     217Const PropertyTagICCProfile          = &h8773   ' This TAG is defined by ICC 
     218                                                ' for embedded ICC in TIFF 
     219Const PropertyTagGamma               = &h0301 
     220Const PropertyTagICCProfileDescriptor = &h0302 
     221Const PropertyTagSRGBRenderingIntent = &h0303 
     222 
     223Const PropertyTagImageTitle          = &h0320 
     224Const PropertyTagCopyright           = &h8298 
     225 
     226' Extra TAGs (Like Adobe Image Information tags etc.) 
     227 
     228Const PropertyTagResolutionXUnit           = &h5001 
     229Const PropertyTagResolutionYUnit           = &h5002 
     230Const PropertyTagResolutionXLengthUnit     = &h5003 
     231Const PropertyTagResolutionYLengthUnit     = &h5004 
     232Const PropertyTagPrintFlags                = &h5005 
     233Const PropertyTagPrintFlagsVersion         = &h5006 
     234Const PropertyTagPrintFlagsCrop            = &h5007 
     235Const PropertyTagPrintFlagsBleedWidth      = &h5008 
     236Const PropertyTagPrintFlagsBleedWidthScale = &h5009 
     237Const PropertyTagHalftoneLPI               = &h500A 
     238Const PropertyTagHalftoneLPIUnit           = &h500B 
     239Const PropertyTagHalftoneDegree            = &h500C 
     240Const PropertyTagHalftoneShape             = &h500D 
     241Const PropertyTagHalftoneMisc              = &h500E 
     242Const PropertyTagHalftoneScreen            = &h500F 
     243Const PropertyTagJPEGQuality               = &h5010 
     244Const PropertyTagGridSize                  = &h5011 
     245Const PropertyTagThumbnailFormat           = &h5012  ' 1 = JPEG, 0 = RAW RGB 
     246Const PropertyTagThumbnailWidth            = &h5013 
     247Const PropertyTagThumbnailHeight           = &h5014 
     248Const PropertyTagThumbnailColorDepth       = &h5015 
     249Const PropertyTagThumbnailPlanes           = &h5016 
     250Const PropertyTagThumbnailRawBytes         = &h5017 
     251Const PropertyTagThumbnailSize             = &h5018 
     252Const PropertyTagThumbnailCompressedSize   = &h5019 
     253Const PropertyTagColorTransferFunction     = &h501A 
     254Const PropertyTagThumbnailData             = &h501B' RAW thumbnail bits in 
     255                                                   ' JPEG format or RGB format 
     256                                                   ' depends on 
     257                                                   ' PropertyTagThumbnailFormat 
     258 
     259' Thumbnail related TAGs 
     260 
     261Const PropertyTagThumbnailImageWidth       = &h5020  ' Thumbnail width 
     262Const PropertyTagThumbnailImageHeight      = &h5021  ' Thumbnail height 
     263Const PropertyTagThumbnailBitsPerSample    = &h5022  ' Number of bits per 
     264                                                     ' component 
     265Const PropertyTagThumbnailCompression      = &h5023  ' Compression Scheme 
     266Const PropertyTagThumbnailPhotometricInterp = &h5024 ' Pixel composition 
     267Const PropertyTagThumbnailImageDescription = &h5025  ' Image Tile 
     268Const PropertyTagThumbnailEquipMake        = &h5026  ' Manufacturer of Image 
     269                                                     ' Input equipment 
     270Const PropertyTagThumbnailEquipModel       = &h5027  ' Model of Image input 
     271                                                     ' equipment 
     272Const PropertyTagThumbnailStripOffsets     = &h5028  ' Image data location 
     273Const PropertyTagThumbnailOrientation      = &h5029  ' Orientation of image 
     274Const PropertyTagThumbnailSamplesPerPixel  = &h502A  ' Number of components 
     275Const PropertyTagThumbnailRowsPerStrip     = &h502B  ' Number of rows per strip 
     276Const PropertyTagThumbnailStripBytesCount  = &h502C  ' Bytes per compressed 
     277                                                     ' strip 
     278Const PropertyTagThumbnailResolutionX      = &h502D  ' Resolution in width 
     279                                                     ' direction 
     280Const PropertyTagThumbnailResolutionY      = &h502E  ' Resolution in height 
     281                                                     ' direction 
     282Const PropertyTagThumbnailPlanarConfig     = &h502F  ' Image data arrangement 
     283Const PropertyTagThumbnailResolutionUnit   = &h5030  ' Unit of X and Y 
     284                                                     ' Resolution 
     285Const PropertyTagThumbnailTransferFunction = &h5031  ' Transfer function 
     286Const PropertyTagThumbnailSoftwareUsed     = &h5032  ' Software used 
     287Const PropertyTagThumbnailDateTime         = &h5033  ' File change date and 
     288                                                     ' time 
     289Const PropertyTagThumbnailArtist           = &h5034  ' Person who created the 
     290                                                     ' image 
     291Const PropertyTagThumbnailWhitePoint       = &h5035  ' White point chromaticity 
     292Const PropertyTagThumbnailPrimaryChromaticities = &h5036 
     293                                                     ' Chromaticities of 
     294                                                     ' primaries 
     295Const PropertyTagThumbnailYCbCrCoefficients = &h5037 ' Color space transforma- 
     296                                                     ' tion coefficients 
     297Const PropertyTagThumbnailYCbCrSubsampling = &h5038  ' Subsampling ratio of Y 
     298                                                     ' to C 
     299Const PropertyTagThumbnailYCbCrPositioning = &h5039  ' Y and C position 
     300Const PropertyTagThumbnailRefBlackWhite    = &h503A  ' Pair of black and white 
     301                                                     ' reference values 
     302Const PropertyTagThumbnailCopyRight        = &h503B  ' CopyRight holder 
     303 
     304Const PropertyTagLuminanceTable            = &h5090 
     305Const PropertyTagChrominanceTable          = &h5091 
     306 
     307Const PropertyTagFrameDelay                = &h5100 
     308Const PropertyTagLoopCount                 = &h5101 
     309 
     310Const PropertyTagPixelUnit         = &h5110  ' Unit specifier for pixel/unit 
     311Const PropertyTagPixelPerUnitX     = &h5111  ' Pixels per unit in X 
     312Const PropertyTagPixelPerUnitY     = &h5112  ' Pixels per unit in Y 
     313Const PropertyTagPaletteHistogram  = &h5113  ' Palette histogram 
     314 
     315' EXIF specific tag 
     316 
     317Const PropertyTagExifExposureTime  = &h829A 
     318Const PropertyTagExifFNumber       = &h829D 
     319 
     320Const PropertyTagExifExposureProg  = &h8822 
     321Const PropertyTagExifSpectralSense = &h8824 
     322Const PropertyTagExifISOSpeed      = &h8827 
     323Const PropertyTagExifOECF          = &h8828 
     324 
     325Const PropertyTagExifVer            = &h9000 
     326Const PropertyTagExifDTOrig         = &h9003 ' Date & time of original 
     327Const PropertyTagExifDTDigitized    = &h9004 ' Date & time of digital data generation 
     328 
     329Const PropertyTagExifCompConfig     = &h9101 
     330Const PropertyTagExifCompBPP        = &h9102 
     331 
     332Const PropertyTagExifShutterSpeed   = &h9201 
     333Const PropertyTagExifAperture       = &h9202 
     334Const PropertyTagExifBrightness     = &h9203 
     335Const PropertyTagExifExposureBias   = &h9204 
     336Const PropertyTagExifMaxAperture    = &h9205 
     337Const PropertyTagExifSubjectDist    = &h9206 
     338Const PropertyTagExifMeteringMode   = &h9207 
     339Const PropertyTagExifLightSource    = &h9208 
     340Const PropertyTagExifFlash          = &h9209 
     341Const PropertyTagExifFocalLength    = &h920A 
     342Const PropertyTagExifMakerNote      = &h927C 
     343Const PropertyTagExifUserComment    = &h9286 
     344Const PropertyTagExifDTSubsec       = &h9290  ' Date & Time subseconds 
     345Const PropertyTagExifDTOrigSS       = &h9291  ' Date & Time original subseconds 
     346Const PropertyTagExifDTDigSS        = &h9292  ' Date & TIme digitized subseconds 
     347 
     348Const PropertyTagExifFPXVer         = &hA000 
     349Const PropertyTagExifColorSpace     = &hA001 
     350Const PropertyTagExifPixXDim        = &hA002 
     351Const PropertyTagExifPixYDim        = &hA003 
     352Const PropertyTagExifRelatedWav     = &hA004  ' related sound file 
     353Const PropertyTagExifInterop        = &hA005 
     354Const PropertyTagExifFlashEnergy    = &hA20B 
     355Const PropertyTagExifSpatialFR      = &hA20C  ' Spatial Frequency Response 
     356Const PropertyTagExifFocalXRes      = &hA20E  ' Focal Plane X Resolution 
     357Const PropertyTagExifFocalYRes      = &hA20F  ' Focal Plane Y Resolution 
     358Const PropertyTagExifFocalResUnit   = &hA210  ' Focal Plane Resolution Unit 
     359Const PropertyTagExifSubjectLoc     = &hA214 
     360Const PropertyTagExifExposureIndex  = &hA215 
     361Const PropertyTagExifSensingMethod  = &hA217 
     362Const PropertyTagExifFileSource     = &hA300 
     363Const PropertyTagExifSceneType      = &hA301 
     364Const PropertyTagExifCfaPattern     = &hA302 
     365 
     366Const PropertyTagGpsVer             = &h0000 
     367Const PropertyTagGpsLatitudeRef     = &h0001 
     368Const PropertyTagGpsLatitude        = &h0002 
     369Const PropertyTagGpsLongitudeRef    = &h0003 
     370Const PropertyTagGpsLongitude       = &h0004 
     371Const PropertyTagGpsAltitudeRef     = &h0005 
     372Const PropertyTagGpsAltitude        = &h0006 
     373Const PropertyTagGpsGpsTime         = &h0007 
     374Const PropertyTagGpsGpsSatellites   = &h0008 
     375Const PropertyTagGpsGpsStatus       = &h0009 
     376Const PropertyTagGpsGpsMeasureMode  = &h00A 
     377Const PropertyTagGpsGpsDop          = &h000B  ' Measurement precision 
     378Const PropertyTagGpsSpeedRef        = &h000C 
     379Const PropertyTagGpsSpeed           = &h000D 
     380Const PropertyTagGpsTrackRef        = &h000E 
     381Const PropertyTagGpsTrack           = &h000F 
     382Const PropertyTagGpsImgDirRef       = &h0010 
     383Const PropertyTagGpsImgDir          = &h0011 
     384Const PropertyTagGpsMapDatum        = &h0012 
     385Const PropertyTagGpsDestLatRef      = &h0013 
     386Const PropertyTagGpsDestLat         = &h0014 
     387Const PropertyTagGpsDestLongRef     = &h0015 
     388Const PropertyTagGpsDestLong        = &h0016 
     389Const PropertyTagGpsDestBearRef     = &h0017 
     390Const PropertyTagGpsDestBear        = &h0018 
     391Const PropertyTagGpsDestDistRef     = &h0019 
     392Const PropertyTagGpsDestDist        = &h001A 
     393 
     394Type ImageCodecInfo 
     395    Clsid As CLSID 
     396    FormatID As GUID 
     397    CodecName As PCWSTR 
     398    DllName As PCWSTR 
     399    FormatDescription As PCWSTR 
     400    FilenameExtension As PCWSTR 
     401    MimeType As PCWSTR 
     402    Flags As DWord 
     403    Version As DWord 
     404    SigCount As DWord 
     405    SigSize As DWord 
     406    SigPattern As *Byte 
     407    SigMask As DWord 
     408End Type 
     409 
     410End Namespace 
     411 
    83412#endif '__GDIPLUSTYPES_AB__ 
Note: See TracChangeset for help on using the changeset viewer.