Tworzenie i stosowanie efektów WordArt w .NET

Przegląd

Efekty WordArt pozwalają dodawać atrakcyjny wizualnie, stylizowany tekst do prezentacji PowerPoint. Dzięki Aspose.Slides for .NET programiści mogą programowo tworzyć, dostosowywać i zarządzać WordArt tak, jak w Microsoft PowerPoint — bez konieczności instalowania Office. Ten artykuł przedstawia przegląd pracy z WordArt w .NET, w tym zastosowanie transformacji tekstu, stylów wypełnienia, konturów, cieni i innych opcji formatowania, aby treść prezentacji była bardziej ekspresyjna i angażująca. WordArt umożliwia traktowanie tekstu jako obiektu graficznego. Składa się z efektów lub specjalnych modyfikacji nakładanych na tekst, aby uczynić go bardziej atrakcyjnym lub zauważalnym.

Utwórz prosty szablon WordArt i zastosuj go do tekstu

W tej sekcji przyjrzymy się, jak utworzyć prosty szablon WordArt i zastosować go do tekstu przy użyciu Aspose.Slides for .NET. WordArt oferuje prosty sposób na ulepszenie wyglądu tekstu dzięki efektom wizualnym i stylom. Poznając podstawowe kroki tworzenia i używania WordArt, możesz łatwo dostosować te techniki do dowolnego projektu, sprawiając, że Twoje prezentacje będą bardziej żywe i niezapomniane.

Najpierw tworzymy prosty tekst przy użyciu następującego kodu C#:

using (Presentation presentation = new Presentation())
{
    ISlide slide = presentation.Slides[0];

    IAutoShape autoShape = slide.Shapes.AddAutoShape(ShapeType.Rectangle, 20, 20, 400, 200);
    ITextFrame textFrame = autoShape.TextFrame;

    IPortion portion = textFrame.Paragraphs[0].Portions[0];
    portion.Text = "Aspose.Slides";
}

Teraz ustawiamy wysokość czcionki tekstu na większą wartość, aby efekt był bardziej widoczny, używając poniższego kodu:

    portion.PortionFormat.LatinFont = new FontData("Arial Black");
    portion.PortionFormat.FontHeight = 36;

Tutaj stosujemy wypełnienie wzorem SmallGrid do tekstu i dodajemy czarną obwódkę tekstu o szerokości 1, używając poniższego kodu:

    portion.PortionFormat.FillFormat.FillType = FillType.Pattern;
    portion.PortionFormat.FillFormat.PatternFormat.ForeColor.Color = Color.DarkOrange;
    portion.PortionFormat.FillFormat.PatternFormat.BackColor.Color = Color.White;
    portion.PortionFormat.FillFormat.PatternFormat.PatternStyle = PatternStyle.SmallGrid;
                
    portion.PortionFormat.LineFormat.FillFormat.FillType = FillType.Solid;
    portion.PortionFormat.LineFormat.FillFormat.SolidFillColor.Color = Color.Black;

Rezultujący tekst:

The simple WordArt template

Zastosuj inne efekty WordArt

Oprócz podstawowych transformacji, Aspose.Slides for .NET umożliwia zastosowanie różnorodnych zaawansowanych efektów WordArt, aby poprawić wygląd tekstu. Są to m.in. kontury, wypełnienia, cienie, odbicia i efekty poświaty. Łącząc te funkcje, możesz tworzyć przyciągające wzrok style tekstu, które wyróżniają się w prezentacjach. Poniżej znajduje się demonstracja, jak programowo zastosować te efekty przy użyciu prostych, przejrzystych przykładów kodu.

Zastosuj efekty zewnętrznego cienia

Efekty zewnętrznego cienia pomagają tekstowi wyróżnić się, dodając cień za jego konturem, co tworzy wrażenie głębi i odseparowania od tła. Aspose.Slides for .NET umożliwia łatwe zastosowanie i dostosowanie zewnętrznych cieni w tekście WordArt. W tej sekcji dowiesz się, jak ustawić kolor cienia, kierunek, odległość, promień rozmycia i inne, aby uzyskać pożądany efekt wizualny.

Poniższy fragment kodu C# stosuje efekt cienia do tekstu utworzonego powyżej.

    portion.PortionFormat.EffectFormat.EnableOuterShadowEffect();
    portion.PortionFormat.EffectFormat.OuterShadowEffect.ShadowColor.Color = Color.Black;
    portion.PortionFormat.EffectFormat.OuterShadowEffect.ScaleHorizontal = 100;
    portion.PortionFormat.EffectFormat.OuterShadowEffect.ScaleVertical = 100;
    portion.PortionFormat.EffectFormat.OuterShadowEffect.BlurRadius = 4;
    portion.PortionFormat.EffectFormat.OuterShadowEffect.Direction = 230;
    portion.PortionFormat.EffectFormat.OuterShadowEffect.Distance = 30;
    portion.PortionFormat.EffectFormat.OuterShadowEffect.SkewHorizontal = 20;
    portion.PortionFormat.EffectFormat.OuterShadowEffect.SkewVertical = 0;
    portion.PortionFormat.EffectFormat.OuterShadowEffect.ShadowColor.ColorTransform.Add(ColorTransformOperation.SetAlpha, 0.32f);

