devlights
9/11/2014 - 11:55 AM

PictureBoxの中で余白を考慮して計算

PictureBoxの中で余白を考慮して計算

        double imgW = picArea.Image.Width;
            double imgH = picArea.Image.Height;
            double picBoxW = picArea.Width;
            double picBoxH = picArea.Height;

            double magW = picBoxW / imgW;
            double magH = picBoxH / imgH;
            double zoomRatio;
            double hMargin;
            double wMargin;

            if (magH < magW)
            {
                zoomRatio = magH;
                hMargin = 0;
                wMargin = (picBoxW - (imgW * zoomRatio)) / 2;
            }
            else
            {
                zoomRatio = magW;
                hMargin = (picBoxH - (imgH * zoomRatio)) / 2;
                wMargin = 0;
            }