Шрифт в спецификации

Автор firsttimer, 26.04.18, 17:01:50

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

firsttimer

Всем привет.
Столкнулся с необходимостью изменить атрибуты шрифта в одной из ячеек создаваемой программно через ksSpecification и ksSpcObjectCreate спецификации (конкретно нужно подчёркивать текст в ячейке "Формат" в зависимости от условий).  Можете ли подсказать, в какую сторону смотреть?

Slaviation

Пример на Python. Запускать на активной спецификации.

# -*- coding: utf-8 -*-

#~ http://forum.ascon.ru/index.php/topic,31328.msg250172.html#msg250172
#~ Столкнулся с необходимостью изменить атрибуты шрифта в одной из ячеек создаваемой
#~ программно через ksSpecification и ksSpcObjectCreate спецификации
#~ (конкретно нужно подчёркивать текст в ячейке "Формат" в зависимости от условий).
#~ Можете ли подсказать, в какую сторону смотреть?

underline_condition = True

import pythoncom
from win32com.client import Dispatch, gencache
kompas_api7_module = gencache.EnsureModule("{69AC2981-37C0-4379-84FD-5DD2F3C0A520}", 0, 1, 0)
kompas_api_object = kompas_api7_module.IKompasAPIObject(Dispatch("Kompas.Application.7")._oleobj_.QueryInterface(kompas_api7_module.IKompasAPIObject.CLSID, pythoncom.IID_IDispatch))
application = kompas_api_object.Application
kompas_document = application.ActiveDocument
specification_document = kompas_api7_module.ISpecificationDocument(kompas_document)
specification_descriptions = kompas_document.SpecificationDescriptions
specification_description = specification_descriptions.Item(0)
specification_base_objects = specification_description.BaseObjects
specification_object = specification_base_objects.Add(20, 0.0)
specification_columns = specification_object.Columns
specification_column = specification_columns.Item(0)
text = specification_column.Text
text_line = text.Add()
text_item = text_line.Add()
text_item.Str = u"A4"
text_font = kompas_api7_module.ITextFont(text_item)
text_font.Underline = underline_condition
text_item.Update()
specification_object.Update()
+ Благодарностей: 2