我有一个WPF应用程序,我在其中上载AutoCAD图形文件(.dwg),将其转换为字节数组并保存到数据库。当我从字节数组读回该文件时,出现以下错误:
No imaging component suitable to complete this operation was found.
我在字节数组中转换的代码如下:
FileStream fs = new FileStream(dlg.FileName, FileMode.Open, FileAccess.Read);
byte[] data = new byte[fs.Length];
fs.Read(data, 0, System.Convert.ToInt32(fs.Length));
fs.Close();
我正在尝试使用以下代码从字节数组中获取图像:
BitmapImage bi = new BitmapImage();
bi.BeginInit();
bi.CreateOptions = BitmapCreateOptions.None;
bi.CacheOption = BitmapCacheOption.Default;
bi.StreamSource = new MemoryStream(data);
RenderOptions.SetBitmapScalingMode(bi, BitmapScalingMode.Linear);
bi.EndInit();
上面的代码适用于其他图像文件,例如jpg,png,bmp,gif。但不适用于dwg文件。有人可以指导我我的代码有什么问题吗?
谢谢
最佳答案
以前,我在C#中搜索DWG库,发现了这个:
http://www.woutware.com/cadlib.html,但以后从未使用过。
您不能像普通的图像文件一样威胁DWG文件,DWG是用于存储2D和3D数据的相当复杂的格式。几年前,这也是一个频繁更改和所有许可混乱的主题。
希望这可以帮助。
关于c# - 如何从字节数组读取工程图图像(.dwg),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7952791/