社区
C#
帖子详情
如何改变Graphics的坐标系原点
tsyz2007
2007-02-12 01:22:08
Graphics默认的坐标系原点在左上角,请问如何设置可以让原点在右上角?
...全文
1566
9
打赏
收藏
如何改变Graphics的坐标系原点
Graphics默认的坐标系原点在左上角,请问如何设置可以让原点在右上角?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
tsyz2007
2007-02-14
打赏
举报
回复
那个pictureBox1.Width - 1024 应该为pictureBox1.Width - image.Width
tsyz2007
2007-02-13
打赏
举报
回复
private void pictureBox1_ClientSizeChanged(object sender ,EventArgs e)
{
Graphics g = pictureBox1.CreateGraphics();
g.TranslateTransform(pictureBox1.Width - 1024 ,0);
//image为一个Bitmap实例
g.DrawImage(image ,0 ,0);
}
这样可以让图像跟着右上角走,但是由于在改变pictrueBox1大小时开销比较大,造成图像不稳定,不过这也在意料之中,Piant事件中响应所得的图像是只更新了新出来的部分所以会比较稳定,但是它Graphics的默认坐标原点始终在左上角,所以拉宽时图像就是从右边出来,不会从左边出来,要实现很稳定的图像从右边出来,估计要重写PictrueBox里的一些东西和Graphics了.好像很复杂,唯有慢慢研究了.
不知道这种想法合不合理呢.
王集鹄
2007-02-13
打赏
举报
回复
//这样可以吗?
private void pictureBox1_Resize(object sender, EventArgs e)
{
pictureBox1.Padding = new Padding(
pictureBox1.ClientSize.Width - pictureBox1.Image.Width, 0, 0, 0);
}
jxf654
2007-02-13
打赏
举报
回复
up
tsyz2007
2007-02-13
打赏
举报
回复
这个方法我知道,其实是我没有把问题表达清楚.在发生Paint事件时,里面的e.Graphics也总是以左上角为原点的,而每次Paint后都用平移和旋转来改到右上角,是画不到想要的图的,这可能是Paint里每次更新图形的方式所造成的.
而我希望实现的效果是,当改变Client(如PictureBox)的大少时,图形是跟随着右上角移动,而不是默认的左上角.
这样表达问题应该比较清晰了,希望指教.
王集鹄
2007-02-12
打赏
举报
回复
Graphics vGraphics = Graphics.FromHwnd(Handle);
vGraphics.TranslateTransform(ClientSize.Width, 0);
vGraphics.DrawLine(Pens.Black, new Point(-10, 10), new Point(-10, 100));
TranslateTransform()方法可以改变原点RotateTransform()方法可以旋转坐标系
jxf654
2007-02-12
打赏
举报
回复
up
tsyz2007
2007-02-12
打赏
举报
回复
难道真的没有办法吗,郁闷...
tsyz2007
2007-02-12
打赏
举报
回复
补充一下:是直接投置到右上角,而不是通过相对左上角的一个变换而实现.
不知道能不能这样.
C# 使用 GDI+ 实现添加中心旋转(任意角度)的文字
前言 这篇文章是 GDI+ 总结系列的第三篇,如果对 GDI+ 的基础使用不熟悉的朋友可以先看第一篇文章《C# 使用 ...此外,
Graphics
类还有个 TranslateTransform 方法可以
改变
坐标的
原点
,而且这个方法是沿着矩形的x,y轴平
LGame-master游戏开发.zip
Graphics
2D的
坐标系
(画布左上角为
原点
(x=0,y=0),Y轴向下为正值,与JavaFx或Android,JavaScript的Canvas渲染坐标一致 ),渲染接口也都被保存下来,
Graphics
2D以及Android Canvas的大部分API可以在GLEx这一全局渲染类...
朱老师QT系列课程-1.4.QT标准控件之DisplayWidget
本课程属于《老师QT完全学习系列课程》的第1部分《第1部分:QT上手》的第4个课程,在前面课程的基础上本课程主要讲解Display类控件。包括纯文本和富文本显示控件TextBroswer,QT5后主推的绘图控件
Graphics
View,QT日历控件CalendarView、模仿传统数码管的外观的数字显示控件LCDNumber、进度条控件ProgressBar、屏幕显示分隔线HorizontalLine和VerticalLine、QT支持opengl绘图接口的OpenGLWidget、QWidget集成QtQuick的qml编程的控件QQuickWidget等。
C#制作倾斜的文字效果源代码
摘要:C#源码,字符处理,文字倾斜...通过此源码可以了解一下:创健控件的
Graphics
类、以指定的颜色清除控件背景、设置控件前景色和背景色、设置字体样式、获取字符串的大孝设置平移的X、Y坐标、更改
坐标系
原点
等知识点。
Graphics
平移
原点
及向上向右方向为正方式变换
Image img = Image.FromFile(path); using (var g =
Graphics
.FromImage(img)) { g.Transform = new System.Drawing.Drawing2D.Matrix(1, 0, 0, -1, 0, 0);
C#
110,561
社区成员
642,566
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章