|
当然我们可以去造一个EMF图像文件格式的生成器,但没有一堆class 是不行的,如果你现在开始这样做,估计需要一个星期来完成。以后有空,我会讲一下如何写EMF图像文件格式的生成器。
现在我这里讲一个最简单实用的方法,只要几行代码就可以。 原理: 1. Metafile 构造一个图像文件。 2. 强大的Graphics 从Metafile生成,并画上原Image 的图。 就是这么简单。
相关代码: public void ConvertToEmf( string imageFile, string emfFile ) { // The existing bitmap. Bitmap bmp = new Bitmap( imageFile );
// new metafile Metafile metaFile = new Metafile( emfFile, Graphics.FromHwnd( this.Handle ).GetHdc(), // Get HDC EmfType.EmfPlusDual, "A test" );
// draw image to metafile Graphics g = Graphics.FromImage( metaFile ); g.DrawImage( bmp, 0, 0, bmp.Width, bmp.Height );
// Clear object clearly g.Dispose(); metaFile.Dispose(); bmp.Dispose(); }
实例下载: http://www.dwmsoft.cn/Dave/BlogExamples/GDI/TestEMF.zip
|