Šiame straipsnyje dirbsime su lentelėmis Python kalboje, parodysime paprasčiausią būdą sukurti lentelę ir manipuliuoti duomenimis lentelėje. Naudodami mūsų API, galite manipuliuoti lentelėmis ir eksportuoti jas į įvairius formatus, tokius kaip Word, Excel, PDF ir kt.
Pristatysime Aspose.Words for Python via .NET ir sutelksime dėmesį į lentelių kūrimą bei įterpimą naudojant šią API.

Aspose.Words for Python via .NET
yra klasės biblioteka, skirta skaityti ir manipuliuoti įvairių tipų dokumentais, tokiais kaip Microsoft Word (DOCX, DOC, ODT), internetas (Markdown, HTML), PDF ir kt. Naudodami šią Python API, galite kurti, redaguoti, atvaizduoti ir konvertuoti Word failus į kelis formatus, generuoti ataskaitas ir vizualizuoti duomenis be išorinės programinės įrangos.
Jūsų prieinamose rankose yra daugiau nei 100 Python klasių, skirtų dokumentų apdorojimui ir duomenų formatavimo operacijoms.
Darbas su lentelėmis Python kalboje
Lentelės leidžia tvarkyti didelius informacijos kiekius ir juos pateikti tinklelio struktūroje su eilutėmis ir stulpeliais. Jos labai naudingos, kai reikia rodyti struktūruotus duomenis, nes suteikia geresnę turinio dizaino kontrolę.
Lentelės – tai struktūruotos duomenų aibės, sudarytos iš eilučių ir stulpelių. Jos pilnai palaikomos mūsų bibliotekoje, todėl galite lengvai redaguoti, keisti, pridėti ir šalinti lenteles.
Žemiau parodysime, kaip sukurti naują lentelę naudojant Python, o mūsų dokumentacijoje galite rasti, kaip taikyti formatavimą
, dirbti su TableStyle
, dirbti su stulpeliais ir eilutėmis
, bei jungti ir skaidyti lenteles
.
Lentelių kūrimas Python kalboje
Mūsų biblioteka siūlo įvairius metodus naujų lentelių kūrimui dokumente, o šiame straipsnyje pamatysime, kaip naudoti kai kuriuos iš jų.
Nauja sukurtos lentelės savybės yra panašios į numatytąsias Microsoft Word lentelių savybes.

Lentelę galite įterpti naudojant DocumentBuilder class
, o šie metodai padės ją sukurti:
• DocumentBuilder.start_table
• DocumentBuilder.insert_cell
• DocumentBuilder.end_row
• DocumentBuilder.end_table
• DocumentBuilder.writeln

Sukurkite lentelę Python kalba naudodami šiuos 7 žingsnius:
- Pradėkite lentelę naudodami DocumentBuilder.start_table.
- Naudokite DocumentBuilder.insert_cell, kad įterptumėte langelį lentelėje, ir DocumentBuilder.cell_format, kad nurodytumėte langelio formatavimą.
- Naudokite DocumentBuilder, kad įrašytumėte langelio turinį.
- Kartokite 2 ir 3 žingsnius, kol užbaigsite eilutę.
- Galite iškviesti DocumentBuilder.end_row, kad užbaigtumėte eilutę, ir naudoti DocumentBuilder.row_format eilutės formatavimui.
- Po to kartokite 2‑5 žingsnius, kol sukursite visą lentelę.
- Naudokite DocumentBuilder.end_table, kad užbaigtumėte lentelę.
Daugiau informacijos apie DocumentBuilder klasę ir metodus lentelių kūrimui rasite mūsų dokumentacijoje
.
Žemiau pateiktame pavyzdyje matote, kaip sukurti paprastą lentelę su numatytuoju formatavimu naudojant DocumentBuilder.
# 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")
Sukurkite formatuotą lentelę naudojant DocumentBuilder
su žemiau pateiktu kodo pavyzdžiu.
# 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")
Esamos lentelės įterpimas
Jei jau turite lentelę dokumente ir norite įterpti jos kopiją, kad galėtumėte atlikti keitimus, paprasčiausias būdas dubliuoti lentelę – naudoti metodą Table.clone
, kuris išsaugo visą formatavimą.
Žemiau pateiktame pavyzdyje matote, kaip įterpti lentelę, o jei jums reikia šio pavyzdžio šablono failo, jį galite atsisiųsti iš čia
.
# 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")
Jei turite klausimų apie lenteles, Aspose.Words for Python via .NET produktus ir reikia pagalbos iš mūsų mokamų palaikymo kūrėjų
, kad įgyvendintumėte API savo projekte, drąsiai susisiekite su mumis
.