کار با افکت‌های سه‌بعدی و افکت‌های بصری — Aspose.Slides FOSS برای .NET

Aspose.Slides FOSS برای .NET دو سیستم اثر جداگانه را که بر روی هر شکل قابل دسترسی هستند، فراهم می‌کند:

  • EffectFormat (shape.EffectFormat): اثرات بصری ۲‑بعدی: سایه، تابش، لبه نرم، تاری، انعکاس
  • ThreeDFormat (shape.ThreeDFormat): ظاهر ۳‑بعدی: برجستگی، پروژکشن دوربین، سیستم نور، ماده، عمق برآمدگی

هر دو در طول دوره‌های ذخیره/بارگذاری باقی می‌مانند.


جلوه‌های بصری (EffectFormat)

سایهٔ بیرونی

using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Drawing;
using Aspose.Slides.Foss.Export;

using var prs = new Presentation();
var shape = prs.Slides[0].Shapes.AddAutoShape(ShapeType.Rectangle, 100, 100, 300, 120);
shape.AddTextFrame("Shadowed Text");

var ef = shape.EffectFormat;
ef.EnableOuterShadowEffect();
ef.OuterShadowEffect.BlurRadius = 10;      // softness in points
ef.OuterShadowEffect.Direction = 315;       // angle: 315 = upper-left cast
ef.OuterShadowEffect.Distance = 8;          // offset in points
ef.OuterShadowEffect.ShadowColor.Color = Color.FromArgb(128, 0, 0, 0);  // semi-transparent black

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

مقادیر عمومی Direction: 0 = راست، 45 = پایین‑راست، 90 = پایین، 270 = بالا، 315 = بالا‑چپ.

اثر نورانی

using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Drawing;
using Aspose.Slides.Foss.Export;

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

var ef = shape.EffectFormat;
ef.EnableGlowEffect();
ef.GlowEffect.Radius = 15;
ef.GlowEffect.Color.Color = Color.Gold;

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

لبه نرم (حاشیه پر)

using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;

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

var ef = shape.EffectFormat;
ef.EnableSoftEdgeEffect();
ef.SoftEdgeEffect.Radius = 12;   // feather radius in points

prs.Save("soft-edge.pptx", SaveFormat.Pptx);

محو

using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;

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

shape.EffectFormat.SetBlurEffect(8, true);

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

بررسی و حذف اثرات

using Aspose.Slides.Foss;

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

ef.EnableOuterShadowEffect();
ef.EnableGlowEffect();
Console.WriteLine($"Has effects: {!ef.IsNoEffects}");  // True

ef.DisableOuterShadowEffect();
ef.DisableGlowEffect();
Console.WriteLine($"Has effects: {!ef.IsNoEffects}");  // False

قالب‌بندی 3D (ThreeDFormat)

اثر برجسته

using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;

using var prs = new Presentation();
var shape = prs.Slides[0].Shapes.AddAutoShape(ShapeType.Rectangle, 150, 150, 250, 120);
shape.AddTextFrame("3D Button");

var tdf = shape.ThreeDFormat;
tdf.BevelTop.BevelType = BevelPresetType.Circle;
tdf.BevelTop.Width = 12;
tdf.BevelTop.Height = 6;

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

مقادیر BevelPresetType: Circle, RelaxedInset, CoolSlant, Divot, Riblet, HardEdge, Slope, Convex

پیش‌تنظیم دوربین

using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;

using var prs = new Presentation();
var shape = prs.Slides[0].Shapes.AddAutoShape(ShapeType.Rectangle, 150, 150, 250, 120);
var tdf = shape.ThreeDFormat;
tdf.BevelTop.BevelType = BevelPresetType.Circle;
tdf.BevelTop.Width = 10;
tdf.Camera.CameraType = CameraPresetType.PerspectiveAbove;
prs.Save("camera.pptx", SaveFormat.Pptx);

ست نور و ماده

using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;

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

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("3d-metal.pptx", SaveFormat.Pptx);

مقادیر MaterialPresetType: Standard, Warm, Cool, Plastic, Metal, Matte, WireFrame


ترکیب اثرات دو بعدی و سه بعدی

می‌توانید هم EffectFormat و هم ThreeDFormat را بر روی همان شکل اعمال کنید:

using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Drawing;
using Aspose.Slides.Foss.Export;

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

// Solid 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 = 12;
ef.OuterShadowEffect.Direction = 270;
ef.OuterShadowEffect.Distance = 6;
ef.OuterShadowEffect.ShadowColor.Color = Color.FromArgb(80, 0, 0, 0);

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

همچنین ببینید

  • [مرجع EffectFormat و ThreeDFormat]https://reference.aspose.org/slides/net/EffectFormat/
  • [مرجع کلاس Shape]https://reference.aspose.org/slides/net/Shape/
  • [راهنمای توسعه‌دهنده: ویژگی‌ها]/slides/net/developer-guide/features/
  • [شروع]/slides/net/getting-started/
 فارسی