如何在 c# 中绘制路径存储在变量中的图像

本文关键字:变量 图像 存储 绘制 路径 | 更新日期: 2023-09-27 18:31:29

private string path;
public string Path
{
    get { return path; }
    set { path = value; }
}
public override void Draw(Graphics.IGraphicsSurface g)
{
    //some code here
}

我需要将图像存储在文件系统上path的位置,并使用DrawImage()函数将其绘制在表面上,g

编辑:传递给DrawImage()的第一个参数必须是字符串

public void DrawImage(string image, float x, float y)或文件流


public void DrawImage(Stream imageStream, float x, float y)

public void DrawImage(string image, float x, float y)
{
    try
    {
        if (File.Exists(image))
        {
            Stream stream = new FileStream(image, FileMode.Open);
            DrawImage(stream, new Graphics.Point(x, y));
        }
    }
    catch(Exception)
    {
    }
}

如何在 c# 中绘制路径存储在变量中的图像

一般来说,您可以使用Image.FromFile(string) .

var image = Image.FromFile(path);
g.DrawImage(image, 0, 0);

这将在点 (0, 0) 处绘制图像。


但是,OP 需要使用不同的DrawImage方法来接收字符串。为此,我们可以简单地说:

g.DrawImage(path, 0, 0);
    private void pictureBox1_DoubleClick(object sender, EventArgs e)
    {
        OpenFileDialog dlg = new OpenFileDialog();
        if (dlg.ShowDialog()==DialogResult.OK)
        {
            pictureBox1.Image = Image.FromFile(dlg.FileName);
        }
    }