Прилагане на форматиране

Всеки елемент от таблицата може да бъде приложен с различен формат. Например форматирането на таблицата ще се прилага към цялата таблица, форматиране на реда само за определени редове, форматиране на клетки само за определени клетки.

Aspose.Words осигурява богат API за извличане и прилагане форматиране на таблица. Можете да използвате Table, RowFormat, както и CellFormat Възел за форматиране.

В тази статия ще говорим за това как да се прилага форматиране на различни възли на таблицата и какви настройки за форматиране на таблицата Aspose.Words Подкрепления.

Прилагане на форматиране към различни възли

В този раздел ще разгледаме прилагането на форматиране на различни възли на таблицата.

Форматиране на нивото на таблица

За да приложите форматиране към таблица, можете да използвате наличните свойства на съответната Table Възел с използване на Table, PreferredWidth, както и TableCollection Класове.

Снимките по-долу показват представяне на Table форматиране на функции в Microsoft Word и съответните им свойства в Aspose.Words.

formattin-features-table-level-aspose-words-python

formatting-table-options-aspose-words-python

Следният пример за код показва как да се приложи контурна граница към таблица:

Следният пример за код показва как да се изгради таблица с всички възможни граници (мрежа):

Форматиране на нивото на реда

Редово ниво форматирането може да се контролира с помощта на Row, RowFormat, както и RowCollection Класове.

Снимките по-долу показват представяне на Row форматиране на функции в Microsoft Word и съответните им свойства в Aspose.Words.

formatting-row-level-aspose-words-python

Следният пример с код показва как да се промени форматирането на реда в таблицата:

Форматиране на ниво на клетка

Форматирането на ниво клетки се контролира от Cell, CellFormat, както и CellCollection Класове.

Снимките по-долу показват представяне на Cell форматиране на функции в Microsoft Word и съответните им свойства в Aspose.Words.

formatting-cell-level-aspose-words-python

auto-formatting-cell-level-aspose-words-python

Следният пример за код показва как да се промени форматирането на таблица:

Следният пример за код показва как да се определи количеството пространство (в точки), за да се добави към лявото/горе/дясно/долу на съдържанието на клетката:

Посочва се височината на реда

Най-простият начин да зададете височината на реда е да използвате DocumentBuilder. Използване на подходящия RowFormat свойства, можете да зададете настройка по подразбиране височина или да приложите различна височина за всеки ред в таблицата.

В Aspose.Words, височината на реда в таблицата се контролира от:

  • височината на греблото Height
  • правилото за височината на имота за даден ред HeightRule

В същото време, различна височина може да бъде зададена за всеки ред … това ви позволява да контролирате широко настройките на таблицата.

Следният пример за код показва как да се създаде таблица, която съдържа една клетка и да се приложи форматиране на ред:

Посочване на таблицата и широчината на клетките

Таблица в Microsoft Word документът предоставя няколко различни начина за преоразмеряване на таблицата и отделните клетки. Тези свойства позволяват значителен контрол върху външния вид и поведението на масата, така че Aspose.Words поддържа поведението на масите, като Microsoft Word.

Важно е да се знае, че елементите на таблицата представят няколко различни свойства, които могат да повлияят на това как се изчислява широчината на общата таблица, както и отделните клетки:

  • Предпочитана ширина на масата
  • Предпочитана ширина на отделните клетки
  • Позволява автоматизация на масата

Тази статия описва как различните свойства за изчисляване ширина на таблицата работят и как да получите пълен контрол над таблицата ширина изчисление. Това е особено полезно да се знае в такива случаи, когато оформлението на таблицата не изглежда както се очаква.

Как да използвате Предпочитаната ширина

Желаната ширина на таблица или отделни клетки се определя чрез предпочитаното свойство за широчина, което е размерът, който елементът се стреми да побере. Това означава, че предпочитаната широчина може да бъде посочена за цялата таблица или за отделните клетки. В някои ситуации може да не е възможно да се побере точно тази ширина, но действителната ширина ще бъде близо до тази стойност в повечето случаи.

Подходящият предпочитан тип и стойност на ширината се определят чрез методите на PreferredWidth клас:

  • на Auto метод за определяне на авто или горно предпочитана ширина
  • на FromPercent метод за определяне на ширината на процента
  • на FromPoints метод за определяне на широчината в точки

Снимките по-долу показват представяне на * предпочитаните характеристики на ширината* в Microsoft Word и съответните им свойства в Aspose.Words.

formatting-table-properties-aspose-words-python

Пример за това как тези опции се прилагат към реална таблица в документ може да се види на снимката по-долу.

tables-applying-options-python

Посочете предпочитаната таблица или широчина на клетката

В Aspose.Words, Таблицата и широчината на клетките са определени с помощта на Table.PreferredWidth собственост и CellFormat.PreferredWidth имот, с опции, налични в PreferredWidthType Изброяване:

  • Auto, която е еквивалентна на непредпочитана широчина
  • Percent, който съответства на елемента спрямо наличното пространство в прозореца или размера на контейнера и преизчислява стойността, когато наличната ширина се променя
  • Points, което съответства на елемент от посочената широчина в точки

Използване на Table.PreferredWidth Имотът ще коригира предпочитаната си ширина спрямо своя контейнер: страница, текстова колона или външна таблица, ако е гнездена маса.

Следният пример за код показва как да се постави таблицата автоматично да се поберат до 50% от ширината на страницата:

Използване на CellFormat.PreferredWidth Имотът върху дадена клетка ще коригира предпочитаната ширина.

