Shape — Aspose.Cells FOSS for Python API Reference

aspose-cells-foss obsługuje dodawanie kształtów geometrycznych i pól tekstowych do arkuszy poprzez ShapeCollection (ws.shapes). Każdy kształt jest reprezentowany przez Shape obiekt z konfigurowalnymi właściwościami wypełnienia, linii i tekstu.

ImageRenderOptions: aspose.cells_foss

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

MsoDrawingType

MsoDrawingType jest IntEnum identyfikującym typ kształtu geometrycznego.

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 jest IntEnum identyfikującym typ wypełnienia zastosowanego do kształtu.

ImageRenderOptionsImageRenderOptions
NONE0
SOLID1
GRADIENT2
PATTERN3
AUTOMATIC4

MsoLineDashStyle

MsoLineDashStyle jest IntEnum dla wzoru kreskowania linii obramowania/konturu.

ImageRenderOptionsImageRenderOptions
SOLID0
DASH1
DOT2
DASH_DOT3
DASH_DOT_DOT4
LONG_DASH5
LONG_DASH_DOT6

TextAlignmentType

TextAlignmentType jest IntEnum dla poziomego wyrównania tekstu wewnątrz kształtu.

ImageRenderOptionsImageRenderOptions
LEFT0
CENTER1
RIGHT2
JUSTIFY3
DISTRIBUTED4

TextAnchorType

TextAnchorType jest IntEnum dla pionowego kotwiczenia tekstu wewnątrz kształtu.

ImageRenderOptionsImageRenderOptions
TOP0
MIDDLE1
BOTTOM2
JUSTIFIED3

MsoFillFormat

Kontroluje wygląd wypełnienia kształtu. Dostępny przez shape.fill.

ImageRenderOptions

ImageRenderOptionsImageRenderOptionsImageRenderOptions
fill_typeFillTypeAktywny typ wypełnienia.
fore_colorstrKolor wypełnienia pierwszoplanowego (głównego) w formacie szesnastkowym RRGGBB.
transparencyfloatKrycie wypełnienia jako wartość od 0.0 (całkowicie nieprzezroczyste) do 1.0 (całkowicie przezroczyste).

ImageRenderOptions

kopiuj

fill.copy() -> MsoFillFormat

Zwraca głęboką kopię tych ustawień wypełnienia.


MsoLineFormat

Kontroluje wygląd konturu/brzegu kształtu. Dostępny przez shape.line.

ImageRenderOptions

ImageRenderOptionsImageRenderOptionsImageRenderOptions
is_visibleboolTrue do rysowania konturu kształtu.
colorstrKolor konturu w formacie szesnastkowym RRGGBB.
weightintGrubość konturu (grubość) w punktach.
dash_styleMsoLineDashStyleWzorzec kreski dla konturu.
transparencyfloatKrycie konturu od 0.0 (nieprzezroczysty) do 1.0 (przezroczysty).

ImageRenderOptions

kopiuj

line.copy() -> MsoLineFormat

Zwraca głęboką kopię tych ustawień linii.


ShapeFont

Kontroluje czcionkę tekstu wewnątrz kształtu. Dostępne przez shape.font.

ImageRenderOptions

ImageRenderOptionsImageRenderOptionsImageRenderOptions
namestrNazwa rodziny czcionki (np., "Calibri").
sizefloatRozmiar czcionki w punktach.
boldboolTrue dla pogrubionej wagi.
italicboolTrue dla stylu kursywy.
underlineboolTrue dla pojedynczego podkreślenia.
colorstrKolor czcionki w formacie szesnastkowym RRGGBB.

ImageRenderOptions

kopiuj

font.copy() -> ShapeFont

Zwraca głęboką kopię tych ustawień czcionki.


ImageRenderOptions

Shape obiekty nie są tworzone bezpośrednio. Użyj ws.shapes.add(...) lub ws.shapes.add_text_box(...).

ImageRenderOptions

ImageRenderOptionsImageRenderOptionsImageRenderOptionsImageRenderOptions
namestrOdczyt/ZapisNazwa kształtu (musi być unikalna w obrębie arkusza).
drawing_typeMsoDrawingTypeImageRenderOptionsTyp geometryczny tego kształtu.
upper_left_rowintOdczyt/Zapis0-based row index of the top-left anchor cell.
upper_left_columnintOdczyt/Zapis0-based column index of the top-left anchor cell.
lower_right_rowintOdczyt/Zapis0-based row index of the bottom-right anchor cell.
lower_right_columnintOdczyt/Zapis0-based column index of the bottom-right anchor cell.
upper_left_row_offsetintOdczyt/ZapisPrzesunięcie w pikselach od górnej krawędzi komórki w lewym górnym rogu.
upper_left_column_offsetintOdczyt/ZapisPrzesunięcie w pikselach od lewej krawędzi komórki w lewym górnym rogu.
lower_right_row_offsetintOdczyt/ZapisPrzesunięcie w pikselach od górnej krawędzi komórki w prawym dolnym rogu.
lower_right_column_offsetintOdczyt/ZapisPrzesunięcie w pikselach od lewej krawędzi komórki w prawym dolnym rogu.
fillMsoFillFormatImageRenderOptionsUstawienia wypełnienia (tła).
lineMsoLineFormatImageRenderOptionsUstawienia konturu/obramowania.
textstrOdczyt/ZapisZawartość tekstowa wyświetlana wewnątrz kształtu.
fontShapeFontImageRenderOptionsUstawienia czcionki dla tekstu w kształcie.
text_horizontal_alignmentTextAlignmentTypeOdczyt/ZapisPoziome wyrównanie tekstu wewnątrz kształtu.
text_vertical_alignmentTextAnchorTypeOdczyt/ZapisPionowe zakotwiczenie tekstu wewnątrz kształtu.
is_text_wrappedboolOdczyt/ZapisTrue do zawijania tekstu przy granicy kształtu.
is_lockedboolOdczyt/ZapisTrue do zablokowania kształtu, gdy ochrona arkusza jest aktywna.
is_hiddenboolOdczyt/ZapisTrue do ukrycia kształtu.
hyperlink`strNone`Odczyt/Zapis

ImageRenderOptions

kopiuj

shape.copy() -> Shape

Zwraca głęboką kopię tego kształtu ze wszystkimi zachowanymi formatowaniami.


ShapeCollection

ShapeCollection jest dostępny jako ws.shapes. Zawiera wszystkie kształty na arkuszu.

ImageRenderOptions

dodaj

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

Dodaje kształt określonego typu. Wszystkie argumenty pozycji są indeksami wiersza/kolumny zaczynającymi się od 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

Skrót do add(MsoDrawingType.TEXT_BOX, ...).

Właściwości i iteracja

ImageRenderOptionsImageRenderOptions
countLiczba kształtów w kolekcji (tylko do odczytu).
__len__()ImageRenderOptions count.
__iter__()Iteruje po wszystkich Shape obiektach.
__getitem__(index)Zwraca Shape z zerowym indeksem index.

ImageRenderOptions

Dodaj prostokąt z wypełnieniem jednolitym

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")

Dodaj pole tekstowe

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")

Zobacz także

 Polski