我想知道如何为照片框创建放大镜的效果。 不缩放图片框,但放大PictureBox控件(圆形或矩形)中图像的一部分,并设置玻璃尺寸和放大系数。
它可能只在图片框控件中工作。
语言:C#
提前致谢!
答案 0 :(得分:0)
基本上,你需要两个图片盒。一个用于整个图像,另一个用于放大部分。此外,您必须根据用户的鼠标位置放置放大的图片框。
你会在http://www.codeproject.com/Articles/21097/PictureBox-Zoom找到一篇关于它的好文章。只需更改源以在适当的位置显示第二个图片框(在用户的光标位置下)。
答案 1 :(得分:0)
您需要2个图片框对象,一个用于图片本身,第二个用于放大区域。
接下来将图片加载到内存中,你没有指定图片的来源,但无论如何我建议使用流。然后在内存中创建位图图像。
使用图片框的图像方法设置属性。
要为放大图片框创建源图像,您需要克隆选定的部分(计算新图片区域的尺寸)。整个事情并不像你想象的那样微不足道,因为克隆方法接受Rectangle对象作为区域选择器,并且通常用于矩形而不是圆形来复制选择。
我还建议尽快Dispose()未使用的位图对象。
希望这可以帮助。