public ISheetFormat GetSheetFormatDrawing(IKompasDocument2D doc2d) // получить интерфейс формат чертежа { ILayoutSheets LayoutSheets = doc2d.LayoutSheets; // коллекция листов if (LayoutSheets == null) { // MessageBox.Show("Не удалось подключить интерфейс ILayoutSheets."); return(null); } ILayoutSheet LayoutSheet = (ILayoutSheet)LayoutSheets[0]; // лист оформления if (LayoutSheet == null) { //MessageBox.Show("Не удалось подключить интерфейс ILayoutSheet."); return(null); } ISheetFormat SheetFormat = LayoutSheet.Format; // интерфейс формата листа if (SheetFormat == null) { // MessageBox.Show("Не удалось подключить интерфейс ISheetFormat."); return(null); } /*ksDocumentFormatEnum formatLayout = SheetFormat.Format; // формат листа (значение) * format = (int)formatLayout; * long H = (long)SheetFormat.FormatHeight; * long W = (long)SheetFormat.FormatWidth; * MessageBox.Show("Высота формата: " + H.ToString() + "; Ширина формата: "+W.ToString());*/ return(SheetFormat); }
private void bConvertAllDrawing_Click(object sender, EventArgs e) { TestConnectKompas(); if (!flag_Kompas) { return; } Documents docs = kompas7.Documents; int k = docs.Count; if (k == 0) { kompas.ksMessage("Нет открытых документов"); return; } for (int i = 0; i < k; i++) { KompasDocument kdoc = (KompasDocument)docs[i]; if (kdoc.DocumentType == DocumentTypeEnum.ksDocumentDrawing) { kolLists = 1; ILayoutSheets lists = kdoc.LayoutSheets; kolLists = lists.Count; //if (kolLists > 1) //{ // kompas.ksMessage("Количество листов в документе: " + kolLists.ToString()); //} Document2D doc2 = kompas.Document2D(); doc2 = kompas.TransferInterface(kdoc, (int)ksAPITypeEnum.ksAPI5Auto, 0); if (doc2 == null) { kompas.ksMessage("Не удалось преобразовать объект"); return; } if (!SaveCDW_in_Rastr(doc2)) { kompas.ksMessage("Ошибка! Чертеж не переведен"); return; } } } kompas.ksMessage("Чертежи успешно переведены"); kolLists = 1; }
private void bConvertActiveDrawing_Click(object sender, EventArgs e) { TestConnectKompas(); if (!flag_Kompas) { return; } Document2D doc = kompas.ActiveDocument2D(); if (doc == null) { kompas.ksMessage("Активный документ не является чертежом."); return; } long typedoc = kompas.ksGetDocumentType(doc.reference); if ((typedoc < 1) || (typedoc > 2)) { kompas.ksMessage("Активный документ не является чертежом."); return; } KompasDocument kdoc = kompas.TransferInterface(doc, (int)ksAPITypeEnum.ksAPI7Dual, 0); if (kdoc == null) { kompas.ksMessage("Не удалось преобразовать объект"); return; } ILayoutSheets lists = kdoc.LayoutSheets; kolLists = lists.Count; //if (kolLists > 1) //{ // kompas.ksMessage("Количество листов в документе: " + kolLists.ToString()); //} if (!SaveCDW_in_Rastr(doc)) { kompas.ksMessage("Ошибка! Чертеж не переведен"); return; } kompas.ksMessage("Чертеж успешно переведен"); kolLists = 1; }