使用 Python 透過 Java 在簡報中套用形狀效果
Contents
[
Hide
]
介紹
雖然 PowerPoint 中的效果可用於使形狀突出,但它們不同於 fills 或輪廓。使用 PowerPoint 效果,您可以在形狀上創建逼真的反射、擴散形狀的發光等。

-
PowerPoint 提供六種可套用於形狀的效果。您可以對形狀套用一個或多個效果。
-
某些效果組合比其他組合更好看。為此,PowerPoint 在 Preset 下提供選項。Preset 選項本質上是兩個或多個已知好看的效果組合。這樣,透過選取預設,您就不必浪費時間測試或組合不同的效果以找到理想的組合。
Aspose.Slides 在 EffectFormat 類別中提供屬性與方法,讓您能在 PowerPoint 簡報的形狀上套用相同的效果。
套用陰影效果
以下 Python 程式碼示範如何將外部陰影效果(EffectFormat.getOuterShadowEffect)套用於矩形:
import jpype
import asposeslides
if not jpype.isJVMStarted():
jpype.startJVM()
from asposeslides.api import Presentation, SaveFormat, ShapeType
from java.awt import Color
presentation = Presentation()
try:
shape = presentation.getSlides().get_Item(0).getShapes().addAutoShape(ShapeType.RoundCornerRectangle, 20, 20, 200, 150)
shape.getEffectFormat().enableOuterShadowEffect()
shape.getEffectFormat().getOuterShadowEffect().getShadowColor().setColor(Color.DARK_GRAY)
shape.getEffectFormat().getOuterShadowEffect().setDistance(10)
shape.getEffectFormat().getOuterShadowEffect().setDirection(45)
presentation.save("output.pptx", SaveFormat.Pptx)
finally:
presentation.dispose()
套用反射效果
以下 Python 程式碼示範如何將反射效果套用於形狀:
import jpype
import asposeslides
if not jpype.isJVMStarted():
jpype.startJVM()
from asposeslides.api import Presentation, RectangleAlignment, SaveFormat, ShapeType
presentation = Presentation()
try:
shape = presentation.getSlides().get_Item(0).getShapes().addAutoShape(ShapeType.RoundCornerRectangle, 20, 20, 200, 150)
shape.getEffectFormat().enableReflectionEffect()
shape.getEffectFormat().getReflectionEffect().setRectangleAlign(RectangleAlignment.Bottom)
shape.getEffectFormat().getReflectionEffect().setDirection(90)
shape.getEffectFormat().getReflectionEffect().setDistance(55)
shape.getEffectFormat().getReflectionEffect().setBlurRadius(4)
presentation.save("reflection.pptx", SaveFormat.Pptx)
finally:
presentation.dispose()
套用發光效果
以下 Python 程式碼示範如何將發光效果套用於形狀:
import jpype
import asposeslides
if not jpype.isJVMStarted():
jpype.startJVM()
from asposeslides.api import Presentation, SaveFormat, ShapeType
from java.awt import Color
presentation = Presentation()
try:
shape = presentation.getSlides().get_Item(0).getShapes().addAutoShape(ShapeType.RoundCornerRectangle, 20, 20, 200, 150)
shape.getEffectFormat().enableGlowEffect()
shape.getEffectFormat().getGlowEffect().getColor().setColor(Color.MAGENTA)
shape.getEffectFormat().getGlowEffect().setRadius(15)
presentation.save("glow.pptx", SaveFormat.Pptx)
finally:
presentation.dispose()
套用柔和邊緣效果
以下 Python 程式碼示範如何將柔和邊緣效果套用於形狀:
import jpype
import asposeslides
if not jpype.isJVMStarted():
jpype.startJVM()
from asposeslides.api import Presentation, SaveFormat, ShapeType
presentation = Presentation()
try:
shape = presentation.getSlides().get_Item(0).getShapes().addAutoShape(ShapeType.RoundCornerRectangle, 20, 20, 200, 150)
shape.getEffectFormat().enableSoftEdgeEffect()
shape.getEffectFormat().getSoftEdgeEffect().setRadius(15)
presentation.save("softEdges.pptx", SaveFormat.Pptx)
finally:
presentation.dispose()
常見問題
我可以對同一個形狀套用多個效果嗎?
是的,您可以在單一形狀上結合不同的效果,例如陰影、反射與發光,以產生更具動態感的外觀。
我可以對哪些形狀套用效果?
您可以對各種形狀套用效果,包括自動圖形、圖表、表格、圖片、SmartArt 物件、OLE 物件等。
我可以對群組形狀套用效果嗎?
是的,您可以對群組形狀套用效果。該效果將套用於整個群組。