Rezultujący tekst:

The Outer Shadow effect

Zastosuj efekty odbicia

W tej sekcji przyjrzymy się, jak zastosować efekty odbicia w slajdach przy użyciu Aspose.Slides for .NET. Efekty odbicia mogą być skutecznym sposobem na nadanie tekstowi lub kształtom stylowego, nowoczesnego wyglądu, pomagając kluczowym elementom się wyróżnić i dodając głębi prezentacji. Rozumiejąc proces stosowania i dostosowywania tych efektów, możesz łatwo dopasować je do potrzeb projektowych i wymagań brandingu.

Dodaj efekt odbicia do tekstu, korzystając z tego przykładu kodu C#:

    portion.PortionFormat.EffectFormat.EnableReflectionEffect();
    portion.PortionFormat.EffectFormat.ReflectionEffect.BlurRadius = 0.5; 
    portion.PortionFormat.EffectFormat.ReflectionEffect.Distance = 4.72; 
    portion.PortionFormat.EffectFormat.ReflectionEffect.StartPosAlpha = 0f; 
    portion.PortionFormat.EffectFormat.ReflectionEffect.EndPosAlpha = 60f; 
    portion.PortionFormat.EffectFormat.ReflectionEffect.Direction = 90; 
    portion.PortionFormat.EffectFormat.ReflectionEffect.ScaleHorizontal = 100; 
    portion.PortionFormat.EffectFormat.ReflectionEffect.ScaleVertical = -100;
    portion.PortionFormat.EffectFormat.ReflectionEffect.StartReflectionOpacity = 60f;
    portion.PortionFormat.EffectFormat.ReflectionEffect.EndReflectionOpacity = 0.9f;
    portion.PortionFormat.EffectFormat.ReflectionEffect.RectangleAlign = RectangleAlignment.BottomLeft;   

Rezultujący tekst:

The Reflection effect

Zastosuj efekty poświaty

W tej sekcji przyjrzymy się, jak zastosować efekt poświaty do tekstu przy użyciu Aspose.Slides for .NET. Efekt poświaty może sprawić, że Twój tekst wyróżni się dzięki świetlistej obwódce, zwiększając atrakcyjność wizualną slajdów. Regulując ustawienia, takie jak kolor i intensywność, możesz łatwo dopasować poświatę do projektu i potrzeb brandingu, zapewniając, że kluczowe punkty prezentacji przyciągną uwagę odbiorców.

Zastosuj efekt poświaty do tekstu, aby błysnął lub wyróżnił się, używając następującego kodu:

    portion.PortionFormat.EffectFormat.EnableGlowEffect();
    portion.PortionFormat.EffectFormat.GlowEffect.Color.R = 255;
    portion.PortionFormat.EffectFormat.GlowEffect.Color.ColorTransform.Add(ColorTransformOperation.SetAlpha, 0.54f);
    portion.PortionFormat.EffectFormat.GlowEffect.Radius = 7;

Rezultujący tekst:

The Glow effect

Zastosuj transformacje WordArt

W tej sekcji przyjrzymy się, jak używać transformacji w WordArt przy pomocy Aspose.Slides for .NET. Transformacje pozwalają wyginać, rozciągać lub deformować tekst, tworząc unikalne i wizualnie uderzające efekty. Opanowując te techniki, możesz łatwo dopasować kształty i style tekstu do swojej marki lub wizji kreatywnej, zapewniając spójną i dopracowaną prezentację.

Użyj właściwości Transform (która dotyczy całego bloku tekstu) przy pomocy poniższego kodu:

    textFrame.TextFrameFormat.Transform = TextShapeType.ArchUpPour;

Rezultujący tekst:

The WordArt transformation

Zastosuj efekty 3D do kształtów i tekstu

Tworzenie realistycznych, przyciągających wzrok wizualizacji może znacznie zwiększyć oddziaływanie Twoich prezentacji. W tej sekcji omówimy, jak zastosować trójwymiarowe (3D) efekty do kształtów przy użyciu Aspose.Slides for .NET. Manipulując parametrami takimi jak głębokość, kąt i oświetlenie, możesz uzyskać imponujące transformacje 3D, które od razu przyciągają uwagę publiki. Niezależnie od tego, czy dążysz do subtelnych podkreśleń, czy dramatycznych iluzji, te funkcje oferują elastyczne sposoby na podniesienie jakości projektu i przekazywanie pomysłów w bardziej fascynujący sposób.

