Shape — Aspose.Cells FOSS for Python API Reference

aspose-cells-foss suporta a adição de formas geométricas e caixas de texto às planilhas através do ShapeCollection (ws.shapes). Cada forma é representada por um Shape objeto com propriedades configuráveis de preenchimento, linha e texto.

ImageRenderOptions: aspose.cells_foss

from aspose.cells_foss import (
    MsoDrawingType, FillType, MsoLineDashStyle,
    TextAlignmentType, TextAnchorType,
    MsoFillFormat, MsoLineFormat, ShapeFont, Shape,
)

MsoDrawingType

MsoDrawingType é um IntEnum identificando o tipo de forma geométrica.

ImageRenderOptionsImageRenderOptionsImageRenderOptionsImageRenderOptions
UNKNOWN0TEXT_BOX21
RECTANGLE1CALLOUT22
ROUNDED_RECTANGLE2PENTAGON23
OVAL3CLOUD24
DIAMOND4HEART25
TRIANGLE5LIGHTNING_BOLT26
RIGHT_TRIANGLE6SMILEY_FACE27
PARALLELOGRAM7LEFT_RIGHT_ARROW28
TRAPEZOID8UP_DOWN_ARROW29
HEXAGON9CUBE30
OCTAGON10BEVEL31
CROSS11STAR_412
RIGHT_ARROW17STAR_513
LEFT_ARROW18STAR_614
UP_ARROW19STAR_715
DOWN_ARROW20STAR_816

FillType

FillType é um IntEnum identificando o tipo de preenchimento aplicado a uma forma.

ImageRenderOptionsImageRenderOptions
NONE0
SOLID1
GRADIENT2
PATTERN3
AUTOMATIC4

MsoLineDashStyle

MsoLineDashStyle é um IntEnum para o padrão de traços da linha de borda/contorno.

ImageRenderOptionsImageRenderOptions
SOLID0
DASH1
DOT2
DASH_DOT3
DASH_DOT_DOT4
LONG_DASH5
LONG_DASH_DOT6

TextAlignmentType

TextAlignmentType é um IntEnum para o alinhamento horizontal de texto dentro de uma forma.

ImageRenderOptionsImageRenderOptions
LEFT0
CENTER1
RIGHT2
JUSTIFY3
DISTRIBUTED4

TextAnchorType

TextAnchorType é um IntEnum para o ancoramento vertical de texto dentro de uma forma.

ImageRenderOptionsImageRenderOptions
TOP0
MIDDLE1
BOTTOM2
JUSTIFIED3

MsoFillFormat

Controla a aparência de preenchimento de uma forma. Acessado via shape.fill.

ImageRenderOptions

ImageRenderOptionsImageRenderOptionsImageRenderOptions
fill_typeFillTypeO tipo de preenchimento ativo.
fore_colorstrCor de preenchimento de primeiro plano (primária) como hex RRGGBB.
transparencyfloatOpacidade de preenchimento como um valor de 0.0 (totalmente opaco) a 1.0 (totalmente transparente).

ImageRenderOptions

cópia

fill.copy() -> MsoFillFormat

Retorna uma cópia profunda dessas configurações de preenchimento.


MsoLineFormat

Controla a aparência do contorno/borda de uma forma. Acessado via shape.line.

ImageRenderOptions

ImageRenderOptionsImageRenderOptionsImageRenderOptions
is_visibleboolTrue para desenhar o contorno da forma.
colorstrCor do contorno como hex RRGGBB.
weightintEspessura do contorno (grossura) em pontos.
dash_styleMsoLineDashStylePadrão de traço para o contorno.
transparencyfloatOpacidade do contorno de 0.0 (opaco) a 1.0 (transparente).

ImageRenderOptions

cópia

line.copy() -> MsoLineFormat

Retorna uma cópia profunda dessas configurações de linha.


ShapeFont

Controla a fonte do texto dentro de uma forma. Acessado via shape.font.

ImageRenderOptions

ImageRenderOptionsImageRenderOptionsImageRenderOptions
namestrNome da família da fonte (ex., "Calibri").
sizefloatTamanho da fonte em pontos.
boldboolTrue para peso negrito.
italicboolTrue para estilo itálico.
underlineboolTrue para sublinhado simples.
colorstrCor da fonte como hexadecimal RRGGBB.

ImageRenderOptions

cópia

font.copy() -> ShapeFont

Retorna uma cópia profunda dessas configurações de fonte.


ImageRenderOptions

Shape os objetos não são construídos diretamente. Use ws.shapes.add(...) ou ws.shapes.add_text_box(...).

ImageRenderOptions

