Masaya Konumlandırma
Kayan tablolar ve satır içi tablolar var:
- İnline tablolar metniyle aynı katmanda yerleştirilir ve sadece tabloyu yukarıdan ve aşağıdan saran bir metin akışı içinde yer alırlar. İç içe geçmiş tablolar her zaman, onları koyduğunuz paragraflar arasında görünecektir. *) Yüzen tablolar metni üzerine katmanlarla ve tablonun paragraf içindeki göreli konumu, tablo kotası tarafından belirlenir. Bunun için, yüzen tablonun belgedeki pozisyonu dikey ve yatay konumlandırma ayarları tarafından etkilenir.
Bazen bir masayı bir belgedeki belirli bir şekilde konumlandırmanız gerekir. Bunu yapmak için, hizalama araçlarını kullanmanız ve tablo ile çevreleyen metin arasında girintileri ayarlamanız gerekir.
Bu makalede konumlandırma için Aspose.Words’ın ne seçenekleri sağladığını tartışacağız.
Çizgili Tablo Konumunu Belirtin
Bir satır içi tablonun konumunu Aspose.Words, API ve Alignment özelliğini kullanarak ayarlayabilirsiniz. Böylece, tablonun belgenin sayfasına göre hizalamasını ayarlayabilirsiniz.
Aşağıdaki kod örneği, bir tablonun konumunu nasıl ayarlayacağını göstermektedir:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java.git. | |
Document doc = new Document(getMyDir() + "Tables.docx"); | |
Table table = (Table) doc.getChild(NodeType.TABLE, 0, true); | |
// Align the table to the center of the page. | |
table.setAlignment(TableAlignment.CENTER); |
Yüzen Masa Hizalama Alın
Tablo metin sarma ayarı Around‘a ayarlanırsa, tablo’nun yatay ve dikey hizalamasını RelativeHorizontalAlignment ve RelativeVerticalAlignment özelliklerini kullanarak elde edebilirsiniz.
diğer türdeki metin sarma ile, satır içi tablo hizalaması almak için Alignment özelliğini kullanabilirsiniz.
Aşağıdaki kod örneği tablo hizalaması alma şeklin gösterilmektedir:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java.git. | |
Document doc = new Document(getMyDir() + "Tables.docx"); | |
Table table = (Table) doc.getChild(NodeType.TABLE, 0, true); | |
if (table.getTextWrapping() == TextWrapping.AROUND) | |
{ | |
System.out.println(table.getRelativeHorizontalAlignment()); | |
System.out.println(table.getRelativeVerticalAlignment()); | |
} | |
else | |
{ | |
System.out.println(table.getAlignment()); | |
} |
Yüzen Masa Pozisyonu Alın
Kayan bir tablonun pozisyonu aşağıdaki özelliklere göre belirlenir:
- HorizontalAnchor – bir yüzen tablonun yatay konumlandırmasını hesaplamak için bir nesne
- VerticalAnchor – bir yüzen tablonun dikey konumlandırılmasını hesaplamak için bir nesne
- AbsoluteHorizontalDistance - mutlak yatay yüzer masa pozisyonu
- AbsoluteVerticalDistance – mutlak dikey yüzen tablo pozisyonu
- AllowOverlap – diğer yüzen nesnelerle örtüşme etkinleştirme/devre dışı bırakma seçeneği
- RelativeHorizontalAlignment - yüzen tablo göreceli yatay hizalama.
- RelativeVerticalAlignment – yüzer tablo göreceli dikey hizalama.
Aşağıdaki kod örneği bir yüzen masanın pozisyonunu nasıl alacağını göstermektedir:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java.git. | |
Document doc = new Document(getMyDir() + "Table wrapped by text.docx"); | |
for (Table table : doc.getFirstSection().getBody().getTables()) | |
{ | |
// If the table is floating type, then print its positioning properties. | |
if (table.getTextWrapping() == TextWrapping.AROUND) | |
{ | |
System.out.println(table.getHorizontalAnchor()); | |
System.out.println(table.getVerticalAnchor()); | |
System.out.println(table.getAbsoluteHorizontalDistance()); | |
System.out.println(table.getAbsoluteVerticalDistance()); | |
System.out.println(table.getAllowOverlap()); | |
System.out.println(table.getAbsoluteHorizontalDistance()); | |
System.out.println(table.getRelativeVerticalAlignment()); | |
System.out.println(".............................."); | |
} | |
} |
Türevi Masa Pozisyonunu Ayarla
Almak gibi, bir yüzen masanın konumunu aynı Aspose.Words API kullanarak ayarlayabilirsin.
Hizalama ve dikey ve yatay mesafenin birleştirilmiş özellikler olduğu ve birinin diğerini sıfırlayabileceği gerçeğini bilmenin önemi vardır. Örneğin, RelativeHorizontalAlignment ayarlamak, AbsoluteHorizontalDistance‘i varsayılan değerine sıfırlayacak ve bunun tersini de yapar. Aynısı true dikey düzenleme için de geçerlidir.
Aşağıdaki kod örneği bir yüzen tablonun konumunu ayarlamaya nasıl bakılır olduğunu göstermektedir:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java.git. | |
Document doc = new Document(getMyDir() + "Table wrapped by text.docx"); | |
Table table = doc.getFirstSection().getBody().getTables().get(0); | |
table.setAbsoluteHorizontalDistance(10.0); | |
table.setRelativeVerticalAlignment(VerticalAlignment.CENTER); | |
doc.save(getArtifactsDir() + "WorkingWithTables.FloatingTablePosition.docx"); |
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java.git. | |
Document doc = new Document(getMyDir() + "Table wrapped by text.docx"); | |
Table table = doc.getFirstSection().getBody().getTables().get(0); | |
table.setHorizontalAnchor(RelativeHorizontalPosition.COLUMN); | |
table.setVerticalAnchor(RelativeVerticalPosition.PAGE); | |
doc.save(getArtifactsDir() + "WorkingWithTables.RelativeHorizontalOrVerticalPosition.docx"); |
Tablo ile Çevresindeki Metnin Arasındaki Mesafe Al
Aspose.Words ayrıca tablolar ve çevreleyen metinler arasındaki mesafeleri bulmak için bir fırsat sağlar:
- DistanceTop – yukarıdan uzaklığın değeri
- DistanceBottom algılanan uzaklığın değeri
- DistanceRight – sağdaki mesafe değeri
- DistanceLeft - soldaki mesafe değeri
Aşağıdaki kod örneği bir tablo ve onun etrafındaki metnin arasındaki mesafeyi nasıl alacağınızı gösterir:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java.git. | |
Document doc = new Document(getMyDir() + "Tables.docx"); | |
System.out.println("\nGet distance between table left, right, bottom, top and the surrounding text."); | |
Table table = (Table) doc.getChild(NodeType.TABLE, 0, true); | |
System.out.println(table.getDistanceTop()); | |
System.out.println(table.getDistanceBottom()); | |
System.out.println(table.getDistanceRight()); | |
System.out.println(table.getDistanceLeft()); |