将位图转换为Pixbuf

时间:2015-04-09 20:24:48

标签: c# gtk#

我计划在gtk图像中显示我生成的位图。

但它只支持Pixbuf。 如何将Bitmap转换为Pixbuf。

我可以使用TypeConverter来执行此操作吗?

1 个答案:

答案 0 :(得分:0)

以不同的方式完成。 除了转换我已重新加载图像。

protected void OnBtnGenClicked (object sender, EventArgs e)
{
    Bitmap bmp = new Bitmap(300, 300);
    using (Graphics g = Graphics.FromImage(bmp))
    {
        Font font = new Font("Arial", 20, FontStyle.Bold, GraphicsUnit.Point);
        g.Clear(Color.White);
        g.DrawString(txtMessage.Text, font, Brushes.Black, 0, 0);
    }
    bmp.Save("d:/image.png", ImageFormat.Png);
    var buffer = System.IO.File.ReadAllBytes ("d:/image.png");
    var pixbuf = new Gdk.Pixbuf (buffer);
    image1.Pixbuf = pixbuf;
}