Bir Tablo Oluşturun
Aspose.Words kullanıcıların bir belge içinde sıfırdan tablolar oluşturmasına olanak tanır ve bunu yapmak için birçok farklı yöntem sağlar. Bu makale her bir yöntem kullanarak belgenize biçimlendirilmiş tablolar ekleme hakkında ayrıntılar sunar ve makalenin sonunda her yöntemi karşılaştırır.
Varsayılan Tablo stilleri
Yeni oluşturulan tabloya, Microsoft Word’ta kullanılanlara benzer varsayılan değerler verilir:
Tablo Özelliği | Varsayılan Aspose.Words |
---|---|
Border Style |
Single |
Border Width |
1/2 pt |
Sınır Rengi | Black |
Left and Right Padding |
5.4 pts |
AutoFit Mode |
AutoFit to Window |
Allow AutoFit |
True |
Bir tablo sıkıca yerleştirilmişse veya sayfadaki herhangi bir yerde yerleştirilebileceğinde iç içe bir tablo olabilir. Varsayılan olarak, Aspose.Words her zaman satır içi tablolar oluşturur.
|
DocumentBuilder ile Tablo Oluşturun
B Aspose.Words, kullanıcılar bir belge içinde bir tablo oluşturmak için DocumentBuilder kullanabilir. Bir tablo oluşturmak için temel algoritma şöyledir:
- Masayı StartTable ile başlatın
- Tabloya bir hücre eklemek için InsertCell – bu otomatik olarak yeni bir satır başlatır
- İsteğe bağlı olarak, hücre biçimlendirmesi belirtmek için CellFormat özelliğini kullanın
- Cell içeriğini uygun DocumentBuilder yöntemleriyle yerleştirin örneğin Writeln, InsertImage ve diğerleri
- 2-4 adımları tekrarlayın, satır tamamlanana kadar
- Çağrı EndRow geçerli satırı sonlandırmak için
- İsteğe bağlı olarak, " RowFormat" özelliğini satır biçimlendirmesini belirtmek için kullanın
- 2-7 adım tekrarlayın, tablo tamamlanana kadar
- Tablo oluşturmayı tamamlamak için EndTable çağırın
Önemli ayrıntılar:
- StartTable bir hücre içinde de çağrılabilir, bu durumda hücre içindeki iç içe geçmiş bir tablo oluşturmaya başlar.
- Bir sonraki çağrı InsertCell, yeni bir hücre oluşturulur ve diğer yöntemlerle sınıf DocumentBuilder‘nin içeriğini eklediğinizde geçerli hücrenin içine eklenecektir. Aynı satırda yeni bir hücre oluşturmak için InsertCell‘a tekrar çağrıda bulunun.
- Eğer InsertCell, EndRow‘den hemen sonra çağrılır ve satırın sonunda yapılırsa, tablo yeni bir satırda devam eder.
- Tablonun EndTable yöntemi sadece EndRow‘un çağrılmasından sonra bir kez çağrılmalıdır. Sürükleme EndTable geçerli hücreden tablonun hemen ardındaki konuma imleci taşır.
Bir tablo oluşturma işlemi aşağıdaki resimde açıkça görülmektedir:
Aşağıdaki kod örneği, varsayılan biçimlendirmeyi kullanarak bir tablo oluşturmak için DocumentBuilder nasıl kullanılacağını göstermektedir:
Aşağıdaki kod örneği, DocumentBuilder kullanarak bir biçimlendirilmiş tablo oluşturmayı gösterir
Aşağıdaki kod örneği, bir alt tablonun nasıl ekleneceğini gösterir. DocumentBuilder kullanarak:
Bir tablo oluşturun DOM (Document Object Model) aracılığıyla
Sizi belirli bir konuma yeni bir Table düğümü ekleyerek doğrudan DOM’e tablolar ekleyebilirsiniz.
Lütfen unutmayın ki tablo düğüm oluşturma hemen ardından, tablo tamamen boş olacaktır, yani henüz satır ve hücreler içermez. Bir tabloya satır ve hücre eklemek için, uygun Row ve Cell alt düğümleri DOM’e ekleyin.
Aşağıdaki kod örneği, bir belge ağacına uygun alt düğümler ekleyerek sıfırdan yeni bir tablo oluşturmayı gösterir:
HTML’den Tablo Oluştur
Bir belgeden bir HTML kaynağı kullanılarak içeriği eklemek için InsertHtml‘u kullanan Aspose.Words destekler. Giriş, bir tam HTML sayfası veya sadece kısmi bir parçacıktan oluşabilir.
Bu InsertHtml yöntemini kullanarak kullanıcılar tablo etiketleri aracılığıyla belgeye tablo girebilirler. <table>
, <tr>
, <td>
Aşağıdaki kod örneği, bir belgeye bir HTML etiketi içeren bir dizeden tablo eklemeyi gösterir:
Mevcut Bir Tablonun Bir Kopiasını Ekle
Bir belgedeki zaten var olan bir tablodan dayalı bir tablo oluşturmanız gerektiğinde sık sık zamanlar vardır. Tablo biçimlendirmesini koruyarak bir tablonun kolayca çoğaltılmasının en kolay yolu, deepClone yöntemi kullanılarak Tablo düğümünü kopyalamaktır.
Bu tekniği mevcut bir satır ya da hücrenin kopyalarını bir tabloya eklemek için kullanılabilir.
Aşağıdaki kod örneği düğüm oluşturucular kullanarak bir tabloyu nasıl çoğaltacağınızı göstermektedir:
Aşağıdaki kod örneği bir tablonun son satırını nasıl klonlayacağını ve tabloya ekleyeceğini gösterir:
Verilerinizden gelen her kayıtla birlikte dinamik olarak büyüyen bir belge içinde tablolar oluşturmayı düşünüyorsanız, yukarıdaki yöntem tavsiye edilmez. Bunun yerine, istenilen çıktı daha kolay Mail merge ile bölgelerin kullanılması ile elde edilir. Bu tekniği hakkında daha fazla bilgi Mail Merge with Regions‘daki bölümde edinebilirsiniz.
Tablo Oluşturmanın Yollarını Karşılaştırın
Aspose.Words bir belge içinde yeni tablolar oluşturmak için birkaç yöntem sağlar. Her yöntemin kendi avantajları ve dezavantajları vardır, bu nedenle hangi yöntemi kullanacağına karar vermek genellikle spesifik duruma bağlıdır.
Masaları oluşturmak için bu yöntemlere daha yakından bakalım ve avantajlarını ve dezavantajlarını karşılaştıralım:
Yöntem | Avantajlar | Dezavantajlar |
---|---|---|
Via DocumentBuilder |
Tablolar ve diğer belge içeriği eklemek için standart yöntem | Aynı anda aynı yapı örneğiyle birçok çeşit tablo oluşturmak zor olabilir |
Via DOM | Çevreleyen kodun içine doğrudan DOM’e düğüm ekleyerek bir DocumentBuilder kullanmadan daha iyi uyum sağlar | Tablo oluşturulur “boş”: çoğu işlemi gerçekleştirmeden önce, eksik olan alt düğümleri oluşturmak için EnsureMinimum‘ı çağırmanız gerekir |
HTML’den | Can create a new table from HTML source using tags like <table> , <tr> , <td> |
Tüm olası Microsoft Word tablo biçimleri HTML’e uygulanamaz |
Mevcut bir tablonun kopyalanması | Varolan bir tabloya tüm satır ve hücre biçimlendirmesini koruyarak bir kopyasını oluşturabilirsiniz | Masa kullanıma hazır hale gelmeden önce uygun alt düğümler kaldırılmalıdır |