コード例 #1
0
        /// <summary>
        /// Метод заполнения документации
        /// </summary>
        /// <param name="docDesignation">Обозначение документа</param>
        /// <param name="docName">Название документа</param>
        /// <param name="detailDesignation">Обозначение детали</param>
        /// <param name="detailName">Название детали</param>
        /// <param name="detailCount">Количество деталей</param>
        /// <param name="gostNumber">Номер госта</param>
        private void SetSpecification(string docDesignation,
                                      string docName, string detailDesignation, string detailName,
                                      string detailCount, string gostNumber)
        {
            _documentSpc = (ksSpcDocument)_kompas.SpcDocument();
            var documentParam = (ksDocumentParam)_kompas.GetParamStruct
                                    ((short)StructType2DEnum.ko_DocumentParam);

            documentParam.type = 4;
            var sheetParam = (ksSheetPar)documentParam.GetLayoutParam();

            sheetParam.Init();
            _documentSpc.ksCreateDocument(documentParam);
            var spec = (ksSpecification)_documentSpc.GetSpecification();

            spec.ksSpcObjectCreate("GRAPHIC.LYT", 1, 5, 0, 0, 0);
            spec.ksSetSpcObjectColumnText(4, 1, 0, docDesignation);
            spec.ksSetSpcObjectColumnText(5, 1, 0, docName);
            spec.ksSpcObjectEnd();

            spec.ksSpcObjectCreate("GRAPHIC.LYT", 1, 20, 0, 0, 1);
            spec.ksSetSpcObjectColumnText(4, 1, 0, detailDesignation);
            spec.ksSetSpcObjectColumnText(5, 1, 0, detailName);
            spec.ksSetSpcObjectColumnText(6, 1, 0, detailCount);
            spec.ksSpcObjectEnd();

            spec.ksSpcObjectCreate("GRAPHIC.LYT", 1, 20, 0, 0, 1);
            spec.ksSetSpcObjectColumnText(5, 1, 0, "ГОСТ " + gostNumber);
            spec.ksSpcObjectEnd();
        }
コード例 #2
0
ファイル: Form1.cs プロジェクト: mishkakoaalla/RospDoc
        public void SpsDoc(int n_str, string text, string dat, int n_doc)
        {
            IKompasDocument doc   = appl.Documents.Open(path[n_doc], true, false);// Получаем интерфейс активного документа 2D в API7
            ksSpcDocument   DocS  = (ksSpcDocument)kompas.SpcActiveDocument();
            ksStamp         stamp = DocS.GetStamp();



            stamp.ksOpenStamp();

            //_______________________________________
            LayoutSheets _ls   = doc.LayoutSheets;
            LayoutSheet  LS    = _ls.ItemByNumber[1];
            var          q     = _ls.ItemByNumber[1].Stamp;
            IStamp       isamp = LS.Stamp;
            IText        qq    = isamp.Text[10];

            Console.WriteLine("Есть ли руковод -------------  " + qq.Str);
            //________________________________________


            stamp.ksColumnNumber(120);
            ksTextItemParam itemParam = (ksTextItemParam)kompas.GetParamStruct((short)StructType2DEnum.ko_TextItemParam);

            if (itemParam != null)
            {
                itemParam.Init();

                ksTextItemFont itemFont = (ksTextItemFont)itemParam.GetItemFont();
                if (itemFont != null)
                {
                    itemFont.SetBitVectorValue(ldefin2d.NEW_LINE, true);
                    itemFont.fontName = "Staccato222 BT";

                    itemParam.s = "44444";
                    stamp.ksTextLine(itemParam);
                }
            }

            stamp.ksCloseStamp();
        }