Следният пример за код показва как да зададете различните предпочитани настройки на ширината:

Търсене Предпочитан тип ширина и стойност

Можеш да използваш Type както и Value свойства, за да намерите предпочитаната ширина детайли на желаната таблица или клетка.

Следният пример с код показва как да се извлече предпочитаният тип широчина на таблица:

Как да зададете автоматично

На AllowAutoFit Имотът позволява клетките в таблица да растат и свиват според избрания критерий. Например, можете да използвате Автоматично свързване към прозорец опция да се поберат таблицата на ширината на страницата, и Автоматично свързване към съдържанието възможност да се позволи на всяка клетка да расте или да се свива според съдържанието си.

По подразбиране, Aspose.Words вмъква нова таблица, като използва Автоматично свързване към прозорец. Таблицата ще бъде обозначена според широчината на страницата. За да преоразмерите масата, можете да се обадите на AutoFit метод. Този метод приема AutoFitBehavior изброяване, което посочва какъв тип автофит се прилага към таблицата.

Важно е да знаете, че автофитът метод всъщност е пряк път, който прилага различни свойства към таблицата в същото време. Това са свойства, които всъщност дават на таблицата наблюдаваното поведение. Ще обсъдим тези имоти за всяка опция за автоматизация.

Следният пример за код показва как да се постави таблица за свиване или отглеждане на всяка клетка в зависимост от съдържанието ѝ:

Автофит таблица до прозорец

Когато автоматичното монтиране към прозорец се прилага към таблица, зад кулисите се извършват следните операции:

  1. На Table.AllowAutoFit Имотът е активиран за автоматично преоразмеряване на колоните, за да се побере съдържанието, като се използва Table.PreferredWidth стойност от 100%
  2. CellFormat.PreferredWidth се отстранява от всички клетки на таблицата
  3. Ширините на колоните са преброени за текущото съдържание на таблицата
  4. Ширината на колоните в таблицата се променя автоматично, когато потребителят редактира текста

Следният пример за код показва как да автоматизирате таблица на ширината на страницата:

Автофит таблица към съдържанието

Когато масата е автоматизирана, следните стъпки се извършват зад кулисите:

  1. На Table.AllowAutoFit свойството е активирано автоматично за преоразмеряване на всяка клетка според нейното съдържание

  2. Предпочитаната широчина на таблицата се премахва от Table.PreferredWidth, CellFormat.PreferredWidth се отстранява за всяка таблица

  3. Ширините на колоните са преброени за текущото съдържание на таблицата

Следният пример за код показва как да се пригоди към съдържанието на таблицата:

Изключване на автофит в таблица и използване на фиксирани колони

Ако вместо това таблица е с деактивиран автофит и се използват фиксирани ширини на колоните, се извършват следните стъпки:

  1. Table.AllowAutoFit Имотът е деактивиран, така че колоните не растат или не се свиват до тяхното съдържание
  2. Предпочитаната широчина на цялата таблица се отстранява от Table.PreferredWidth, CellFormat.PreferredWidth се отстранява от всички клетки на таблицата
  3. Крайният резултат е таблица, чиято ширина на колоната се определя от CellFormat.Width собственост, и чиито колони не са автоматично преоразмерени, когато потребителят влиза текст или когато страницата е преоразмерена

Следният пример за код показва как да се деактивира автофитът и да се даде възможност за фиксирана ширина за посочената таблица:

Редът на точност при изчисляване на широчината на клетките

Aspose.Words позволява на потребителите да определят ширината на таблица или клетка чрез множество обекти, включително CellFormat го Width Имотът е предимно оставен от предишни версии, но все пак е полезен за опростяване на настройката на широчината на клетката.

Важно е да се знае, че CellFormat.Width Имотът работи различно в зависимост от това кои от другите свойства на ширината вече съществуват в таблицата.

Aspose.Words използва следния ред за изчисляване на широчината на клетките:

Ред Имоти Описание
1 AllowAutoFit се определя Ако AutoFit е включена:
- таблицата може да се разрастне покрай предпочитаната ширина, за да се настанява съдържанието, обикновено не се свива под предпочитаната ширина
- промяна в CellFormat.Width стойност се игнорира и клетката ще се побере в съдържанието си вместо
2 PreferredWidthType със стойност Points или Percent CellFormat.Width е игнориран
3 PreferredWidthType със стойност Auto Стойността от CellFormat.Width е копиран и става предпочитаната ширина на клетката (в точки)

Разрешаване на разделяне между клетките

Можете да получите или да зададете допълнително пространство между клетките на таблицата, подобно на опцията “Продавай разстоянието” в Microsoft Word. Това може да се направи с помощта на AllowCellSpacing собственост.

Пример за това как тези опции се прилагат към реална таблица в документ може да се види на снимката по-долу.

formatting-spacing-between-cells-aspose-words-python

Следният пример за код показва как да се определи разстоянието между клетките:

Прилагане на граници и оформяне

Граници и сенки могат да се прилагат към цялата таблица, като се използва Table.SetBorder, Table.SetBorders както и Table.SetShading, или само за специфични клетки, използващи CellFormat.Borders както и CellFormat.Shading. Освен това могат да се настроят греди RowFormat.Borders, Но по този начин не може да се приложи сянка.

Снимките по-долу показват границите и настройките на сянката в Microsoft Word и съответните им свойства в Aspose.Words.

formatting-border-line-aspose-words-python

formatting-cell-color-aspose-words-python

Следният пример за код показва как да се форматира таблица и клетка с различни граници и сенки: