コード例 #1
0
        static Bitmap _Capture(List <POINT> outline, wnd w = default, bool printWindow = false)
        {
            int n = outline?.Count ?? 0;

            if (n == 0)
            {
                throw new ArgumentException();
            }
            if (n == 1)
            {
                return(_Capture(new RECT(outline[0].x, outline[0].y, 1, 1)));
            }

            using var path = _CreatePath(outline);
            RECT r = RECT.From(path.GetBounds(), false);

            if (r.NoArea)
            {
                path.Widen(Pens.Black);                 //will be transparent, but no exception. Difficult to make non-transparent line.
                r = RECT.From(path.GetBounds(), false);
            }
            return(_Capture(r, w, printWindow, path));
        }