程序中要弄个简单的图片查看器,可以按比例缩放大小的,当然可以调用windows的图片查看器,不过想想还是自己动手弄个简单的吧。。

缩放操作在Picturebox重绘的时候触发执行。如下

代码

1 //重绘处理部分
2   private void pipeImagePictureBox_Paint(object sender, PaintEventArgs e)
3 {
4 try
5 {
6 if (pipeImagePath != "")
7 {
8 pipeImage = new Bitmap(pipeImagePath);
9 }
10 Graphics g = e.Graphics;
11 //设置高质量插值法
12   g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.High;
13 //设置高质量,低速度呈现平滑程度
14   g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
15 g.CompositingQuality = System.Drawing.Drawing2D.CompositingQuality.HighQuality;
16 //消除锯齿
17   g.SmoothingMode = SmoothingMode.AntiAlias;
18
19 float fx = (float)(this.pipeImageZoomNumericUpDown.Value / 100);
20 float fy = (float)(this.pipeImageZoomNumericUpDown.Value / 100);
21 int w = (int)(pipeImage.Width * fx), h = (int)(pipeImage.Height * fy);
22 pipeImagePictureBox.Width = w;
23 pipeImagePictureBox.Height = h;
24 int W = (int)(pipeImagePanel.Width), H = (int)(pipeImagePanel.Height);
25 pipeImagePictureBox.Location = new System.Drawing.Point((W - w) / 2, (H - h) / 2);
26 pipeImagePictureBox.Size = new Size(w,h);
27
28 Rectangle newRectangle = new Rectangle(0, 0, w, h);
29 g.DrawImage(pipeImage, newRectangle);
30 }
31 catch (Exception ex)
32 {
33 //pipeImagePictureBox.Image = null;
34   }
35 }

当然,除了缩放还有其他的要做。。

转载于:https://www.cnblogs.com/njucslzh/archive/2010/11/09/1872316.html

Picturebox实现图片的缩放相关推荐

  1. 《OpenCV3编程入门》学习笔记6 图像处理(六)图像金字塔与图片尺寸缩放

    6.6 图像金字塔与图片尺寸缩放 6.6.1 图像金字塔 1.图像金字塔是图像中多尺度表达的一种,主要用于图像分割,是一种以多分辨率解释图像的结构,通过梯次向下采样获得分辨率逐步降低的图象集合 2.分 ...

  2. canvas 图片不能缩放显示在画布的问题 忘记设置dw,dh

    在制作红包效果时,new image显示的图片由于没有设置drawImage的dw,dh,图片没有缩放在画布.是对drawImage没有认识好 context.drawImage(img,x,y) c ...

  3. iOS transform解决连续多次旋转缩放,实现图片旋转缩放效果

    一.需求 实现imageView的缩放旋转效果,一般有两种方式: 1.底层加scrollview,利用scrollview的属性实现.(推荐这种,这是我比较后发现的,手势做缩放旋转会有点弊端) 2.利 ...

  4. [转]图片自动缩放 js图片缩放

    转自:http://hi.baidu.com/crystalhx/blog/item/deba9b2320274340ac34de09.html 图片自动缩放 js图片缩放 2008-03-27 10 ...

  5. android 多点触控缩放,Android多点触控(图片的缩放Demo)

    本文主要介绍Android的多点触控,使用了一个图片缩放的实例,来更好的说明其原理.需要实现OnTouchListener接口,重写其中的onTouch方法. 实现效果图: 源代码: 布局文件: ac ...

  6. [latex]图片动态缩放的PDF动画示例

    [latex]图片动态缩放的PDF动画示例,下面的示例主要使用ctex,animate和tikz宏包实现的. % Animated beamer frame for tikz %Author: %wu ...

  7. android 手势事件 重写,Android实现通过手势控制图片大小缩放的方法

    本文实例讲述了Android实现通过手势控制图片大小缩放的方法.分享给大家供大家参考,具体如下: 该程序实现的是通过手势来缩放图片,从左向右挥动图片时图片被放大,从右向左挥动图片时图片被缩小,挥动速度 ...

  8. java canvas 缩放图片_详解如何用HTML5 Canvas API控制图片的缩放变换

    摘要:这篇HTML5栏目下的"详解如何用HTML5 Canvas API控制图片的缩放变换",介绍的技术点是"html5_canvas.canvas.Html5.控制图片 ...

  9. html 图片自由缩放_PS中的“缩放”

    大家好!今天我们来总结一下Photoshop中的缩放,主要有图像(图片)的缩放.选区缩放.图层样式缩放. 1.图像的缩放 选中图像-快捷键 Ctrl+T-选择变换点.单击鼠标拖动进行变换. 2.选区缩 ...

最新文章

  1. eplan图纸怎么发给别人_EPLAN标签导出材料清单(附模板+图文教程)
  2. 计算php代码执行时间长短的类(精确到毫秒)
  3. 面向对象六大原则详解
  4. 云小课 | 到底什么是区块链?
  5. servlet mysql insert_servlet+mybatis 实现mysql的增删改查实例
  6. 互联网公司端午节礼盒歧视指南
  7. 用MySQLdb操作数据库流程示例:
  8. python:植物大战僵尸源代码
  9. ResNet 网络结构与残差连接介绍
  10. java 数据抓取 动态获得cookies里变动的属性_Java爬取CSDN博客遇到setCookie问题
  11. 建筑力学与结构【5】
  12. PHP手册 2009国庆版
  13. AM5728调试经历
  14. 敏捷开发绩效管理之四:为团队设立外部绩效目标(目标管理,外向型绩效)
  15. 雪都阿勒泰滑雪爱好者首选地
  16. ai人工智能课程百度云_云AI就像核电
  17. 原BEA全球副总裁沈惠中出任普元软件CEO
  18. 【转】手机音视频流媒体开发一些有用资料
  19. python推荐算法课程_Python数据科学:全栈技术详解4-推荐算法
  20. 2.文件---open

热门文章

  1. 目标检测(十九)--SoftNMS
  2. 如何读出烧录程序.bin的数据_如何改变程序搜索数据的方式?使用Redis进行搜索...
  3. 光纤接口怎么接 图解_视频光端机怎么连接,视频光端机接法图解
  4. 前端 domparser未定义怎么解决_开源|wwto:小程序跨端迁移解决方案——微信转其他小程序...
  5. 存储器和 I/O 端口有哪两种编址方式?简要说明各自特点
  6. BZOJ4011:[HNOI2015]落忆枫音(DP,拓扑排序)
  7. ios微信下vue项目组件切换并自动播放音频的解决方案
  8. 对话苹果公司的一号员工Bill Fernandez
  9. MathType中公式不对齐怎么办
  10. cocoaPods 创建自己的依赖库