<?xml version="1.0"?>
<doc>
    <assembly>
        <name>PaintDotNet.Core</name>
    </assembly>
    <members>
        <member name="T:PaintDotNet.ApplicationUtil">
            <summary>
            Provides utility methods for a WinForms Application.
            </summary>
        </member>
        <member name="M:PaintDotNet.ApplicationUtil.FindFocus">
            <summary>
            Searches all open forms in the WinForms application to find the Control that currently has focus.
            </summary>
        </member>
        <member name="F:PaintDotNet.AppModel.AppInstallType.Classic">
            <summary>
            The application was installed via the Setup Wizard or via MSI deployment. The built-in updater can be used
            as long as MSI deployment was not used.
            </summary>
        </member>
        <member name="F:PaintDotNet.AppModel.AppInstallType.Portable">
            <summary>
            The application is running "portably," which means it hasn't been installed and may be running off of an
            external, removal storage device such as a USB stick. The built-in updater cannot be used, but we still
            notify about update availability. An external settings file is used instead of the registry.
            </summary>
        </member>
        <member name="F:PaintDotNet.AppModel.AppInstallType.Appx">
            <summary>
            The application was installed from the Windows Store, which will manage updates.
            </summary>
        </member>
        <member name="P:PaintDotNet.AppModel.IAppInfoService.InstallDirectory">
            <summary>
            Gets the path to the directory where paint.net is installed to or running from.
            </summary>
        </member>
        <member name="T:PaintDotNet.AppModel.IDxgiAdapterService">
            <summary>
            This interface provides access to the IDXGIAdapter that Paint.NET uses for rendering.
            </summary>
        </member>
        <member name="M:PaintDotNet.AppModel.IDxgiAdapterService.GetRenderingAdapter">
            <summary>
            Retrieves the <a href="https://learn.microsoft.com/en-us/windows/win32/api/dxgi/nn-dxgi-idxgiadapter">IDXGIAdapter</a>
            that Paint.NET uses for rendering effects, adjustments, and tools.
            </summary>
            <returns>
            A <see cref="T:PaintDotNet.Interop.SafeComObject"/> that manages the COM object pointer. If the caller stores the COM object pointer
            after extracting it from the <see cref="T:PaintDotNet.Interop.SafeComObject"/>, it should call AddRef() on it and then call Release()
            when it is finished with it (as per standard COM ref counting rules).
            </returns>
            <remarks>
            This method may return an adapter for a hardware device or the WARP device, depending on the user's settings
            or other factors. The adapter will meet the minimum requirements for Paint.NET's use: Feature Level 11,
            compute shaders, and all required precisions and buffer formats (Alpha8, Bgra32, Rgba64, Rgba64Float16, and
            RgbaFloat32). It is up to the caller to evaluate the device's capabilities (e.g. D3D10X, double precision,
            etc.) if their requirements go beyond that (e.g. Feature Level 12, double precision floating point).<br/>
            </remarks>
        </member>
        <member name="P:PaintDotNet.AppModel.IFileSystemService.PerUserAppFilesPath">
            <summary>
            Gets the per-user directory that can contain application files such as plugins and crash logs.
            </summary>
            <remarks>
            This directory is not guaranteed to exist. This directory may also be a plugin directory root,
            depending on configuration (e.g. AppSettings.Plugins.AllowLoadingPluginsFromUserLocations).
            </remarks>
        </member>
        <member name="M:PaintDotNet.AppModel.IFileSystemService.GetPluginDirectoryRoots">
            <summary>
            Gets the directory locations that may have subdirectories which then contain plugins.
            </summary>
            <remarks>
            The directories are not guaranteed to exist. Not all plugin types will be available in all root directories.
            </remarks>
        </member>
        <member name="M:PaintDotNet.AppModel.IFileSystemService.GetPluginDirectoryInfos">
            <summary>
            Gets the directory paths that may have plugins, along with the type of plugin that may be found in each directory.
            </summary>
            <remarks>
            All directories will be a subdirectory of one of the directories returned by GetPluginDirectoryRoots().
            The directories are not guaranteed to exist.
            </remarks>
        </member>
        <member name="T:PaintDotNet.AppModel.IPalettesService">
            <summary>
            Provides read-only access to palettes for plugins.
            </summary>
        </member>
        <member name="P:PaintDotNet.AppModel.IUISynchronizationContext.IsOnUIThread">
            <summary>
            Gets a flag indicating whether the current thread is the main UI thread.
            </summary>
        </member>
        <member name="M:PaintDotNet.AppModel.IUISynchronizationContext.Send(System.Threading.SendOrPostCallback,System.Object)">
            <summary>
            Sends a callback to be executed on the UI thread. This method does not return until the callback completes.
            </summary>
        </member>
        <member name="M:PaintDotNet.AppModel.IUISynchronizationContext.Post(System.Threading.SendOrPostCallback,System.Object)">
            <summary>
            Posts a callback to be executed on the UI thread. This method returns immediately without waiting for the callback to complete.
            </summary>
        </member>
        <member name="P:PaintDotNet.AppModel.IUserFilesService.UserFilesPath">
            <summary>
            Gets the most recently retrieved (cached) path for the user files directory.
            </summary>
            <remarks>
            This may return null if the path could not be obtained.
            </remarks>
        </member>
        <member name="M:PaintDotNet.AppModel.IUserFilesService.TryGetUserFilesPath">
            <summary>
            Gets the path for the user files directory.
            </summary>
            <remarks>
            This may return null if the path cannot be obtained.
            </remarks>
        </member>
        <member name="P:PaintDotNet.AppModel.PluginDirectoryInfo.Type">
            <summary>
            The type of plugin that can be in the directory.
            </summary>
        </member>
        <member name="P:PaintDotNet.AppModel.PluginDirectoryInfo.Path">
            <summary>
            The absolute path to the plugin directory.
            </summary>
        </member>
        <member name="T:PaintDotNet.AppModel.PluginOptions">
            <summary>
            The base class that plugins use the specify information about themselves to the plugin system.
            This class should not be used to house information for UI purposes, such as display names or
            icons.
            </summary>
        </member>
        <member name="M:PaintDotNet.AppModel.PluginOptions.Freeze">
            <summary>
            Makes the instance immutable. Also applies any fixups, such as adjusting or migrating obsolete options.
            </summary>
        </member>
        <member name="M:PaintDotNet.AppModel.PluginOptions.OnFrozen">
            <summary>
            Called by the base class when Freeze() is called for the first time. This is where
            "fixups" should be applied, such as adjusting or migrating obsolete options.
            </summary>
        </member>
        <member name="T:PaintDotNet.BinaryPixelOp">
            <summary>
            Defines a way to operate on a pixel, or a region of pixels, in a binary fashion.
            That is, it is a simple function F that takes two parameters and returns a
            result of the form: c = F(a, b)
            </summary>
        </member>
        <member name="M:PaintDotNet.BinaryPixelOp.Apply(PaintDotNet.Surface,System.Drawing.Point,PaintDotNet.Surface,System.Drawing.Point,PaintDotNet.Surface,System.Drawing.Point,System.Drawing.Size)">
            <summary>
            Provides a default implementation for performing dst = F(lhs, rhs) over some rectangle of interest.
            </summary>
            <param name="dst">The Surface to write pixels to.</param>
            <param name="dstOffset">The pixel offset that defines the upper-left of the rectangle-of-interest for the dst Surface.</param>
            <param name="lhs">The Surface to read pixels from for the lhs parameter given to the method <b>ColorBgra Apply(ColorBgra, ColorBgra)</b>b>.</param>
            <param name="lhsOffset">The pixel offset that defines the upper-left of the rectangle-of-interest for the lhs Surface.</param>
            <param name="rhs">The Surface to read pixels from for the rhs parameter given to the method <b>ColorBgra Apply(ColorBgra, ColorBgra)</b></param>
            <param name="rhsOffset">The pixel offset that defines the upper-left of the rectangle-of-interest for the rhs Surface.</param>
            <param name="roiSize">The size of the rectangles-of-interest for all Surfaces.</param>
        </member>
        <member name="M:PaintDotNet.BitUtil.AndNot(System.UInt32,System.UInt32)">
            <summary>
            Returns ~a &amp; b
            </summary>
        </member>
        <member name="M:PaintDotNet.BitUtil.AndNot(System.UInt64,System.UInt64)">
            <summary>
            Returns ~a &amp; b
            </summary>
        </member>
        <member name="M:PaintDotNet.BitUtil.Select(System.Boolean,System.UInt32,System.UInt32)">
            <summary>
            Returns selector ? a : b
            </summary>
        </member>
        <member name="M:PaintDotNet.BitUtil.Select(System.Boolean,System.UInt64,System.UInt64)">
            <summary>
            Returns selector ? a : b
            </summary>
        </member>
        <member name="M:PaintDotNet.BitUtil.Select(System.Boolean,System.Single,System.Single)">
            <summary>
            Returns selector ? a : b
            </summary>
        </member>
        <member name="M:PaintDotNet.BitUtil.Select(System.Boolean,System.Double,System.Double)">
            <summary>
            Returns selector ? a : b
            </summary>
        </member>
        <member name="M:PaintDotNet.Clipboard.ClipboardExtensions.SetImage(PaintDotNet.Clipboard.IClipboard,System.Drawing.Image)">
            <summary>
            Takes the image and puts it onto the clipboard in a few standard formats.
            The clipboard is first emptied.
            </summary>
        </member>
        <member name="M:PaintDotNet.Clipboard.ClipboardExtensions.SetImage(PaintDotNet.Clipboard.IClipboard,System.Drawing.Bitmap)">
            <summary>
            Takes the image and puts it onto the clipboard in a few standard formats.
            The clipboard is first emptied.
            </summary>
        </member>
        <member name="M:PaintDotNet.Clipboard.ClipboardExtensions.SetImage(PaintDotNet.Clipboard.IClipboard,PaintDotNet.Rendering.ISurface{PaintDotNet.ColorBgra})">
            <summary>
            Takes the image and puts it onto the clipboard in a few standard formats.
            The clipboard is first emptied.
            </summary>
        </member>
        <member name="T:PaintDotNet.ColorBgra">
            <summary>
            This is our pixel format that we will work with. It is always 32-bits / 4-bytes and is
            always laid out in BGRA order.
            Generally used with the Surface class.
            </summary>
        </member>
        <member name="F:PaintDotNet.ColorBgra.Bgra">
            <summary>
            Lets you change B, G, R, and A at the same time.
            </summary>
        </member>
        <member name="P:PaintDotNet.ColorBgra.Item(System.Int32)">
            <summary>
            Gets or sets the byte value of the specified color channel.
            </summary>
        </member>
        <member name="M:PaintDotNet.ColorBgra.GetIntensity">
            <summary>
            Gets the luminance intensity of the pixel based on the values of the red, green, and blue components. Alpha is ignored.
            </summary>
            <returns>A value in the range 0 to 1 inclusive.</returns>
        </member>
        <member name="M:PaintDotNet.ColorBgra.GetIntensityByte">
            <summary>
            Gets the luminance intensity of the pixel based on the values of the red, green, and blue components. Alpha is ignored.
            </summary>
            <returns>A value in the range 0 to 255 inclusive.</returns>
        </member>
        <member name="M:PaintDotNet.ColorBgra.op_Equality(PaintDotNet.ColorBgra,PaintDotNet.ColorBgra)">
            <summary>
            Compares two ColorBgra instance to determine if they are equal.
            </summary>
        </member>
        <member name="M:PaintDotNet.ColorBgra.op_Inequality(PaintDotNet.ColorBgra,PaintDotNet.ColorBgra)">
            <summary>
            Compares two ColorBgra instance to determine if they are not equal.
            </summary>
        </member>
        <member name="M:PaintDotNet.ColorBgra.Equals(System.Object)">
            <summary>
            Compares two ColorBgra instance to determine if they are equal.
            </summary>
        </member>
        <member name="M:PaintDotNet.ColorBgra.GetHashCode">
            <summary>
            Returns a hash code for this color value.
            </summary>
            <returns></returns>
        </member>
        <member name="M:PaintDotNet.ColorBgra.NewAlpha(System.Byte)">
            <summary>
            Returns a new ColorBgra with the same color values but with a new alpha component value.
            </summary>
        </member>
        <member name="M:PaintDotNet.ColorBgra.FromBgra(System.Byte,System.Byte,System.Byte,System.Byte)">
            <summary>
            Creates a new ColorBgra instance with the given color and alpha values.
            </summary>
        </member>
        <member name="M:PaintDotNet.ColorBgra.FromBgraClamped(System.Int32,System.Int32,System.Int32,System.Int32)">
            <summary>
            Creates a new ColorBgra instance with the given color and alpha values.
            </summary>
        </member>
        <member name="M:PaintDotNet.ColorBgra.FromBgraClamped(System.Single,System.Single,System.Single,System.Single)">
            <summary>
            Creates a new ColorBgra instance with the given color and alpha values.
            </summary>
        </member>
        <member name="M:PaintDotNet.ColorBgra.BgraToUInt32(System.Byte,System.Byte,System.Byte,System.Byte)">
            <summary>
            Packs color and alpha values into a 32-bit integer.
            </summary>
        </member>
        <member name="M:PaintDotNet.ColorBgra.BgraToUInt32(System.Int32,System.Int32,System.Int32,System.Int32)">
            <summary>
            Packs color and alpha values into a 32-bit integer.
            </summary>
        </member>
        <member name="M:PaintDotNet.ColorBgra.FromBgr(System.Byte,System.Byte,System.Byte)">
            <summary>
            Creates a new ColorBgra instance with the given color values, and 255 for alpha.
            </summary>
        </member>
        <member name="M:PaintDotNet.ColorBgra.FromUInt32(System.UInt32)">
            <summary>
            Constructs a new ColorBgra instance with the given 32-bit value.
            </summary>
        </member>
        <member name="M:PaintDotNet.ColorBgra.FromOpaqueInt32(System.Int32)">
            <summary>
            Constructs a new ColorBgra instance given a 32-bit signed integer that represents an R,G,B triple.
            Alpha will be initialized to 255.
            </summary>
        </member>
        <member name="M:PaintDotNet.ColorBgra.FromColor(System.Drawing.Color)">
            <summary>
            Constructs a new ColorBgra instance from the values in the given Color instance.
            </summary>
        </member>
        <member name="M:PaintDotNet.ColorBgra.ToColor">
            <summary>
            Converts this ColorBgra instance to a Color instance.
            </summary>
        </member>
        <member name="M:PaintDotNet.ColorBgra.Blend(PaintDotNet.ColorBgra,PaintDotNet.ColorBgra,System.Byte)">
            <summary>
            Smoothly blends between two colors.
            </summary>
        </member>
        <member name="M:PaintDotNet.ColorBgra.Lerp(PaintDotNet.ColorBgra,PaintDotNet.ColorBgra,System.Single)">
            <summary>
            Linearly interpolates between two color values.
            </summary>
            <param name="from">The color value that represents 0 on the lerp number line.</param>
            <param name="to">The color value that represents 1 on the lerp number line.</param>
            <param name="frac">A value in the range [0, 1].</param>
            <remarks>
            This method does a simple lerp on each color value and on the alpha channel. It does
            not properly take into account the alpha channel's effect on color blending.
            </remarks>
        </member>
        <member name="M:PaintDotNet.ColorBgra.Lerp(PaintDotNet.ColorBgra,PaintDotNet.ColorBgra,System.Double)">
            <summary>
            Linearly interpolates between two color values.
            </summary>
            <param name="from">The color value that represents 0 on the lerp number line.</param>
            <param name="to">The color value that represents 1 on the lerp number line.</param>
            <param name="frac">A value in the range [0, 1].</param>
            <remarks>
            This method does a simple lerp on each color value and on the alpha channel. It does
            not properly take into account the alpha channel's effect on color blending.
            </remarks>
        </member>
        <member name="M:PaintDotNet.ColorBgra.BlendColors4W16IP(PaintDotNet.ColorBgra,System.UInt32,PaintDotNet.ColorBgra,System.UInt32,PaintDotNet.ColorBgra,System.UInt32,PaintDotNet.ColorBgra,System.UInt32)">
            <summary>
            Blends four colors together based on the given weight values.
            </summary>
            <returns>The blended color.</returns>
            <remarks>
            The weights should be 16-bit fixed point numbers that add up to 65536 ("1.0").
            4W16IP means "4 colors, weights, 16-bit integer precision"
            </remarks>
        </member>
        <member name="M:PaintDotNet.ColorBgra.BlendColorsWAIP(PaintDotNet.ColorBgra[],System.UInt32[])">
            <summary>
            Blends the colors based on the given weight values.
            </summary>
            <param name="c">The array of color values.</param>
            <param name="w">The array of weight values.</param>
            <returns>
            The weights should be fixed point numbers. 
            The total summation of the weight values will be treated as "1.0".
            Each color will be blended in proportionally to its weight value respective to 
            the total summation of the weight values.
            </returns>
            <remarks>
            "WAIP" stands for "weights, arbitrary integer precision"</remarks>
        </member>
        <member name="M:PaintDotNet.ColorBgra.BlendColorsWFP(PaintDotNet.ColorBgra[],System.Double[])">
            <summary>
            Blends the colors based on the given weight values.
            </summary>
            <param name="c">The array of color values.</param>
            <param name="w">The array of weight values.</param>
            <returns>
            Each color will be blended in proportionally to its weight value respective to 
            the total summation of the weight values.
            </returns>
            <remarks>
            "WAIP" stands for "weights, floating-point"</remarks>
        </member>
        <member name="M:PaintDotNet.ColorBgra.Blend(PaintDotNet.ColorBgra*,System.Int32)">
            <summary>
            Smoothly blends the given colors together, assuming equal weighting for each one.
            </summary>
        </member>
        <member name="M:PaintDotNet.ColorBgra.op_Explicit(PaintDotNet.ColorBgra)~System.UInt32">
            <summary>
            Casts a ColorBgra to a UInt32.
            </summary>
        </member>
        <member name="M:PaintDotNet.ColorBgra.op_Explicit(System.UInt32)~PaintDotNet.ColorBgra">
            <summary>
            Casts a UInt32 to a ColorBgra.
            </summary>
        </member>
        <member name="M:PaintDotNet.ControlExtensions.FindFocus(System.Windows.Forms.Control)">
            <summary>
            Searches the given control and its children controls to find the control that has focus.
            </summary>
            <remarks>Returns null if neither c nor one of its children controls has focus.</remarks>
        </member>
        <member name="T:PaintDotNet.Controls.IFormAssociate">
            <summary>
            Used by classes to indicate they are associated with a certain Form, even if
            they are not contained within the Form. To this end, they are an Associate of
            the Form.
            </summary>
        </member>
        <member name="P:PaintDotNet.Controls.IFormAssociate.AssociatedForm">
            <summary>
            Gets the Form that this object is associated with, or null if there is
            no association.
            </summary>
        </member>
        <member name="M:PaintDotNet.Controls.IGlassNotify.NotifyGlassSetting(System.Boolean)">
            <summary>
            Notifies the control of whether it needs to paint on top of glass.
            Special care is needed in order to maintain the alpha channel.
            </summary>
            <param name="isControlOnGlass">will be true if glass is enabled and if the control is on top of it</param>
        </member>
        <member name="M:PaintDotNet.Controls.IOnAncestorVisibleChanged.OnAncestorVisibleChanged(System.Object,System.EventArgs)">
            <summary>
            Sent to a logical UI element (a Control or its children via ILogicalUIElement) when an
            ancestor's (Parent, Parent.Parent, etc.) Visible property changes.<br/>
            This makes up for WinForms's poor VisibleChanged/ParentVisibleChanged implementation, which
            doesn't really work.
            </summary>
        </member>
        <member name="M:PaintDotNet.Controls.IOnWindowStateChanged.OnWindowStateChanged(System.Object,PaintDotNet.ValueChangedEventArgs{System.Windows.Forms.FormWindowState})">
            <summary>
            Sent to a logical UI element (a Control or its children via ILogicalUIElement) when the
            WindowState of its PdnBaseForm changes.
            </summary>
        </member>
        <member name="T:PaintDotNet.Drawing.SafeGraphicsExtensions">
            <summary>
            Extension methods that provide a simpler error handling policy for methods and properties on System.Drawing.Graphics.
            </summary>
            <remarks>
            The exception handling policy for these extension methods is implemented by TryInvoke(). Results returned from
            extension methods do not need to be observed. Some exceptions may still be propagated out as exceptions, such
            as ArgumentNullException.
            </remarks>
        </member>
        <member name="P:PaintDotNet.FileDialogFilter.Text">
            <summary>
            Gets the string to use for the FilterText property of a FileDialog.
            </summary>
        </member>
        <member name="T:PaintDotNet.FileDialogFilterBuilder">
            <summary>
            A helper class for creating a string to use for the FilterText property of an OpenFileDialog or SaveFileDialog.
            </summary>
        </member>
        <member name="M:PaintDotNet.FileDialogFilterBuilder.SetAllTypesDescription(System.String)">
            <summary>
            Sets the description for an entry that includes the extensions from all of the other entries.
            This is useful when working with a FileOpenDialog. This will typically be set to something like
            &quot;All file types&quot; or &quot;All image types&quot;. The entry is automatically created and is
            placed at the front/top of the generated filter text.<br/>
            <br/>
            Setting this to a non-null string will cause the entry to be generated.<br/>
            Setting this to null or an empty string will omit the entry.<br/>
            The default value is null.
            </summary>
        </member>
        <member name="M:PaintDotNet.FileDialogFilterBuilder.AddEntry(System.String,System.Collections.Generic.IEnumerable{System.String},System.Object)">
            <summary>
            Adds an entry that will be included in the filter text string.
            </summary>
            <param name="description">
            The description for the entry. This string must be non-empty, and may not have a pipe ('|') character.
            </param>
            <param name="extensions">
            A list of file extensions for the entry. There list must have at least one element. Each string must be
            non-null, non-empty, not all whitespace, start with a period, and may not contain a pipe character ('|').
            </param>
            <param name="tag">
            Contains data to associate with the entry. Any value or object instance is permissible, including null.
            A common tag to use is the FileType instance that the description and extensions are obtained from.
            </param>
        </member>
        <member name="M:PaintDotNet.FileDialogFilterBuilder.AddEntry(PaintDotNet.FileDialogFilterEntry)">
            <summary>
            Adds an entry that will be included in the filter text string.
            </summary>
        </member>
        <member name="M:PaintDotNet.FileDialogFilterBuilder.Build">
            <summary>
            Builds and returns the <see cref="T:PaintDotNet.FileDialogFilter"/>, which can be used to set the FilterText property
            on a FileDialog.
            </summary>
        </member>
        <member name="M:PaintDotNet.FileDialogFilterEntry.#ctor(System.String,System.Collections.Generic.IEnumerable{System.String},System.Object)">
            <summary>
            Creates an entry for use with <see cref="T:PaintDotNet.FileDialogFilterBuilder"/>.
            </summary>
            <param name="description">
            The description for the entry. This string must be non-empty, and may not have a pipe ('|') character.
            </param>
            <param name="extensions">
            A list of file extensions for the entry. There list must have at least one element. Each string must be
            non-null, non-empty, not all whitespace, start with a period, and may not contain a pipe character ('|').
            </param>
            <param name="tag">
            Contains data to associate with the entry. Any value or object instance is permissible, including null.
            A common tag to use is the FileType instance that the description and extensions are obtained from.
            </param>
        </member>
        <member name="F:PaintDotNet.FitSurfaceOptions.Default">
            <summary>
            Rendering will use multiple threads to improve performance. Gamma correction will not be used.
            </summary>
        </member>
        <member name="F:PaintDotNet.FitSurfaceOptions.DisableMultiThreadedOptimizations">
            <summary>
            Rendering will only use a single thread.
            </summary>
        </member>
        <member name="F:PaintDotNet.FitSurfaceOptions.UseGammaCorrection">
            <summary>
            Rendering will use gamma correction. The source will be converted from sRGB (2.2) to linear (1.0)
            gamma, then resampled, and then converted back from linear (1.0) to sRGB (2.2) gamma.<br/>
            This is slower, but preserves perceptual brightness, and is recommended.
            </summary>
            <remarks>
            This does not have any effect when using <see cref="F:PaintDotNet.ResamplingAlgorithm.NearestNeighbor"/>.
            </remarks>
        </member>
        <member name="T:PaintDotNet.HsvColor">
            <summary>
            Adapted from: 
            "A Primer on Building a Color Picker User Control with GDI+ in Visual Basic .NET or C#"
            http://www.msdnaa.net/Resources/display.aspx?ResID=2460
            </summary>
        </member>
        <member name="T:PaintDotNet.Imaging.BitmapSourceAsPixelSource`1">
            <summary>
            Converts an IBitmapSource&lt;TPixel&gt; to an IPixelSource for use with PhotoSauce/MagicScaler.
            </summary>
        </member>
        <member name="T:PaintDotNet.Imaging.BitmapSourceWrapper">
            <summary>
            Wraps a bitmap so that callers can only access it as a bitmap source.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.ProcessingSoftware">
            <summary>
            The name and version of the software used to post-process the picture.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.NewSubfileType">
            <summary>
            A general indication of the kind of data contained in this subfile.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.SubfileType">
            <summary>
            A general indication of the kind of data contained in this subfile. This field is deprecated. The NewSubfileType field should be used instead.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.ImageWidth">
            <summary>
            The number of columns of image data, equal to the number of pixels per row. In JPEG compressed data a JPEG marker is used instead of this tag.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.ImageLength">
            <summary>
            The number of rows of image data. In JPEG compressed data a JPEG marker is used instead of this tag.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.BitsPerSample">
            <summary>
            The number of bits per image component. In this standard each component of the image is 8 bits, so the value for this tag is 8. See also SamplesPerPixel. In JPEG compressed data a JPEG marker is used instead of this tag.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.Compression">
            <summary>
            The compression scheme used for the image data. When a primary image is JPEG compressed, this designation is not necessary and is omitted. When thumbnails use JPEG compression, this tag value is set to 6.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.PhotometricInterpretation">
            <summary>
            The pixel composition. In JPEG compressed data a JPEG marker is used instead of this tag.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.Thresholding">
            <summary>
            For black and white TIFF files that represent shades of gray, the technique used to convert from gray to black and white pixels.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.CellWidth">
            <summary>
            The width of the dithering or halftoning matrix used to create a dithered or halftoned bilevel file.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.CellLength">
            <summary>
            The length of the dithering or halftoning matrix used to create a dithered or halftoned bilevel file.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.FillOrder">
            <summary>
            The logical order of bits within a byte
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.DocumentName">
            <summary>
            The name of the document from which this image was scanned
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.ImageDescription">
            <summary>
            A character string giving the title of the image. It may be a comment such as "1988 company picnic" or the like. Two-bytes character codes cannot be used. When a 2-bytes code is necessary, the Exif Private tag UserComment is to be used.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.Make">
            <summary>
            The manufacturer of the recording equipment. This is the manufacturer of the DSC, scanner, video digitizer or other equipment that generated the image. When the field is left blank, it is treated as unknown.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.Model">
            <summary>
            The model name or model number of the equipment. This is the model name or number of the DSC, scanner, video digitizer or other equipment that generated the image. When the field is left blank, it is treated as unknown.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.StripOffsets">
            <summary>
            For each strip, the byte offset of that strip. It is recommended that this be selected so the number of strip bytes does not exceed 64 Kbytes. With JPEG compressed data this designation is not needed and is omitted. See also RowsPerStrip and StripByteCounts.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.Orientation">
            <summary>
            The image orientation viewed in terms of rows and columns.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.SamplesPerPixel">
            <summary>
            The number of components per pixel. Since this standard applies to RGB and YCbCr images, the value set for this tag is 3. In JPEG compressed data a JPEG marker is used instead of this tag.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.RowsPerStrip">
            <summary>
            The number of rows per strip. This is the number of rows in the image of one strip when an image is divided into strips. With JPEG compressed data this designation is not needed and is omitted. See also StripOffsets and StripByteCounts.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.StripByteCounts">
            <summary>
            The total number of bytes in each strip. With JPEG compressed data this designation is not needed and is omitted.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.XResolution">
            <summary>
            The number of pixels per ResolutionUnit in the ImageWidth direction. When the image resolution is unknown, 72 dpi is designated.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.YResolution">
            <summary>
            The number of pixels per ResolutionUnit in the ImageLength direction. The same value as XResolution is designated.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.PlanarConfiguration">
            <summary>
            Indicates whether pixel components are recorded in a chunky or planar format. In JPEG compressed files a JPEG marker is used instead of this tag. If this field does not exist, the TIFF default of 1 (chunky) is assumed.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.GrayResponseUnit">
            <summary>
            The precision of the information contained in the GrayResponseCurve.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.GrayResponseCurve">
            <summary>
            For grayscale data, the optical density of each possible pixel value.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.T4Options">
            <summary>
            T.4-encoding options.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.T6Options">
            <summary>
            T.6-encoding options.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.ResolutionUnit">
            <summary>
            The unit for measuring XResolution and YResolution. The same unit is used for both XResolution and YResolution. If the image resolution is unknown, 2 (inches) is designated.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.PageNumber">
            <summary>
            The page number of the page from which this image was scanned.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.TransferFunction">
            <summary>
            A transfer function for the image, described in tabular style. Normally this tag is not necessary, since color space is specified in the color space information tag (ColorSpace).
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.Software">
            <summary>
            This tag records the name and version of the software or firmware of the camera or image input device used to generate the image. The detailed format is not specified, but it is recommended that the example shown below be followed. When the field is left blank, it is treated as unknown.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.DateTime">
            <summary>
            The date and time of image creation. In Exif standard, it is the date and time the file was changed.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.Artist">
            <summary>
            This tag records the name of the camera owner, photographer or image creator. The detailed format is not specified, but it is recommended that the information be written as in the example below for ease of Interoperability. When the field is left blank, it is treated as unknown. Ex.) "Camera owner, John Smith; Photographer, Michael Brown; Image creator, Ken James"
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.HostComputer">
            <summary>
            This tag records information about the host computer used to generate the image.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.Predictor">
            <summary>
            A predictor is a mathematical operator that is applied to the image data before an encoding scheme is applied.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.WhitePoint">
            <summary>
            The chromaticity of the white point of the image. Normally this tag is not necessary, since color space is specified in the colorspace information tag (ColorSpace).
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.PrimaryChromaticities">
            <summary>
            The chromaticity of the three primary colors of the image. Normally this tag is not necessary, since colorspace is specified in the colorspace information tag (ColorSpace).
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.ColorMap">
            <summary>
            A color map for palette color images. This field defines a Red-Green-Blue color map (often called a lookup table) for palette-color images. In a palette-color image, a pixel value is used to index into an RGB lookup table.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.HalftoneHints">
            <summary>
            The purpose of the HalftoneHints field is to convey to the halftone function the range of gray levels within a colorimetrically-specified image that should retain tonal detail.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.TileWidth">
            <summary>
            The tile width in pixels. This is the number of columns in each tile.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.TileLength">
            <summary>
            The tile length (height) in pixels. This is the number of rows in each tile.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.TileOffsets">
            <summary>
            For each tile, the byte offset of that tile, as compressed and stored on disk. The offset is specified with respect to the beginning of the TIFF file. Note that this implies that each tile has a location independent of the locations of other tiles.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.TileByteCounts">
            <summary>
            For each tile, the number of (compressed) bytes in that tile. See TileOffsets for a description of how the byte counts are ordered.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.SubIFDs">
            <summary>
            Defined by Adobe Corporation to enable TIFF Trees within a TIFF file.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.InkSet">
            <summary>
            The set of inks used in a separated (PhotometricInterpretation=5) image.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.InkNames">
            <summary>
            The name of each ink used in a separated (PhotometricInterpretation=5) image.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.NumberOfInks">
            <summary>
            The number of inks. Usually equal to SamplesPerPixel, unless there are extra samples.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.DotRange">
            <summary>
            The component values that correspond to a 0% dot and 100% dot.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.TargetPrinter">
            <summary>
            A description of the printing environment for which this separation is intended.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.ExtraSamples">
            <summary>
            Specifies that each pixel has m extra components whose interpretation is defined by one of the values listed below.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.SampleFormat">
            <summary>
            This field specifies how to interpret each data sample in a pixel.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.SMinSampleValue">
            <summary>
            This field specifies the minimum sample value.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.SMaxSampleValue">
            <summary>
            This field specifies the maximum sample value.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.TransferRange">
            <summary>
            Expands the range of the TransferFunction
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.ClipPath">
            <summary>
            A TIFF ClipPath is intended to mirror the essentials of PostScript's path creation functionality.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.XClipPathUnits">
            <summary>
            The number of units that span the width of the image, in terms of integer ClipPath coordinates.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.YClipPathUnits">
            <summary>
            The number of units that span the height of the image, in terms of integer ClipPath coordinates.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.Indexed">
            <summary>
            Indexed images are images where the 'pixels' do not represent color values, but rather an index (usually 8-bit) into a separate color table, the ColorMap.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.JPEGTables">
            <summary>
            This optional tag may be used to encode the JPEG quantization and Huffman tables for subsequent use by the JPEG decompression process.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.OPIProxy">
            <summary>
            OPIProxy gives information concerning whether this image is a low-resolution proxy of a high-resolution image (Adobe OPI).
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.JPEGProc">
            <summary>
            This field indicates the process used to produce the compressed data
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.JPEGInterchangeFormat">
            <summary>
            The offset to the start byte (SOI) of JPEG compressed thumbnail data. This is not used for primary image JPEG data.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.JPEGInterchangeFormatLength">
            <summary>
            The number of bytes of JPEG compressed thumbnail data. This is not used for primary image JPEG data. JPEG thumbnails are not divided but are recorded as a continuous JPEG bitstream from SOI to EOI. Appn and COM markers should not be recorded. Compressed thumbnails must be recorded in no more than 64 Kbytes, including all other data to be recorded in APP1.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.JPEGRestartInterval">
            <summary>
            This Field indicates the length of the restart interval used in the compressed image data.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.JPEGLosslessPredictors">
            <summary>
            This Field points to a list of lossless predictor-selection values, one per component.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.JPEGPointTransforms">
            <summary>
            This Field points to a list of point transform values, one per component.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.JPEGQTables">
            <summary>
            This Field points to a list of offsets to the quantization tables, one per component.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.JPEGDCTables">
            <summary>
            This Field points to a list of offsets to the DC Huffman tables or the lossless Huffman tables, one per component.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.JPEGACTables">
            <summary>
            This Field points to a list of offsets to the Huffman AC tables, one per component.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.YCbCrCoefficients">
            <summary>
            The matrix coefficients for transformation from RGB to YCbCr image data. No default is given in TIFF; but here the value given in Appendix E, "Color Space Guidelines", is used as the default. The color space is declared in a color space information tag, with the default being the value that gives the optimal image characteristics Interoperability this condition.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.YCbCrSubSampling">
            <summary>
            The sampling ratio of chrominance components in relation to the luminance component. In JPEG compressed data a JPEG marker is used instead of this tag.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.YCbCrPositioning">
            <summary>
            The position of chrominance components in relation to the luminance component. This field is designated only for JPEG compressed data or uncompressed YCbCr data. The TIFF default is 1 (centered); but when Y:Cb:Cr = 4:2:2 it is recommended in this standard that 2 (co-sited) be used to record data, in order to improve the image quality when viewed on TV systems. When this field does not exist, the reader shall assume the TIFF default. In the case of Y:Cb:Cr = 4:2:0, the TIFF default (centered) is recommended. If the reader does not have the capability of supporting both kinds of YCbCrPositioning, it shall follow the TIFF default regardless of the value in this field. It is preferable that readers be able to support both centered and co-sited positioning.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.ReferenceBlackWhite">
            <summary>
            The reference black point value and reference white point value. No defaults are given in TIFF, but the values below are given as defaults here. The color space is declared in a color space information tag, with the default being the value that gives the optimal image characteristics Interoperability these conditions.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.XMLPacket">
            <summary>
            XMP Metadata (Adobe technote 9-14-02)
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.Rating">
            <summary>
            Rating tag used by Windows
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.RatingPercent">
            <summary>
            Rating tag used by Windows, value in percent
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.ImageID">
            <summary>
            ImageID is the full pathname of the original, high-resolution image, or any other identifying string that uniquely identifies the original image (Adobe OPI).
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.CFARepeatPatternDim">
            <summary>
            Contains two values representing the minimum rows and columns to define the repeating patterns of the color filter array
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.CFAPattern">
            <summary>
            Indicates the color filter array (CFA) geometric pattern of the image sensor when a one-chip color area sensor is used. It does not apply to all sensing methods
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.BatteryLevel">
            <summary>
            Contains a value of the battery level as a fraction or string
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.Copyright">
            <summary>
            Copyright information. In this standard the tag is used to indicate both the photographer and editor copyrights. It is the copyright notice of the person or organization claiming rights to the image. The Interoperability copyright statement including date and rights should be written in this field; e.g., "Copyright, John Smith, 19xx. All rights reserved.". In this standard the field records both the photographer and editor copyrights, with each recorded in a separate part of the statement. When there is a clear distinction between the photographer and editor copyrights, these are to be written in the order of photographer followed by editor copyright, separated by NULL (in this case since the statement also ends with a NULL, there are two NULL codes). When only the photographer copyright is given, it is terminated by one NULL code. When only the editor copyright is given, the photographer copyright part consists of one space followed by a terminating NULL code, then the editor copyright is given. When the field is left blank, it is treated as unknown.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.ExposureTime">
            <summary>
            Exposure time, given in seconds.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.FNumber">
            <summary>
            The F number.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.IPTCNAA">
            <summary>
            Contains an IPTC/NAA record
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.ImageResources">
            <summary>
            Contains information embedded by the Adobe Photoshop application
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.ExifTag">
            <summary>
            A pointer to the Exif IFD. Interoperability, Exif IFD has the same structure as that of the IFD specified in TIFF. ordinarily, however, it does not contain image data as in the case of TIFF.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.InterColorProfile">
            <summary>
            Contains an InterColor Consortium (ICC) format color space characterization/profile
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.ExposureProgram">
            <summary>
            The class of the program used by the camera to set exposure when the picture is taken.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.SpectralSensitivity">
            <summary>
            Indicates the spectral sensitivity of each channel of the camera used.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.GPSTag">
            <summary>
            A pointer to the GPS Info IFD. The Interoperability structure of the GPS Info IFD, like that of Exif IFD, has no image data.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.ISOSpeedRatings">
            <summary>
            Indicates the ISO Speed and ISO Latitude of the camera or input device as specified in ISO 12232.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.OECF">
            <summary>
            Indicates the Opto-Electric Conversion Function (OECF) specified in ISO 14524.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.Interlace">
            <summary>
            Indicates the field number of multifield images.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.TimeZoneOffset">
            <summary>
            This optional tag encodes the time zone of the camera clock (relative to Greenwich Mean Time) used to create the DataTimeOriginal tag-value when the picture was taken. It may also contain the time zone offset of the clock used to create the DateTime tag-value when the image was modified.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.SelfTimerMode">
            <summary>
            Number of seconds image capture was delayed from button press.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.DateTimeOriginal">
            <summary>
            The date and time when the original image data was generated.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.CompressedBitsPerPixel">
            <summary>
            Specific to compressed data; states the compressed bits per pixel.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.ShutterSpeedValue">
            <summary>
            Shutter speed.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.ApertureValue">
            <summary>
            The lens aperture.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.BrightnessValue">
            <summary>
            The value of brightness.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.ExposureBiasValue">
            <summary>
            The exposure bias.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.MaxApertureValue">
            <summary>
            The smallest F number of the lens.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.SubjectDistance">
            <summary>
            The distance to the subject, given in meters.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.MeteringMode">
            <summary>
            The metering mode.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.LightSource">
            <summary>
            The kind of light source.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.Flash">
            <summary>
            Indicates the status of flash when the image was shot.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.FocalLength">
            <summary>
            The actual focal length of the lens, in mm.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.FlashEnergy">
            <summary>
            Amount of flash energy (BCPS).
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.SpatialFrequencyResponse">
            <summary>
            SFR of the camera.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.Noise">
            <summary>
            Noise measurement values.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.FocalPlaneXResolution">
            <summary>
            Number of pixels per FocalPlaneResolutionUnit (37392) in ImageWidth direction for main image.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.FocalPlaneYResolution">
            <summary>
            Number of pixels per FocalPlaneResolutionUnit (37392) in ImageLength direction for main image.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.FocalPlaneResolutionUnit">
            <summary>
            Unit of measurement for FocalPlaneXResolution(37390) and FocalPlaneYResolution(37391).
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.ImageNumber">
            <summary>
            Number assigned to an image, e.g., in a chained image burst.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.SecurityClassification">
            <summary>
            Security classification assigned to the image.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.ImageHistory">
            <summary>
            Record of what has been done to the image.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.SubjectLocation">
            <summary>
            Indicates the location and area of the main subject in the overall scene.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.ExposureIndex">
            <summary>
            Encodes the camera exposure index setting when image was captured.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.TIFFEPStandardID">
            <summary>
            Contains four ASCII characters representing the TIFF/EP standard version of a TIFF/EP file, eg '1', '0', '0', '0'
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.SensingMethod">
            <summary>
            Type of image sensor.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.XPTitle">
            <summary>
            Title tag used by Windows, encoded in UCS2
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.XPComment">
            <summary>
            Comment tag used by Windows, encoded in UCS2
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.XPAuthor">
            <summary>
            Author tag used by Windows, encoded in UCS2
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.XPKeywords">
            <summary>
            Keywords tag used by Windows, encoded in UCS2
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.XPSubject">
            <summary>
            Subject tag used by Windows, encoded in UCS2
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.PrintImageMatching">
            <summary>
            Print Image Matching, description needed.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.DNGVersion">
            <summary>
            This tag encodes the DNG four-tier version number. For files compliant with version 1.1.0.0 of the DNG specification, this tag should contain the bytes: 1, 1, 0, 0.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.DNGBackwardVersion">
            <summary>
            This tag specifies the oldest version of the Digital Negative specification for which a file is compatible. Readers shouldnot attempt to read a file if this tag specifies a version number that is higher than the version number of the specification the reader was based on. In addition to checking the version tags, readers should, for all tags, check the types, counts, and values, to verify it is able to correctly read the file.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.UniqueCameraModel">
            <summary>
            Defines a unique, non-localized name for the camera model that created the image in the raw file. This name should include the manufacturer's name to avoid conflicts, and should not be localized, even if the camera name itself is localized for different markets (see LocalizedCameraModel). This string may be used by reader software to index into per-model preferences and replacement profiles.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.LocalizedCameraModel">
            <summary>
            Similar to the UniqueCameraModel field, except the name can be localized for different markets to match the localization of the camera name.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.CFAPlaneColor">
            <summary>
            Provides a mapping between the values in the CFAPattern tag and the plane numbers in LinearRaw space. This is a required tag for non-RGB CFA images.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.CFALayout">
            <summary>
            Describes the spatial layout of the CFA.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.LinearizationTable">
            <summary>
            Describes a lookup table that maps stored values into linear values. This tag is typically used to increase compression ratios by storing the raw data in a non-linear, more visually uniform space with fewer total encoding levels. If SamplesPerPixel is not equal to one, this single table applies to all the samples for each pixel.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.BlackLevelRepeatDim">
            <summary>
            Specifies repeat pattern size for the BlackLevel tag.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.BlackLevel">
            <summary>
            Specifies the zero light (a.k.a. thermal black or black current) encoding level, as a repeating pattern. The origin of this pattern is the top-left corner of the ActiveArea rectangle. The values are stored in row-column-sample scan order.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.BlackLevelDeltaH">
            <summary>
            If the zero light encoding level is a function of the image column, BlackLevelDeltaH specifies the difference between the zero light encoding level for each column and the baseline zero light encoding level. If SamplesPerPixel is not equal to one, this single table applies to all the samples for each pixel.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.BlackLevelDeltaV">
            <summary>
            If the zero light encoding level is a function of the image row, this tag specifies the difference between the zero light encoding level for each row and the baseline zero light encoding level. If SamplesPerPixel is not equal to one, this single table applies to all the samples for each pixel.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.WhiteLevel">
            <summary>
            This tag specifies the fully saturated encoding level for the raw sample values. Saturation is caused either by the sensor itself becoming highly non-linear in response, or by the camera's analog to digital converter clipping.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.DefaultScale">
            <summary>
            DefaultScale is required for cameras with non-square pixels. It specifies the default scale factors for each direction to convert the image to square pixels. Typically these factors are selected to approximately preserve total pixel count. For CFA images that use CFALayout equal to 2, 3, 4, or 5, such as the Fujifilm SuperCCD, these two values should usually differ by a factor of 2.0.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.DefaultCropOrigin">
            <summary>
            Raw images often store extra pixels around the edges of the final image. These extra pixels help prevent interpolation artifacts near the edges of the final image. DefaultCropOrigin specifies the origin of the final image area, in raw image coordinates (i.e., before the DefaultScale has been applied), relative to the top-left corner of the ActiveArea rectangle.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.DefaultCropSize">
            <summary>
            Raw images often store extra pixels around the edges of the final image. These extra pixels help prevent interpolation artifacts near the edges of the final image. DefaultCropSize specifies the size of the final image area, in raw image coordinates (i.e., before the DefaultScale has been applied).
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.ColorMatrix1">
            <summary>
            ColorMatrix1 defines a transformation matrix that converts XYZ values to reference camera native color space values, under the first calibration illuminant. The matrix values are stored in row scan order. The ColorMatrix1 tag is required for all non-monochrome DNG files.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.ColorMatrix2">
            <summary>
            ColorMatrix2 defines a transformation matrix that converts XYZ values to reference camera native color space values, under the second calibration illuminant. The matrix values are stored in row scan order.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.CameraCalibration1">
            <summary>
            CameraCalibration1 defines a calibration matrix that transforms reference camera native space values to individual camera native space values under the first calibration illuminant. The matrix is stored in row scan order. This matrix is stored separately from the matrix specified by the ColorMatrix1 tag to allow raw converters to swap in replacement color matrices based on UniqueCameraModel tag, while still taking advantage of any per-individual camera calibration performed by the camera manufacturer.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.CameraCalibration2">
            <summary>
            CameraCalibration2 defines a calibration matrix that transforms reference camera native space values to individual camera native space values under the second calibration illuminant. The matrix is stored in row scan order. This matrix is stored separately from the matrix specified by the ColorMatrix2 tag to allow raw converters to swap in replacement color matrices based on UniqueCameraModel tag, while still taking advantage of any per-individual camera calibration performed by the camera manufacturer.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.ReductionMatrix1">
            <summary>
            ReductionMatrix1 defines a dimensionality reduction matrix for use as the first stage in converting color camera native space values to XYZ values, under the first calibration illuminant. This tag may only be used if ColorPlanes is greater than 3. The matrix is stored in row scan order.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.ReductionMatrix2">
            <summary>
            ReductionMatrix2 defines a dimensionality reduction matrix for use as the first stage in converting color camera native space values to XYZ values, under the second calibration illuminant. This tag may only be used if ColorPlanes is greater than 3. The matrix is stored in row scan order.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.AnalogBalance">
            <summary>
            Normally the stored raw values are not white balanced, since any digital white balancing will reduce the dynamic range of the final image if the user decides to later adjust the white balance; however, if camera hardware is capable of white balancing the color channels before the signal is digitized, it can improve the dynamic range of the final image. AnalogBalance defines the gain, either analog (recommended) or digital (not recommended) that has been applied the stored raw values.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.AsShotNeutral">
            <summary>
            Specifies the selected white balance at time of capture, encoded as the coordinates of a perfectly neutral color in linear reference space values. The inclusion of this tag precludes the inclusion of the AsShotWhiteXY tag.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.AsShotWhiteXY">
            <summary>
            Specifies the selected white balance at time of capture, encoded as x-y chromaticity coordinates. The inclusion of this tag precludes the inclusion of the AsShotNeutral tag.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.BaselineExposure">
            <summary>
            Camera models vary in the trade-off they make between highlight headroom and shadow noise. Some leave a significant amount of highlight headroom during a normal exposure. This allows significant negative exposure compensation to be applied during raw conversion, but also means normal exposures will contain more shadow noise. Other models leave less headroom during normal exposures. This allows for less negative exposure compensation, but results in lower shadow noise for normal exposures. Because of these differences, a raw converter needs to vary the zero point of its exposure compensation control from model to model. BaselineExposure specifies by how much (in EV units) to move the zero point. Positive values result in brighter default results, while negative values result in darker default results.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.BaselineNoise">
            <summary>
            Specifies the relative noise level of the camera model at a baseline ISO value of 100, compared to a reference camera model. Since noise levels tend to vary approximately with the square root of the ISO value, a raw converter can use this value, combined with the current ISO, to estimate the relative noise level of the current image.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.BaselineSharpness">
            <summary>
            Specifies the relative amount of sharpening required for this camera model, compared to a reference camera model. Camera models vary in the strengths of their anti-aliasing filters. Cameras with weak or no filters require less sharpening than cameras with strong anti-aliasing filters.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.BayerGreenSplit">
            <summary>
            Only applies to CFA images using a Bayer pattern filter array. This tag specifies, in arbitrary units, how closely the values of the green pixels in the blue/green rows track the values of the green pixels in the red/green rows. A value of zero means the two kinds of green pixels track closely, while a non-zero value means they sometimes diverge. The useful range for this tag is from 0 (no divergence) to about 5000 (quite large divergence).
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.LinearResponseLimit">
            <summary>
            Some sensors have an unpredictable non-linearity in their response as they near the upper limit of their encoding range. This non-linearity results in color shifts in the highlight areas of the resulting image unless the raw converter compensates for this effect. LinearResponseLimit specifies the fraction of the encoding range above which the response may become significantly non-linear.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.CameraSerialNumber">
            <summary>
            CameraSerialNumber contains the serial number of the camera or camera body that captured the image.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.LensInfo">
            <summary>
            Contains information about the lens that captured the image. If the minimum f-stops are unknown, they should be encoded as 0/0.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.ChromaBlurRadius">
            <summary>
            ChromaBlurRadius provides a hint to the DNG reader about how much chroma blur should be applied to the image. If this tag is omitted, the reader will use its default amount of chroma blurring. Normally this tag is only included for non-CFA images, since the amount of chroma blur required for mosaic images is highly dependent on the de-mosaic algorithm, in which case the DNG reader's default value is likely optimized for its particular de-mosaic algorithm.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.AntiAliasStrength">
            <summary>
            Provides a hint to the DNG reader about how strong the camera's anti-alias filter is. A value of 0.0 means no anti-alias filter (i.e., the camera is prone to aliasing artifacts with some subjects), while a value of 1.0 means a strong anti-alias filter (i.e., the camera almost never has aliasing artifacts).
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.ShadowScale">
            <summary>
            This tag is used by Adobe Camera Raw to control the sensitivity of its 'Shadows' slider.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.DNGPrivateData">
            <summary>
            Provides a way for camera manufacturers to store private data in the DNG file for use by their own raw converters, and to have that data preserved by programs that edit DNG files.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.MakerNoteSafety">
            <summary>
            MakerNoteSafety lets the DNG reader know whether the EXIF MakerNote tag is safe to preserve along with the rest of the EXIF data. File browsers and other image management software processing an image with a preserved MakerNote should be aware that any thumbnail image embedded in the MakerNote may be stale, and may not reflect the current state of the full size image.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.CalibrationIlluminant1">
            <summary>
            The illuminant used for the first set of color calibration tags (ColorMatrix1, CameraCalibration1, ReductionMatrix1). The legal values for this tag are the same as the legal values for the LightSource EXIF tag.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.CalibrationIlluminant2">
            <summary>
            The illuminant used for an optional second set of color calibration tags (ColorMatrix2, CameraCalibration2, ReductionMatrix2). The legal values for this tag are the same as the legal values for the CalibrationIlluminant1 tag; however, if both are included, neither is allowed to have a value of 0 (unknown).
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.BestQualityScale">
            <summary>
            For some cameras, the best possible image quality is not achieved by preserving the total pixel count during conversion. For example, Fujifilm SuperCCD images have maximum detail when their total pixel count is doubled. This tag specifies the amount by which the values of the DefaultScale tag need to be multiplied to achieve the best quality image size.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.RawDataUniqueID">
            <summary>
            This tag contains a 16-byte unique identifier for the raw image data in the DNG file. DNG readers can use this tag to recognize a particular raw image, even if the file's name or the metadata contained in the file has been changed. If a DNG writer creates such an identifier, it should do so using an algorithm that will ensure that it is very unlikely two different images will end up having the same identifier.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.OriginalRawFileName">
            <summary>
            If the DNG file was converted from a non-DNG raw file, then this tag contains the file name of that original raw file.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.OriginalRawFileData">
            <summary>
            If the DNG file was converted from a non-DNG raw file, then this tag contains the compressed contents of that original raw file. The contents of this tag always use the big-endian byte order. The tag contains a sequence of data blocks. Future versions of the DNG specification may define additional data blocks, so DNG readers should ignore extra bytes when parsing this tag. DNG readers should also detect the case where data blocks are missing from the end of the sequence, and should assume a default value for all the missing blocks. There are no padding or alignment bytes between data blocks.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.ActiveArea">
            <summary>
            This rectangle defines the active (non-masked) pixels of the sensor. The order of the rectangle coordinates is: top, left, bottom, right.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.MaskedAreas">
            <summary>
            This tag contains a list of non-overlapping rectangle coordinates of fully masked pixels, which can be optionally used by DNG readers to measure the black encoding level. The order of each rectangle's coordinates is: top, left, bottom, right. If the raw image data has already had its black encoding level subtracted, then this tag should not be used, since the masked pixels are no longer useful.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.AsShotICCProfile">
            <summary>
            This tag contains an ICC profile that, in conjunction with the AsShotPreProfileMatrix tag, provides the camera manufacturer with a way to specify a default color rendering from camera color space coordinates (linear reference values) into the ICC profile connection space. The ICC profile connection space is an output referred colorimetric space, whereas the other color calibration tags in DNG specify a conversion into a scene referred colorimetric space. This means that the rendering in this profile should include any desired tone and gamut mapping needed to convert between scene referred values and output referred values.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.AsShotPreProfileMatrix">
            <summary>
            This tag is used in conjunction with the AsShotICCProfile tag. It specifies a matrix that should be applied to the camera color space coordinates before processing the values through the ICC profile specified in the AsShotICCProfile tag. The matrix is stored in the row scan order. If ColorPlanes is greater than three, then this matrix can (but is not required to) reduce the dimensionality of the color data down to three components, in which case the AsShotICCProfile should have three rather than ColorPlanes input components.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.CurrentICCProfile">
            <summary>
            This tag is used in conjunction with the CurrentPreProfileMatrix tag. The CurrentICCProfile and CurrentPreProfileMatrix tags have the same purpose and usage as the AsShotICCProfile and AsShotPreProfileMatrix tag pair, except they are for use by raw file editors rather than camera manufacturers.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.CurrentPreProfileMatrix">
            <summary>
            This tag is used in conjunction with the CurrentICCProfile tag. The CurrentICCProfile and CurrentPreProfileMatrix tags have the same purpose and usage as the AsShotICCProfile and AsShotPreProfileMatrix tag pair, except they are for use by raw file editors rather than camera manufacturers.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.ColorimetricReference">
            <summary>
            The DNG color model documents a transform between camera colors and CIE XYZ values. This tag describes the colorimetric reference for the CIE XYZ values. 0 = The XYZ values are scene-referred. 1 = The XYZ values are output-referred, using the ICC profile perceptual dynamic range. This tag allows output-referred data to be stored in DNG files and still processed correctly by DNG readers.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.CameraCalibrationSignature">
            <summary>
            A UTF-8 encoded string associated with the CameraCalibration1 and CameraCalibration2 tags. The CameraCalibration1 and CameraCalibration2 tags should only be used in the DNG color transform if the string stored in the CameraCalibrationSignature tag exactly matches the string stored in the ProfileCalibrationSignature tag for the selected camera profile.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.ProfileCalibrationSignature">
            <summary>
            A UTF-8 encoded string associated with the camera profile tags. The CameraCalibration1 and CameraCalibration2 tags should only be used in the DNG color transfer if the string stored in the CameraCalibrationSignature tag exactly matches the string stored in the ProfileCalibrationSignature tag for the selected camera profile.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.AsShotProfileName">
            <summary>
            A UTF-8 encoded string containing the name of the "as shot" camera profile, if any.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.NoiseReductionApplied">
            <summary>
            This tag indicates how much noise reduction has been applied to the raw data on a scale of 0.0 to 1.0. A 0.0 value indicates that no noise reduction has been applied. A 1.0 value indicates that the "ideal" amount of noise reduction has been applied, i.e. that the DNG reader should not apply additional noise reduction by default. A value of 0/0 indicates that this parameter is unknown.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.ProfileName">
            <summary>
            A UTF-8 encoded string containing the name of the camera profile. This tag is optional if there is only a single camera profile stored in the file but is required for all camera profiles if there is more than one camera profile stored in the file.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.ProfileHueSatMapDims">
            <summary>
            This tag specifies the number of input samples in each dimension of the hue/saturation/value mapping tables. The data for these tables are stored in ProfileHueSatMapData1 and ProfileHueSatMapData2 tags. The most common case has ValueDivisions equal to 1, so only hue and saturation are used as inputs to the mapping table.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.ProfileHueSatMapData1">
            <summary>
            This tag contains the data for the first hue/saturation/value mapping table. Each entry of the table contains three 32-bit IEEE floating-point values. The first entry is hue shift in degrees; the second entry is saturation scale factor; and the third entry is a value scale factor. The table entries are stored in the tag in nested loop order, with the value divisions in the outer loop, the hue divisions in the middle loop, and the saturation divisions in the inner loop. All zero input saturation entries are required to have a value scale factor of 1.0.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.ProfileHueSatMapData2">
            <summary>
            This tag contains the data for the second hue/saturation/value mapping table. Each entry of the table contains three 32-bit IEEE floating-point values. The first entry is hue shift in degrees; the second entry is a saturation scale factor; and the third entry is a value scale factor. The table entries are stored in the tag in nested loop order, with the value divisions in the outer loop, the hue divisions in the middle loop, and the saturation divisions in the inner loop. All zero input saturation entries are required to have a value scale factor of 1.0.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.ProfileToneCurve">
            <summary>
            This tag contains a default tone curve that can be applied while processing the image as a starting point for user adjustments. The curve is specified as a list of 32-bit IEEE floating-point value pairs in linear gamma. Each sample has an input value in the range of 0.0 to 1.0, and an output value in the range of 0.0 to 1.0. The first sample is required to be (0.0, 0.0), and the last sample is required to be (1.0, 1.0). Interpolated the curve using a cubic spline.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.ProfileEmbedPolicy">
            <summary>
            This tag contains information about the usage rules for the associated camera profile.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.ProfileCopyright">
            <summary>
            A UTF-8 encoded string containing the copyright information for the camera profile. This string always should be preserved along with the other camera profile tags.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.ForwardMatrix1">
            <summary>
            This tag defines a matrix that maps white balanced camera colors to XYZ D50 colors.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.ForwardMatrix2">
            <summary>
            This tag defines a matrix that maps white balanced camera colors to XYZ D50 colors.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.PreviewApplicationName">
            <summary>
            A UTF-8 encoded string containing the name of the application that created the preview stored in the IFD.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.PreviewApplicationVersion">
            <summary>
            A UTF-8 encoded string containing the version number of the application that created the preview stored in the IFD.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.PreviewSettingsName">
            <summary>
            A UTF-8 encoded string containing the name of the conversion settings (for example, snapshot name) used for the preview stored in the IFD.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.PreviewSettingsDigest">
            <summary>
            A unique ID of the conversion settings (for example, MD5 digest) used to render the preview stored in the IFD.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.PreviewColorSpace">
            <summary>
            This tag specifies the color space in which the rendered preview in this IFD is stored. The default value for this tag is sRGB for color previews and Gray Gamma 2.2 for monochrome previews.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.PreviewDateTime">
            <summary>
            This tag is an ASCII string containing the name of the date/time at which the preview stored in the IFD was rendered. The date/time is encoded using ISO 8601 format.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.RawImageDigest">
            <summary>
            This tag is an MD5 digest of the raw image data. All pixels in the image are processed in row-scan order. Each pixel is zero padded to 16 or 32 bits deep (16-bit for data less than or equal to 16 bits deep, 32-bit otherwise). The data for each pixel is processed in little-endian byte order.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.OriginalRawFileDigest">
            <summary>
            This tag is an MD5 digest of the data stored in the OriginalRawFileData tag.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.SubTileBlockSize">
            <summary>
            Normally, the pixels within a tile are stored in simple row-scan order. This tag specifies that the pixels within a tile should be grouped first into rectangular blocks of the specified size. These blocks are stored in row-scan order. Within each block, the pixels are stored in row-scan order. The use of a non-default value for this tag requires setting the DNGBackwardVersion tag to at least 1.2.0.0.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.RowInterleaveFactor">
            <summary>
            This tag specifies that rows of the image are stored in interleaved order. The value of the tag specifies the number of interleaved fields. The use of a non-default value for this tag requires setting the DNGBackwardVersion tag to at least 1.2.0.0.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.ProfileLookTableDims">
            <summary>
            This tag specifies the number of input samples in each dimension of a default "look" table. The data for this table is stored in the ProfileLookTableData tag.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.ProfileLookTableData">
            <summary>
            This tag contains a default "look" table that can be applied while processing the image as a starting point for user adjustment. This table uses the same format as the tables stored in the ProfileHueSatMapData1 and ProfileHueSatMapData2 tags, and is applied in the same color space. However, it should be applied later in the processing pipe, after any exposure compensation and/or fill light stages, but before any tone curve stage. Each entry of the table contains three 32-bit IEEE floating-point values. The first entry is hue shift in degrees, the second entry is a saturation scale factor, and the third entry is a value scale factor. The table entries are stored in the tag in nested loop order, with the value divisions in the outer loop, the hue divisions in the middle loop, and the saturation divisions in the inner loop. All zero input saturation entries are required to have a value scale factor of 1.0.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.OpcodeList1">
            <summary>
            Specifies the list of opcodes that should be applied to the raw image, as read directly from the file.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.OpcodeList2">
            <summary>
            Specifies the list of opcodes that should be applied to the raw image, just after it has been mapped to linear reference values.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.OpcodeList3">
            <summary>
            Specifies the list of opcodes that should be applied to the raw image, just after it has been demosaiced.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.NoiseProfile">
            <summary>
            NoiseProfile describes the amount of noise in a raw image. Specifically, this tag models the amount of signal-dependent photon (shot) noise and signal-independent sensor readout noise, two common sources of noise in raw images. The model assumes that the noise is white and spatially independent, ignoring fixed pattern effects and other sources of noise (e.g., pixel response non-uniformity, spatially-dependent thermal effects, etc.).
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.TimeCodes">
            <summary>
            The optional TimeCodes tag shall contain an ordered array of time codes. All time codes shall be 8 bytes long and in binary format. The tag may contain from 1 to 10 time codes. When the tag contains more than one time code, the first one shall be the default time code. This specification does not prescribe how to use multiple time codes. Each time code shall be as defined for the 8-byte time code structure in SMPTE 331M-2004, Section 8.3. See also SMPTE 12-1-2008 and SMPTE 309-1999.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.FrameRate">
            <summary>
            The optional FrameRate tag shall specify the video frame rate in number of image frames per second, expressed as a signed rational number. The numerator shall be non-negative and the denominator shall be positive. This field value is identical to the sample rate field in SMPTE 377-1-2009.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.TStop">
            <summary>
            The optional TStop tag shall specify the T-stop of the actual lens, expressed as an unsigned rational number. T-stop is also known as T-number or the photometric aperture of the lens. (F-number is the geometric aperture of the lens.) When the exact value is known, the T-stop shall be specified using a single number. Alternately, two numbers shall be used to indicate a T-stop range, in which case the first number shall be the minimum T-stop and the second number shall be the maximum T-stop.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.ReelName">
            <summary>
            The optional ReelName tag shall specify a name for a sequence of images, where each image in the sequence has a unique image identifier (including but not limited to file name, frame number, date time, time code).
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Image.CameraLabel">
            <summary>
            The optional CameraLabel tag shall specify a text label for how the camera is used or assigned in this clip. This tag is similar to CameraLabel in XMP.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.ExposureTime">
            <summary>
            Exposure time, given in seconds (sec).
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.FNumber">
            <summary>
            The F number.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.ExposureProgram">
            <summary>
            The class of the program used by the camera to set exposure when the picture is taken.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.SpectralSensitivity">
            <summary>
            Indicates the spectral sensitivity of each channel of the camera used. The tag value is an ASCII string compatible with the standard developed by the ASTM Technical Committee.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.ISOSpeedRatings">
            <summary>
            Indicates the ISO Speed and ISO Latitude of the camera or input device as specified in ISO 12232.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.OECF">
            <summary>
            Indicates the Opto-Electoric Conversion Function (OECF) specified in ISO 14524. OECF is the relationship between the camera optical input and the image values.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.SensitivityType">
            <summary>
            The SensitivityType tag indicates which one of the parameters of ISO12232 is the PhotographicSensitivity tag. Although it is an optional tag, it should be recorded when a PhotographicSensitivity tag is recorded. Value = 4, 5, 6, or 7 may be used in case that the values of plural parameters are the same.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.StandardOutputSensitivity">
            <summary>
            This tag indicates the standard output sensitivity value of a camera or input device defined in ISO 12232. When recording this tag, the PhotographicSensitivity and SensitivityType tags shall also be recorded.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.RecommendedExposureIndex">
            <summary>
            This tag indicates the recommended exposure index value of a camera or input device defined in ISO 12232. When recording this tag, the PhotographicSensitivity and SensitivityType tags shall also be recorded.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.ISOSpeed">
            <summary>
            This tag indicates the ISO speed value of a camera or input device that is defined in ISO 12232. When recording this tag, the PhotographicSensitivity and SensitivityType tags shall also be recorded.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.ISOSpeedLatitudeyyy">
            <summary>
            This tag indicates the ISO speed latitude yyy value of a camera or input device that is defined in ISO 12232. However, this tag shall not be recorded without ISOSpeed and ISOSpeedLatitudezzz.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.ISOSpeedLatitudezzz">
            <summary>
            This tag indicates the ISO speed latitude zzz value of a camera or input device that is defined in ISO 12232. However, this tag shall not be recorded without ISOSpeed and ISOSpeedLatitudeyyy.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.ExifVersion">
            <summary>
            The version of this standard supported. Nonexistence of this field is taken to mean nonconformance to the standard.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.DateTimeOriginal">
            <summary>
            The date and time when the original image data was generated. For a digital still camera the date and time the picture was taken are recorded.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.DateTimeDigitized">
            <summary>
            The date and time when the image was stored as digital data.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.ComponentsConfiguration">
            <summary>
            Information specific to compressed data. The channels of each component are arranged in order from the 1st component to the 4th. For uncompressed data the data arrangement is given in the PhotometricInterpretation tag. However, since PhotometricInterpretation can only express the order of Y, Cb and Cr, this tag is provided for cases when compressed data uses components other than Y, Cb, and Cr and to enable support of other sequences.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.CompressedBitsPerPixel">
            <summary>
            Information specific to compressed data. The compression mode used for a compressed image is indicated in unit bits per pixel.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.ShutterSpeedValue">
            <summary>
            Shutter speed. The unit is the APEX (Additive System of Photographic Exposure) setting.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.ApertureValue">
            <summary>
            The lens aperture. The unit is the APEX value.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.BrightnessValue">
            <summary>
            The value of brightness. The unit is the APEX value. Ordinarily it is given in the range of -99.99 to 99.99.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.ExposureBiasValue">
            <summary>
            The exposure bias. The units is the APEX value. Ordinarily it is given in the range of -99.99 to 99.99.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.MaxApertureValue">
            <summary>
            The smallest F number of the lens. The unit is the APEX value. Ordinarily it is given in the range of 00.00 to 99.99, but it is not limited to this range.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.SubjectDistance">
            <summary>
            The distance to the subject, given in meters.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.MeteringMode">
            <summary>
            The metering mode.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.LightSource">
            <summary>
            The kind of light source.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.Flash">
            <summary>
            This tag is recorded when an image is taken using a strobe light (flash).
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.FocalLength">
            <summary>
            The actual focal length of the lens, in mm. Conversion is not made to the focal length of a 35 mm film camera.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.SubjectArea">
            <summary>
            This tag indicates the location and area of the main subject in the overall scene.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.MakerNote">
            <summary>
            A tag for manufacturers of Exif writers to record any desired information. The contents are up to the manufacturer.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.UserComment">
            <summary>
            A tag for Exif users to write keywords or comments on the image besides those in ImageDescription, and without the character code limitations of the ImageDescription tag.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.SubSecTime">
            <summary>
            A tag used to record fractions of seconds for the DateTime tag.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.SubSecTimeOriginal">
            <summary>
            A tag used to record fractions of seconds for the DateTimeOriginal tag.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.SubSecTimeDigitized">
            <summary>
            A tag used to record fractions of seconds for the DateTimeDigitized tag.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.FlashpixVersion">
            <summary>
            The FlashPix format version supported by a FPXR file.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.ColorSpace">
            <summary>
            The color space information tag is always recorded as the color space specifier. Normally sRGB is used to define the color space based on the PC monitor conditions and environment. If a color space other than sRGB is used, Uncalibrated is set. Image data recorded as Uncalibrated can be treated as sRGB when it is converted to FlashPix.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.PixelXDimension">
            <summary>
            Information specific to compressed data. When a compressed file is recorded, the valid width of the meaningful image must be recorded in this tag, whether or not there is padding data or a restart marker. This tag should not exist in an uncompressed file.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.PixelYDimension">
            <summary>
            Information specific to compressed data. When a compressed file is recorded, the valid height of the meaningful image must be recorded in this tag, whether or not there is padding data or a restart marker. This tag should not exist in an uncompressed file. Since data padding is unnecessary in the vertical direction, the number of lines recorded in this valid image height tag will in fact be the same as that recorded in the SOF.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.RelatedSoundFile">
            <summary>
            This tag is used to record the name of an audio file related to the image data. The only relational information recorded here is the Exif audio file name and extension (an ASCII string consisting of 8 characters + '.' + 3 characters). The path is not recorded.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.InteroperabilityTag">
            <summary>
            Interoperability IFD is composed of tags which stores the information to ensure the Interoperability and pointed by the following tag located in Exif IFD. The Interoperability structure of Interoperability IFD is the same as TIFF defined IFD structure but does not contain the image data characteristically compared with normal TIFF IFD.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.FlashEnergy">
            <summary>
            Indicates the strobe energy at the time the image is captured, as measured in Beam Candle Power Seconds (BCPS).
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.SpatialFrequencyResponse">
            <summary>
            This tag records the camera or input device spatial frequency table and SFR values in the direction of image width, image height, and diagonal direction, as specified in ISO 12233.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.FocalPlaneXResolution">
            <summary>
            Indicates the number of pixels in the image width (X) direction per FocalPlaneResolutionUnit on the camera focal plane.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.FocalPlaneYResolution">
            <summary>
            Indicates the number of pixels in the image height (V) direction per FocalPlaneResolutionUnit on the camera focal plane.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.FocalPlaneResolutionUnit">
            <summary>
            Indicates the unit for measuring FocalPlaneXResolution and FocalPlaneYResolution. This value is the same as the ResolutionUnit.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.SubjectLocation">
            <summary>
            Indicates the location of the main subject in the scene. The value of this tag represents the pixel at the center of the main subject relative to the left edge, prior to rotation processing as per the Rotation tag. The first value indicates the X column number and second indicates the Y row number.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.ExposureIndex">
            <summary>
            Indicates the exposure index selected on the camera or input device at the time the image is captured.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.SensingMethod">
            <summary>
            Indicates the image sensor type on the camera or input device.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.FileSource">
            <summary>
            Indicates the image source. If a DSC recorded the image, this tag value of this tag always be set to 3, indicating that the image was recorded on a DSC.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.SceneType">
            <summary>
            Indicates the type of scene. If a DSC recorded the image, this tag value must always be set to 1, indicating that the image was directly photographed.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.CFAPattern">
            <summary>
            Indicates the color filter array (CFA) geometric pattern of the image sensor when a one-chip color area sensor is used. It does not apply to all sensing methods.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.CustomRendered">
            <summary>
            This tag indicates the use of special processing on image data, such as rendering geared to output. When special processing is performed, the reader is expected to disable or minimize any further processing.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.ExposureMode">
            <summary>
            This tag indicates the exposure mode set when the image was shot. In auto-bracketing mode, the camera shoots a series of frames of the same scene at different exposure settings.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.WhiteBalance">
            <summary>
            This tag indicates the white balance mode set when the image was shot.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.DigitalZoomRatio">
            <summary>
            This tag indicates the digital zoom ratio when the image was shot. If the numerator of the recorded value is 0, this indicates that digital zoom was not used.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.FocalLengthIn35mmFilm">
            <summary>
            This tag indicates the equivalent focal length assuming a 35mm film camera, in mm. A value of 0 means the focal length is unknown. Note that this tag differs from the FocalLength tag.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.SceneCaptureType">
            <summary>
            This tag indicates the type of scene that was shot. It can also be used to record the mode in which the image was shot. Note that this differs from the SceneType tag.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.GainControl">
            <summary>
            This tag indicates the degree of overall image gain adjustment.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.Contrast">
            <summary>
            This tag indicates the direction of contrast processing applied by the camera when the image was shot.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.Saturation">
            <summary>
            This tag indicates the direction of saturation processing applied by the camera when the image was shot.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.Sharpness">
            <summary>
            This tag indicates the direction of sharpness processing applied by the camera when the image was shot.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.DeviceSettingDescription">
            <summary>
            This tag indicates information on the picture-taking conditions of a particular camera model. The tag is used only to indicate the picture-taking conditions in the reader.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.SubjectDistanceRange">
            <summary>
            This tag indicates the distance to the subject.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.ImageUniqueID">
            <summary>
            This tag indicates an identifier assigned uniquely to each image. It is recorded as an ASCII string equivalent to hexadecimal notation and 128-bit fixed length.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.CameraOwnerName">
            <summary>
            This tag records the owner of a camera used in photography as an ASCII string.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.BodySerialNumber">
            <summary>
            This tag records the serial number of the body of the camera that was used in photography as an ASCII string.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.LensSpecification">
            <summary>
            This tag notes minimum focal length, maximum focal length, minimum F number in the minimum focal length, and minimum F number in the maximum focal length, which are specification information for the lens that was used in photography. When the minimum F number is unknown, the notation is 0/0
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.LensMake">
            <summary>
            This tag records the lens manufactor as an ASCII string.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.LensModel">
            <summary>
            This tag records the lens's model name and model number as an ASCII string.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Photo.LensSerialNumber">
            <summary>
            This tag records the serial number of the interchangeable lens that was used in photography as an ASCII string.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Interop.InteroperabilityIndex">
            <summary>
            Indicates the identification of the Interoperability rule. Use "R98" for stating ExifR98 Rules. Four bytes used including the termination code (NULL). see the separate volume of Recommended Exif Interoperability Rules (ExifR98) for other tags used for ExifR98.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Interop.InteroperabilityVersion">
            <summary>
            Interoperability version
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Interop.RelatedImageFileFormat">
            <summary>
            File format of image file
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Interop.RelatedImageWidth">
            <summary>
            Image width
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.Interop.RelatedImageLength">
            <summary>
            Image height
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.GpsInfo.GPSVersionID">
            <summary>
            Indicates the version of GPSInfoIFD. The version is given as 2.0.0.0. This tag is mandatory when GPSInfo tag is present. (Note: The GPSVersionID tag is given in bytes, unlike the ExifVersion tag. When the version is 2.0.0.0, the tag value is 02000000.H).
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.GpsInfo.GPSLatitudeRef">
            <summary>
            Indicates whether the latitude is north or south latitude. The ASCII value 'N' indicates north latitude, and 'S' is south latitude.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.GpsInfo.GPSLatitude">
            <summary>
            Indicates the latitude. The latitude is expressed as three RATIONAL values giving the degrees, minutes, and seconds, respectively. When degrees, minutes and seconds are expressed, the format is dd/1,mm/1,ss/1. When degrees and minutes are used and, for example, fractions of minutes are given up to two decimal places, the format is dd/1,mmmm/100,0/1.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.GpsInfo.GPSLongitudeRef">
            <summary>
            Indicates whether the longitude is east or west longitude. ASCII 'E' indicates east longitude, and 'W' is west longitude.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.GpsInfo.GPSLongitude">
            <summary>
            Indicates the longitude. The longitude is expressed as three RATIONAL values giving the degrees, minutes, and seconds, respectively. When degrees, minutes and seconds are expressed, the format is ddd/1,mm/1,ss/1. When degrees and minutes are used and, for example, fractions of minutes are given up to two decimal places, the format is ddd/1,mmmm/100,0/1.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.GpsInfo.GPSAltitudeRef">
            <summary>
            Indicates the altitude used as the reference altitude. If the reference is sea level and the altitude is above sea level, 0 is given. If the altitude is below sea level, a value of 1 is given and the altitude is indicated as an absolute value in the GSPAltitude tag. The reference unit is meters. Note that this tag is BYTE type, unlike other reference tags.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.GpsInfo.GPSAltitude">
            <summary>
            Indicates the altitude based on the reference in GPSAltitudeRef. Altitude is expressed as one RATIONAL value. The reference unit is meters.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.GpsInfo.GPSTimeStamp">
            <summary>
            Indicates the time as UTC (Coordinated Universal Time). TimeStamp is expressed as three RATIONAL values giving the hour, minute, and second (atomic clock).
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.GpsInfo.GPSSatellites">
            <summary>
            Indicates the GPS satellites used for measurements. This tag can be used to describe the number of satellites, their ID number, angle of elevation, azimuth, SNR and other information in ASCII notation. The format is not specified. If the GPS receiver is incapable of taking measurements, value of the tag is set to NULL.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.GpsInfo.GPSStatus">
            <summary>
            Indicates the status of the GPS receiver when the image is recorded. "A" means measurement is in progress, and "V" means the measurement is Interoperability.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.GpsInfo.GPSMeasureMode">
            <summary>
            Indicates the GPS measurement mode. "2" means two-dimensional measurement and "3" means three-dimensional measurement is in progress.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.GpsInfo.GPSDOP">
            <summary>
            Indicates the GPS DOP (data degree of precision). An HDOP value is written during two-dimensional measurement, and PDOP during three-dimensional measurement.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.GpsInfo.GPSSpeedRef">
            <summary>
            Indicates the unit used to express the GPS receiver speed of movement. "K" "M" and "N" represents kilometers per hour, miles per hour, and knots.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.GpsInfo.GPSSpeed">
            <summary>
            Indicates the speed of GPS receiver movement.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.GpsInfo.GPSTrackRef">
            <summary>
            Indicates the reference for giving the direction of GPS receiver movement. "T" denotes true direction and "M" is magnetic direction.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.GpsInfo.GPSTrack">
            <summary>
            Indicates the direction of GPS receiver movement. The range of values is from 0.00 to 359.99.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.GpsInfo.GPSImgDirectionRef">
            <summary>
            Indicates the reference for giving the direction of the image when it is captured. "T" denotes true direction and "M" is magnetic direction.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.GpsInfo.GPSImgDirection">
            <summary>
            Indicates the direction of the image when it was captured. The range of values is from 0.00 to 359.99.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.GpsInfo.GPSMapDatum">
            <summary>
            Indicates the geodetic survey data used by the GPS receiver. If the survey data is restricted to Japan, the value of this tag is "TOKYO" or "WGS-84".
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.GpsInfo.GPSDestLatitudeRef">
            <summary>
            Indicates whether the latitude of the destination point is north or south latitude. The ASCII value "N" indicates north latitude, and "S" is south latitude.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.GpsInfo.GPSDestLatitude">
            <summary>
            Indicates the latitude of the destination point. The latitude is expressed as three RATIONAL values giving the degrees, minutes, and seconds, respectively. If latitude is expressed as degrees, minutes and seconds, a typical format would be dd/1,mm/1,ss/1. When degrees and minutes are used and, for example, fractions of minutes are given up to two decimal places, the format would be dd/1,mmmm/100,0/1.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.GpsInfo.GPSDestLongitudeRef">
            <summary>
            Indicates whether the longitude of the destination point is east or west longitude. ASCII "E" indicates east longitude, and "W" is west longitude.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.GpsInfo.GPSDestLongitude">
            <summary>
            Indicates the longitude of the destination point. The longitude is expressed as three RATIONAL values giving the degrees, minutes, and seconds, respectively. If longitude is expressed as degrees, minutes and seconds, a typical format would be ddd/1,mm/1,ss/1. When degrees and minutes are used and, for example, fractions of minutes are given up to two decimal places, the format would be ddd/1,mmmm/100,0/1.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.GpsInfo.GPSDestBearingRef">
            <summary>
            Indicates the reference used for giving the bearing to the destination point. "T" denotes true direction and "M" is magnetic direction.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.GpsInfo.GPSDestBearing">
            <summary>
            Indicates the bearing to the destination point. The range of values is from 0.00 to 359.99.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.GpsInfo.GPSDestDistanceRef">
            <summary>
            Indicates the unit used to express the distance to the destination point. "K", "M" and "N" represent kilometers, miles and knots.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.GpsInfo.GPSDestDistance">
            <summary>
            Indicates the distance to the destination point.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.GpsInfo.GPSProcessingMethod">
            <summary>
            A character string recording the name of the method used for location finding. The first byte indicates the character code used, and this is followed by the name of the method.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.GpsInfo.GPSAreaInformation">
            <summary>
            A character string recording the name of the GPS area. The first byte indicates the character code used, and this is followed by the name of the GPS area.
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.GpsInfo.GPSDateStamp">
            <summary>
            A character string recording date and time information relative to UTC (Coordinated Universal Time). The format is "YYYY:MM:DD.".
            </summary>
        </member>
        <member name="P:PaintDotNet.Imaging.ExifPropertyKeys.GpsInfo.GPSDifferential">
            <summary>
            Indicates whether differential correction is applied to the GPS receiver.
            </summary>
        </member>
        <member name="M:PaintDotNet.Imaging.IptcPropertyKey.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:PaintDotNet.Imaging.IptcPropertyKey"/> structure.
            </summary>
            <param name="propertyName">The IPTC property name.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="propertyName"/> is null.</exception>
            <exception cref="T:System.ArgumentException"><paramref name="propertyName"/> is empty or contains only white space.</exception>
        </member>
        <member name="M:PaintDotNet.Imaging.IptcPropertyKey.#ctor(System.Byte,System.Byte)">
            <summary>
            Initializes a new instance of the <see cref="T:PaintDotNet.Imaging.IptcPropertyKey"/> structure.
            </summary>
            <param name="record">The IPTC IIM record number.</param>
            <param name="dataset">The IPTC IIM dataset number.</param>
            <remarks>
            See <a href="https://exiftool.org/TagNames/IPTC.html">https://exiftool.org/TagNames/IPTC.html</a> for a list of record and dataset values.
            </remarks>
        </member>
        <member name="M:PaintDotNet.Imaging.IptcPropertyKey.#ctor(System.UInt16)">
            <summary>
            Initializes a new instance of the <see cref="T:PaintDotNet.Imaging.IptcPropertyKey"/> structure.
            </summary>
            <param name="packedRecordAndDataset">
            A big-endian integer consisting of the packed IPTC IIM record and dataset numbers.
            </param>
            <remarks>
            The records that are not mapped to a string are stored as a big-endian integer consisting of the
            packed IPTC IIM record and dataset numbers.<br/>
            The record number is stored in the high byte and the dataset number is stored in the low byte.
            The records that are mapped to string can also be accessed using the record and dataset numbers.
            </remarks>
        </member>
        <member name="T:PaintDotNet.Imaging.NonBgra32ConversionSource">
            <summary>
            Prepares a BGRA32 bitmap source so it can be saved as a 24-bit or indexed image.
            This is NOT quantization, which is separate. This just makes sure that the alpha
            channel is all 0 or all 255.
            </summary>
        </member>
        <member name="M:PaintDotNet.Imaging.NonBgra32ConversionSource.#ctor(PaintDotNet.Imaging.IBitmapSource,System.Int32)">
            <summary>
            Initializes an instance of NonBgraConversionSource.
            </summary>
            <param name="source">The bitmap source to render from.</param>
            <param name="alphaThreshold">
            Pixels with an alpha value less than this will be set to #00000000.
            Use 0 to leave all pixel values unchanged.
            Use 1 to ensure all fully transparent pixels are made equal, which can be an important or useful transformation.
            </param>
        </member>
        <member name="T:PaintDotNet.Imaging.XmpPacket">
            <summary>
            Encapsulates an immutable XMP packet. The root node is an xmpmeta element that contains a single RDF element.
            </summary>
            <remarks>
            See also:
            * XMP Specification Part 1: Data Model, Serialization, and Core Properties, <a href="https://wwwimages2.adobe.com/content/dam/acom/en/devnet/xmp/pdfs/XMP%20SDK%20Release%20cc-2016-08/XMPSpecificationPart1.pdf">https://wwwimages2.adobe.com/content/dam/acom/en/devnet/xmp/pdfs/XMP%20SDK%20Release%20cc-2016-08/XMPSpecificationPart1.pdf</a>
            * XMP Specification Part 2: Additional Properties, <a href="https://www.adobe.com/content/dam/acom/en/devnet/xmp/pdfs/XMPSDKReleasecc-2020/XMPSpecificationPart2.pdf">https://www.adobe.com/content/dam/acom/en/devnet/xmp/pdfs/XMPSDKReleasecc-2020/XMPSpecificationPart2.pdf</a>
            * XMP Specification Part 3: Storage in Files, <a href="https://www.adobe.com/content/dam/acom/en/devnet/xmp/pdfs/XMPSDKReleasecc-2020/XMPSpecificationPart3.pdf">https://www.adobe.com/content/dam/acom/en/devnet/xmp/pdfs/XMPSDKReleasecc-2020/XMPSpecificationPart3.pdf</a>
            </remarks>
        </member>
        <member name="T:PaintDotNet.IndexEventArgs">
            <summary>
            Declares an EventArgs type for an event that needs a single integer, interpreted
            as an index, as event information.
            </summary>
        </member>
        <member name="T:PaintDotNet.IndexEventHandler">
            <summary>
            Declares a delegate type for an event that needs a single integer, interpreted
            as an index, as event information.
            </summary>
        </member>
        <member name="T:PaintDotNet.IndirectUI.DynamicMethodNames">
            <summary>
            This static class lists names and provides information about dynamic methods that IndirectUI objects (e.g. an Effect) may implement.
            A dynamic method is one that is available in one of 3 ways:
            1. If the object implements PaintDotNet.Dynamic.IDynamicInvoke, then that will be used to dispatch the method call. This is a good way to find out which dynamic methods are being invoked, when they're called, etc.
            2. If the object implements a private method, object OnInvokeDynamicMethod(string name, object[] args), then that will be used to dispatch the method call.
            3. The Effect may also implement the dynamic method directly as a private method, in which case reflection will be used to call it.
            </summary>
        </member>
        <member name="F:PaintDotNet.IndirectUI.DynamicMethodNames.OnWindowHelpButtonClicked">
            <summary>
            Called when the user clicks on the window's help button and WindowHelpContentType = CustomViaCallback.
            Must have this method name and signature: private void OnWindowHelpButtonClicked(System.Windows.Forms.IWin32Window owner, string helpContent);
            'owner' is the owning dialog and your UI must use it as its parent.
            'helpContent' is the value of the WindowHelpContent window property.
            </summary>
        </member>
        <member name="F:PaintDotNet.IndirectUI.WindowHelpContentType.PlainText">
            <summary>
            When the window's help button is clicked, a modal message box with plain text will be shown.
            </summary>
        </member>
        <member name="F:PaintDotNet.IndirectUI.WindowHelpContentType.CustomViaCallback">
            <summary>
            When the window's help button is clicked, a callback will be executed via dynamic method invocation.
            For more info, see: EffectDynamicMethods.OnWindowHelpButtonClicked
            </summary>
        </member>
        <member name="T:PaintDotNet.IPixelOp">
            <summary>
            Provides an interface for the methods that UnaryPixelOp and BinaryPixelOp share.
            For UnaryPixelOp, this produces the function, "dst = F(src)"
            For BinaryPixelOp, this produces the function, "dst = F(dst, src)"
            </summary>
        </member>
        <member name="M:PaintDotNet.IPixelOp.Apply(PaintDotNet.Surface,System.Drawing.Point,PaintDotNet.Surface,System.Drawing.Point,System.Drawing.Size)">
            <summary>
            This version of Apply has the liberty to decompose the rectangle of interest
            or do whatever types of optimizations it wants to with it. This is generally
            done to split the Apply operation into multiple threads.
            </summary>
        </member>
        <member name="M:PaintDotNet.IPixelOp.ApplyBase(PaintDotNet.Surface,System.Drawing.Point,PaintDotNet.Surface,System.Drawing.Point,System.Drawing.Size)">
            <summary>
            This is the version of Apply that will always do exactly what you tell it do,
            without optimizations or otherwise.
            </summary>
        </member>
        <member name="M:PaintDotNet.IPixelOp.Apply(PaintDotNet.Surface,System.Drawing.Point,PaintDotNet.Surface,System.Drawing.Point,System.Int32)">
            <summary>
            This version of Apply will perform on a scanline, not just a rectangle.
            </summary>
        </member>
        <member name="M:PaintDotNet.IThumbnailProvider.CreateThumbnailRenderer(System.Int32)">
            <summary>
            Creates a renderer for a thumbnail of the underlying object.
            </summary>
            <param name="maxEdgeLength">The maximum edge length of the thumbnail.</param>
            <returns>
            This method must only render the thumbnail without any borders. The renderer returned may have
            a maximum size of (maxEdgeLength x maxEdgeLength). This method may be called from any thread.
            The renderer returned is then owned by the calling method, and should be disposed once used.
            The renderer should not have parallelization applied to it.
            </returns>
            <remarks>
            This method may throw exceptions; however, it must guarantee that the underlying object is
            still valid and coherent in this situation.<br/>
            Also, the thumbnail should be rendered with the "checkerboard" background.
            </remarks>
        </member>
        <member name="T:PaintDotNet.MeasurementUnit">
            <summary>
            Specifies the unit of measure for the given data.
            </summary>
            <remarks>
            These enumeration values correspond to the values used in the EXIF ResolutionUnit tag.
            </remarks>
        </member>
        <member name="T:PaintDotNet.MemoryBlock">
            <summary>
            Manages an arbitrarily sized block of memory. You can also create child MemoryBlocks
            which reference a portion of the memory allocated by a parent MemoryBlock. If the parent
            is disposed, the children will not be valid.
            </summary>
        </member>
        <member name="P:PaintDotNet.MemoryBlock.AllowWrites">
            <summary>
            Sets a flag indicating whether the memory that this instance of MemoryBlock points to
            may be written to.
            </summary>
            <remarks>
            This flag is meant to be set to false for short periods of time. The value of this
            property is not persisted with serialization.
            </remarks>
        </member>
        <member name="M:PaintDotNet.MemoryBlock.CopyBlock(PaintDotNet.MemoryBlock,System.Int64,PaintDotNet.MemoryBlock,System.Int64,System.Int64)">
            <summary>
            Copies bytes from one area of memory to another. Since this function works
            with MemoryBlock instances, it does bounds checking.
            </summary>
            <param name="dst">The MemoryBlock to copy bytes to.</param>
            <param name="dstOffset">The offset within dst to copy bytes to.</param>
            <param name="src">The MemoryBlock to copy bytes from.</param>
            <param name="srcOffset">The offset within src to copy bytes from.</param>
            <param name="length">The number of bytes to copy.</param>
        </member>
        <member name="M:PaintDotNet.MemoryBlock.System#ICloneable#Clone">
            <summary>
            Creates a new parent MemoryBlock and copies our contents into it
            </summary>
        </member>
        <member name="M:PaintDotNet.MemoryBlock.Clone">
            <summary>
            Creates a new parent MemoryBlock and copies our contents into it
            </summary>
        </member>
        <member name="M:PaintDotNet.MemoryBlock.#ctor(System.Int64)">
            <summary>
            Creates a new MemoryBlock instance and allocates the requested number of bytes.
            </summary>
            <param name="bytes"></param>
        </member>
        <member name="M:PaintDotNet.MemoryBlock.#ctor(PaintDotNet.MemoryBlock,System.Int64,System.Int64)">
            <summary>
            Creates a new MemoryBlock instance that refers to part of another MemoryBlock.
            The other MemoryBlock is the parent, and this new instance is the child.
            </summary>
        </member>
        <member name="F:PaintDotNet.MemoryBlockAllocFlags.Default">
            <summary>
            Default flags for memory allocation. The memory block is guaranteed to be zero filled.
            </summary>
        </member>
        <member name="F:PaintDotNet.MemoryBlockAllocFlags.DoNotRequireZeroFill">
            <summary>
            The block is not required to be zero-filled upon allocation. This can sometimes
            be beneficial to performance if you know you will be filling the block with
            data anyway (e.g., loading stuff from a file).
            </summary>
        </member>
        <member name="T:PaintDotNet.BinaryPixelOps">
            <summary>
            Provides a set of standard BinaryPixelOps.
            </summary>
        </member>
        <member name="F:PaintDotNet.AngleChooserControl.components">
            <summary> 
            Required designer variable.
            </summary>
        </member>
        <member name="P:PaintDotNet.AngleChooserControl.ValueDouble">
            <summary>
            ValueDouble exposes the double-precision angle
            </summary>
        </member>
        <member name="M:PaintDotNet.AngleChooserControl.Dispose(System.Boolean)">
            <summary> 
            Clean up any resources being used.
            </summary>
        </member>
        <member name="M:PaintDotNet.AngleChooserControl.InitializeComponent">
            <summary> 
            Required method for Designer support - do not modify 
            the contents of this method with the code editor.
            </summary>
        </member>
        <member name="M:PaintDotNet.VisualStyling.IOnThemeConfigChanged.OnThemeConfigChanged">
            <summary>
            Called in response to the ThemeConfig.Changed event, which happens when important
            theming changes happen. When this is called, you should reload all static resources
            and apply any color changes.
            </summary>
        </member>
        <member name="F:PaintDotNet.VisualStyling.PdnTheme.Classic">
            <summary>
            This is the classic paint.net theme, which respects the system color choices.
            </summary>
        </member>
        <member name="F:PaintDotNet.VisualStyling.PdnTheme.Aero">
            <summary>
            This is the aero-inspired paint.net theme. It may include glass.
            </summary>
        </member>
        <member name="E:PaintDotNet.VisualStyling.ThemeConfig.Changed">
            <summary>
            Raised when the EffectiveTheme changes, or when there are other changes that affect theming.
            This event should be used when susbscribing to this event from a static method (non-instance).
            The event handler will be rooted until/unless it is removed.
            </summary>
            <remarks>
            You should use this event instead of SystemEvents.UserPreferencesChanged.
            </remarks>
        </member>
        <member name="P:PaintDotNet.VisualStyling.ThemeConfig.ChangedEvent">
            <summary>
            Raised when the EffectiveTheme changes, or when there are other changes that affect theming.
            This event should be used when subscribing to this event from an object instance (non-static).
            To subscribe to this event, use ChangeNotificationManager, which ensures that the subscriber
            does not get rooted and therefore "leaked."
            </summary>
            <remarks>
            You should use this event instead of SystemEvents.UserPreferencesChanged.
            </remarks>
        </member>
        <member name="P:PaintDotNet.VisualStyling.ThemeConfig.EffectiveTheme">
            <summary>
            Gets the theme that should be applied to UI elements.
            </summary>
        </member>
        <member name="T:PaintDotNet.PdnBaseForm">
            <summary>
            This is the base class for all Forms in Paint.NET.
            </summary>
        </member>
        <member name="P:PaintDotNet.PdnBaseForm.AutoHandleGlassRelatedOptimizations">
            <summary>
            Gets or sets a flag indicating whether glass-related "optimizations" are automatically handled.
            </summary>
            <remarks>
            If this is true, the following are handled automatically:
            1. The glass inset area is automatically cleared to be transparent.
            2. Any buttons within the glass inset area will have their FlatStyle set to Standard, 
               and UseCompatibleTextRendering set to true. Note that only buttons within the 
               Controls collection will be inspected. No nested controls will be.
            3. Clicking and dragging the mouse within the glass inset area will drag the form around.
            Setting this value to false when it is true will result in undefined behavior.
            </remarks>
        </member>
        <member name="P:PaintDotNet.PdnBaseForm.CurrentModalForm">
            <summary>
            Returns the currently active modal form if the process is in the foreground and is active.
            </summary>
            <remarks>
            If Form.ActiveForm is modeless, we search up the chain of owner forms
            to find its modeless owner form.
            </remarks>
        </member>
        <member name="P:PaintDotNet.PdnBaseForm.IsCurrentModalForm">
            <summary>
            Gets whether the current form is the processes' top level modal form.
            </summary>
        </member>
        <member name="P:PaintDotNet.PdnBaseForm.EnableOpacity">
            <summary>
            Gets or sets a flag that enables or disables opacity for all PdnBaseForm instances.
            If a particular form's EnableInstanceOpacity property is false, that will override
            this property being 'true'.
            </summary>
        </member>
        <member name="P:PaintDotNet.PdnBaseForm.ForceActiveTitleBar">
            <summary>
            Gets or sets the titlebar rendering behavior for when the form is deactivated.
            </summary>
            <remarks>
            If this property is false, the titlebar will be rendered in a different color when the form
            is inactive as opposed to active. If this property is true, it will always render with the
            active style. If the whole application is deactivated, the title bar will still be drawn in
            an inactive state.
            </remarks>
        </member>
        <member name="P:PaintDotNet.PdnBaseForm.IsAppThemeDark">
            <summary>
            Gets a flag indicating whether the app is using a dark theme.
            </summary>
        </member>
        <member name="F:PaintDotNet.PdnBaseForm.useAppThemeColors">
            <summary>
            If true, then paint.net will decide on the BackColor and ForeColor for the form.
            NOTE: This property is not "dynamic." You should set it only once during the constructor.
            Its default value is false.
            </summary>
        </member>
        <member name="P:PaintDotNet.PdnBaseForm.Opacity">
            <summary>
            Sets the opacity of the form.
            </summary>
            <remarks>
            Depending on the system configuration, this request may be ignored. For example,
            when running within a Terminal Service (or Remote Desktop) session, opacity will
            always be set to 1.0 for performance reasons.
            </remarks>
        </member>
        <member name="M:PaintDotNet.PdnBaseForm.DecideOpacitySetting">
            <summary>
            Decides whether or not to have opacity be enabled.
            </summary>
        </member>
        <member name="M:PaintDotNet.PdnBaseForm.InitializeComponent">
            <summary>
            Required method for Designer support - do not modify
            the contents of this method with the code editor.
            </summary>
        </member>
        <member name="M:PaintDotNet.PdnGraphicsPath.Draw(System.Drawing.Graphics,System.Drawing.Pen,System.Boolean)">
            <summary>
            Draws the path to the given Graphics context using the given Pen.
            </summary>
            <param name="g">The Graphics context to draw to.</param>
            <param name="pen">The Pen to draw with.</param>
            <param name="presentationIntent">
            If true, gives a hint that the path is being drawn to be presented to the user.
            </param>
            <remarks>
            If the path is "too complex," and if presentationIntent is true, then the path will
            not be drawn. To force the path to be drawn, set presentationIntent to false.
            </remarks>
        </member>
        <member name="T:PaintDotNet.PdnRegion">
            <summary>
            Designed as a proxy to the GDI+ Region class, while allowing for a
            replacement that won't break code. The main reason for having this
            right now is to work around some bugs in System.Drawing.Region,
            especially the memory leak in GetRegionScans().
            </summary>
        </member>
        <member name="M:PaintDotNet.PdnRegion.GetRegionScansReadOnly">
            <summary>
            This is an optimized version of GetRegionScans that returns a reference to the array
            that is used to cache the region scans. This mitigates performance when this array
            is requested many times on an unmodified PdnRegion.
            Thus, by using this method you are promising to not modify the array that is returned.
            </summary>
        </member>
        <member name="M:PaintDotNet.PixelOp.ComputeAlpha(System.Byte,System.Byte)">
            <summary>
            Computes alpha for r OVER l operation.
            </summary>
        </member>
        <member name="M:PaintDotNet.PixelOp.ApplyBase(PaintDotNet.Surface,System.Drawing.Point,PaintDotNet.Surface,System.Drawing.Point,System.Drawing.Size)">
            <summary>
            Provides a default implementation for performing dst = F(dst, src) or F(src) over some rectangle 
            of interest. May be slightly faster than calling the other multi-parameter Apply method, as less 
            variables are used in the implementation, thus inducing less register pressure.
            </summary>
            <param name="dst">The Surface to write pixels to, and from which pixels are read and used as the lhs parameter for calling the method <b>ColorBgra Apply(ColorBgra, ColorBgra)</b>.</param>
            <param name="dstOffset">The pixel offset that defines the upper-left of the rectangle-of-interest for the dst Surface.</param>
            <param name="src">The Surface to read pixels from for the rhs parameter given to the method <b>ColorBgra Apply(ColorBgra, ColorBgra)</b>.</param>
            <param name="srcOffset">The pixel offset that defines the upper-left of the rectangle-of-interest for the src Surface.</param>
            <param name="roiSize">The size of the rectangles-of-interest for all Surfaces.</param>
        </member>
        <member name="T:PaintDotNet.RenderArgs">
            <summary>
            Encapsulates the arguments passed to a Render function.
            This way we can do on-demand and once-only creation of Bitmap and Graphics
            objects from a given Surface object.
            </summary>
            <remarks>
            Use of the Bitmap and Graphics objects is not thread safe because of how GDI+ works.
            You must wrap use of these objects with a critical section, like so:
                object lockObject = new object();
                lock (lockObject)
                {
                    Graphics g = ra.Graphics;
                    g.DrawRectangle(...);
                    // etc.
                }
            </remarks>
        </member>
        <member name="M:PaintDotNet.RenderArgs.#ctor(PaintDotNet.Surface)">
            <summary>
            Creates an instance of the RenderArgs class.
            </summary>
            <param name="surface">
            The Surface to associate with this instance. This instance of RenderArgs does not 
            take ownership of this Surface.
            </param>
        </member>
        <member name="P:PaintDotNet.RenderArgs.Surface">
            <summary>
            Gets the Surface that has been associated with this instance of RenderArgs.
            </summary>
        </member>
        <member name="P:PaintDotNet.RenderArgs.Bitmap">
            <summary>
            Gets a Bitmap reference that aliases the Surface.
            </summary>
        </member>
        <member name="P:PaintDotNet.RenderArgs.Graphics">
            <summary>
            Retrieves a Graphics instance that can be used to draw on to the Surface.
            </summary>
            <remarks>
            Use of this object is not thread-safe. You must wrap retrieval and consumption of this 
            property with a critical section.
            </remarks>
        </member>
        <member name="P:PaintDotNet.RenderArgs.Bounds">
            <summary>
            Gets the size of the associated Surface object.
            </summary>
            <remarks>
            This is a convenience method equivalent to using RenderArgs.Surface.Bounds.
            </remarks>
        </member>
        <member name="P:PaintDotNet.RenderArgs.Size">
            <summary>
            Gets the size of the associated Surface object.
            </summary>
            <remarks>
            This is a convenient method equivalent to using RenderArgs.Surface.Size.
            </remarks>
        </member>
        <member name="P:PaintDotNet.RenderArgs.Width">
            <summary>
            Gets the width of the associated Surface object.
            </summary>
            <remarks>
            This is a convenience method equivalent to using RenderArgs.Surface.Width.
            </remarks>
        </member>
        <member name="P:PaintDotNet.RenderArgs.Height">
            <summary>
            Gets the height of the associated Surface object.
            </summary>
            <remarks>
            This is a convenience method equivalent to using RenderArgs.Surface.Height.
            </remarks>
        </member>
        <member name="T:PaintDotNet.Rendering.BooleanRegion">
            <summary>
            Represents an immutable 2D region of boolean values.
            </summary>
        </member>
        <member name="M:PaintDotNet.Rendering.Clipping.SutherlandHodgman``2(PaintDotNet.Rendering.RectDouble,``0)">
             <summary>
             The Sutherland-Hodgman clipping alrogithm.
             http://ezekiel.vancouver.wsu.edu/~cs442/lectures/clip/clip/index.html
             
             # Clipping a convex polygon to a convex region (e.g., rectangle) will always produce a convex polygon (or no polygon if completely outside the clipping region).
             # Clipping a concave polygon to a rectangle may produce several polygons (see figure above) or, as the following algorithm does, produce a single, possibly degenerate, polygon.
             # Divide and conquer: Clip entire polygon against a single edge (i.e., half-plane). Repeat for each edge in the clipping region.
            
             The input is a sequence of vertices: {v0, v1, ... vn} given as an array of Points
             the result is a sequence of vertices, given as an array of Points. This result may have
             less than, equal, more than, or 0 vertices.
             </summary>
        </member>
        <member name="T:PaintDotNet.Rendering.CompositionOp">
            <summary>
            A composition blend operator is used for ordered blending, such as "a OVER b".
            All composition ops use straight alpha (not premultiplied alpha, i.o.w.).
            </summary>
        </member>
        <member name="T:PaintDotNet.Rendering.CompositionOps.ZeroOpacity">
            <summary>
            This composition op is returned whenever someone asks to CreateWithOpacity and opacity is zero.
            </summary>
        </member>
        <member name="M:PaintDotNet.Rendering.GeometryList.EnterWriteLock">
            <summary>
            Takes a write-ownership lock. However, if the object is frozen then a ReadOnlyException is thrown.
            In that case, do not call ExitWriteLock().
            </summary>
        </member>
        <member name="M:PaintDotNet.Rendering.GeometryList.Freeze">
            <summary>
            Freezes the geometry list if it is not frozen already, making it immutable and read only.
            </summary>
        </member>
        <member name="M:PaintDotNet.Rendering.GeometryList.FromNonOverlappingScans(System.Collections.Generic.IEnumerable{PaintDotNet.Rendering.RectInt32})">
            <summary>
            Constructs a new GeometryList from a list of non-overlapping rectangles.
            </summary>
            <param name="scans"></param>
            <returns>
            A GeometryList formed from the union of all the rectangles. However, if the rectangles
            have any overlap, then the geometry is undefined.</returns>
        </member>
        <member name="M:PaintDotNet.Rendering.GeometryList.GetPolygonList">
            <summary>
            Returns the polygon list if this instance is frozen, otherwise a copy of the polygon list is returned.
            </summary>
        </member>
        <member name="M:PaintDotNet.Rendering.GeometryList.GetInteriorScans">
            <summary>
            Scan-converts the polygons in this GeometryList.
            </summary>
            <remarks>
            This method guarantees that the list of rectangles is sorted by the Top y-value, 
            and that none of the rectangles overlap each other.
            </remarks>
        </member>
        <member name="M:PaintDotNet.Rendering.GeometryList.RectToClosedPolygon(PaintDotNet.Rendering.RectDouble)">
            <summary>
            Given a rectangle, returns an array of 5 points that trace its outline.
            </summary>
        </member>
        <member name="M:PaintDotNet.Rendering.GeometryList.RectToClosedPolygon(PaintDotNet.Rendering.RectInt32)">
            <summary>
            Given a rectangle, returns an array of 5 points that trace its outline.
            </summary>
        </member>
        <member name="P:PaintDotNet.Rendering.IMaskedRenderer`2.HasContentMask">
            <summary>
            Gets a flag indicating whether the renderer will provide mask content.
            </summary>
            <remarks>
            If this property is true, then a non-null dstMask must be provided when calling the Render() method.
            If this property is false, then a null dstMask may be provided when calling Render(). If a non-null mask is provided, it will be filled as opaque.
            </remarks>
        </member>
        <member name="T:PaintDotNet.Rendering.IRendererScheduler`1">
            <summary>
            Implemented by renderers which do not do their own rendering, but rather change the
            execution behavior (e.g. parallelization) of another renderer.
            </summary>
            <typeparam name="TPixel"></typeparam>
        </member>
        <member name="T:PaintDotNet.Rendering.MutableBooleanRegion">
            <summary>
            Similar to <see cref="T:PaintDotNet.Rendering.BooleanRegion"/>, but mutable. An immutable <see cref="T:PaintDotNet.Rendering.BooleanRegion"/> can be
            obtained at any time with <see cref="M:PaintDotNet.Rendering.MutableBooleanRegion.GetSnapshot"/>.
            </summary>
            <remarks>
            This class is thread-safe in the sense that each method or property is atomic with respect to
            the others, and will block other threads from operating on the same instance while they execute.
            A reader-writer lock is employed in order to optimize performance when read activity is dominant.
            </remarks>
        </member>
        <member name="M:PaintDotNet.Rendering.RectDoubleUtil.FromPixelPoints(PaintDotNet.Rendering.Point2Double,PaintDotNet.Rendering.Point2Double)">
            <summary>
            Returns a new Rect which is the bounding rectangle around the two points.
            The points are considered to be "pixels" which have a width and height of 1.
            Therefore, one unit is added to the width and height.
            </summary>
        </member>
        <member name="T:PaintDotNet.Rendering.RendererAsPixelSource`1">
            <summary>
            Converts an IRenderer&lt;TPixel&gt; to an IPixelSource for use with PhotoSauce/MagicScaler.
            </summary>
        </member>
        <member name="T:PaintDotNet.Rendering.Renderer`1">
            <summary>
            A base implementation of <see cref="T:PaintDotNet.Rendering.IRenderer`1"/> that performs bounds checking.
            </summary>
        </member>
        <member name="M:PaintDotNet.Rendering.SurfaceBgraExtensions.GetBilinearSample(PaintDotNet.Rendering.ISurface{PaintDotNet.ColorBgra},System.Single,System.Single)">
            <summary>
            Gets a bilinear sample from the image.
            </summary>
        </member>
        <member name="F:PaintDotNet.ResamplingAlgorithm.NearestNeighbor">
            <summary>
            A nearest neighbor interpolation algorithm. Also known as nearest pixel or point interpolation.<br/>
            The output pixel is assigned the value of the pixel that the point falls within. No other pixels
            are considered.<br/>
            </summary>
        </member>
        <member name="F:PaintDotNet.ResamplingAlgorithm.LinearLowQuality">
            <summary>
            A bilinear interpolation algorithm. The output pixel values are computed as a weighted average
            of the nearest four pixels in a 2x2 grid. This is the algorithm often used in real-time computer
            graphics for (bi)linear filtering.
            </summary>
        </member>
        <member name="F:PaintDotNet.ResamplingAlgorithm.Cubic">
            <summary>
            A bicubic interpolation algorithm. Specifically this is the Catmull-Rom cubic interpolation kernel,
            which is equivalent to the HighQualityCubic algorithm offered by WIC and Direct2D. In the
            <a href="https://imagemagick.org/Usage/filter/#cubics">family of cubic filters,</a> this uses
            (b=0, c=0.5).
            </summary>
        </member>
        <member name="F:PaintDotNet.ResamplingAlgorithm.SuperSampling">
            <summary>
            <b>Deprecated.</b> It is highly recommend that you not use this.<br/>
            This is equivalent to Fant for down-sizing, and CubicSmooth for upsizing.<br/>
            Note that the name of this was poorly chosen and should not actually be referred to as "super sampling."
            </summary>
        </member>
        <member name="F:PaintDotNet.ResamplingAlgorithm.Fant">
            <summary>
            For downsizing, destination pixel values are computed as a weighted average of the all the pixels
            that map to the new pixel.<br/>
            For upsizing, this is equivalent to <see cref="F:PaintDotNet.ResamplingAlgorithm.Linear"/>.<br/>
            This implements Karl M. Fant's interpolation algorithm as described in the paper, "A Nonaliasing,
            Real-Time Spatial Transform Technique." It is equivalent to WIC/WPF's Fant algorithm, but without
            the bugs (e.g. the half-pixel offset when upsizing).
            </summary>
        </member>
        <member name="F:PaintDotNet.ResamplingAlgorithm.Linear">
            <summary>
            Implements <a href="http://www.imagemagick.org/Usage/filter/#triangle">Linear</a> (Triangle/Tent)
            interpolation. This is much higher quality than <see cref="F:PaintDotNet.ResamplingAlgorithm.LinearLowQuality"/> for downsizing,
            but produces the same result for upsizing.
            </summary>
        </member>
        <member name="F:PaintDotNet.ResamplingAlgorithm.AdaptiveFast">
            <summary>
            A high-quality mode that uses lower-quality downscaling to the nearest power of 2 to the target
            size. A high-quality scaler is then used to reach the final size. This uses
            <a href="https://github.com/saucecontrol/PhotoSauce">MagicScaler's</a> HybridScaleMode.Turbo.
            </summary>
        </member>
        <member name="F:PaintDotNet.ResamplingAlgorithm.Lanczos3">
            <summary>
            Uses the <a href="https://imagemagick.org/Usage/filter/#lanczos">Lanczos filter</a> with 3 lobes.
            </summary>
        </member>
        <member name="F:PaintDotNet.ResamplingAlgorithm.CubicSmooth">
            <summary>
            A bicubic interpolation algorithm. In the <a href="https://imagemagick.org/Usage/filter/#cubics">family of cubic filters,</a>
            this uses (b=1, c=0). No sharpening is employed, and the resulting image will not have any ringing
            artifacts.
            </summary>
        </member>
        <member name="F:PaintDotNet.ResamplingAlgorithm.AdaptiveHighQuality">
            <summary>
            A high-quality mode that chooses an appropriate high-quality interpolator based on the ratio between
            the source and target sizes. This is a very good choice for resizing photos and produces a sharper
            result than the other resamplers.<br/>
            This uses <a href="https://github.com/saucecontrol/PhotoSauce">MagicScaler's</a> default interpolation
            settings with HybridScaleMode.Off.<br/>
            </summary>
            <remarks>
            This is referred to as "Adaptive (Sharp)" in the UI for Image -> Resize.
            </remarks>
        </member>
        <member name="T:PaintDotNet.RgbColor">
            <summary>
            Adapted from: 
            "A Primer on Building a Color Picker User Control with GDI+ in Visual Basic .NET or C#"
            http://www.msdnaa.net/Resources/display.aspx?ResID=2460
            
            This class is only used by the ColorsForm and ColorWheel. Nothing else in this program
            should be using it!
            </summary>
        </member>
        <member name="T:PaintDotNet.SimpleList">
            <summary>
            A very simple linked-list class, done functional style. Use null for
            the tail to indicate the end of a list.
            </summary>
        </member>
        <member name="T:PaintDotNet.Surface">
            <summary>
            Encapsulates a &quot;classic&quot; Paint.NET bitmap object that contains pixels in the BGRA32 pixel format.
            </summary>
        </member>
        <member name="P:PaintDotNet.Surface.Scan0">
            <summary>
            Gets a MemoryBlock which is the buffer holding the pixels associated
            with this Surface.
            </summary>
        </member>
        <member name="P:PaintDotNet.Surface.Width">
            <summary>
            Gets the width, in pixels, of this Surface.
            </summary>
            <remarks>
            This property will never throw an ObjectDisposedException.
            </remarks>
        </member>
        <member name="P:PaintDotNet.Surface.Height">
            <summary>
            Gets the height, in pixels, of this Surface.
            </summary>
            <remarks>
            This property will never throw an ObjectDisposedException.
            </remarks>
        </member>
        <member name="P:PaintDotNet.Surface.Stride">
            <summary>
            Gets the stride, in bytes, for this Surface.
            </summary>
            <remarks>
            Stride is defined as the number of bytes between the beginning of a row and
            the beginning of the next row. Thus, in loose C notation: stride = (byte *)&amp;this[0, 1] - (byte *)&amp;this[0, 0].
            Stride will always be equal to <b>or greater than</b> Width * ColorBgra.SizeOf.
            This property will never throw an ObjectDisposedException.
            </remarks>
        </member>
        <member name="P:PaintDotNet.Surface.Size">
            <summary>
            Gets the size, in pixels, of this Surface.
            </summary>
            <remarks>
            This is a convenience function that creates a new Size instance based
            on the values of the Width and Height properties.
            This property will never throw an ObjectDisposedException.
            </remarks>
        </member>
        <member name="P:PaintDotNet.Surface.Bounds">
            <summary>
            Gets the bounds of this Surface, in pixels.
            </summary>
            <remarks>
            This is a convenience function that returns Rectangle(0, 0, Width, Height).
            This property will never throw an ObjectDisposedException.
            </remarks>
        </member>
        <member name="M:PaintDotNet.Surface.#ctor(System.Drawing.Size)">
            <summary>
            Creates a new instance of the Surface class.
            </summary>
            <param name="size">The size, in pixels, of the new Surface.</param>
        </member>
        <member name="M:PaintDotNet.Surface.#ctor(System.Int32,System.Int32,PaintDotNet.SurfaceCreationFlags)">
            <summary>
            Creates a new instance of the Surface class.
            </summary>
            <param name="width">The width, in pixels, of the new Surface.</param>
            <param name="height">The height, in pixels, of the new Surface.</param>
            <param name="surfaceCreationFlags">The options for creating the Surface.</param>
        </member>
        <member name="M:PaintDotNet.Surface.#ctor(System.Int32,System.Int32,System.Int32,PaintDotNet.MemoryBlock)">
            <summary>
            Creates a new instance of the Surface class that reuses a block of memory that was previously allocated.
            </summary>
            <param name="width">The width, in pixels, for the Surface.</param>
            <param name="height">The height, in pixels, for the Surface.</param>
            <param name="stride">The stride, in bytes, for the Surface.</param>
            <param name="scan0">The MemoryBlock to use. The beginning of this buffer defines the upper left (0, 0) pixel of the Surface.</param>
        </member>
        <member name="M:PaintDotNet.Surface.CreateWindow(System.Drawing.Rectangle)">
            <summary>
            Creates a Surface that aliases a portion of this Surface.
            </summary>
            <param name="bounds">The portion of this Surface that will be aliased.</param>
            <remarks>The upper left corner of the new Surface will correspond to the 
            upper left corner of this rectangle in the original Surface.</remarks>
            <returns>A Surface that aliases the requested portion of this Surface.</returns>
        </member>
        <member name="M:PaintDotNet.Surface.CreateWindow(PaintDotNet.Rendering.RectInt32)">
            <summary>
            Creates a Surface that aliases a portion of this Surface.
            </summary>
            <param name="bounds">The portion of this Surface that will be aliased.</param>
            <remarks>The upper left corner of the new Surface will correspond to the 
            upper left corner of this rectangle in the original Surface.</remarks>
            <returns>A Surface that aliases the requested portion of this Surface.</returns>
        </member>
        <member name="M:PaintDotNet.Surface.GetRowByteOffset(System.Int32)">
            <summary>
            Gets the offset, in bytes, of the requested row from the start of the surface.
            </summary>
            <param name="y">The row.</param>
            <returns>The number of bytes between (0,0) and (0,y).</returns>
        </member>
        <member name="M:PaintDotNet.Surface.GetRowByteOffsetUnchecked(System.Int32)">
            <summary>
            Gets the offset, in bytes, of the requested row from the start of the surface.
            </summary>
            <param name="y">The row.</param>
            <returns>The number of bytes between (0,0) and (0,y)</returns>
            <remarks>
            This method does not do any bounds checking and is potentially unsafe to use,
            but faster than GetRowByteOffset().
            </remarks>
        </member>
        <member name="M:PaintDotNet.Surface.GetRowReference(System.Int32)">
            <summary>
            Gets a reference to the beginning of the requested row in the surface.
            </summary>
            <param name="y">The row</param>
            <returns>A reference to (0,y) in this surface.</returns>
        </member>
        <member name="M:PaintDotNet.Surface.GetRowReferenceUnchecked(System.Int32)">
            <summary>
            Gets a reference to the beginning of the requested row in the surface.
            </summary>
            <param name="y">The row</param>
            <returns>A reference to (0,y) in this surface.</returns>
            <remarks>
            This method does not do any bounds checking and is potentially unsafe to use,
            but faster than GetRowReference().
            </remarks>
        </member>
        <member name="M:PaintDotNet.Surface.GetColumnByteOffset(System.Int32)">
            <summary>
            Gets the number of bytes from the beginning of a row to the requested column.
            </summary>
            <param name="x">The column.</param>
            <returns>
            The number of bytes between (0,n) and (x,n) where n is in the range [0, Height).
            </returns>
        </member>
        <member name="M:PaintDotNet.Surface.GetColumnByteOffsetUnchecked(System.Int32)">
            <summary>
            Gets the number of bytes from the beginning of a row to the requested column.
            </summary>
            <param name="x">The column.</param>
            <returns>
            The number of bytes between (0,n) and (x,n) where n is in the range [0, Height).
            </returns>
            <remarks>
            This method does not do any bounds checking and is potentially unsafe to use,
            but faster than GetColumnByteOffset().
            </remarks>
        </member>
        <member name="M:PaintDotNet.Surface.GetPointByteOffset(System.Int32,System.Int32)">
            <summary>
            Gets the number of bytes from the beginning of the surface's buffer to
            the requested point.
            </summary>
            <param name="x">The x offset.</param>
            <param name="y">The y offset.</param>
            <returns>
            The number of bytes between (0,0) and (x,y).
            </returns>
        </member>
        <member name="M:PaintDotNet.Surface.GetPointByteOffsetUnchecked(System.Int32,System.Int32)">
            <summary>
            Gets the number of bytes from the beginning of the surface's buffer to
            the requested point.
            </summary>
            <param name="x">The x offset.</param>
            <param name="y">The y offset.</param>
            <returns>
            The number of bytes between (0,0) and (x,y).
            </returns>
            <remarks>
            This method does not do any bounds checking and is potentially unsafe to use,
            but faster than GetPointByteOffset().
            </remarks>
        </member>
        <member name="M:PaintDotNet.Surface.GetPoint(System.Int32,System.Int32)">
            <summary>
            Gets the color at a specified point in the surface.
            </summary>
            <param name="x">The x offset.</param>
            <param name="y">The y offset.</param>
            <returns>The color at the requested location.</returns>
        </member>
        <member name="M:PaintDotNet.Surface.GetPointUnchecked(System.Int32,System.Int32)">
            <summary>
            Gets the color at a specified point in the surface.
            </summary>
            <param name="x">The x offset.</param>
            <param name="y">The y offset.</param>
            <returns>The color at the requested location.</returns>
            <remarks>
            This method does not do any bounds checking and is potentially unsafe to use,
            but faster than GetPoint().
            </remarks>
        </member>
        <member name="M:PaintDotNet.Surface.GetPointReference(System.Int32,System.Int32)">
            <summary>
            Gets the reference of the requested point.
            </summary>
            <param name="x">The x offset.</param>
            <param name="y">The y offset.</param>
            <returns>A reference to the requested point in the surface.</returns>
        </member>
        <member name="M:PaintDotNet.Surface.GetPointReferenceUnchecked(System.Int32,System.Int32)">
            <summary>
            Gets the reference of the requested point.
            </summary>
            <param name="x">The x offset.</param>
            <param name="y">The y offset.</param>
            <returns>A reference to the requested point in the surface.</returns>
            <remarks>
            This method does not do any bounds checking and is potentially unsafe to use,
            but faster than GetPointReference().
            </remarks>
        </member>
        <member name="M:PaintDotNet.Surface.IsVisible(System.Int32,System.Int32)">
            <summary>
            Determines if the requested pixel coordinate is within bounds.
            </summary>
            <param name="x">The x coordinate.</param>
            <param name="y">The y coordinate.</param>
            <returns>true if (x,y) is in bounds, false if it's not.</returns>
        </member>
        <member name="M:PaintDotNet.Surface.IsVisible(System.Drawing.Point)">
            <summary>
            Determines if the requested pixel coordinate is within bounds.
            </summary>
            <param name="pt">The coordinate.</param>
            <returns>true if (pt.X, pt.Y) is in bounds, false if it's not.</returns>
        </member>
        <member name="M:PaintDotNet.Surface.IsRowVisible(System.Int32)">
            <summary>
            Determines if the requested row offset is within bounds.
            </summary>
            <param name="y">The row.</param>
            <returns>true if y &gt;= 0 and y &lt; height, otherwise false</returns>
        </member>
        <member name="M:PaintDotNet.Surface.IsColumnVisible(System.Int32)">
            <summary>
            Determines if the requested column offset is within bounds.
            </summary>
            <param name="x">The column.</param>
            <returns>true if x &gt;= 0 and x &lt; width, otherwise false.</returns>
        </member>
        <member name="M:PaintDotNet.Surface.GetBilinearSample(System.Single,System.Single)">
            <summary>
            Gets a bilinear sample from the image.
            </summary>
            <remarks>
            Valid values for x are (-1.0, Width). Valid values for y are (-1.0, Height).
            Any samples in the range [-inf, 1.0] or [Width/Height, +inf] will return a
            transparent color value.
            The bilinear sample is taken using a 2x2 kernel such that sampling any integer
            coordinate will yield the same result as point sampling, i.e.
            GetBilinearSample((int)x, (int)y) == GetPoint((int)x, (int)y). This means that 
            bilinear sampling is only defined with full weighting in the range [0, Width-1.0] 
            for x and [0, Height-1.0] for y. For x in the range of (-1.0, 0.0), the color
            will be progressively less transparent (as blended with the point sample at 0.0).
            </remarks>
        </member>
        <member name="P:PaintDotNet.Surface.Item(System.Int32,System.Int32)">
            <summary>
            Gets or sets the pixel value at the requested offset.
            </summary>
            <remarks>
            This property is implemented with correctness and error checking in mind. If performance
            is a concern, do not use it.
            </remarks>
        </member>
        <member name="P:PaintDotNet.Surface.Item(System.Drawing.Point)">
            <summary>
            Gets or sets the pixel value at the requested offset.
            </summary>
            <remarks>
            This property is implemented with correctness and error checking in mind. If performance
            is a concern, do not use it.
            </remarks>
        </member>
        <member name="M:PaintDotNet.Surface.CreateAliasedBitmap">
            <summary>
            Helper function. Same as calling CreateAliasedBounds(Bounds).
            </summary>
            <returns>A GDI+ Bitmap that aliases the entire Surface.</returns>
        </member>
        <member name="M:PaintDotNet.Surface.CreateAliasedBitmap(System.Drawing.Rectangle)">
            <summary>
            Helper function. Same as calling CreateAliasedBounds(bounds, true).
            </summary>
            <returns>A GDI+ Bitmap that aliases the entire Surface.</returns>
        </member>
        <member name="M:PaintDotNet.Surface.CreateAliasedBitmap(System.Drawing.Rectangle,System.Boolean)">
            <summary>
            Creates a GDI+ Bitmap object that aliases the same memory that this Surface does.
            Then you can use GDI+ to draw on to this surface.
            Note: Since the Bitmap does not hold a reference to this Surface object, nor to
            the MemoryBlock that it contains, you must hold a reference to the Surface object
            for as long as you wish to use the aliased Bitmap. Otherwise the memory may be
            freed and the Bitmap will look corrupt or cause other errors. You may use the
            RenderArgs class to help manage this lifetime instead.
            </summary>
            <param name="bounds">The rectangle of interest within this Surface that you wish to alias.</param>
            <param name="alpha">If true, the returned bitmap will use PixelFormat.Format32bppArgb. 
            If false, the returned bitmap will use PixelFormat.Format32bppRgb.</param>
            <returns>A GDI+ Bitmap that aliases the requested portion of the Surface.</returns>
            <exception cref="T:System.ArgumentOutOfRangeException"><b>bounds</b> was not entirely within the boundaries of the Surface</exception>
            <exception cref="T:System.ObjectDisposedException">This Surface instance is already disposed.</exception>
        </member>
        <member name="M:PaintDotNet.Surface.CopyFromBitmap(System.Drawing.Bitmap)">
            <summary>
            Calls CopyFromBitmap(bitmap, true).
            </summary>
        </member>
        <member name="M:PaintDotNet.Surface.CopyFromBitmap(System.Drawing.Bitmap,System.Boolean)">
            <summary>
            Creates a new Surface and copies the pixels from a Bitmap to it.
            </summary>
            <param name="bitmap">The Bitmap to duplicate.</param>
            <param name="detectDishonestAlpha">
            If the bitmap has a PixelFormat of PixelFormat.Format32bppRgb, and all alpha values are zero,
            then the alpha channel will be converted to opaque (all 255). If any alpha values are non-zero, 
            then the alpha channel is retained as-is (the bitmap is treated as if PixelFormat were equal
            to PixelFormat.Format32bppArgb).
            The assumption is that an alpha channel that is all-zero or all-255 is "honest", whereas
            varying alpha values are "dishonest" with respect to the PixelFormat. In the all-zero case,
            the the alpha channel must be converted to all-255. In the all-255 case, this conversion is
            unnecessary. With the varying alpha case, it must be assumed that the source of the pixel
            values was supposed to specify PixelFormat.Format32bppArgb but did not. This will not detect
            if PixelFormat.Format32bppPArgb should have been specified.
            </param>
            <returns>
            A new Surface that is the same size as the given Bitmap and that has the same pixel values
            (subject to alpha channel interpretation if detectDishonestAlpha is true, or if the
            PixelFormat is PixelFormat.Format32bppPArgb).</returns>
            <remarks>
            If the bitmap has a PixelFormat of PixelFormat.Format32bppPArgb, then the color values will
            be converted from premultiplied alpha to straight alpha.
            </remarks>
        </member>
        <member name="M:PaintDotNet.Surface.DetectAndFixDishonestAlpha">
            <summary>
            Examines the pixels of this Surface and detects if its contents should be reprocessed.
            If all alpha values are 255, then no processing is performed.
            If all alpha values are greater than or equal to the color values, then the image is
            converted from premultiplied alpha.
            Otherwise, all alpha values are set to 255 and the color values are untouched.
            </summary>
            <remarks>
            This is usually not needed except when image data form a 3rd-party source needs to be
            imported with an untrusted pixel format. For instance, images acquired from the clipboard.
            </remarks>
        </member>
        <member name="M:PaintDotNet.Surface.CopySurface(PaintDotNet.Surface)">
            <summary>
            Copies the contents of the given surface to the upper left corner of this surface.
            </summary>
            <param name="source">The surface to copy pixels from.</param>
            <remarks>
            The source surface does not need to have the same dimensions as this surface. Clipping
            will be handled automatically. No resizing will be done.
            </remarks>
        </member>
        <member name="M:PaintDotNet.Surface.CopySurface(PaintDotNet.Surface,System.Drawing.Point)">
            <summary>
            Copies the contents of the given surface to a location within this surface.
            </summary>
            <param name="source">The surface to copy pixels from.</param>
            <param name="dstOffset">
            The offset within this surface to start copying pixels to. This will map to (0,0) in the source.
            </param>
            <remarks>
            The source surface does not need to have the same dimensions as this surface. Clipping
            will be handled automatically. No resizing will be done.
            </remarks>
        </member>
        <member name="M:PaintDotNet.Surface.CopySurface(PaintDotNet.Surface,System.Drawing.Rectangle)">
            <summary>
            Copies the contents of the given surface to the upper left of this surface.
            </summary>
            <param name="source">The surface to copy pixels from.</param>
            <param name="sourceRoi">
            The region of the source to copy from. The upper left of this rectangle
            will be mapped to (0,0) on this surface.
            The source surface does not need to have the same dimensions as this surface. Clipping
            will be handled automatically. No resizing will be done.
            </param>
        </member>
        <member name="M:PaintDotNet.Surface.CopySurface(PaintDotNet.Rendering.ISurface{PaintDotNet.ColorBgra},System.Drawing.Rectangle)">
            <summary>
            <inheritdoc cref="M:PaintDotNet.Surface.CopySurface(PaintDotNet.Surface,System.Drawing.Rectangle)"/>
            </summary>
            <param name="source"><inheritdoc cref="M:PaintDotNet.Surface.CopySurface(PaintDotNet.Surface,System.Drawing.Rectangle)" path="/param[@name='source']"/></param>
            <param name="sourceRoi"><inheritdoc cref="M:PaintDotNet.Surface.CopySurface(PaintDotNet.Surface,System.Drawing.Rectangle)" path="/param[@name='sourceRoi']"/></param>
        </member>
        <member name="M:PaintDotNet.Surface.CopySurface(PaintDotNet.Surface,System.Drawing.Point,System.Drawing.Rectangle)">
            <summary>
            Copies a rectangular region of the given surface to a specific location on this surface.
            </summary>
            <param name="source">The surface to copy pixels from.</param>
            <param name="dstOffset">The location on this surface to start copying pixels to.</param>
            <param name="srcRect">The region of the source surface to copy pixels from.</param>
            <remarks>
            sourceRoi.Location will be mapped to dstOffset.Location.
            The source surface does not need to have the same dimensions as this surface. Clipping
            will be handled automatically. No resizing will be done.
            </remarks>
        </member>
        <member name="M:PaintDotNet.Surface.CopySurface(PaintDotNet.Surface,PaintDotNet.PdnRegion)">
            <summary>
            Copies a region of the given surface to this surface.
            </summary>
            <param name="source">The surface to copy pixels from.</param>
            <param name="region">The region to clip copying to.</param>
            <remarks>
            The upper left corner of the source surface will be mapped to the upper left of this
            surface, and only those pixels that are defined by the region will be copied.
            The source surface does not need to have the same dimensions as this surface. Clipping
            will be handled automatically. No resizing will be done.
            </remarks>
        </member>
        <member name="M:PaintDotNet.Surface.CopySurface(PaintDotNet.Surface,System.Drawing.Rectangle[],System.Int32,System.Int32)">
            <summary>
            Copies a region of the given surface to this surface.
            </summary>
            <param name="source">The surface to copy pixels from.</param>
            <param name="region">The region to clip copying to.</param>
            <param name="startIndex">The starting index within <paramref name="region"/>.</param>
            <param name="length">The number of elements to use from <paramref name="region"/>.</param>
            <remarks>
            The upper left corner of the source surface will be mapped to the upper left of this
            surface, and only those pixels that are defined by the region will be copied.
            The source surface does not need to have the same dimensions as this surface. Clipping
            will be handled automatically. No resizing will be done.
            </remarks>
        </member>
        <member name="M:PaintDotNet.Surface.Clone">
            <summary>
            Creates a new surface with the same dimensions and pixel values as this one.
            </summary>
            <returns>A new surface that is a clone of the current one.</returns>
        </member>
        <member name="M:PaintDotNet.Surface.Clear">
            <summary>
            Clears the surface to transparent black (BGRA = [0, 0, 0, 0]).
            </summary>
        </member>
        <member name="M:PaintDotNet.Surface.Fill(System.Drawing.Rectangle,PaintDotNet.ColorBgra)">
            <summary>
            Fills the given rectangular region within the surface with the given color value.
            </summary>
            <param name="color">The color value to fill the rectangular region with.</param>
            <param name="rect">The rectangular region to fill.</param>
        </member>
        <member name="M:PaintDotNet.Surface.FitSurface(PaintDotNet.ResamplingAlgorithm,PaintDotNet.Surface,System.Drawing.Rectangle)">
            <summary>
            Fits the source surface to this surface using the given algorithm.
            </summary>
            <param name="algorithm">The surface to copy pixels from.</param>
            <param name="dstRoi">The rectangle to clip rendering to.</param>
            <param name="source">The algorithm to use.</param>
        </member>
        <member name="M:PaintDotNet.Surface.FitSurface(PaintDotNet.ResamplingAlgorithm,PaintDotNet.Surface,System.Drawing.Rectangle,PaintDotNet.FitSurfaceOptions)">
            <summary>
            Fits the source surface to this surface using the given algorithm and options.
            </summary>
            <param name="algorithm">The surface to copy pixels from.</param>
            <param name="dstRoi">The rectangle to clip rendering to.</param>
            <param name="source">The algorithm to use.</param>
            <param name="options">The options to use.</param>
        </member>
        <member name="M:PaintDotNet.Surface.Clear(PaintDotNet.ColorBgra)">
            <summary>
            Clears the surface to the given color value.
            </summary>
            <param name="color">The color value to fill the surface with.</param>
        </member>
        <member name="F:PaintDotNet.SurfaceCreationFlags.DoNotZeroFillHint">
            <summary>
            If this flag is not specified, then the surface is guaranteed to be filled with zeros.
            </summary>
        </member>
        <member name="F:PaintDotNet.SurfaceCreationFlags.Win32BitBltHint">
            <summary>
            The surface may be allocated such that it can be efficiently used with BitBlt().
            </summary>
        </member>
        <member name="T:PaintDotNet.Threading.Tasks.IIterativeTask">
            <summary>
            Used by Directive implementations to read and modify state of an IterativeTask&lt;T&gt;.
            </summary>
        </member>
        <member name="T:PaintDotNet.Threading.Tasks.IterativeTaskDirectives.Directive">
            <summary>
            Serves as the base class for IterativeTask Directives, as well as a
            factor for consumers of Directives.
            </summary>
        </member>
        <member name="P:PaintDotNet.Threading.Tasks.PdnTask.TaskResult">
            <summary>
            Gets the result of the task's execution.
            </summary>
            <remarks>
            This property is only non-null when State equals TaskState.Finished.
            The ValueType will always equal ResultValueType.
            </remarks>
        </member>
        <member name="M:PaintDotNet.Threading.Tasks.PdnTaskManager.BeginShutdown">
            <summary>
            Begins a shutdown of this task manager. Once this method is called, the task manager
            will no longer allow new tasks to be created and will transition to the ShuttingDown
            state. Any tasks in the NotYetRunning state will be canceled, and will not run. Once
            all tasks are complete, the task manager will transition to the Inactive state.
            </summary>
        </member>
        <member name="F:PaintDotNet.Threading.Tasks.PdnTaskManagerState.Active">
            <summary>
            The task manager is accepting new tasks.
            </summary>
        </member>
        <member name="F:PaintDotNet.Threading.Tasks.PdnTaskManagerState.ShuttingDown">
            <summary>
            The task manager is in the process of shutting down, and is not accepting new tasks.
            There may still be pending tasks that, once finished, will cause this task manager to
            transition to the Inactive state.
            </summary>
        </member>
        <member name="F:PaintDotNet.Threading.Tasks.PdnTaskManagerState.Inactive">
            <summary>
            The task manager has shut down, and is no longer accepting new tasks.
            </summary>
        </member>
        <member name="F:PaintDotNet.Threading.ThreadUtilizationPolicy.MinPhysical_MaxAllCores">
            <summary>
            The minimum # of threads is equal to the system's physical core count, while
            the maximum # of threads is equal to the system's logical core count.
            </summary>
        </member>
        <member name="F:PaintDotNet.Threading.ThreadUtilizationPolicy.PhysicalCoresOnly">
            <summary>
            Both the minimum and maximum # of threads is equal to the system's physical core count.
            </summary>
        </member>
        <member name="F:PaintDotNet.Threading.ThreadUtilizationPolicy.AlwaysAllCores">
            <summary>
            Both the minimum and maximum # of threads is equal to the system's logical core count.
            </summary>
        </member>
        <member name="F:PaintDotNet.Threading.ThreadUtilizationPolicy.MinAllButLastLogical_MaxAllCores">
            <summary>
            For the minimum thread mode: use all cores, except for the last logical core. If all
            logical cores are also physical cores, then all cores are used. This helps maintain
            maximum throughput while also helping to ensure that the UI thread is not preempted.
            For the maximum thread mode, use all logical cores.
            </summary>
        </member>
        <member name="F:PaintDotNet.Threading.ThreadUtilizationPolicy.MinAllButLastPhysicalOrThreeFourthsLogical_MaxAllCores">
            <summary>
            For the minimum thread mode: without HyperThreading, use all physical cores less one.
            For a system with HyperThreading, this will utilize (physical + logical) / 2 cores,
            essentially using all physical and half logical cores.
            For the maximum thread mode, use all cores.
            </summary>
            <remarks>
            On systems without HyperThreading, leaving 1 physical core unused allows the UI thread
            some breathing room. This significantly improves UI interaction performance.
            With HyperThreading, leaving half of the bonus logical cores unused has the same effect
            but with more breathing rooom, while improving performance over MinPhysical_MaxAllCores.
            </remarks>
        </member>
        <member name="F:PaintDotNet.Threading.WaitType.Default">
            <summary>
            The default wait type will be used, which may vary depending on the scheduler being used.
            </summary>
        </member>
        <member name="F:PaintDotNet.Threading.WaitType.Pumping">
            <summary>
            A pumping wait will be used. This could cause work items and callbacks to be executed before the wait operation returns.
            </summary>
        </member>
        <member name="F:PaintDotNet.Threading.WaitType.Blocking">
            <summary>
            Win32 message pumping will be disabled for the duration of the wait.
            </summary>
        </member>
        <member name="M:PaintDotNet.Threading.WorkItemQueue.NotifyWorkItemsQueued(System.Int32)">
            <summary>
            Called by derived classes when more work items have been added.
            </summary>
        </member>
        <member name="P:PaintDotNet.UIScaleFactor.Minimum">
            <summary>
            Gets the minimum UI scaling factor representable by UIScaleFactor.
            </summary>
            <remarks>
            This value is 96 DPI, 1.0 Scale.
            </remarks>
        </member>
        <member name="P:PaintDotNet.UIScaleFactor.Maximum">
            <summary>
            Gets the maximum UI scaling factor representable by UIScaleFactor.
            </summary>
            <remarks>
            This value is 9600 DPI, 100.0 Scale.
            </remarks>
        </member>
        <member name="P:PaintDotNet.UIScaleFactor.Current">
            <summary>
            Gets the current UI scaling factor, which is based on the user's settings.
            </summary>
        </member>
        <member name="P:PaintDotNet.UIScaleFactor.Legacy">
            <summary>
            Gets the legacy UI scaling factor, which is always 96 DPI, 1.0 Scale.
            </summary>
        </member>
        <member name="M:PaintDotNet.UIScaleFactor.ConvertFontPointsToPixels(System.Double)">
            <summary>
            Converts a font size, expressed in points (1/72 inch), to pixels. This is useful when
            converting GDI+ (System.Drawing) text rendering code to Direct2D/DirectWrite.
            </summary>
        </member>
        <member name="M:PaintDotNet.UIScaleFactor.ConvertFontPointsToPixels(System.Single)">
            <summary>
            Converts a font size, expressed in points (1/72 inch), to pixels. This is useful when
            converting GDI+ (System.Drawing) text rendering code to Direct2D/DirectWrite.
            </summary>
        </member>
        <member name="M:PaintDotNet.UIScaleFactor.ConvertFontPointsToDips(System.Double)">
            <summary>
            Converts a font size, expressed in points (1/72 inch), to DIPs (device-independent pixels).
            This value can then be converted to pixels by using a UIScaleFactor.
            </summary>
        </member>
        <member name="M:PaintDotNet.UIScaleFactor.ConvertFontPointsToDips(System.Single)">
            <summary>
            Converts a font size, expressed in points (1/72 inch), to DIPs (device-independent pixels).
            This value can then be converted to pixels by using a UIScaleFactor.
            </summary>
        </member>
        <member name="T:PaintDotNet.UnaryPixelOp">
            <summary>
            Defines a way to operate on a pixel, or a region of pixels, in a unary fashion.
            That is, it is a simple function F that takes one parameter and returns a
            result of the form: d = F(c)
            </summary>
        </member>
        <member name="T:PaintDotNet.UnaryPixelOps">
            <summary>
            Provides a set of standard UnaryPixelOps.
            </summary>
            <summary>
            Provides a set of standard UnaryPixelOps.
            </summary>
            <summary>
            Provides a set of standard UnaryPixelOps.
            </summary>
        </member>
        <member name="T:PaintDotNet.UnaryPixelOps.AverageChannels">
            <summary>
            Averages the input color's red, green, and blue channels. The alpha component
            is unaffected.
            </summary>
        </member>
        <member name="T:PaintDotNet.UnaryPixelOps.BlendConstant">
            <summary>
            Blends pixels with the specified constant color.
            </summary>
        </member>
        <member name="T:PaintDotNet.UnaryPixelOps.Constant">
            <summary>
            Always returns a constant color.
            </summary>
        </member>
        <member name="T:PaintDotNet.UnaryPixelOps.Identity">
            <summary>
            Passes through the given color value.
            result(color) = color
            </summary>
        </member>
        <member name="T:PaintDotNet.UnaryPixelOps.Invert">
            <summary>
            Inverts a pixel's color, and passes through the alpha component.
            </summary>
        </member>
        <member name="T:PaintDotNet.UnaryPixelOps.InvertWithAlpha">
            <summary>
            Inverts a pixel's color and its alpha component.
            </summary>
        </member>
        <member name="T:PaintDotNet.UnaryPixelOps.SetAlphaChannel">
            <summary>
            Specialization of SetChannel that sets the alpha channel.
            </summary>
            <remarks>This class depends on the system being litte-endian with the alpha channel 
            occupying the 8 most-significant-bits of a ColorBgra instance.
            By the way, we use addition instead of bitwise-OR because an addition can be
            perform very fast (0.5 cycles) on a Pentium 4.</remarks>
        </member>
        <member name="T:PaintDotNet.UnaryPixelOps.SetAlphaChannelTo255">
            <summary>
            Specialization of SetAlphaChannel that always sets alpha to 255.
            </summary>
        </member>
        <member name="T:PaintDotNet.UnaryPixelOps.SetChannel">
            <summary>
            Used to set a given channel of a pixel to a given, predefined color.
            Useful if you want to set only the alpha value of a given region.
            </summary>
        </member>
        <member name="T:PaintDotNet.WaitCursorChanger">
            <summary>
            Simply sets a control's Cursor to the WaitCursor (hourglass) on creation,
            and sets it back to its original setting upon disposal.
            </summary>
        </member>
        <member name="M:PaintDotNet.WebHelpers.DownloadSmallFile(System.Uri)">
            <summary>
            Downloads a small file and returns it as a byte array.
            </summary>
            <returns>The contents of the file if downloaded successfully.</returns>
        </member>
        <member name="M:PaintDotNet.WebHelpers.DownloadFile(System.Uri,System.IO.Stream,PaintDotNet.ProgressEventHandler)">
            <summary>
            Download a file (max 512MB) and saves it to the given Stream.
            </summary>
        </member>
        <member name="M:PaintDotNet.WebHelpers.DownloadFileRobust(System.Uri,System.IO.Stream,PaintDotNet.ProgressEventHandler,System.Threading.CancellationToken)">
            <summary>
            Download a file and saves it to the given Stream. Will try proxies until one can be used successfully,
            and will retry/resume when errors are encountered.
            </summary>
        </member>
        <member name="T:PaintDotNet.WorkerThreadException">
            <summary>
            This exception is thrown by a foreground thread when a background worker thread
            had an exception. This allows all exceptions to be handled by the foreground thread.
            </summary>
        </member>
    </members>
</doc>
