Bu makalede Python’da tablolarla çalışacağız, bir tablo oluşturmanın ve tablodaki verileri yönetmenin en kolay yolunu göstereceğiz. API’mizi kullanarak tabloları yönetebilir ve Word, Excel, PDF gibi farklı formatlara aktarabilirsiniz. Aspose.Words for Python via .NET’i tanıtacağız ve bu API ile tablo oluşturma ve ekleme konularına odaklanacağız.

Aspose.Words for Python via .NET, Microsoft Word (DOCX, DOC, ODT), Web (Markdown, HTML), PDF ve diğer birçok belge türünü okuma ve yönetme amacıyla tasarlanmış bir sınıf kitaplığıdır. Bu Python API’si ile Word dosyalarını oluşturabilir, düzenleyebilir, renderlayabilir ve birden çok formata dönüştürebilir, raporlar oluşturabilir ve dış yazılımlara ihtiyaç duymadan verilerinizi görselleştirebilirsiniz. Belge işleme ve veri biçimlendirme işlemlerini yönetmek için 100’den fazla Python sınıfı sizin hizmetinizde.
Python’da Tablolarla Çalışma
Tablolar, büyük miktarda bilgiyi düzenlemeye ve satır ve sütunlarla ızgara benzeri bir yapıda görüntülemeye olanak tanır. Sekmeli verileri gösterirken içerik tasarımı üzerinde çok daha iyi kontrol sağladıkları için oldukça faydalıdır. Tablolar, satır ve sütunlardan oluşan yapılandırılmış veri kümeleridir. Kütüphanemizde tam olarak desteklenir ve tabloları kolayca düzenleyebilir, değiştirebilir, ekleyebilir ve kaldırabilirsiniz. Aşağıda Python kullanarak yeni bir tablo oluşturmayı göstereceğiz ve belgelerimizde biçimlendirme uygulama
, TableStyle ile çalışma
, sütun ve satırlarla çalışma
, ve tabloları birleştirme ve bölme
nasıl yapılır görebilirsiniz.
Python’da Tablo Oluşturma
Kütüphanemiz, bir belge içinde yeni tablolar oluşturmak için farklı yöntemler sunar ve bu makalede bu yöntemlerden bazılarını nasıl kullanacağımızı göreceğiz. Yeni oluşturulan tablo, Microsoft Word’ün varsayılan değerlerine benzer değerlere sahiptir.

Bir tabloyu DocumentBuilder class
kullanarak ekleyebilir ve tabloyu oluşturmak için aşağıdaki yöntemi kullanabilirsiniz:
• DocumentBuilder.start_table
• DocumentBuilder.insert_cell
• DocumentBuilder.end_row
• DocumentBuilder.end_table
• DocumentBuilder.writeln

