Umístění tabulky
Existují plovoucí stoly a inline tabulky:
- Inline tabulky jsou umístěny na stejné vrstvě jako text a jsou umístěny do toku textu, který obklopuje pouze tabulku nahoře a pod ní. Mezi odstavci, kam jste je umístili, se vždy objeví inline tabulky.
- Plovoucí stoly jsou nad textem vrstveny a poloha tabulky vzhledem k odstavci je určena ukotvením tabulky. Kvůli tomu je poloha plovoucí tabulky v dokumentu ovlivněna vertikálním a horizontálním nastavením polohy.
Někdy je třeba umístit tabulku do dokumentu určitým způsobem. K tomu je třeba použít zarovnání nástrojů a nastavit odrážky mezi tabulkou a okolním textem.
V tomto článku budeme diskutovat o tom, jaké možnosti Aspose.Words zajišťuje umístění.
Upřesnit pozici v inline tabulce
Můžete nastavit pozici inline tabulky pomocí Aspose.Words API a Alignment majetek. Můžete tedy upravit nastavení tabulky vzhledem k záložce dokumentu.
Následující příklad kódu ukazuje, jak nastavit pozici inline tabulky:
# For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Python-via-.NET.git. | |
doc = aw.Document(MY_DIR + "Tables.docx") | |
table = doc.get_child(aw.NodeType.TABLE, 0, True).as_table() | |
# Align the table to the center of the page. | |
table.alignment = aw.tables.TableAlignment.CENTER |
Zarovnat plovoucí stůl
Pokud je text tabulky zabalen na Around, můžete získat horizontální a vertikální nastavení tabulky pomocí RelativeHorizontalAlignment a RelativeVerticalAlignment vlastnosti.
S jiné typy balení textu, můžete získat inline nastavení tabulky pomocí Alignment majetek.
Následující příklad kódu ukazuje, jak získat zarovnání tabulky:
# For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Python-via-.NET.git. | |
doc = aw.Document(MY_DIR + "Tables.docx") | |
table = doc.get_child(aw.NodeType.TABLE, 0, True).as_table() | |
if table.text_wrapping == aw.tables.TextWrapping.AROUND: | |
print(table.relative_horizontal_alignment) | |
print(table.relative_vertical_alignment) | |
else: | |
print(table.alignment) |
Získat polohu plovoucího stolu
Poloha plovoucí tabulky se určuje pomocí těchto vlastností:
- HorizontalAnchor A
- VerticalAnchor Objekt pro výpočet svislé polohy plovoucí tabulky
- AbsoluteHorizontalDistance Absolutní vodorovná pozice plovoucí tabulky
- AbsoluteVerticalDistance Absolutní svislá poloha plovoucí tabulky
- AllowOverlap Možnost povolit / zakázat překrytí s jinými plovoucími předměty
- RelativeHorizontalAlignment Plovoucí tabulka relativní vodorovné zarovnání.
- RelativeVerticalAlignment Plovoucí stůl relativní svislé zarovnání.
Následující příklad kódu ukazuje, jak získat pozici plovoucí tabulky:
# For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Python-via-.NET.git. | |
doc = aw.Document(MY_DIR + "Table wrapped by text.docx") | |
for table in doc.first_section.body.tables: | |
table = table.as_table() | |
# If the table is floating type, then print its positioning properties. | |
if table.text_wrapping == aw.tables.TextWrapping.AROUND: | |
print(table.horizontal_anchor) | |
print(table.vertical_anchor) | |
print(table.absolute_horizontal_distance) | |
print(table.absolute_vertical_distance) | |
print(table.allow_overlap) | |
print(table.absolute_horizontal_distance) | |
print(table.relative_vertical_alignment) | |
print("..............................") |
Nastavit polohu plovoucího stolu
Stejně jako dostat, můžete nastavit polohu plovoucího stolu pomocí stejné Aspose.Words API.
Je důležité vědět, že seřízení a horizontální a vertikální vzdálenost jsou kombinované vlastnosti a jedna může resetovat druhou. Například nastavení RelativeHorizontalAlignment resetuje AbsoluteHorizontalDistance na výchozí hodnotu a naopak. To samé je true pro vertikální uspořádání.
Následující příklad kódu ukazuje, jak nastavit polohu plovoucí tabulky:
# For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Python-via-.NET.git. | |
doc = aw.Document(MY_DIR + "Table wrapped by text.docx") | |
table = doc.first_section.body.tables[0] | |
table.absolute_horizontal_distance = 10 | |
table.relative_vertical_alignment = aw.drawing.VerticalAlignment.CENTER | |
doc.save(ARTIFACTS_DIR + "WorkingWithTables.floating_table_position.docx") |
Získat vzdálenost mezi stolem a okolním textem
Aspose.Words také poskytuje možnost zjistit vzdálenosti mezi stoly a okolními texty:
- DistanceTop Hodnota výše uvedené vzdálenosti
- DistanceBottom Hodnota vzdálenosti vnímání
- DistanceRight Hodnota vzdálenosti vpravo
- DistanceLeft Hodnota vzdálenosti vlevo
Následující příklad kódu ukazuje, jak získat vzdálenost mezi tabulkou a jejím okolním textem:
# For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Python-via-.NET.git. | |
doc = aw.Document(MY_DIR + "Tables.docx") | |
print("\nGet distance between table left, right, bottom, top and the surrounding text.") | |
table = doc.get_child(aw.NodeType.TABLE, 0, True).as_table() | |
print(table.distance_top) | |
print(table.distance_bottom) | |
print(table.distance_right) | |
print(table.distance_left) |