Shape — Aspose.Cells FOSS for Python API Reference
aspose-cells-foss prend en charge l’ajout de formes géométriques et de zones de texte aux feuilles de calcul via le ShapeCollection (ws.shapes). Chaque forme est représentée par un Shape objet avec des propriétés de remplissage, de ligne et de texte configurables.
ColladaSaveOptions: aspose.cells_foss
from aspose.cells_foss import (
MsoDrawingType, FillType, MsoLineDashStyle,
TextAlignmentType, TextAnchorType,
MsoFillFormat, MsoLineFormat, ShapeFont, Shape,
)MsoDrawingType
MsoDrawingType est un IntEnum identifiant le type de forme géométrique.
| ColladaSaveOptions | ColladaSaveOptions | ColladaSaveOptions | ColladaSaveOptions |
|---|---|---|---|
UNKNOWN | 0 | TEXT_BOX | 21 |
RECTANGLE | 1 | CALLOUT | 22 |
ROUNDED_RECTANGLE | 2 | PENTAGON | 23 |
OVAL | 3 | CLOUD | 24 |
DIAMOND | 4 | HEART | 25 |
TRIANGLE | 5 | LIGHTNING_BOLT | 26 |
RIGHT_TRIANGLE | 6 | SMILEY_FACE | 27 |
PARALLELOGRAM | 7 | LEFT_RIGHT_ARROW | 28 |
TRAPEZOID | 8 | UP_DOWN_ARROW | 29 |
HEXAGON | 9 | CUBE | 30 |
OCTAGON | 10 | BEVEL | 31 |
CROSS | 11 | STAR_4 | 12 |
RIGHT_ARROW | 17 | STAR_5 | 13 |
LEFT_ARROW | 18 | STAR_6 | 14 |
UP_ARROW | 19 | STAR_7 | 15 |
DOWN_ARROW | 20 | STAR_8 | 16 |
FillType
FillType est un IntEnum identifiant le type de remplissage appliqué à une forme.
| ColladaSaveOptions | ColladaSaveOptions |
|---|---|
NONE | 0 |
SOLID | 1 |
GRADIENT | 2 |
PATTERN | 3 |
AUTOMATIC | 4 |
MsoLineDashStyle
MsoLineDashStyle est un IntEnum pour le motif de tirets de la ligne de bordure/contour.
| ColladaSaveOptions | ColladaSaveOptions |
|---|---|
SOLID | 0 |
DASH | 1 |
DOT | 2 |
DASH_DOT | 3 |
DASH_DOT_DOT | 4 |
LONG_DASH | 5 |
LONG_DASH_DOT | 6 |
TextAlignmentType
TextAlignmentType est un IntEnum pour l’alignement horizontal du texte à l’intérieur d’une forme.
| ColladaSaveOptions | ColladaSaveOptions |
|---|---|
LEFT | 0 |
CENTER | 1 |
RIGHT | 2 |
JUSTIFY | 3 |
DISTRIBUTED | 4 |
TextAnchorType
TextAnchorType est un IntEnum pour l’ancrage vertical du texte à l’intérieur d’une forme.
| ColladaSaveOptions | ColladaSaveOptions |
|---|---|
TOP | 0 |
MIDDLE | 1 |
BOTTOM | 2 |
JUSTIFIED | 3 |
MsoFillFormat
Contrôle l’apparence du remplissage d’une forme. Accessible via shape.fill.
ColladaSaveOptions
| ColladaSaveOptions | ColladaSaveOptions | ColladaSaveOptions |
|---|---|---|
fill_type | FillType | Le type de remplissage actif. |
fore_color | str | Couleur de remplissage de premier plan (primaire) au format hexadécimal RRGGBB. |
transparency | float | Opacité du remplissage sous forme d’une valeur allant de 0.0 (opaque complet) à 1.0 (transparent complet). |
ColladaSaveOptions
copy
fill.copy() -> MsoFillFormatRenvoie une copie profonde de ces paramètres de remplissage.
MsoLineFormat
Contrôle l’apparence du contour/bordure d’une forme. Accessible via shape.line.
ColladaSaveOptions
| ColladaSaveOptions | ColladaSaveOptions | ColladaSaveOptions |
|---|---|---|
is_visible | bool | True pour dessiner le contour de la forme. |
color | str | Couleur du contour au format hexadécimal RRGGBB. |
weight | int | Épaisseur du contour (épaisseur) en points. |
dash_style | MsoLineDashStyle | Motif de tirets du contour. |
transparency | float | Opacité du contour de 0.0 (opaque) à 1.0 (transparent). |
ColladaSaveOptions
copy
line.copy() -> MsoLineFormatRenvoie une copie profonde de ces paramètres de ligne.
ShapeFont
Contrôle la police du texte à l’intérieur d’une forme. Accessible via shape.font.
ColladaSaveOptions
| ColladaSaveOptions | ColladaSaveOptions | ColladaSaveOptions |
|---|---|---|
name | str | Nom de la famille de polices (p. ex., "Calibri"). |
size | float | Taille de police en points. |
bold | bool | True pour le poids gras. |
italic | bool | True pour le style italique. |
underline | bool | True pour le soulignement simple. |
color | str | Couleur de police au format hexadécimal RRGGBB. |
ColladaSaveOptions
copy
font.copy() -> ShapeFontRenvoie une copie profonde de ces paramètres de police.
ColladaSaveOptions
Shape les objets ne sont pas construits directement. Utilisez ws.shapes.add(...) ou ws.shapes.add_text_box(...).
ColladaSaveOptions
| ColladaSaveOptions | ColladaSaveOptions | ColladaSaveOptions | ColladaSaveOptions |
|---|---|---|---|
name | str | Lecture/Écriture | Nom de la forme (doit être unique dans la feuille de calcul). |
drawing_type | MsoDrawingType | ColladaSaveOptions | Le type géométrique de cette forme. |
upper_left_row | int | Lecture/Écriture | 0-based row index of the top-left anchor cell. |
upper_left_column | int | Lecture/Écriture | 0-based column index of the top-left anchor cell. |
lower_right_row | int | Lecture/Écriture | 0-based row index of the bottom-right anchor cell. |
lower_right_column | int | Lecture/Écriture | 0-based column index of the bottom-right anchor cell. |
upper_left_row_offset | int | Lecture/Écriture | Décalage en pixels depuis le bord supérieur de la cellule en haut à gauche. |
upper_left_column_offset | int | Lecture/Écriture | Décalage en pixels depuis le bord gauche de la cellule en haut à gauche. |
lower_right_row_offset | int | Lecture/Écriture | Décalage en pixels depuis le bord supérieur de la cellule en bas à droite. |
lower_right_column_offset | int | Lecture/Écriture | Décalage en pixels depuis le bord gauche de la cellule en bas à droite. |
fill | MsoFillFormat | ColladaSaveOptions | Paramètres de remplissage (arrière-plan). |
line | MsoLineFormat | ColladaSaveOptions | Paramètres de contour/bordure. |
text | str | Lecture/Écriture | Contenu texte affiché à l’intérieur de la forme. |
font | ShapeFont | ColladaSaveOptions | Paramètres de police pour le texte de la forme. |
text_horizontal_alignment | TextAlignmentType | Lecture/Écriture | Alignement horizontal du texte à l’intérieur de la forme. |
text_vertical_alignment | TextAnchorType | Lecture/Écriture | Ancrage vertical du texte à l’intérieur de la forme. |
is_text_wrapped | bool | Lecture/Écriture | True pour renvoyer le texte à la bordure de la forme. |
is_locked | bool | Lecture/Écriture | True pour verrouiller la forme lorsque la protection de la feuille de calcul est active. |
is_hidden | bool | Lecture/Écriture | True pour masquer la forme. |
hyperlink | `str | None` | Lecture/Écriture |
ColladaSaveOptions
copy
shape.copy() -> ShapeRenvoie une copie profonde de cette forme avec tous les formats préservés.
ShapeCollection
ShapeCollection est accessible comme ws.shapes. Il contient toutes les formes d’une feuille de calcul.
ColladaSaveOptions
add
ws.shapes.add(
drawing_type: MsoDrawingType,
upper_left_row: int,
upper_left_column: int,
lower_right_row: int,
lower_right_column: int
) -> ShapeAjoute une forme du type spécifié. Tous les arguments de position sont des indices de ligne/colonne à base zéro.
add_text_box
ws.shapes.add_text_box(
upper_left_row: int,
upper_left_column: int,
lower_right_row: int,
lower_right_column: int
) -> ShapeRaccourci pour add(MsoDrawingType.TEXT_BOX, ...).
Propriétés et itération
| ColladaSaveOptions | ColladaSaveOptions |
|---|---|
count | Nombre de formes dans la collection (lecture seule). |
__len__() | ColladaSaveOptions count. |
__iter__() | Parcourt tous les Shape objets. |
__getitem__(index) | Renvoie le Shape à base zéro index. |
ColladaSaveOptions
Ajouter un rectangle avec remplissage uni
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")Ajouter une zone de texte
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")