Посада столу
Розсувні таблиці та вбудовані таблиці:
- Ім’я * Вхідні таблиці розміщуються на одному шарі, як і текст, і розміщуються в потоці тексту, що тільки оточує таблицю вище і нижче. Вхідні таблиці завжди з’являються між пунктами, де ви їх розміщуєте.
- Ім’я * Флоатні столи прошаровуються над текстом, а положення таблиці відносно абзацу визначається за допомогою таблиці, якір. Через це положення плаваючого столу в документі впливає на вертикальні та горизонтальні налаштування позиціонування.
Часом необхідно розмістити таблицю в документі певним чином. Для цього потрібно використовувати інструменти вирівнювання і встановити відступи між столом і навколишнім текстом.
У статті ми обговорюємо які варіанти Aspose.Words забезпечує позиціонування.
Вказати внутрішню позицію таблиці
Ви можете встановити позицію в режимі онлайн таблиці за допомогою Aspose.Words API і Alignment майно. Таким чином, можна регулювати вирівнювання таблиці відносно сторінки документа.
Наприклад, наступний код показує, як встановити положення таблиці в рядку:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET.git. | |
Document doc = new Document(MyDir + "Tables.docx"); | |
Table table = (Table) doc.GetChild(NodeType.Table, 0, true); | |
// Align the table to the center of the page. | |
table.Alignment = TableAlignment.Center; |
Отримувати вирівнювання столу
Якщо на столі встановлюється текстове обгортання Around, Ви можете отримати горизонтальне та вертикальне вирівнювання столу за допомогою RelativeHorizontalAlignment і RelativeVerticalAlignment властивості.
З інші види текстового обгортання, Ви можете отримати вбудоване вирівнювання таблиці за допомогою Alignment майно.
Приклад наступного коду показує, як отримати вирівнювання таблиці:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET.git. | |
Document doc = new Document(MyDir + "Tables.docx"); | |
Table table = (Table) doc.GetChild(NodeType.Table, 0, true); | |
if (table.TextWrapping == TextWrapping.Around) | |
{ | |
Console.WriteLine(table.RelativeHorizontalAlignment); | |
Console.WriteLine(table.RelativeVerticalAlignment); | |
} | |
else | |
{ | |
Console.WriteLine(table.Alignment); | |
} |
Отримати Floating Таблиця Посади
Положення плаваючого столу визначається за допомогою наступних властивостей:
- Ім’я * HorizontalAnchor – об’єкт обчислення горизонтального позиціонування плаваючого столу
- Ім’я * VerticalAnchor – об’єкт обчислення вертикального положення плаваючого столу
- Ім’я * AbsoluteHorizontalDistance – абсолютна горизонтальна плаваюча позиція таблиці
- Ім’я * AbsoluteVerticalDistance – абсолютна вертикальна плаваюча позиція таблиці
- Ім’я * AllowOverlap – можливість увімкнути/розмкнути перекриття з іншими плаваючі об’єкти
- Ім’я * RelativeHorizontalAlignment – плаваючий стіл відносно горизонтального вирівнювання.
- Ім’я * RelativeVerticalAlignment – плаваючий стіл відносно вертикального вирівнювання.
Приклад коду показує, як отримати позицію плаваючого столу:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET.git. | |
Document doc = new Document(MyDir + "Table wrapped by text.docx"); | |
foreach (Table table in doc.FirstSection.Body.Tables) | |
{ | |
// If the table is floating type, then print its positioning properties. | |
if (table.TextWrapping == TextWrapping.Around) | |
{ | |
Console.WriteLine(table.HorizontalAnchor); | |
Console.WriteLine(table.VerticalAnchor); | |
Console.WriteLine(table.AbsoluteHorizontalDistance); | |
Console.WriteLine(table.AbsoluteVerticalDistance); | |
Console.WriteLine(table.AllowOverlap); | |
Console.WriteLine(table.AbsoluteHorizontalDistance); | |
Console.WriteLine(table.RelativeVerticalAlignment); | |
Console.WriteLine(".............................."); | |
} | |
} |
Встановити Floating Таблиця Положення
Так само, як отримати, ви можете встановити позицію плаваючого столу за допомогою того ж Aspose.Words APIй
Важливо знати, що вирівнювання і горизонтальна і вертикальна відстань поєднують властивості і можна скидати інші. Наприклад, налаштування RelativeHorizontalAlignment скинути AbsoluteHorizontalDistance до його значення за замовчуванням і навпаки. Те ж саме true для вертикального розташування.
Приклад коду показує, як встановити позицію плаваючого столу:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET.git. | |
Document doc = new Document(MyDir + "Table wrapped by text.docx"); | |
Table table = doc.FirstSection.Body.Tables[0]; | |
table.AbsoluteHorizontalDistance = 10; | |
table.RelativeVerticalAlignment = VerticalAlignment.Center; | |
doc.Save(ArtifactsDir + "WorkingWithTables.FloatingTablePosition.docx"); |
Отримати Відстань між Table і Surrounding Text
Aspose.Words також надає можливість дізнатися відстані між таблицями та навколишніми текстами:
- до DistanceTop – значення відстані від вище
- до DistanceBottom – значення відстані сприйняття
- до DistanceRight – значення відстані на правому
- до DistanceLeft – значення відстані зліва
Приклад коду показує, як отримати відстань між таблицями та його навколишнім текстом:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET.git. | |
Document doc = new Document(MyDir + "Tables.docx"); | |
Console.WriteLine("\nGet distance between table left, right, bottom, top and the surrounding text."); | |
Table table = (Table) doc.GetChild(NodeType.Table, 0, true); | |
Console.WriteLine(table.DistanceTop); | |
Console.WriteLine(table.DistanceBottom); | |
Console.WriteLine(table.DistanceRight); | |
Console.WriteLine(table.DistanceLeft); |