我正在尝试以web表单显示AutoCAD.DWG文件。我在中找到了此代码https://cadsofttools.com/products/cad-net/
using CADImport;
using CADImport.DWG;
using CADImport.DXF;
using CADImport.RasterImage;
...
private void Read_DWG_Click(object sender, EventArgs e)
{
//DWGImage class is used only for reading DWG. To read other formatsuse the corresponding classes.
//E.g. for DXF: CADImage class, for PLT/HPGL: HPGLImage class.
DWGImage vDrawing = new DWGImage();
vDrawing.LoadFromFile(@"......FilesGasket.dwg");
vDrawing.Draw(Image1.CreateGraphics(), new RectangleF(0, 0, (float)vDrawing.AbsWidth,
(float)vDrawing.AbsHeight)); // zooming and panning of the drawing are implemented
//in the demo Viewer via a special viewing control class CADPictureBox
}
我已经安装了所需的库,并在我的网络项目中引用了它们。我对";Image1.CreateGraphics((";我不知道什么是Image1!
Image1
假设Windows Forms
图像控件。使用该代码,您将无法在asp.net中显示图像。
当你尝试使用asp.net显示时,这里有不止一个问题。而且我不熟悉DWGImage
或相关的库。但你可以试试这个:
using(var image = new Bitmap())
{
DWGImage vDrawing = new DWGImage();
vDrawing.LoadFromFile(@"......FilesGasket.dwg");
vDrawing.Draw(image, new RectangleF(0, 0, (float)vDrawing.AbsWidth,
(float)vDrawing.AbsHeight));
}
首先,如果它没有爆炸,并且image
确实包含数据(使用调试器查找(,那么您可以使用HttpHandler
(.ashx(来显示您的图像。确认上面的代码有效,然后我可以向您展示HttpHandler代码。