0
我正在嘗試將.emf文件渲染爲給定大小的位圖。將.emf文件渲染爲位圖
這是我的代碼中,我使用此答案爲基:How do I resize (shrink) an EMF (Metafile) in .Net?
public void SetEmfFromBitmap(string emfPath, Size size)
{
if (emfPath.Contains(".emf"))
{
using (var source = new Metafile(emfPath))
using (var target = new Bitmap(size.Width, size.Height))
using (var g = Graphics.FromImage(target))
{
g.DrawImage(source, 0, 0, size.Width, size.Height);
target.Save("c:\\temp\\Month_Calendar.png", ImageFormat.Png); //this works..
this.Image = target; //but this doesnt???
}
}
else
{
throw new ArgumentException("Invalid path to .emf file: " + emfPath);
}
}
約的方法屬於被從PictureBox的派生類。這就是爲什麼我設置this.Image(這是一個位圖)。但是我能看到的是我Winforms應用程序中的白色背景的紅色十字。
那麼,位圖對象有什麼問題?