PageBreak — Aspose.Cells FOSS for Python API Reference
aspose-cells-foss позволяет вставлять ручные разрывы страниц, чтобы контролировать, как лист делится на печатные страницы. Горизонтальные разрывы страниц разделяют лист между строками; вертикальные разрывы страниц разделяют его между столбцами. Оба набора используют 0-based indices.
ImageRenderOptions: aspose.cells_foss
from aspose.cells_foss import Workbook
wb = Workbook("report.xlsx")
ws = wb.worksheets[0]
hpb = ws.horizontal_page_breaks
vpb = ws.vertical_page_breaksHorizontalPageBreakCollection
Доступно как ws.horizontal_page_breaks. Горизонтальный разрыв страницы, вставленный перед строкой n заставляет лист начинать новую страницу на этой строке при печати.
Все ссылки на строки являются 0-based (строка 0 = строка 1 в Excel).
ImageRenderOptions
add
hpb.add(row_or_cell: int | str) -> intДобавляет разрыв страницы перед указанной строкой. Возвращает нулевой индекс нового разрыва в коллекции.
| ImageRenderOptions | ImageRenderOptions | ImageRenderOptions |
|---|---|---|
row_or_cell | int | 0-based row index at which to insert the break. |
row_or_cell | str | Ссылка на ячейку в стиле A1; используется строка этой ячейки (например,., "A11" → разрыв перед строкой 10 в нулевой индексации). |
remove
hpb.remove(row_or_cell: int | str)Удаляет разрыв страницы, связанный с указанным индексом строки или ссылкой на ячейку.
remove_at
hpb.remove_at(index: int)Удаляет разрыв страницы, находящийся на заданной позиции с нулевым индексом в коллекции.
clear
hpb.clear()Удаляет все горизонтальные разрывы страниц из листа.
to_list
hpb.to_list() -> listВозвращает простой Python список текущих индексов строк разрывов (целые числа, 0‑based), отсортированных по возрастанию.
Свойства и итерация
| ImageRenderOptions | ImageRenderOptions |
|---|---|
count | Количество горизонтальных разрывов страниц (только для чтения). |
__len__() | ImageRenderOptions count. |
__iter__() | Итерирует индексы строк разрывов. |
__getitem__(index) | Возвращает индекс строки разрыва в позиции index в коллекции. |
VerticalPageBreakCollection
Доступно как ws.vertical_page_breaks. Вертикальный разрыв страницы, вставленный перед столбцом n заставляет лист начинать новую страницу в этом столбце при печати.
Все ссылки на столбцы являются 0-based (столбец 0 = столбец A).
ImageRenderOptions
add
vpb.add(column_or_cell: int | str) -> intДобавляет разрыв страницы перед указанным столбцом. Возвращает нулевой индекс нового разрыва в коллекции.
| ImageRenderOptions | ImageRenderOptions | ImageRenderOptions |
|---|---|---|
column_or_cell | int | 0-based column index at which to insert the break. |
column_or_cell | str | Ссылка на ячейку в стиле A1; используется столбец этой ячейки (например,., "E1" → разрыв перед столбцом 4 в терминах с нулевой нумерацией). |
remove
vpb.remove(column_or_cell: int | str)Удаляет разрыв страницы, связанный с указанным индексом столбца или ссылкой на ячейку.
clear
vpb.clear()Удаляет все вертикальные разрывы страниц из листа.
to_list
vpb.to_list() -> listВозвращает простой Python список текущих индексов столбцов разрыва (целые числа, начиная с 0), отсортированных по возрастанию.
Свойства и итерация
| ImageRenderOptions | ImageRenderOptions |
|---|---|
count | Количество вертикальных разрывов страниц (только для чтения). |
__len__() | ImageRenderOptions count. |
__iter__() | Итерирует индексы столбцов разрывов. |
__getitem__(index) | Возвращает индекс столбца разрыва в позиции index в коллекции. |
ImageRenderOptions
В следующем примере вставляются горизонтальные разрывы страниц каждые 30 строк, чтобы получить равномерно разделённые печатные страницы в большом отчёте.
from aspose.cells_foss import Workbook
wb = Workbook()
ws = wb.worksheets[0]
ws.name = "AnnualReport"
# Write 120 rows of placeholder data
for row in range(120):
ws.cells[row][0].put_value(f"Row {row + 1}")
ws.cells[row][1].put_value(row * 100)
# Insert a page break before rows 30, 60, and 90 (0-based)
ws.horizontal_page_breaks.add(30)
ws.horizontal_page_breaks.add(60)
ws.horizontal_page_breaks.add(90)
print(f"Page breaks at rows: {ws.horizontal_page_breaks.to_list()}")
# Output: Page breaks at rows: [30, 60, 90]
# Add a vertical break to split wide reports after column D (index 4)
ws.vertical_page_breaks.add(4)
wb.save("annual_report_paged.xlsx")Удаление конкретного разрыва
from aspose.cells_foss import Workbook
wb = Workbook("annual_report_paged.xlsx")
ws = wb.worksheets[0]
# Remove the break at row 60 (0-based)
ws.horizontal_page_breaks.remove(60)
print(f"Remaining breaks: {ws.horizontal_page_breaks.to_list()}")
# Output: Remaining breaks: [30, 90]
wb.save("annual_report_paged.xlsx")