Graphics.DrawImage绘制的图像变大的原因分析及解决
目录
- Graphics.DrawImage绘制的图像变大
- 原因分析
- 解决方案
- C#Graphics.DrawImage的一些问题
Graphics.DrawImage绘制的图像变大
原因分析
DrawImage是设备相关的函数,换言之就是,DrawImage会把屏幕的参数带上,所以,它绘制图像的DPI基本都是96。而我的图片是72DPI的。
例如,假定一个 Image 对象的宽度为 216 像素而存储的水平分辨率值为 72 点/英寸。因为 216 除以 72 等于 3,所以 DrawImage 将缩放该图像,使其在 96 点/英寸的分辨率下的宽度为 3 英寸。也就是说,DrawImage 将显示一个宽度为 96x3 = 288 像素的图像。
解决方案
1:graphics.DrawImage(image, 0, 0, image.Width, image.Height) ;//绘制时加上原图的宽度和高度
2: image.SetResolution(96, 96) ;//设置SetResolution,使其按96 点/英寸的分辨率显示
C#Graphics.DrawImage的一些问题
今天需要把一些小图(如125*100)放到大图(1024*768)中,然后用到了Graphics.DrawImage这个函数,开始使用的是DrawImage(Image image, Point point)。
查看结果的时候发现极少数的小图插入以后变大了,调试以后发现是C#函数的问题。
改用DrawImage(Image image, Rectangle rect)问题就解决了,可能是C#在计算图像大小的时候存在错误。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。
相关推荐
-
C#图片按比例缩放的实现代码
复制代码 代码如下: using System.Drawing;using System.Drawing.Drawing2D;using System.Drawing.Imaging; namespace Publics{ public class ImgHelper { public static void AdjustPhoto(int toWidth, int toHeight, string filePath, string fromFileName, stri
-
c# 如何实现图片压缩
一般在web应用中,对客户端提交上来的图片肯定需要进行压缩的.尤其是比较大的图片,如果不经过压缩会导致页面变的很大,打开速度比较慢,当然了如果是需要高质量的图片也得需要生产缩略图. 一般在web应用中,对客户端提交上来的图片肯定需要进行压缩的.尤其是比较大的图片,如果不经过压缩会导致页面变的很大,打开速度比较慢,当然了如果是需要高质量的图片也得需要生产缩略图. 下面贴出我自己琢磨的图片压缩算法,首先这个是未经优化的简单实现: 代码如下: public static System.Drawing
-
C#图片截取压缩(百分比压缩/大小压缩)实现代码
前端时间朋友要传一些图片给我,全是大图,考虑到网速的限制,让他处理下图片大小再给我,这厮居然不知道用什么工具. 为了娱乐写了个截取图片和压缩图片你的小工具 1.按照百分比截图 复制代码 代码如下: View Code /// <summary> /// 按照比例缩小图片 /// </summary> /// <param name="srcImage">要缩小的图片</param> /// <param name="per
-
Graphics.DrawImage绘制的图像变大的原因分析及解决
目录 Graphics.DrawImage绘制的图像变大 原因分析 解决方案 C#Graphics.DrawImage的一些问题 Graphics.DrawImage绘制的图像变大 原因分析 DrawImage是设备相关的函数,换言之就是,DrawImage会把屏幕的参数带上,所以,它绘制图像的DPI基本都是96.而我的图片是72DPI的. 例如,假定一个 Image 对象的宽度为 216 像素而存储的水平分辨率值为 72 点/英寸.因为 216 除以 72 等于 3,所以 DrawImage
-
python的pygal模块绘制反正切函数图像方法
python是一个很有趣的语言,可以在命令行窗口运行.python中有很多功能强大的模块,这篇经验告诉你,如何使用python的pygal模块绘制反正切函数图像. 1.简介 pygal是一个SVG图表库.SVG是一种矢量图格式.全称Scalable Vector Graphics -- 可缩放矢量图形. 用浏览器打开svg,可以方便的与之交互. 2.pygal安装 Windows下pygal的安装比pip还要简单,直接在命令模式执行python -m pip install --user pyg
-
Python利用Turtle绘制虎年图像
目录 导语 一.代码展示 二.效果展示 导语 2022年是农历壬寅虎年,在自然界中,虎有“百兽之王”之称 它的王者之风与勇猛,被作为威仪和权势的象征,千百年来,人们崇虎.刻虎.画虎.剪虎……形成了极具特色的中国虎文化,而今天给大家用Turtle绘制虎年图像,带给大家虎年的祝福! 虎年送头虎,全家乐悠悠,虎蹄为你开财路,虎尾为你拂忧愁. 虎耳为你撞鸿运,虎背为你驮康寿,让这头虎伴你左右,你不虎也虎 也希望大家在新年里,虎虎生威.虎年大吉 一.代码展示 本文是基于Turtle绘制的小老虎呢!本文的全
-
利用Matlab绘制有趣图像的示例代码
目录 1.随机樱花树 2.苹果绘制 3.南瓜绘制 4.一堆三角形绘制 5.月饼绘制 6.大钻石绘制 7.有趣曲线1 8.有趣曲线2 9.有趣曲线3——蝴蝶曲线 10.有趣曲线4——心形曲线 11.有趣曲线5 12.会害羞的含羞草 13.随机雪景 1.随机樱花树 function sakura % @author:slandarer % 随机形状二叉树樱花树绘制 hold on,axis equal axis(0.5+[-10,50,0,50]) set(gca,'xtick',[],'ytick
-
JS实现网页表格自动变大缩小的方法
本文实例讲述了JS实现网页表格自动变大缩小的方法.分享给大家供大家参考.具体分析如下: 这就是一个个性的动态表格效果代码,网页中的表格自动放大或者缩小,不停的变化 主要就是一个强调显示的作用 复制代码 代码如下: <HTML> <HEAD> <TITLE>js会动的表格</TITLE> <META content="text/html; charset=hz-gb-2312" http-equiv=Content-Type>
-
JS实现生成会变大变小的圆环实例
本文实例讲述了JS实现生成会变大变小的圆环.分享给大家供大家参考.具体如下: 这里使用javascript生成圆环,会变大变小,对于研究如何利用JavaScript生成动画效果,这是个很好的范例. 运行效果如下图所示: 具体代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd
-
Android ListView实现下拉顶部图片变大效果
本文实例为大家分享了Android ListView下拉顶部图片变大的具体代码,供大家参考,具体内容如下 在git上查看牛人的代码,发现是反编译别人的代码,还没加注释,代码也没有完全编译完整,所以这里我做的简单的注释,仅供学习. 变量说明 这里变量包含了:自定义返回动画加速度.自定义动画线程.头部图片view,最后的y坐标,做好的比例,做大的比例等. private static final String TAG = "PullToZoomListView"; private stat
-
python/Matplotlib绘制复变函数图像教程
今天发现sympy依赖的库mpmath里也有很多数学函数,其中也有在复平面绘制二维图的函数cplot,具体例子如下 from mpmath import * def f1(z): return z def f2(z): return z**3 def f3(z): return (z**4-1)**(1/4) def f4(z): return 1/z def f5(z): return atan(z) def f6(z): return sqrt(z) cplot(f1) cplot(f2)
-
JavaScript通过mouseover()实现图片变大效果的示例
实例如下所示: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="
-
解决iView Table组件宽度只变大不变小的问题
示例: <Table class="my-table"></Table> 打开开发者工具其实你可以发现iView给table标签的宽度加上了一个明确的宽度值,而且在父元素变小的时候这个值并没有相应地变小,所以才会导致的iView Table组件只会变大不会变小. 那么我们就可以根据这个原因才决定解决方案 1.给Table组件的table标签设置一个important的width .my-table table { width: 100% !important;
随机推荐
- c# static的全部用法收集整理
- sql2005 本地计算机上的SQL SERVER服务启动后又停止了解决方法
- Java 并发编程:volatile的使用及其原理解析
- ASP.NET文件处理如何操作
- PHP获取MySql新增记录ID值的3种方法
- php把数据表导出为Excel表的最简单、最快的方法(不用插件)
- 解决Linux系统中python matplotlib画图的中文显示问题
- Python读取环境变量的方法和自定义类分享
- jquery幻灯片插件bxslider样式改进实例
- JavaScript实现带缓冲效果的随屏滚动漂浮广告代码
- php简单实现屏蔽指定ip段用户的访问
- asp 80070005 80070006 FSO等问题终级解决方法
- JS for...in 遍历语句用法实例分析
- MySQL实现树状所有子节点查询的方法
- php cURL和Rolling cURL并发方式比较
- C++统计中英文大小写字母、数字、空格及其他字符个数的方法
- JS简单实现tab切换效果的多窗口显示功能
- jquery制作select列表双向选择示例代码
- javascript实现检验的各种规则
- Windows 2003 IIS 不支持ASP问题的解决方法