Python’da bir tablo oluşturmak için bu 7 adımı izleyin:
- DocumentBuilder.start_table ile tabloyu başlatın.
- DocumentBuilder.insert_cell’i kullanarak tablo içinde bir hücre ekleyin ve hücre biçimlendirmesini belirtmek için DocumentBuilder.cell_format’i kullanın.
- DocumentBuilder’ı kullanarak hücre içeriğini ekleyin.
- Satırı tamamlayana kadar adım 2 ve 3’ü tekrarlayın.
- Satırı sonlandırmak için DocumentBuilder.end_row yöntemini çağırabilir ve satır biçimlendirmesi için DocumentBuilder.row_format’i kullanabilirsiniz.
- Daha sonra tabloyu tamamlayana kadar adım 2’den 5’e kadar olanları tekrarlayın.
- Tabloyu tamamlamak için DocumentBuilder.end_table yöntemini kullanın.
Daha fazla ayrıntı için DocumentBuilder sınıfı ve tablo oluşturma yöntemleri [belgeler] (https://docs.aspose.com/words/python-net/introduction-and-creating-tables/
) içinde açıklanmıştır.
Aşağıdaki örnekte DocumentBuilder kullanarak varsayılan biçimlendirmeyle basit bir tablo nasıl oluşturulur görebilirsiniz.
# For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Python-via-.NET
doc = aw.Document()
builder = aw.DocumentBuilder(doc)
# Start building the table.
builder.start_table()
builder.insert_cell()
builder.write("Row 1, Cell 1 Content.")
# Build the second cell.
builder.insert_cell()
builder.write("Row 1, Cell 2 Content.")
# Call the following method to end the row and start a new row.
builder.end_row()
# Build the first cell of the second row.
builder.insert_cell()
builder.write("Row 2, Cell 1 Content")
# Build the second cell.
builder.insert_cell()
builder.write("Row 2, Cell 2 Content.")
builder.end_row()
# Signal that we have finished building the table.
builder.end_table()
doc.save(docs_base.artifacts_dir + "WorkingWithTables.create_simple_table.docx")
Aşağıdaki kod örneğiyle DocumentBuilder
kullanarak biçimlendirilmiş bir tablo oluşturun.
# For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Python-via-.NET
doc = aw.Document()
builder = aw.DocumentBuilder(doc)
table = builder.start_table()
builder.insert_cell()
# Table wide formatting must be applied after at least one row is present in the table.
table.left_indent = 20.0
# Set height and define the height rule for the header row.
builder.row_format.height = 40.0
builder.row_format.height_rule = aw.HeightRule.AT_LEAST
builder.cell_format.shading.background_pattern_color = drawing.Color.from_argb(198, 217, 241)
builder.paragraph_format.alignment = aw.ParagraphAlignment.CENTER
builder.font.size = 16
builder.font.name = "Arial"
builder.font.bold = True
builder.cell_format.width = 100.0
builder.write("Header Row,\n Cell 1")
# We don't need to specify this cell's width because it's inherited from the previous cell.
builder.insert_cell()
builder.write("Header Row,\n Cell 2")
builder.insert_cell()
builder.cell_format.width = 200.0
builder.write("Header Row,\n Cell 3")
builder.end_row()
builder.cell_format.shading.background_pattern_color = drawing.Color.white
builder.cell_format.width = 100.0
builder.cell_format.vertical_alignment = aw.tables.CellVerticalAlignment.CENTER
# Reset height and define a different height rule for table body.
builder.row_format.height = 30.0
builder.row_format.height_rule = aw.HeightRule.AUTO
builder.insert_cell()
# Reset font formatting.
builder.font.size = 12
builder.font.bold = False
builder.write("Row 1, Cell 1 Content")
builder.insert_cell()
builder.write("Row 1, Cell 2 Content")
builder.insert_cell()
builder.cell_format.width = 200.0
builder.write("Row 1, Cell 3 Content")
builder.end_row()
builder.insert_cell()
builder.cell_format.width = 100.0
builder.write("Row 2, Cell 1 Content")
builder.insert_cell()
builder.write("Row 2, Cell 2 Content")
builder.insert_cell()
builder.cell_format.width = 200.0
builder.write("Row 2, Cell 3 Content.")
builder.end_row()
builder.end_table()
doc.save(docs_base.artifacts_dir + "WorkingWithTables.formatted_table.docx")
Mevcut bir tabloyu ekleme
Belgenizde zaten bir tablo varsa ve bu tabloyu kopyalayarak üzerinde değişiklikler yapmak istiyorsanız, bir tabloyu çoğaltmanın en kolay yolu tüm biçimlendirmeyi koruyan Table.clone
yöntemini kullanmaktır. Aşağıdaki örnekte bir tabloyu nasıl ekleyeceğinizi görebilir ve bu örnek için şablon dosyasına ihtiyacınız olursa [buradan] (https://github.com/aspose-words/Aspose.Words-for-Python-via-.NET/blob/master/Examples/Data/Tables.docx
) indirebilirsiniz.
# For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Python-via-.NET
doc = aw.Document(docs_base.my_dir + "Tables.docx")
table = doc.get_child(aw.NodeType.TABLE, 0, True).as_table()
# Clone the table and insert it into the document after the original.
tableClone = table.clone(True).as_table()
table.parent_node.insert_after(tableClone, table)
# Insert an empty paragraph between the two tables,
# or else they will be combined into one upon saving this has to do with document validation.
table.parent_node.insert_after(aw.Paragraph(doc), table)
doc.save(docs_base.artifacts_dir + "WorkingWithTables.clone_complete_table.docx")
Tablolar, Aspose.Words for Python via .NET ürünleri hakkında sorularınız varsa ve projenizde API’mizi uygulamanız için [Ücretli Destek geliştiricileri] (https://consulting.aspose.com/
) ekibimizden yardım ihtiyacınız varsa, lütfen [bize ulaşın] (https://consulting.aspose.com/contact/
) adresinden bize ulaşın.