在C#的Graphic绘图,坐标问题如果我想改变坐标度量单位,改为厘米,而不是像素点,再进行画直线或者圆之类的,那么该这样改变写坐标变换代码,比如Graphics g = CreateGraphics();g.DrawLine(new Pen(Color.Black,
来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/17 11:45:18
在C#的Graphic绘图,坐标问题如果我想改变坐标度量单位,改为厘米,而不是像素点,再进行画直线或者圆之类的,那么该这样改变写坐标变换代码,比如Graphics g = CreateGraphics();g.DrawLine(new Pen(Color.Black,
在C#的Graphic绘图,坐标问题
如果我想改变坐标度量单位,改为厘米,而不是像素点,再进行画直线或者圆之类的,那么该这样改变写坐标变换代码,比如Graphics g = CreateGraphics();
g.DrawLine(new Pen(Color.Black,02),0,0,5,5);如果不改变的话,基本看不到画出的线
在C#的Graphic绘图,坐标问题如果我想改变坐标度量单位,改为厘米,而不是像素点,再进行画直线或者圆之类的,那么该这样改变写坐标变换代码,比如Graphics g = CreateGraphics();g.DrawLine(new Pen(Color.Black,
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace testGDIScale
{
public partial class Form1 :Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender,EventArgs e)
{
Graphics g = pictureBox1.CreateGraphics();
//画出来后用尺子量,1cm
g.DrawRectangle(new Pen(Brushes.Red),Xmm2pixels(g,0),Ymm2pixels(g,0),Xmm2pixels(g,10),Ymm2pixels(g,10));
}
public float Xmm2pixels(Graphics g,float mmx)
{
double r;
r = mmx / 25.4 * g.DpiX;
return (float)r;
}
public float Ymm2pixels(Graphics g,float mmy)
{
double r;
r = mmy / 25.4 * g.DpiY;
return (float)r;
}
}
}