Ustaw stół
Istnieją tabele pływające i tabele wbudowane:
- Tabele wbudowane są umieszczane na tej samej warstwie co tekst i są umieszczane w strumieniu tekstu otaczającym tylko tabelę powyżej i poniżej. Tabele wbudowane będą zawsze pojawiać się pomiędzy akapitami, w których je umieściłeś.
- Pływające stoły są nakładane na tekst, a położenie tabeli względem akapitu określa kotwica tabeli. Z tego powodu na położenie tabeli ruchomej w dokumencie wpływają ustawienia położenia pionowego i poziomego.
Czasami trzeba ustawić tabelę w dokumencie w określony sposób. W tym celu należy skorzystać z narzędzi wyrównywania i ustawić wcięcia pomiędzy tabelą a otaczającym ją tekstem.
W tym artykule omówimy, jakie opcje pozycjonowania zapewnia Aspose.Words.
Określ pozycję tabeli wbudowanej
Położenie tabeli wbudowanej można ustawić za pomocą właściwości Aspose.Words API i Alignment. W ten sposób można dostosować wyrównanie tabeli względem strony dokumentu.
Poniższy przykład kodu pokazuje, jak ustawić pozycję tabeli wbudowanej:
// 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; |
Uzyskaj wyrównanie tabeli pływającej
Jeśli zawijanie tekstu w tabeli jest ustawione na Around, wyrównanie tabeli w poziomie i w pionie można uzyskać za pomocą właściwości RelativeHorizontalAlignment i RelativeVerticalAlignment.
Dzięki inne rodzaje zawijania tekstu możesz uzyskać wbudowane wyrównanie tabeli za pomocą właściwości Alignment.
Poniższy przykład kodu pokazuje, jak uzyskać wyrównanie tabeli:
// 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); | |
} |
Uzyskaj pozycję pływającego stołu
Pozycję tabeli pływającej określa się za pomocą następujących właściwości:
- HorizontalAnchor – obiekt do obliczania poziomego ustawienia stołu pływającego
- VerticalAnchor – obiekt do obliczania położenia pionowego stołu pływającego
- AbsoluteHorizontalDistance – absolutna pozioma pozycja stołu pływającego
- AbsoluteVerticalDistance – absolutna pionowa pozycja stołu pływającego
- AllowOverlap – opcja włączania/wyłączania nakładania się na inne obiekty pływające
- RelativeHorizontalAlignment – względne wyrównanie poziome tabeli pływającej.
- RelativeVerticalAlignment – względne wyrównanie pionowe tabeli pływającej.
Poniższy przykład kodu pokazuje, jak uzyskać pozycję tabeli pływającej:
// 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(".............................."); | |
} | |
} |
Ustaw pozycję stołu pływającego
Podobnie jak w przypadku uzyskiwania, możesz ustawić pozycję pływającego stołu za pomocą tego samego Aspose.Words API.
Ważne jest, aby wiedzieć, że wyrównanie oraz odległość w poziomie i w pionie to połączone właściwości i jedna może zresetować drugą. Na przykład ustawienie RelativeHorizontalAlignment spowoduje zresetowanie AbsoluteHorizontalDistance do wartości domyślnej i odwrotnie. To samo dotyczy formatu true w przypadku układu pionowego.
Poniższy przykład kodu pokazuje, jak ustawić pozycję tabeli pływającej:
// 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"); |
Uzyskaj odległość między tabelą a otaczającym tekstem
Aspose.Words zapewnia również możliwość sprawdzenia odległości pomiędzy tabelami i otaczającymi je tekstami:
- DistanceTop – wartość odległości od góry
- DistanceBottom – wartość odległości percepcji
- DistanceRight – wartość odległości po prawej stronie
- DistanceLeft – wartość odległości po lewej stronie
Poniższy przykład kodu pokazuje, jak uzyskać odległość między tabelą a otaczającym ją tekstem:
// 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); |