Aspose.Slides FOSS for .NET lets you apply professional-quality visual effects to PowerPoint shapes entirely in C#, with no Microsoft Office and no API keys. This post demonstrates the fill system, 2D effects, and 3D formatting available in the library.


Užpildymo sistema

Kiekviena forma turi FillFormat kuris kontroliuoja, kaip jo vidus yra nudažytas. Penki užpildymo tipai apima visą PowerPoint dizaino paletės spektrą.

Vientisas užpildas

Paprastiausias užpildas, plokščia spalva su pasirinktu permatomumu:

using Aspose.Slides.Foss;

using var prs = new Presentation();
var shape = prs.Slides[0].Shapes.AddAutoShape(
    ShapeType.RoundCornerRectangle, 100, 100, 400, 150
);
shape.AddTextFrame("Solid Fill");

shape.FillFormat.FillType = FillType.Solid;
shape.FillFormat.SolidFillColor.Color = Color.FromArgb(255, 30, 80, 180);

prs.Save("solid.pptx", SaveFormat.Pptx);

Linijinis gradientinis užpildas

Gradientų sustojimai leidžia perėjimą nuo vienos spalvos prie kitos per figūrą:

using Aspose.Slides.Foss;

using var prs = new Presentation();
var shape = prs.Slides[0].Shapes.AddAutoShape(
    ShapeType.Rectangle, 100, 100, 400, 150
);

var ff = shape.FillFormat;
ff.FillType = FillType.Gradient;
var gf = ff.GradientFormat;
gf.GradientShape = GradientShape.Linear;
gf.LinearGradientAngle = 90;   // top-to-bottom

gf.GradientStops.Add(0.0f, Color.FromArgb(255, 30, 80, 180));   // top: blue
gf.GradientStops.Add(1.0f, Color.FromArgb(255, 0, 200, 160));   // bottom: teal

prs.Save("gradient.pptx", SaveFormat.Pptx);

2D Visual Effects

Išorinis kritimo šešėlis

Pridėkite pusiau permatomą kritimo šešėlį bet kuriai figūrai:

using Aspose.Slides.Foss;

using var prs = new Presentation();
var shape = prs.Slides[0].Shapes.AddAutoShape(
    ShapeType.RoundCornerRectangle, 100, 100, 350, 150
);
shape.AddTextFrame("Drop Shadow");

shape.FillFormat.FillType = FillType.Solid;
shape.FillFormat.SolidFillColor.Color = Color.White;

var ef = shape.EffectFormat;
ef.EnableOuterShadowEffect();
ef.OuterShadowEffect.BlurRadius = 12;
ef.OuterShadowEffect.Direction = 315;   // upper-left
ef.OuterShadowEffect.Distance = 8;
ef.OuterShadowEffect.ShadowColor.Color = Color.FromArgb(100, 0, 0, 0);

prs.Save("shadow.pptx", SaveFormat.Pptx);

Švytėjimo efektas

Spalvotas aureolė aplink figūros kraštą:

using Aspose.Slides.Foss;

using var prs = new Presentation();
var shape = prs.Slides[0].Shapes.AddAutoShape(
    ShapeType.Ellipse, 150, 100, 250, 250
);
shape.FillFormat.FillType = FillType.Solid;
shape.FillFormat.SolidFillColor.Color = Color.FromArgb(255, 20, 60, 140);

var ef = shape.EffectFormat;
ef.EnableGlowEffect();
ef.GlowEffect.Radius = 20;
ef.GlowEffect.Color.Color = Color.FromArgb(200, 0, 180, 255);

prs.Save("glow.pptx", SaveFormat.Pptx);

3D Formatting

Bevel ir medžiaga

Ši ThreeDFormat savybė suteikia bet kuriai plokščiai formai trimačią išvaizdą. Kombinuokite briauną su kameros išankstiniu nustatymu ir medžiaga, kad gautumėte turtingiausią rezultatą:

using Aspose.Slides.Foss;

using var prs = new Presentation();
var shape = prs.Slides[0].Shapes.AddAutoShape(
    ShapeType.Rectangle, 150, 150, 300, 130
);
shape.AddTextFrame("Metal Button");

// Blue solid fill
shape.FillFormat.FillType = FillType.Solid;
shape.FillFormat.SolidFillColor.Color = Color.FromArgb(255, 20, 70, 160);

// 3D bevel + camera + light + material
var tdf = shape.ThreeDFormat;
tdf.BevelTop.BevelType = BevelPresetType.Circle;
tdf.BevelTop.Width = 10;
tdf.BevelTop.Height = 5;
tdf.Camera.CameraType = CameraPresetType.PerspectiveAbove;
tdf.LightRig.LightType = LightRigPresetType.Balanced;
tdf.LightRig.Direction = LightingDirection.Top;
tdf.Material = MaterialPresetType.Metal;
tdf.Depth = 20;

prs.Save("metal-button.pptx", SaveFormat.Pptx);

Efektų kombinavimas tame pačiame objekte

Šešėlis ir 3D formatavimas gali egzistuoti kartu tame pačiame objekte, leidžiant sukurti išbaigtus “card” dizainus:

using Aspose.Slides.Foss;

using var prs = new Presentation();
var shape = prs.Slides[0].Shapes.AddAutoShape(
    ShapeType.RoundCornerRectangle, 120, 120, 360, 150
);
shape.AddTextFrame("Premium Card");

// Fill
shape.FillFormat.FillType = FillType.Solid;
shape.FillFormat.SolidFillColor.Color = Color.FromArgb(255, 30, 80, 180);

// 3D bevel
var tdf = shape.ThreeDFormat;
tdf.BevelTop.BevelType = BevelPresetType.Circle;
tdf.BevelTop.Width = 8;
tdf.Camera.CameraType = CameraPresetType.PerspectiveAbove;
tdf.Material = MaterialPresetType.Plastic;

// Drop shadow
var ef = shape.EffectFormat;
ef.EnableOuterShadowEffect();
ef.OuterShadowEffect.BlurRadius = 14;
ef.OuterShadowEffect.Direction = 270;
ef.OuterShadowEffect.Distance = 8;
ef.OuterShadowEffect.ShadowColor.Color = Color.FromArgb(70, 0, 0, 0);

prs.Save("premium-card.pptx", SaveFormat.Pptx);

Įdiegimas

dotnet add package Aspose.Slides.Foss

Nėra Office įdiegimo, nėra licencijos raktų, nėra tinklo užklausų; visas apdorojimas vyksta vietoje.


Susiję ištekliai