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); }
public string GetFormatDrawing(string pathDrawing) { IKompasDocument2D doc = OpenDrawing(pathDrawing); ISheetFormat sheetformat = GetSheetFormatDrawing(doc); if (sheetformat == null) { return("не определен"); } ksDocumentFormatEnum format = sheetformat.Format; long formatMultiplicity = sheetformat.FormatMultiplicity; string str_formatMultiplicity = ""; if (formatMultiplicity > 1) { str_formatMultiplicity = "x" + formatMultiplicity.ToString(); } switch (format) { case ksDocumentFormatEnum.ksFormatA0: return("А0" + str_formatMultiplicity); case ksDocumentFormatEnum.ksFormatA1: return("А1" + str_formatMultiplicity); case ksDocumentFormatEnum.ksFormatA2: return("А2" + str_formatMultiplicity); case ksDocumentFormatEnum.ksFormatA3: return("А3" + str_formatMultiplicity); case ksDocumentFormatEnum.ksFormatA4: return("А4" + str_formatMultiplicity); case ksDocumentFormatEnum.ksFormatA5: return("А5" + str_formatMultiplicity); case ksDocumentFormatEnum.ksFormatUser: return(sheetformat.FormatWidth.ToString() + "x" + sheetformat.FormatHeight.ToString()); default: return("не определен"); } }