C#使用Matrix执行缩放的方法
本文实例讲述了C#使用Matrix执行缩放的方法。分享给大家供大家参考。具体实现方法如下:
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.Drawing.Drawing2D; namespace advanced_drawing { public partial class Form4 : Form { public Form4() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { //使用转换将单位设置为英寸 Graphics g=this.CreateGraphics(); Matrix matrix = new Matrix(); matrix.Scale(g.DpiX, g.DpiY); g.Transform = matrix; Font rulerFont = new Font("MS Sans Serif", 8.25f / g.DpiY); Pen blackPen=new Pen(Color.Black,0); float rulerFontHeight = rulerFont.GetHeight(g); RectangleF rulerRect = new RectangleF(0, 0, 6.5f, rulerFontHeight * 1.5f); g.DrawRectangle(blackPen, rulerRect.X, rulerRect.Y, rulerRect.Width, rulerRect.Height); Brush brush = System.Drawing.Brushes.Red; g.DrawString("zhuzhao", rulerFont, brush, rulerRect); } } }
希望本文所述对大家的C#程序设计有所帮助。
相关推荐
-
Android中Matrix用法实例分析
本文实例讲述了Android中Matrix用法.分享给大家供大家参考,具体如下: Matrix ,中文里叫矩阵,高等数学里有介绍,在图像处理方面,主要是用于平面的缩放.平移.旋转等操作. 首先介绍一下矩阵运算.加法和减法就不用说了,对应位相加就好.图像处理,主要用到的是乘法 .下面是一个乘法的公式: 在 Android 里面, Matrix 由 9 个 float 值构成,是一个 3*3 的矩阵.如下图: 解释一下,上面的sinX 和cosX ,表示旋转角度的cos 值和sin值,注意,旋转角度
-
深入理解Android Matrix理论与使用的详解
以前在线性代数中学习了矩阵,对矩阵的基本运算有一些了解,前段时间在使用GDI+的时候再次学习如何使用矩阵来变化图像,看了之后在这里总结说明.首先大家看看下面这个3 x 3的矩阵,这个矩阵被分割成4部分.为什么分割成4部分,在后面详细说明. 首先给大家举个简单的例子:现设点P0(x0, y0)进行平移后,移到P(x,y),其中x方向的平移量为△x,y方向的平移量为△y,那么,点P(x,y)的坐标为:x = x0 + △x y = y0 + △y采用矩阵表达上述如下: 上述也类似与图像的平移,
-
Android中使用Matrix控制图形变换和制作倒影效果的方法
最近在使用Matrix进行绘图的操作.对Matrix的一些方法有了一些更深的体会,记下来,以便日后复习. Matrix常用的方法: 一.变换方法: Matrix提供了translate(平移).rotate(旋转).scale(缩放).skew(倾斜)四种操作,这四种操作的内部实现过程都是通过matrix.setValues(-)来设置矩阵的值来达到变换图片的效果. Matrix的每种操作都有set.pre.post三种操作,set是清空队列再添加,pre是在队列最前面插入,post是在队列最后
-
Android中利用matrix 控制图片的旋转、缩放、移动
本文主要讲解利用android中Matrix控制图形的旋转缩放移动,具体参见一下代码: 复制代码 代码如下: /** * 使用矩阵控制图片移动.缩放.旋转 */ public class CommonImgEffectView extends View { private Context context ; private Bitmap mainBmp , controlBmp ; private int mainBmpWidth , mainBmpHeight , c
-
Android变形(Transform)之Matrix用法
引言 最近在研究Android的变形,Android的2D变形(包括缩放,扭曲,平移,旋转等)可以通过Matrix来实现,3D变形可以通过Camera来实现.接下来就将我这俩天研究的东西和大家分享下,先来看看Matrix的用法. 效果图 变形以后 Matrix矩阵 坐标变换矩阵,即一个3*3的矩阵,用来对图形进行坐标变换. 图1.1 A为坐标矩阵,C为原始矩阵,R是A和C矩阵相乘记过,那么可以知道:(矩阵知识,大学没学好的伤不起啊) x' = a*x + b*y + c y' = d*x +
-
如何使用Matrix对bitmap的旋转与镜像水平垂直翻转
Bitmap convert(Bitmap a, int width, int height){int w = a.getWidth();int h = a.getHeight();Bitmap newb = Bitmap.createBitmap(ww, wh, Config.ARGB_8888);// 创建一个新的和SRC长度宽度一样的位图Canvas cv = new Canvas(newb);Matrix m = new Matrix();m.postScale(1, -1); //
-
PHP+javascript模拟Matrix画面
直接存为*.php文件运行即可. <? $color_back="#000000"; $number_w=8; $number_h=6; $space=1; $font_size=20; $speed=0; ?> <html> <head> <title>The Matrix</title> <meta http-equiv="Content-Type" content=&qu
-
如何利用matrix实现图片倒影效果
本文主要内容就是用marix加上渐变色实现图片倒影的效果,步骤如下: 1. 获取需要倒影效果的图片,这里取原图片的一半 2. 添加颜色渐变到倒影图片上 具体的实现如下面代码所述,我们以一种自定义view的形式给出效果图,代码如下: package com.flection.view; import com.flection.main.R; import android.annotation.SuppressLint; import android.content.Context; import
-
C#使用Matrix执行缩放的方法
本文实例讲述了C#使用Matrix执行缩放的方法.分享给大家供大家参考.具体实现方法如下: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.Drawing.Drawing2D; namespa
-
JavaScript实现选择框按比例拖拉缩放的方法
本文实例讲述了JavaScript实现选择框按比例拖拉缩放的方法.分享给大家供大家参考.具体如下: 这里通过javascript实现可以像PS一样拉出一个选择框的效果.里面的很多方法都是我们值得学习的. 运行效果如下图所示: 具体代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.
-
Android实现通过手势控制图片大小缩放的方法
本文实例讲述了Android实现通过手势控制图片大小缩放的方法.分享给大家供大家参考,具体如下: 该程序实现的是通过手势来缩放图片,从左向右挥动图片时图片被放大,从右向左挥动图片时图片被缩小,挥动速度越快,缩放比越大.程序思路如下:在界面中定义一个ImageView来显示图片,使用一个GestureDetector来检测用户的手势,并根据用户的手势在横向的速度来缩放图片. 在介绍这个实例前,先介绍一下Android中处理手势触摸事件的大概框架. 一.添加语句实现OnGestureListener
-
python利用paramiko连接远程服务器执行命令的方法
python中的paramiko模块是用来实现ssh连接到远程服务器上的库,在进行连接的时候,可以用来执行命令,也可以用来上传文件. 1.得到一个连接的对象 在进行连接的时候,可以使用如下的代码: def connect(host): 'this is use the paramiko connect the host,return conn' ssh = paramiko.SSHClient() ssh.set_missing_host_key_policy(paramiko.AutoAddP
-
jQuery动画出现连续触发、滞后反复执行的解决方法
本文实例讲述了jQuery动画出现连续触发.滞后反复执行的解决方法.分享给大家供大家参考.具体分析如下: jQuery中slideUp .slideDown.animate等动画运用时,如果目标元素是被外部事件驱动, 当鼠标快速地连续触发外部元素事件, 动画会滞后的反复执行,其表现不雅. 则解决办法: 1.在触发元素上的事件设置为延迟处理, 即可避免滞后反复执行的问题(使用setTimeout) 2.在触发元素的事件时预先停止所有的动画,再执行相应的动画事件(使用stop) jquery sto
-
spring boot在启动项目之后执行的实现方法
前言 我们在web项目启动之后有时候还会做点其它的东西(比如,导入数据脚本),下面就说说spring-boot里怎么在程序启动后加入自己要执行的东西 方法如下: 新建一个类:BeforeStartup.java @Configuration public class BeforeStartup implements ApplicationListener<ContextRefreshedEvent> { @Autowired private InitDB initDB; @Override p
-
javascript实现获取图片大小及图片等比缩放的方法
本文实例讲述了javascript实现获取图片大小及图片等比缩放的方法.分享给大家供大家参考,具体如下: 获取图片大小: var originImage = new Image(); function GetImageWidth(oImage) { if (originImage.src != oImage.src) originImage.src = oImage.src; return originImage.width; } function GetImageHeight(oImage)
-
PHP实现执行外部程序的方法详解
本文实例讲述了PHP实现执行外部程序的方法.分享给大家供大家参考,具体如下: 在一些特殊情况下,会使用PHP调用外部程序执行,比如:调用shell命令.shell脚本.可执行程序等等,今天在源码中了解了一下PHP执行外部程序的方法,借此机会顺便整理一下. 在源码中 exec.h文件中,列出了可调用外部程序的几个函数,蓝色框里的两个函数只是辅助作用,本文只对其他几个函数做介绍. 前提 1 PHP没有运行在安全模式,关掉安全模式,即:safe_mode = off 2 禁用函数列表 disable_
-
ThinkPHP控制器里javascript代码不能执行的解决方法
本文实例讲述了ThinkPHP控制器里javascript代码不能执行的解决方法.分享给大家供大家参考.具体方法如下: 这里实例分析一下thinkphp在控制器里的网页特效代码不能执行解决方法,就拿"退出"这一项来说吧,我的"退出系统"链接是写到左边的框架里的,用js动态生成的.也就是说,没法通过链接里的target来指定. 复制代码 代码如下: $this->assign('jumpurl',__url__.'/login');<br>$this
-
php+MySQL判断update语句是否执行成功的方法
update语句是PHP+MySQL中常用的操作,判断update语句是否执行成功是其中非常重要的一个环节.本文就以实例展示了php+MySQL判断update语句是否执行成功的方法.分享给大家供大家参考之用.具体方法如下: 代码一: $rs=MySQL_query($sql); if(mysql_affected_rows()) echo "sql执行成功"; else echo "sql执行失败"; 代码二: <?php /* 连接数据库 */ mysql
随机推荐
- ListView实现聊天列表之处理不同数据项
- jsp文件操作之写入篇
- 批处理编程- -介绍
- DB2常用傻瓜问题1000问(四)第1/2页
- js 正则表达式学习笔记之匹配字符串
- 批处理实现的文字的飞入+变色效果代码
- python高并发异步服务器核心库forkcore使用方法
- ASP.NET MVC 4使用PagedList.Mvc分页的实现代码
- python 读写、创建 文件的方法(必看)
- C#中richtextbox使用方法详解
- shell脚本实现随机生成10个8位密码
- 基于PHP编程注意事项的小结
- jQuery得到多个值只能用取Class ,不能用取ID的方法
- 三种网络流量检测方法说明和配置
- 详解C语言 三大循环 四大跳转 和判断语句
- C#生成随机验证码代码分享
- C#泛型约束的深入理解
- Android编程之光线传感器用法详解
- Cisco路由器安全配置简易方案
- 浅谈RxJava处理业务异常的几种方式