Użyj poniższego przykładu kodu, aby ustawić efekt 3D na kształcie:

    autoShape.ThreeDFormat.BevelBottom.BevelType = BevelPresetType.Circle;
    autoShape.ThreeDFormat.BevelBottom.Height = 10.5;
    autoShape.ThreeDFormat.BevelBottom.Width = 10.5;

    autoShape.ThreeDFormat.BevelTop.BevelType = BevelPresetType.Circle;
    autoShape.ThreeDFormat.BevelTop.Height = 12.5;
    autoShape.ThreeDFormat.BevelTop.Width = 11;

    autoShape.ThreeDFormat.ExtrusionColor.Color = Color.Orange;
    autoShape.ThreeDFormat.ExtrusionHeight = 6;

    autoShape.ThreeDFormat.ContourColor.Color = Color.DarkRed;
    autoShape.ThreeDFormat.ContourWidth = 1.5;

    autoShape.ThreeDFormat.Depth = 3;

    autoShape.ThreeDFormat.Material = MaterialPresetType.Plastic;

    autoShape.ThreeDFormat.LightRig.Direction = LightingDirection.Top;
    autoShape.ThreeDFormat.LightRig.LightType = LightRigPresetType.Balanced;
    autoShape.ThreeDFormat.LightRig.SetRotation(0, 0, 40);

    autoShape.ThreeDFormat.Camera.CameraType = CameraPresetType.PerspectiveContrastingRightFacing;

Rezultujący kształt:

The shape 3D effect

Użyj poniższego przykładu kodu, aby ustawić efekt 3D na tekście:

    textFrame.TextFrameFormat.ThreeDFormat.BevelBottom.BevelType = BevelPresetType.Circle;
    textFrame.TextFrameFormat.ThreeDFormat.BevelBottom.Height = 3.5;
    textFrame.TextFrameFormat.ThreeDFormat.BevelBottom.Width = 3.5;

    textFrame.TextFrameFormat.ThreeDFormat.BevelTop.BevelType = BevelPresetType.Circle;
    textFrame.TextFrameFormat.ThreeDFormat.BevelTop.Height = 4;
    textFrame.TextFrameFormat.ThreeDFormat.BevelTop.Width = 4;

    textFrame.TextFrameFormat.ThreeDFormat.ExtrusionColor.Color = Color.Orange;
    textFrame.TextFrameFormat.ThreeDFormat.ExtrusionHeight= 6;

    textFrame.TextFrameFormat.ThreeDFormat.ContourColor.Color = Color.DarkRed;
    textFrame.TextFrameFormat.ThreeDFormat.ContourWidth = 1.5;

    textFrame.TextFrameFormat.ThreeDFormat.Depth= 3;

    textFrame.TextFrameFormat.ThreeDFormat.Material = MaterialPresetType.Plastic;

    textFrame.TextFrameFormat.ThreeDFormat.LightRig.Direction = LightingDirection.Top;
    textFrame.TextFrameFormat.ThreeDFormat.LightRig.LightType = LightRigPresetType.Balanced;
    textFrame.TextFrameFormat.ThreeDFormat.LightRig.SetRotation(0, 0, 40);

    textFrame.TextFrameFormat.ThreeDFormat.Camera.CameraType = CameraPresetType.PerspectiveContrastingRightFacing;

Rezultujący tekst:

The text 3D effect

FAQ

Czy mogę używać efektów WordArt z różnymi czcionkami lub skryptami (np. arabski, chiński)?

Tak, Aspose.Slides for .NET obsługuje Unicode i działa ze wszystkimi głównymi czcionkami i skryptami. Efekty WordArt, takie jak cień, wypełnienie i kontur, mogą być stosowane niezależnie od języka, choć dostępność czcionek i renderowanie mogą zależeć od czcionek systemowych.

Czy mogę zastosować efekty WordArt do elementów mastera slajdów?

Tak, możesz zastosować efekty WordArt do kształtów na slajdach macierzystych, w tym do pól zastępczych tytułu, stopki lub tekstu w tle. Zmiany w układzie mastera będą odzwierciedlone we wszystkich powiązanych slajdach.

Czy efekty WordArt wpływają na rozmiar pliku prezentacji?

Nieznacznie. Efekty WordArt, takie jak cienie, poświaty i gradientowe wypełnienia, mogą nieco zwiększyć rozmiar pliku ze względu na dodatkowe metadane formatowania, ale różnica jest zazwyczaj pomijalna.

Czy mogę podglądać wynik efektów WordArt bez zapisywania prezentacji?

Tak, możesz renderować slajdy zawierające WordArt do obrazów (np. PNG, JPEG) przy użyciu metody GetImage z interfejsów IShape lub ISlide. Dzięki temu możesz podglądać rezultat w pamięci lub na ekranie przed zapisaniem lub wyeksportowaniem pełnej prezentacji.