Birleştir Tabloları Hücreleri
Bazen bir tablodaki bazı satırlar bir başlık veya tam tablo genişliğini kaplayan büyük metin blokları gerektirir. İyi bir tablo tasarımı için kullanıcı, birkaç tablo hücresini tek bir hücrede birleştirebilir. Aspose.Words, tüm giriş formatlarında çalışırken birleştirilmiş hücreleri destekler, hatta html içeriği içe aktarırken bile.
Tablo Hücrelerini Birleştirme Nasıl Yapılır?
Aspose.Words ‘da birleştirilmiş hücreler aşağıdaki özelliklerle temsil edilir: CellFormat sınıfı
- HorizontalMerge bir hücrenin hücrelerin yatay birleşiminden bir parçası olup olmadığını açıklar
- VerticalMerge hücrenin bir hücrelerin dikey birleşmesinin bir parçası olup olmadığını açıklar
Bu özelliklerin değerleri hücre birleşim davranışını belirler:
- Bir dizi birleştirilmiş hücrelerin ilk hücresi CellMerge.First ile işaretlenecektir
- Birden fazla birleştirilmiş hücreler CellMerge.Previous‘a sahip olacaktır Bir hücre birleşmemişse, CellMerge.None olacak
Hücre Birleşip Birleşmediğini Kontrol Etmek
Bir hücrenin birleştirilmiş hücrelerin bir dizisinin parçası olup olmadığını kontrol etmek için, sadece HorizontalMerge ve VerticalMerge özelliklerini kontrol ederiz.
Aşağıdaki kod örneğinde yatay ve dikey hücre birleşimi türü nasıl yazdırılır gösterilmektedir:
DocumentBuilder Kullanırken Tablo Hücrelerini Birleştirin
Bir DocumentBuilder ile oluşturulan tabloda hücreleri birleştirmeniz için, her birinde birleştirmenin gerçekleşmesi beklenen hücreler için uygun birleştirme türünü ayarlamanız gerekir – önce CellMerge.First sonra CellMerge.Previous.
Ayrıca, birleştirme ayarını gereksiz olan hücrelerde temizlemeyi hatırlamalısınız - bu, CellMerge.None‘a ilk birleştirme olmayan hücreyi ayarlayarak yapılabilir. Böyle yapılmazsa tablo içindeki tüm hücreler birleşir.
Aşağıdaki kod örneği, iki satır içeren bir tablo oluşturmak için nasıl kullanılacağını göstermektedir ve ilk satırdaki hücreler yatay olarak birleştirilir:
Aşağıdaki kod örneğinde ilk sütundaki hücrelerin dikey olarak birleştirilmesiyle nasıl iki sütunlu bir tablo oluşturulduğu gösterilmiştir:
Diğer Durumlarda Tablo Hücrelerini Birleştir
Diğer durumlarda DocumentBuilder kullanılmadığında, örneğin mevcut bir tabloya, bu şekilde hücrelerin birleştirilmesi o kadar kolay olmayabilir. Bunun yerine, hücrelere birleştirme özellikleri uygulayacak temel işlemleri kapsayan bir yöntemle sarabiliriz ki bu, görevi çok daha kolay hale getirir. Bu yöntem, bir tablodaki hücrelerin bir aralığını birleştirmek için çağrılan Birleştir otomasyon yöntemine benzer.
Aşağıdaki kod belirtilen aralıkta tablo hücrelerini birleştirerek başlayacak verilen hücrede ve bitiş hücresinde sonlandıracak. Bu durumda aralığın birden fazla satır veya sütun kapsayabileceği:
Aşağıdaki kod örneği iki belirtilen hücreler arasındaki bir hücre aralığını birleştirme gösteriyor:
HTML Tablosunda Dikey ve Yatay Birleştirilmiş Hücreler
Önceki makalelerde söylediğimiz gibi, bir tablo Microsoft Word içindeki bağımsız satırların bir kümesidir. Her satır diğer satırlardaki hücrelerden bağımsız bir dizi hücreye sahiptir. Böylece, Microsoft Word tablosunda böyle bir nesne yoktur ‘bir sütun’, ve '’ 1. sütun '’ her satırdaki ilk hücrelerin kümesi gibi şeydir 1. Bu kullanıcıların örneğin 1. satırda iki hücre - 2 cm ve 1 cm, ve 2. satırda iki farklı hücre - genişlikleri 1 cm ve 2 cm olan bir tabloya sahip olmasına izin verir. Ve Aspose.Words bu tablo kavramını destekler.
HTML’de bir tablo esasen farklı bir yapıya sahiptir: Her satır aynı sayıda hücreye sahiptir ve (görev için önemlidir) her hücre karşılık gelen sütunun genişliğini gösterir, tüm hücreler bir sütunda olduğu gibi. Eğer HorizontalMerge ve VerticalMerge yanlış bir değer döndürürse, aşağıdaki kod örneğini kullanın:
HorizontallyMergedCells’e Dönüştür
Bazen birleştirilmiş hücrelerin hangilerinin olduğunu tespit etmek mümkün değildir çünkü bazı yeni sürümler Microsoft Word daha fazla yatay olarak birleştirilmiş olduğunda birleştirme bayraklarını kullanmaz. Ancak hücrelerin genişlikleri ile yatay olarak bir hücreye birleştirilirken “birleştirme bayrakları” kullanılarak oluşturulan durumlarda Aspose.Words sağlar ConvertToHorizontallyMergedCells
yöntemini hücrelere dönüştürmek için. Bu yöntem tabloyu yalnızca dönüştürür ve gerektiğinde yeni hücreler ekler.
Aşağıdaki kod örneği yukarıdaki yöntemi çalışırken göstermektedir: