Agregar formas de rectángulo a PDF en Python

Agregar objeto Rectangle

Aspose.PDF for Python via .NET le permite agregar Rectángulo formas a páginas PDF a través del Graph clase. Puede dibujar rectángulos contorneados y aplicar rellenos sólidos, degradados o transparentes.

Siga los pasos a continuación:

  1. Crea un nuevo PDF Documento.
  2. Agregar Página a la colección de páginas del archivo PDF.
  3. Agregar Fragmento de texto a la colección de párrafos de la instancia de página.
  4. Crear Graph instancia.
  5. Establecer borde para Objeto de gráfico.
  6. Agregar Rectángulo objeto a la colección de shapes del objeto Graph.
  7. Agregar objeto gráfico a la colección de párrafos de la instancia de página.
  8. Agregar Fragmento de texto a la colección de párrafos de la instancia de página.
  9. Y guarde su archivo PDF
import aspose.pdf as ap
import aspose.pdf.drawing as drawing

def add_rectangle(outfile: str):
    document = ap.Document()
    page = document.pages.add()
    text_fragment = ap.text.TextFragment("Rectangle")
    page.paragraphs.add(text_fragment)

    graph = drawing.Graph(400, 300)
    page.paragraphs.add(graph)
    graph.border = ap.BorderInfo(ap.BorderSide.ALL, ap.Color.red)

    rect = drawing.Rectangle(20, 20, 350, 250)
    graph.shapes.add(rect)
    page.paragraphs.add(text_fragment)

    document.save(outfile)

Crear rectángulo

Crear objeto de rectángulo relleno

Aspose.PDF for Python via .NET también ofrece la funcionalidad de rellenar el objeto de rectángulo con un color determinado.

El siguiente fragmento de código muestra cómo agregar un Rectángulo objeto que está relleno de color.

import aspose.pdf as ap
import aspose.pdf.drawing as drawing

def create_rectangle_filled(outfile: str):
    document = ap.Document()
    page = document.pages.add()
    graph = drawing.Graph(100, 400)
    page.paragraphs.add(graph)

    rect = drawing.Rectangle(100, 100, 200, 120)
    rect.graph_info.fill_color = ap.Color.red
    graph.shapes.add(rect)

    document.save(outfile)

Resultado del rectángulo rellenado con un color sólido:

Rectángulo Relleno

Agregar dibujo con relleno degradado

Aspose.PDF for Python via .NET admite la función de agregar objetos de gráfico a documentos PDF y, a veces, es necesario rellenar los objetos de gráfico con Color degradado.

El siguiente fragmento de código muestra cómo agregar un Rectángulo objeto que está rellenado con Color degradado.

import aspose.pdf as ap
import aspose.pdf.drawing as drawing

def add_drawing_with_gradient_fill(outfile: str):
    document = ap.Document()
    page = document.pages.add()
    graph = drawing.Graph(400, 400)
    page.paragraphs.add(graph)

    rect = drawing.Rectangle(0, 0, 300, 300)
    gradient_color = ap.Color()
    gradient_settings = drawing.GradientAxialShading(ap.Color.red, ap.Color.blue)
    gradient_settings.start = ap.Point(0, 0)
    gradient_settings.end = ap.Point(350, 350)
    gradient_color.pattern_color_space = gradient_settings
    rect.graph_info.fill_color = gradient_color
    graph.shapes.add(rect)

    document.save(outfile)

Rectángulo de degradado

Crear rectángulo con canal de color alfa

Aspose.PDF for Python via .NET también admite la transparencia a través de un canal de color alfa.

El siguiente fragmento de código muestra cómo agregar un Rectángulo objeto con valores alfa.

import aspose.pdf as ap
import aspose.pdf.drawing as drawing

def create_rectangle_with_alpha_color_channel(outfile: str):
    document = ap.Document()
    page = document.pages.add()
    graph = drawing.Graph(100, 400)
    page.paragraphs.add(graph)

    rect = drawing.Rectangle(100, 100, 200, 120)
    rect.graph_info.fill_color = ap.Color.from_argb(128, 244, 180, 0)
    graph.shapes.add(rect)

    rect1 = drawing.Rectangle(200, 150, 200, 100)
    rect1.graph_info.fill_color = ap.Color.from_argb(160, 120, 0, 120)
    graph.shapes.add(rect1)

    document.save(outfile)

Color del canal alfa del rectángulo

Controlar Z-Order de las formas

Aspose.PDF for .NET admite la función de agregar objetos gráficos (por ejemplo gráfico, línea, rectángulo, etc.) a documentos PDF. Al agregar más de una instancia del mismo objeto dentro del archivo PDF, podemos controlar su renderizado especificando el Z-Order. Z-Order también se utiliza cuando necesitamos renderizar objetos uno encima del otro.

El siguiente fragmento de código muestra los pasos para renderizar Rectángulo objetos uno encima del otro.

import aspose.pdf as ap
import aspose.pdf.drawing as drawing


def _add_rectangle_to_page(
    page: ap.Page,
    x: float,
    y: float,
    width: float,
    height: float,
    color: ap.Color,
    zindex: int,
):
    graph = drawing.Graph(width, height)
    graph.is_change_position = False
    graph.left = x
    graph.top = y
    rect = drawing.Rectangle(0, 0, width, height)
    rect.graph_info.fill_color = color
    rect.graph_info.color = color
    graph.shapes.add(rect)
    graph.z_index = zindex
    page.paragraphs.add(graph)


def control_z_order_of_rectangle(outfile: str):
    document = ap.Document()
    page = document.pages.add()
    page.set_page_size(375, 300)
    page.page_info.margin.left = 0
    page.page_info.margin.top = 0

    _add_rectangle_to_page(page, 50, 40, 60, 40, ap.Color.red, 2)
    _add_rectangle_to_page(page, 20, 20, 30, 30, ap.Color.blue, 1)
    _add_rectangle_to_page(page, 40, 40, 60, 30, ap.Color.green, 0)

    document.save(outfile)

Control del orden Z

Temas relacionados con gráficos