ImageRenderOptionsImageRenderOptionsImageRenderOptionsImageRenderOptions
namestrLeitura/GravaçãoNome da forma (deve ser exclusivo dentro da planilha).
drawing_typeMsoDrawingTypeImageRenderOptionsO tipo geométrico desta forma.
upper_left_rowintLeitura/Gravação0-based row index of the top-left anchor cell.
upper_left_columnintLeitura/Gravação0-based column index of the top-left anchor cell.
lower_right_rowintLeitura/Gravação0-based row index of the bottom-right anchor cell.
lower_right_columnintLeitura/Gravação0-based column index of the bottom-right anchor cell.
upper_left_row_offsetintLeitura/GravaçãoDeslocamento de pixel a partir da borda superior da célula superior esquerda.
upper_left_column_offsetintLeitura/GravaçãoDeslocamento de pixel a partir da borda esquerda da célula superior esquerda.
lower_right_row_offsetintLeitura/GravaçãoDeslocamento de pixel a partir da borda superior da célula inferior direita.
lower_right_column_offsetintLeitura/GravaçãoDeslocamento de pixel a partir da borda esquerda da célula inferior direita.
fillMsoFillFormatImageRenderOptionsConfigurações de preenchimento (fundo).
lineMsoLineFormatImageRenderOptionsConfigurações de contorno/borda.
textstrLeitura/GravaçãoConteúdo de texto exibido dentro da forma.
fontShapeFontImageRenderOptionsConfigurações de fonte para o texto da forma.
text_horizontal_alignmentTextAlignmentTypeLeitura/GravaçãoAlinhamento horizontal do texto dentro da forma.
text_vertical_alignmentTextAnchorTypeLeitura/GravaçãoAncoragem vertical do texto dentro da forma.
is_text_wrappedboolLeitura/GravaçãoTrue para ajustar o texto ao limite da forma.
is_lockedboolLeitura/GravaçãoTrue para bloquear a forma quando a proteção da planilha está ativa.
is_hiddenboolLeitura/GravaçãoTrue para ocultar a forma.
hyperlink`strNone`Leitura/Gravação

ImageRenderOptions

cópia

shape.copy() -> Shape

Retorna uma cópia profunda desta forma com toda a formatação preservada.


ShapeCollection

ShapeCollection é acessado como ws.shapes. Ele contém todas as formas em uma planilha.

ImageRenderOptions

adicionar

ws.shapes.add(
    drawing_type: MsoDrawingType,
    upper_left_row: int,
    upper_left_column: int,
    lower_right_row: int,
    lower_right_column: int
) -> Shape

Adiciona uma forma do tipo especificado. Todos os argumentos de posição são índices de linha/coluna baseados em 0.

add_text_box

ws.shapes.add_text_box(
    upper_left_row: int,
    upper_left_column: int,
    lower_right_row: int,
    lower_right_column: int
) -> Shape

Atalho para add(MsoDrawingType.TEXT_BOX, ...).

Propriedades e Iteração

ImageRenderOptionsImageRenderOptions
countNúmero de formas na coleção (somente leitura).
__len__()ImageRenderOptions count.
__iter__()Itera sobre todos Shape objetos.
__getitem__(index)Retorna o Shape em base zero index.

ImageRenderOptions

Adicionar um Retângulo com Preenchimento Sólido

from aspose.cells_foss import Workbook, MsoDrawingType, FillType, MsoLineDashStyle, TextAlignmentType

wb = Workbook()
ws = wb.worksheets[0]

# Add a blue rectangle spanning rows 1-5, columns 1-4 (0-based)
rect = ws.shapes.add(MsoDrawingType.RECTANGLE, 1, 1, 5, 4)
rect.name = "BlueBox"

rect.fill.fill_type = FillType.SOLID
rect.fill.fore_color = "4472C4"      # blue
rect.fill.transparency = 0.0

rect.line.is_visible = True
rect.line.color = "1F3864"           # dark blue
rect.line.weight = 2
rect.line.dash_style = MsoLineDashStyle.SOLID

rect.text = "Sales Summary"
rect.font.bold = True
rect.font.color = "FFFFFF"           # white text
rect.font.size = 12
rect.text_horizontal_alignment = TextAlignmentType.CENTER

wb.save("shapes.xlsx")

Adicionar uma Caixa de Texto

from aspose.cells_foss import Workbook

wb = Workbook()
ws = wb.worksheets[0]

tb = ws.shapes.add_text_box(2, 0, 5, 3)
tb.name = "NoteBox"
tb.text = "Review this section before publishing."
tb.font.italic = True
tb.font.color = "595959"
tb.is_text_wrapped = True
tb.line.is_visible = True
tb.line.color = "BFBFBF"

wb.save("textbox.xlsx")

Veja Também

 Português