![Vanara](https://raw.githubusercontent.com/dahall/Vanara/master/docs/icons/VanaraHeading.png)
### **Vanara.PInvoke.Graphics NuGet Package**
[![Version](https://img.shields.io/nuget/v/Vanara.PInvoke.Graphics?label=NuGet&style=flat-square)](https://github.com/dahall/Vanara/releases)
[![Build status](https://img.shields.io/appveyor/build/dahall/vanara?label=AppVeyor%20build&style=flat-square)](https://ci.appveyor.com/project/dahall/vanara)

PInvoke API (methods, interfaces, structures and constants) imported from Windows Graphics APIs. Currently supports Windows Imaging Component (WIC), DirectWrite (full), Direct2D (partial), and Direct3D (DXGI only).

### **What is Vanara?**

[Vanara](https://github.com/dahall/Vanara) is a community project that contains various .NET assemblies which have P/Invoke functions, interfaces, enums and structures from Windows libraries. Each assembly is associated with one or a few tightly related libraries.

### **Issues?**

First check if it's already fixed by trying the [AppVeyor build](https://ci.appveyor.com/nuget/vanara-prerelease).
If you're still running into problems, file an [issue](https://github.com/dahall/Vanara/issues).

### **Included in Vanara.PInvoke.Graphics**

Functions | Enumerations | Structures | Interfaces
--- | --- | --- | ---
CreateDXGIFactory CreateDXGIFactory1 CreateDXGIFactory2 D2D1ComputeMaximumScaleFactor D2D1ConvertColorSpace D2D1CreateDevice D2D1CreateDeviceContext D2D1CreateFactory D2D1GetGradientMeshInteriorPointsFromCoonsPatch D2D1InvertMatrix D2D1IsMatrixInvertible D2D1MakeRotateMatrix D2D1MakeSkewMatrix D2D1SinCos D2D1Tan D2D1Vec3Length DWriteCreateFactory DXGIDeclareAdapterRemovalSupport DXGIGetDebugInterface1 WICConvertBitmapSource WICCreateBitmapFromSection WICCreateBitmapFromSectionEx WICMapGuidToShortName WICMapSchemaToName WICMapShortNameToGuid                                                                                                                       | D2D1_ALPHA_MODE D2D1_ANTIALIAS_MODE D2D1_ARC_SIZE D2D1_BITMAP_INTERPOLATION_MODE D2D1_CAP_STYLE D2D1_COLOR_SPACE D2D1_COMBINE_MODE D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS D2D1_DASH_STYLE D2D1_DC_INITIALIZE_MODE D2D1_DEBUG_LEVEL D2D1_DEVICE_CONTEXT_OPTIONS D2D1_DRAW_TEXT_OPTIONS D2D1_EXTEND_MODE D2D1_FACTORY_TYPE D2D1_FEATURE_LEVEL D2D1_FIGURE_BEGIN D2D1_FIGURE_END D2D1_FILL_MODE D2D1_GAMMA D2D1_GEOMETRY_RELATION D2D1_GEOMETRY_SIMPLIFICATION_OPTION D2D1_LAYER_OPTIONS D2D1_LINE_JOIN D2D1_OPACITY_MASK_CONTENT D2D1_PATH_SEGMENT D2D1_PRESENT_OPTIONS D2D1_PRINT_FONT_SUBSET_MODE D2D1_RENDER_TARGET_TYPE D2D1_RENDER_TARGET_USAGE D2D1_SWEEP_DIRECTION D2D1_TEXT_ANTIALIAS_MODE D2D1_WINDOW_STATE D2D1_BITMAP_OPTIONS D2D1_BUFFER_PRECISION D2D1_COLOR_INTERPOLATION_MODE D2D1_COMPOSITE_MODE D2D1_INTERPOLATION_MODE D2D1_LAYER_OPTIONS1 D2D1_MAP_OPTIONS D2D1_PRIMITIVE_BLEND D2D1_PROPERTY_TYPE D2D1_THREADING_MODE D2D1_UNIT_MODE DXGI_ADAPTER_FLAG DXGI_CREATE_FACTORY DXGI_ENUM_MODES DXGI_FORMAT DXGI_MAP DXGI_MODE_ROTATION DXGI_MODE_SCALING DXGI_MODE_SCANLINE_ORDER DXGI_MWA DXGI_PRESENT DXGI_RESIDENCY DXGI_SWAP_CHAIN_FLAG DXGI_SWAP_EFFECT DXGI_USAGE DWRITE_BREAK_CONDITION DWRITE_FACTORY_TYPE DWRITE_FLOW_DIRECTION DWRITE_FONT_FACE_TYPE DWRITE_FONT_FEATURE_TAG DWRITE_FONT_FILE_TYPE DWRITE_FONT_SIMULATIONS DWRITE_FONT_STRETCH DWRITE_FONT_STYLE DWRITE_FONT_WEIGHT DWRITE_INFORMATIONAL_STRING_ID DWRITE_LINE_SPACING_METHOD DWRITE_MEASURING_MODE DWRITE_NUMBER_SUBSTITUTION_METHOD DWRITE_PARAGRAPH_ALIGNMENT DWRITE_PIXEL_GEOMETRY DWRITE_READING_DIRECTION DWRITE_RENDERING_MODE DWRITE_SCRIPT_SHAPES DWRITE_TEXT_ALIGNMENT DWRITE_TEXTURE_TYPE DWRITE_TRIMMING_GRANULARITY DWRITE_WORD_WRAPPING WIC_JPEG_HUFFMAN_BASELINE WIC_JPEG_QUANTIZATION_BASELINE WIC_JPEG_SAMPLE_FACTORS WIC8BIMIptcDigestProperties WIC8BIMIptcProperties WIC8BIMResolutionInfoProperties WICBitmapAlphaChannelOption WICBitmapCreateCacheOption WICBitmapDecoderCapabilities WICBitmapDitherType WICBitmapEncoderCacheOption WICBitmapInterpolationMode WICBitmapLockFlags WICBitmapPaletteType WICBitmapTransformOptions WICColorContextType WICComponentEnumerateOptions WICComponentSigning WICComponentType WICDdsAlphaMode WICDdsDimension WICDecodeOptions WICGifApplicationExtensionProperties WICGifCommentExtensionProperties WICGifGraphicControlExtensionProperties WICGifImageDescriptorProperties WICGifLogicalScreenDescriptorProperties WICHeifHdrProperties WICJpegChrominanceProperties WICJpegCommentProperties WICJpegFrameDecode WICJpegIndexingOptions WICJpegLuminanceProperties WICJpegScanType WICJpegTransferMatrix WICJpegYCrCbSubsamplingOption WICMetadataCreationOptions WICNamedWhitePoint WICPersistOptions WICPixelFormatNumericRepresentation WICPlanarOptions WICPngBkgdProperties WICPngChrmProperties WICPngFilterOption WICPngGamaProperties WICPngHistProperties WICPngIccpProperties WICPngItxtProperties WICPngSrgbProperties WICPngTimeProperties WICProgressNotification WICProgressOperation WICRawCapabilities WICRawChangeNotification WICRawParameterSet WICRawRenderMode WICRawRotationCapabilities WICSectionAccessLevel WICTiffCompressionOption WICWebpAnimProperties WICWebpAnmfProperties  | D2D_MATRIX_3X2_F D2D_POINT_2F D2D_RECT_F D2D_SIZE_F D2D_SIZE_U D2D1_ARC_SEGMENT D2D1_BEZIER_SEGMENT D2D1_BITMAP_BRUSH_PROPERTIES D2D1_BITMAP_PROPERTIES D2D1_BRUSH_PROPERTIES D2D1_DRAWING_STATE_DESCRIPTION D2D1_ELLIPSE D2D1_FACTORY_OPTIONS D2D1_GRADIENT_STOP D2D1_HWND_RENDER_TARGET_PROPERTIES D2D1_LAYER_PARAMETERS D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES D2D1_PIXEL_FORMAT D2D1_PRINT_CONTROL_PROPERTIES D2D1_QUADRATIC_BEZIER_SEGMENT D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES D2D1_RENDER_TARGET_PROPERTIES D2D1_ROUNDED_RECT D2D1_STROKE_STYLE_PROPERTIES D2D1_TRIANGLE D3DCOLORVALUE DWRITE_GLYPH_RUN DXGI_JPEG_AC_HUFFMAN_TABLE DXGI_JPEG_DC_HUFFMAN_TABLE DXGI_JPEG_QUANTIZATION_TABLE D2D1_BITMAP_PROPERTIES1 D2D1_CREATION_PROPERTIES D2D1_EFFECT_INPUT_DESCRIPTION D2D1_IMAGE_BRUSH_PROPERTIES D2D1_LAYER_PARAMETERS1 D2D1_MAPPED_RECT D2D1_RENDERING_CONTROLS DXGI_ADAPTER_DESC DXGI_ADAPTER_DESC1 DXGI_FRAME_STATISTICS DXGI_GAMMA_CONTROL DXGI_GAMMA_CONTROL_CAPABILITIES DXGI_MAPPED_RECT DXGI_MODE_DESC DXGI_OUTPUT_DESC DXGI_RATIONAL DXGI_RGB DXGI_SAMPLE_DESC DXGI_SHARED_RESOURCE DXGI_SURFACE_DESC DXGI_SWAP_CHAIN_DESC DWRITE_CLUSTER_METRICS DWRITE_FONT_FEATURE DWRITE_FONT_METRICS DWRITE_GLYPH_METRICS DWRITE_GLYPH_OFFSET DWRITE_GLYPH_RUN DWRITE_GLYPH_RUN_DESCRIPTION DWRITE_HIT_TEST_METRICS DWRITE_INLINE_OBJECT_METRICS DWRITE_LINE_BREAKPOINT DWRITE_LINE_METRICS DWRITE_MATRIX DWRITE_OVERHANG_METRICS DWRITE_SCRIPT_ANALYSIS DWRITE_SHAPING_GLYPH_PROPERTIES DWRITE_SHAPING_TEXT_PROPERTIES DWRITE_STRIKETHROUGH DWRITE_TEXT_METRICS DWRITE_TEXT_RANGE DWRITE_TRIMMING DWRITE_TYPOGRAPHIC_FEATURES DWRITE_UNDERLINE WICBitmapPattern WICBitmapPlane WICBitmapPlaneDescription WICDdsFormatInfo WICDdsParameters WICImageParameters WICJpegFrameHeader WICJpegScanHeader WICMetadataHeader WICMetadataPattern WICRawCapabilitiesInfo WICRawToneCurve WICRawToneCurvePoint WICRect PWICRect                                                        | ID2D1Bitmap ID2D1BitmapBrush ID2D1BitmapRenderTarget ID2D1Brush ID2D1DCRenderTarget ID2D1Device ID2D1DeviceContext ID2D1DrawingStateBlock ID2D1EllipseGeometry ID2D1Factory ID2D1Geometry ID2D1GeometryGroup ID2D1GeometrySink ID2D1GradientStopCollection ID2D1HwndRenderTarget ID2D1Image ID2D1Layer ID2D1LinearGradientBrush ID2D1Mesh ID2D1PathGeometry ID2D1PrintControl ID2D1RadialGradientBrush ID2D1RectangleGeometry ID2D1RenderTarget ID2D1Resource ID2D1RoundedRectangleGeometry ID2D1SimplifiedGeometrySink ID2D1SolidColorBrush ID2D1StrokeStyle ID2D1TessellationSink ID2D1TransformedGeometry ID2D1Bitmap1 ID2D1BitmapBrush1 ID2D1ColorContext ID2D1CommandList ID2D1CommandSink ID2D1Effect ID2D1GdiMetafile ID2D1GdiMetafileSink ID2D1GradientStopCollection1 ID2D1ImageBrush ID2D1Properties IDXGIAdapter IDXGIAdapter1 IDXGIDevice IDXGIDeviceSubObject IDXGIFactory IDXGIFactory1 IDXGIObject IDXGIOutput IDXGISurface IDXGISwapChain IDWriteBitmapRenderTarget IDWriteFactory IDWriteFont IDWriteFontCollection IDWriteFontCollectionLoader IDWriteFontFace IDWriteFontFamily IDWriteFontFile IDWriteFontFileEnumerator IDWriteFontFileLoader IDWriteFontFileStream IDWriteFontList IDWriteGdiInterop IDWriteGlyphRunAnalysis IDWriteInlineObject IDWriteLocalFontFileLoader IDWriteLocalizedStrings IDWriteNumberSubstitution IDWritePixelSnapping IDWriteRenderingParams IDWriteTextAnalysisSink IDWriteTextAnalysisSource IDWriteTextAnalyzer IDWriteTextFormat IDWriteTextLayout IDWriteTextRenderer IDWriteTypography IWICBitmap IWICBitmapClipper IWICBitmapCodecInfo IWICBitmapCodecProgressNotification IWICBitmapDecoder IWICBitmapDecoderInfo IWICBitmapEncoder IWICBitmapEncoderInfo IWICBitmapFlipRotator IWICBitmapFrameDecode IWICBitmapFrameEncode IWICBitmapLock IWICBitmapScaler IWICBitmapSource IWICBitmapSourceTransform IWICColorContext IWICColorTransform IWICComponentFactory IWICComponentInfo IWICDdsDecoder IWICDdsEncoder IWICDevelopRaw IWICDevelopRawNotificationCallback IWICDdsFrameDecode IWICEnumMetadataItem IWICFastMetadataEncoder IWICFormatConverter IWICFormatConverterInfo IWICImageEncoder IWICImagingFactory IWICImagingFactory2 IWICJpegFrameDecode IWICJpegFrameEncode IWICMetadataBlockReader IWICMetadataBlockWriter IWICMetadataHandlerInfo IWICMetadataQueryReader IWICMetadataQueryWriter IWICMetadataReader IWICMetadataReaderInfo IWICMetadataWriter IWICMetadataWriterInfo IWICPalette IWICPersistStream IWICPixelFormatInfo IWICPixelFormatInfo2 IWICPlanarBitmapFrameEncode IWICPlanarBitmapSourceTransform IWICPlanarFormatConverter IWICProgressCallback IWICProgressiveLevelControl IWICStream IWICStreamProvider           
