CAD常用文件操作包括:创建图形文件、打开图形文件、判断文件是否保存和保存文件,后两者值得重点注意。
创建、打开文档
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| public static string CreateNewDwg() { string dllPath = System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location); string templatePath = dllPath + @"\acadiso.dwt"; Document doc = AcadApp.DocumentManager.Add(templatePath); AcadApp.DocumentManager.MdiActiveDocument = doc; return doc.Name; }
public static void OpenDwg(string filename, bool forReadOnly = false) { var docs = AcadApp.DocumentManager; Document doc = docs.Open(filename, forReadOnly); docs.MdiActiveDocument = doc; }
|
检测图形是否已保存
1 2 3 4 5 6 7
| public static bool Saved(this Document doc) { object dbmod = AcadApp.GetSystemVariable("DBMOD"); if (Convert.ToInt16(dbmod) != 0) return false; return true; }
|
保存文档
保存文档的相关接口包括以下4个:
- doc.CloseAndSave(string path)
- doc.CloseAndDiscard()
- db.SaveAs(string path,DwgVersion.Current)
- db.Save()
前三个接口使用时应注意:
- 对于激活文档:使用CloseAndSave()、CloseAndDiscard()时,要为命令方法添加CommandFlag.Session声明,不然会报以下错误
- 对于非激活文档:使用CloseAndSave()、CloseAndDiscard()时,不添加CommandFlag.Session声明
- SaveAs():适用于激活文档和非激活文档,不需要添加CommandFlag.Session声明
- Save():未实现,无法使用,会报以下错误