从dxf转换为pdf的简单方法

时间:2013-01-08 11:01:41

标签: c# .net pdf converter dxf

有没有一种简单的方法可以在不打开AutoCad的情况下从dxf转换为pdf?我尝试在c#中使用AutoCad(ObjectARX)lib,但没有结果。我试过的代码是:

{

SaveFileDialog savedlg = new SaveFileDialog(); 
string st = savedlg.FileName;

int fileExtPos = st.LastIndexOf(".");
if (fileExtPos >= 0)
st = st.Substring(0, fileExtPos);

AcadDocument doc = AcApp.ActiveDocument;
AcadSelectionSet ss = doc.SelectionSets.Add("MySet");
ss.Select(AcSelect.acSelectionSetAll, null, null, null, null);
try
{
if (ss.Count > 0)
{ doc.Export(st, "pdf", ss);
MessageBox.Show("Saved....");
AcApp.Quit();
}
}
finally
{
ss.Delete();
}
}

从这里提取:Convert from dwg to pdf

我不确定,但似乎此特定解决方案仅在您打开AutoCad时才有效(请参阅AcadDocument doc = AcApp.ActiveDocument;行)。

你知道比这更好的解决方案吗?或者你能看出这个解决方案中的错误在哪里?解决方案可以是任何语言,所以如果你知道任何其他语言的任何其他解决方案,请告诉我。

3 个答案:

答案 0 :(得分:0)

您可以使用第三方软件来做到这一点,只需搜索“dxf to pdf”,您就会发现许多流行的dxf到pdf转换器,而无需使用AutoCAD。

答案 1 :(得分:0)

我建议您使用AutoCAD 2013。

我知道您不想打开完整 AutoCAD,但是在说明2013版本时,它附带了 console 版本,功能齐全!

在此之前,我曾经制作过两个应用程序,一个在DLL中加载到autocad中,另一个用于启动/加载/处理每个文件。

使用AutoCAD的控制台模式,启动速度非常快,您可以制作一个脚本来打印PDF 以执行每个文件。

答案 2 :(得分:0)

SaveFileDialog dlg = new SaveFileDialog();
dlg.Filter = "PDF (*.pdf)|*.pdf";
if (DialogResult.OK == dlg.ShowDialog())
{
    renderView.Renderer.Print(dlg.FileName);
}
相关问题