12

是否有一种简单而实用的方法来缩放包含滚动条的图片框中的图像?

目前,我在激活了自动滚动的面板中使用了一个图片框。要缩放,我放大图片框并使用面板上的滚动条移动它。问题是,它的行为很奇怪。例如:如果你放大到远处,表格的上下边框与图像之间的边距会越来越大。

这就是缩放方法。我从这里得到的。

private void ZoomInOut(bool zoom)
    {
        //Zoom ratio by which the images will be zoomed by default
        int zoomRatio = 10;
        //Set the zoomed width and height
        int widthZoom = pictureBox_viewer.Width * zoomRatio / 100;
        int heightZoom = pictureBox_viewer.Height * zoomRatio / 100;
        //zoom = true --> zoom in
        //zoom = false --> zoom out
        if (!zoom)
        {
            widthZoom *= -1;
            heightZoom *= -1;
        }
        //Add the width and height to the picture box dimensions
        pictureBox_viewer.Width += widthZoom;
        pictureBox_viewer.Height += heightZoom;

    }

任何帮助表示赞赏。

提前致谢。

马可

编辑: 未缩放和缩​​放(16 倍)图像的两个屏幕截图。注意图像上边框和表单上边框之间的边距。 未缩放图像 放大图像

4

1 回答 1

3

我认为缩放(重新缩放)图像而不是图片框更好。看看这篇文章 - http://www.codeproject.com/Articles/21097/PictureBox-Zoom

如何在c#中放大和缩小图像

于 2013-08-16T09:36:31.090 回答