在C#的Graphic绘图,坐标问题
如果我想改变坐标度量单位,改为厘米,而不是像素点,再进行画直线或者圆之类的,那么该这样改变写坐标变换代码,比如Graphicsg=CreateGraphics();g.D...
如果我想改变坐标度量单位,改为厘米,而不是像素点,再进行画直线或者圆之类的,那么该这样改变写坐标变换代码,比如Graphics g = CreateGraphics();
g.DrawLine(new Pen(Color.Black,02),0,0,5,5);如果不改变的话,基本看不到画出的线 展开
g.DrawLine(new Pen(Color.Black,02),0,0,5,5);如果不改变的话,基本看不到画出的线 展开
2个回答
展开全部
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;
}
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询