Загальні корисні засоби для рендерингу

Загальні корисні засоби для рендерингу

Загальні корисні засоби для рендерингу

Aspose.Page FOSS for Python exposes a set of lower-level rendering utilities used внутрішньо за допомогою PsDocument і XpsDocument.Ці компоненти також можуть бути використані безпосередньо. коли потрібен точний контроль над виходом.


RenderModelBuilder

RenderModelBuilder конструкція RenderDocument Поступово. begin_page() щоб почати сторінку, додати команди малюнка, потім подзвонить end_page().Подзвони. document() до відшукати завершену RenderDocument.

from aspose.page.render.model import RenderModelBuilder

builder = RenderModelBuilder()
builder.begin_page(595, 842)
builder.end_page()
doc = builder.document()

Доступні методи чертування: add_path(), add_text(), add_image(), clip(), save_state(), і restore_state().


PdfWriter (Підписник)

PdfWriter серіалізує a RenderDocument до PDF 1,4 байтів. Він вимагає PdfMetadata Наприклад, див. Вихід PDF для деталей.


RasterRenderer

RasterRenderer дає RenderDocument до а RasterSurface RGBA в пам’яті Пексельний буфер. RasterSurface передбачає: get_pixel(), set_pixel(), width, і height.

from aspose.page.render.model import RenderModelBuilder
from aspose.page.image.raster_renderer import RasterRenderer

builder = RenderModelBuilder()
builder.begin_page(400, 300)
builder.end_page()
doc = builder.document()

renderer = RasterRenderer()
surface = renderer.render(doc, page_index=0)
print(f"Pixels: {surface.width}x{surface.height}")

Поради та найкращі практики

  • Використання RenderModelBuilder коли потрібно побудувати документ з малюнків примітивів.
  • Використання PdfWriter з RenderDocument для створення персоналізованих файлів PDF без вихідного файлу.
  • RasterSurface Піксельний доступ доступний через: get_pixel() і set_pixel().

Реферат на API

Клас / методDescription
RenderModelBuilder.begin_page(width, height)Почнемо нову сторінку.
RenderModelBuilder.end_page()Завершити поточну сторінку
RenderModelBuilder.document()Відшукати заповнений RenderDocument
PdfWriter.write(document)Серіалізація RenderDocument до PDF байтів
RasterRenderer.render(document, page_index)Передати сторінку RasterSurface
RasterSurface.widthШирина поверхні в пікселях
RasterSurface.heightВисота поверхні в пікселях

See Also

 Українська