在C#中将颜色放在图像上

Kdg*_*Dev 1 c# drawing image colors winforms

我已经使用这段代码将图像放入变量中.我想做的是在各个地方画点,然后保存结果.

我所做的是打开一个对话框来选择文件并检查它是否有效,我把它放在一个图片框中.使用winforms offcourse.使用Visual Studio 2008 Professional.

编辑:openImg你看到下面使用的变量作为我给我正在使用的openFileDialog实例的名称.

private string CurrentFile;
private Image img;

private void fileToolStripMenuItem_Click(object sender, EventArgs e)
{
    openImg.Title = "Open Image File";
    openImg.Filter = "JPEG Files|*.jpg" +
                     "|Enhanced Windows MetaFile|*.emf" +
                     "|Exchangeable Image File|*.exif" +
                     "|Gif Files|*.gif|Icons|*.ico" +
                     "|PNG Files|*.png|TIFF Files|*.tif|Windows MetaFile|*.wmf";
    openImg.DefaultExt = "jpg";
    openImg.FilterIndex = 1;
    openImg.FileName = "";
    openImg.ShowDialog();
    if (openImg.FileName == "")
    {
        return;
    }
    CurrentFile = openImg.FileName.ToString();
    img = Image.FromFile(openImg.FileName);
    pictureBox1.Image = img;
}
Run Code Online (Sandbox Code Playgroud)

到现在为止还挺好.

完成第一个阶段后,我想定义一个Color对象,我可以用它在以后的某些位置绘制.

我以前从未与他们合作过.

Color yellow = new Color();
Run Code Online (Sandbox Code Playgroud)

我意识到只是将其命名为"黄色"不会使其变黄,但我没有选择颜色的选项...... Visual Studio甚至没有在自动完成中显示变量.我有点难过.我想做的是在图像上定义某个区域以绘制某种颜色.

adr*_*nks 10

您无法按照问题的方式构建新颜色.对于不同的颜色,Color有很多静态属性,还有一些定义自己颜色的方法(参见FromArgb的例子).

要获得黄色,您需要使用Color.Yellow.


要绘制图像,您需要使用Graphics.FromImage(img)来获取Graphics的实例 ,使用它可以直接在图像上绘制.看看如何绘制线条,曲线,形状等的图形方法 ......