コード例 #1
0
        public static Gdi32Context FromGraphics(Graphics graphics, bool preserveClipping, bool preserveTranslateTransform)
        {
            HandleRef handleRef = default(HandleRef);

            try
            {
                if (preserveClipping || preserveTranslateTransform)
                {
                    Region?       region        = null;
                    Matrix?       matrix        = null;
                    WindowsRegion?windowsRegion = null;

                    if (graphics.GetContextInfo() is object[] contextInfo && contextInfo.Length == 2)
                    {
                        region = (contextInfo[0] as Region);
                        matrix = (contextInfo[1] as Matrix);

                        if (region is { })
                        {
                            windowsRegion = WindowsRegion.FromRegion(region, graphics);
                        }
                    }
コード例 #2
0
 public RegionFlags CombineRegion(WindowsRegion region1, WindowsRegion region2, RegionCombineMode mode)
 {
     return(CombineRgn(HRegion, region1.HRegion, region2.HRegion, mode));
 }