TableRow / TableCell — Aspose.Note FOSS for Python API Reference

Класс: TableRow

ImageRenderOptions: aspose.note ImageRenderOptions: from aspose.note import TableRow ImageRenderOptions: CompositeNode

TableRow представляет одну строку в Table. Его прямые дочерние элементы TableCell узлы.


ImageRenderOptions

TableRow не имеет свойств, кроме наследованных от CompositeNode и Node.

Унаследовано от CompositeNode

Свойство / МетодImageRenderOptions
FirstChildПервый прямой дочерний элемент TableCell, или None
LastChildПоследний прямой дочерний элемент TableCell, или None
AppendChildLast(node)Добавить TableCell
AppendChildFirst(node)Вставить в начало TableCell
InsertChild(index, node)Вставить TableCell в определённой позиции
RemoveChild(node)Удалить TableCell
GetChildNodes(Type)Рекурсивный поиск в глубину
for cell in rowИтерировать напрямую TableCell дочерние элементы

Наследовано от Node

ImageRenderOptionsImageRenderOptions
ParentNodeСодержащий Table
DocumentКорень Document

Класс: TableCell

ImageRenderOptions: aspose.note ImageRenderOptions: from aspose.note import TableCell ImageRenderOptions: CompositeNode

TableCell представляет одну ячейку внутри TableRow. Он может содержать RichText, Image, а также другие узлы контента в качестве дочерних элементов.


ImageRenderOptions

TableCell не имеет свойств, кроме унаследованных от CompositeNode и Node.

Унаследовано от CompositeNode

Свойство / МетодImageRenderOptions
FirstChildПервый прямой дочерний элемент контента
LastChildПоследний прямой дочерний элемент контента
AppendChildLast(node)Добавить узел контента в эту ячейку
AppendChildFirst(node)Добавить узел контента в начало
InsertChild(index, node)Вставить в определённую позицию
RemoveChild(node)Удалить узел контента
GetChildNodes(Type)Рекурсивный поиск в глубину
for child in cellИтерировать прямых потомков

Наследовано от Node

ImageRenderOptionsImageRenderOptions
ParentNodeСодержащий TableRow
DocumentКорень Document

Примеры использования

Итерировать все строки и ячейки таблицы

from aspose.note import Document, Table, TableRow, TableCell, RichText

doc = Document("MyNotes.one")
for table in doc.GetChildNodes(Table):
    print(f"Table column widths: {[col.Width for col in table.Columns]}")
    for row in table.GetChildNodes(TableRow):
        row_texts = []
        for cell in row.GetChildNodes(TableCell):
            texts = cell.GetChildNodes(RichText)
            cell_text = " ".join(rt.Text for rt in texts if rt.Text)
            row_texts.append(cell_text)
        print("  |", " | ".join(row_texts), "|")

Извлечь текст из каждой ячейки в виде плоского списка

from aspose.note import Document, TableCell, RichText

doc = Document("MyNotes.one")
for cell in doc.GetChildNodes(TableCell):
    for rt in cell.GetChildNodes(RichText):
        if rt.Text.strip():
            print(rt.Text)

Создать таблицу программно

from aspose.note import (
    Document, Page, Outline, OutlineElement,
    Table, TableRow, TableCell, RichText, SaveFormat
)

doc = Document()
page = doc.AppendChildLast(Page())
outline = page.AppendChildLast(Outline())
elem = outline.AppendChildLast(OutlineElement())

from aspose.note import TableColumn
table = elem.AppendChildLast(Table(
    IsBordersVisible=True,
    Columns=[TableColumn(Width=100.0), TableColumn(Width=200.0)],
))

headers = ["Name", "Value"]
row = table.AppendChildLast(TableRow())
for header_text in headers:
    cell = row.AppendChildLast(TableCell())
    rt = cell.AppendChildLast(RichText())
    rt.Append(header_text)

data_row = table.AppendChildLast(TableRow())
for value in ["Item A", "42"]:
    cell = data_row.AppendChildLast(TableCell())
    rt = cell.AppendChildLast(RichText())
    rt.Append(value)

doc.Save("table-output.pdf", SaveFormat.Pdf)

Подсчитать строки и ячейки

from aspose.note import Document, Table, TableRow, TableCell

doc = Document("MyNotes.one")
for table in doc.GetChildNodes(Table):
    rows = table.GetChildNodes(TableRow)
    cells = table.GetChildNodes(TableCell)
    print(f"Rows: {len(rows)}  Cells: {len(cells)}")

Безопасность при None

TableRow и TableCell не имеют nullable собственных свойств. Списки дочерних элементов, возвращаемые GetChildNodes всегда являются списками (могут быть пустыми).


См. также

  • ImageRenderOptions: родитель TableRow
  • RichText: основное содержимое внутри TableCell
  • ImageRenderOptions: изображение внутри TableCell
  • CompositeNode: унаследованные методы управления дочерними элементами
 Русский