Jak dodac efekt swiecenia do tekstu w C#

How to Add Glow Effect to Text in C

This article was translated from English: Does it need improvement?
Translated
View the article in English

Efekt poświetlenia tworzy swietlista aure wokol znakow tekstowych. Ten efekt wizualny sprawia, ze tekst wydaje sie emitowac światlo z miekkim obramowaniem. W aplikacjach C#, szczegółnie w dokumentach Word, efekty poświetlenia pomagaja podkreślić nagłówki, tytuły i ważne treści. Efekt ten jest szeroko stosowany w prezentacjach, materialach marketingowych i profesjonalnych dokumentach, gdzie tekst potrzebuje wizualnego podkreslenia.

Szybki start: Zastosuj efekt poświetlenia dla elementu tekstowego szybko

Utwórz obiekt Glow, ustaw jego GlowRadius i GlowColor, osadź go w TextEffect i przypisz go do stylu tekstu. Jedna linia tworzy swiecacy tekst w twoim dokumencie Word.

  1. Install IronWord with NuGet Package Manager

    PM > Install-Package IronWord
  2. Skopiuj i uruchom ten fragment kodu.

    using IronWord;
    using IronWord.Models;
    
    WordDocument doc = new WordDocument();
    TextStyle textStyle = new TextStyle();
    textStyle.TextEffect = new TextEffect() { GlowEffect = new Glow() { GlowColor = IronWord.Models.Color.Aqua, GlowRadius = 10 } };
    Paragraph paragraph = new Paragraph();
    Run textRun = new Run(new TextContent("Glowing Text"));
    textRun.Style = textStyle;
    paragraph.AddChild(textRun);
    doc.AddParagraph(paragraph);
    doc.SaveAs("glow.docx");
  3. Wdrożenie do testowania w środowisku produkcyjnym

    Rozpocznij używanie IronWord w swoim projekcie już dziś z darmową wersją próbną

    arrow pointer

Jak dodać efekt poświaty do tekstu w C#?

Aby zastosować efekt rozbłysku, utwórz TextStyle i wypełnij jego właściwość TextEffect wartością GlowEffect. Następnie utwórz Paragraph, a po nim Run zawierający TextContent. Przypisz TextStyle do Run (nie do TextContent), a następnie użyj AddChild, aby dodać Run do Paragraph. Odzwierciedla to hierarchię dokumentu: DocumentParagraphRunTextContent. To podejście zapewnia pełna kontrole nad wygladem i intensywnoscia poświetlenia.

Dłączego ważne jest utworzenie obiektu poświetlenia najpierw?

Utworzenie obiektu Glow umożliwia najpierw skonfigurowanie wszystkich właściwości świecenia przed zastosowaniem. To podejście spełnia zasady podzialu obowiazkow i poprawia utrzymywalnosc kodu. Definicja właściwości poświetlenia niezależnie pozwala na ponowne użycie ich w różnych elementach tekstowych i dynamiczna modyfikacje w zależności od potrzeb aplikacji. Ten wzorzec pasuje do tego, jak inne produkty Iron Software obsluguja podobne efekty, zachowujac spojnosc w przepływach przetwarzania dokumentów.

using IronWord;
using IronWord.Models;
using System.Drawing;

public class TextGlowEffectExample
{
    public void ApplyGlowEffect()
    {
        // Create a new Word document
        WordDocument doc = new WordDocument();

        // Add a paragraph with text
        Paragraph paragraph = new Paragraph();
        Text textRun = new Text("This text has a bright glow!");
        paragraph.AddTextRun(textRun);

        // Initialize a new Glow object
        Glow glow = new Glow();

        // Set the properties for the glow effect
        glow.GlowRadius = 15; // Radius of the glow effect in points
        glow.GlowColor = Color.FromArgb(200, 0, 255, 255); // Semi-transparent cyan

        // Create a TextEffect object and assign the glow effect to it
        TextEffect textEffect = new TextEffect();
        textEffect.GlowEffect = glow;

        // Apply the TextEffect to the text
        textRun.Style = new TextStyle();
        textRun.Style.TextEffect = textEffect;

        // Add the paragraph to the document
        doc.AddParagraph(paragraph);

        // Zapisz dokument
        doc.SaveAs("glowing-text-example.docx");
    }
}
using IronWord;
using IronWord.Models;
using System.Drawing;

public class TextGlowEffectExample
{
    public void ApplyGlowEffect()
    {
        // Create a new Word document
        WordDocument doc = new WordDocument();

        // Add a paragraph with text
        Paragraph paragraph = new Paragraph();
        Text textRun = new Text("This text has a bright glow!");
        paragraph.AddTextRun(textRun);

        // Initialize a new Glow object
        Glow glow = new Glow();

        // Set the properties for the glow effect
        glow.GlowRadius = 15; // Radius of the glow effect in points
        glow.GlowColor = Color.FromArgb(200, 0, 255, 255); // Semi-transparent cyan

        // Create a TextEffect object and assign the glow effect to it
        TextEffect textEffect = new TextEffect();
        textEffect.GlowEffect = glow;

        // Apply the TextEffect to the text
        textRun.Style = new TextStyle();
        textRun.Style.TextEffect = textEffect;

        // Add the paragraph to the document
        doc.AddParagraph(paragraph);

        // Zapisz dokument
        doc.SaveAs("glowing-text-example.docx");
    }
}
Imports IronWord
Imports IronWord.Models
Imports System.Drawing

Public Class TextGlowEffectExample
    Public Sub ApplyGlowEffect()
        ' Create a new Word document
        Dim doc As New WordDocument()

        ' Add a paragraph with text
        Dim paragraph As New Paragraph()
        Dim textRun As New Text("This text has a bright glow!")
        paragraph.AddTextRun(textRun)

        ' Initialize a new Glow object
        Dim glow As New Glow()

        ' Set the properties for the glow effect
        glow.GlowRadius = 15 ' Radius of the glow effect in points
        glow.GlowColor = Color.FromArgb(200, 0, 255, 255) ' Semi-transparent cyan

        ' Create a TextEffect object and assign the glow effect to it
        Dim textEffect As New TextEffect()
        textEffect.GlowEffect = glow

        ' Apply the TextEffect to the text
        textRun.Style = New TextStyle()
        textRun.Style.TextEffect = textEffect

        ' Add the paragraph to the document
        doc.AddParagraph(paragraph)

        ' Save the document
        doc.SaveAs("glowing-text-example.docx")
    End Sub
End Class
$vbLabelText   $csharpLabel
Microsoft Word pokazuje tekst 'Hello World' z zastosowanym efektem poświetlenia w kolorze cyjan, demonstrujac wynik formatu glow

Jakie sa właściwości efektu poświetlenia?

Zrozumienie właściwości efektu poświetlenia jest kluczowe dla tworzenia profesjonalnie wyglądajacych efektow, ktore podkreślaja dokumenty bez przytlaczania treści. Odpowiednie licencjonowanie zapewnia, ze te funkcje działaja w środowiskach produkcyjnych bez ograniczeń.

Jaki właściwości kontroluja wyglad poświetlenia?

  • GlowRadius: Ustawia promień efektu blasku w punktach (1/72 cala). Wartosci zwykle wahaja sie od 5 do 30 punktow. Duze wartosci tworza bardziej rozproszone, rozpostarte poświetlenia. Promien od 5 do 10 punktow tworzy subtelne podkreslenia; 20-30 punktow tworzy dramatyczne aureole.

  • GlowColor: Ustawia kolor efektu blasku. Akceptuje wartości System.Drawing.Color, w tym ARGB do kontroli przezroczystości. Jasne kolory (cyjan, zolty, magenta) tworza zywe efekty; ciemne kolory zapewniają subtelne podkreślenie.

Jak ustawic wartosci kolorow z przezroczystoscia alfa?

Przezroczystosc alfa tworzy realistyczne efekty poświetlenia, ktore naturalnie lacza sie z tlem. Wartosci alfa wahaja sie od 0 (przezroczysty) do 255 (nieprzezroczysty). Oto przykład pokazujacy różne wartosci alfa:

using IronWord;
using IronWord.Models;
using System.Drawing;

public class AlphaTransparencyExample
{
    public void DemonstrateAlphaValues()
    {
        WordDocument doc = new WordDocument();

        // Create multiple text samples with different alpha values
        int[] alphaValues = { 50, 100, 150, 200, 255 };

        foreach (int alpha in alphaValues)
        {
            Paragraph para = new Paragraph();
            Text text = new Text($"Alpha: {alpha} - Glow Effect Sample");

            // Create glow with specific alpha transparency
            Glow glow = new Glow
            {
                GlowRadius = 12,
                GlowColor = Color.FromArgb(alpha, 255, 215, 0) // Gold with varying transparency
            };

            // Apply the glow effect
            TextEffect effect = new TextEffect { GlowEffect = glow };
            text.Style = new TextStyle 
            { 
                TextEffect = effect,
                FontSize = 24,
                FontFamily = "Arial"
            };

            para.AddTextRun(text);
            doc.AddParagraph(para);
        }

        doc.SaveAs("alpha-transparency-demo.docx");
    }
}
using IronWord;
using IronWord.Models;
using System.Drawing;

public class AlphaTransparencyExample
{
    public void DemonstrateAlphaValues()
    {
        WordDocument doc = new WordDocument();

        // Create multiple text samples with different alpha values
        int[] alphaValues = { 50, 100, 150, 200, 255 };

        foreach (int alpha in alphaValues)
        {
            Paragraph para = new Paragraph();
            Text text = new Text($"Alpha: {alpha} - Glow Effect Sample");

            // Create glow with specific alpha transparency
            Glow glow = new Glow
            {
                GlowRadius = 12,
                GlowColor = Color.FromArgb(alpha, 255, 215, 0) // Gold with varying transparency
            };

            // Apply the glow effect
            TextEffect effect = new TextEffect { GlowEffect = glow };
            text.Style = new TextStyle 
            { 
                TextEffect = effect,
                FontSize = 24,
                FontFamily = "Arial"
            };

            para.AddTextRun(text);
            doc.AddParagraph(para);
        }

        doc.SaveAs("alpha-transparency-demo.docx");
    }
}
Imports IronWord
Imports IronWord.Models
Imports System.Drawing

Public Class AlphaTransparencyExample
    Public Sub DemonstrateAlphaValues()
        Dim doc As New WordDocument()

        ' Create multiple text samples with different alpha values
        Dim alphaValues As Integer() = {50, 100, 150, 200, 255}

        For Each alpha As Integer In alphaValues
            Dim para As New Paragraph()
            Dim text As New Text($"Alpha: {alpha} - Glow Effect Sample")

            ' Create glow with specific alpha transparency
            Dim glow As New Glow With {
                .GlowRadius = 12,
                .GlowColor = Color.FromArgb(alpha, 255, 215, 0) ' Gold with varying transparency
            }

            ' Apply the glow effect
            Dim effect As New TextEffect With {.GlowEffect = glow}
            text.Style = New TextStyle With {
                .TextEffect = effect,
                .FontSize = 24,
                .FontFamily = "Arial"
            }

            para.AddTextRun(text)
            doc.AddParagraph(para)
        Next

        doc.SaveAs("alpha-transparency-demo.docx")
    End Sub
End Class
$vbLabelText   $csharpLabel

Wytyczne dotyczące wartosci alfa:

  • 50-100: Bardzo subtelne, ledwo widoczne efekty w stylu znakow wodnych
  • 100-150: Delikatne poświetlenie, profesjonalny wyglad dla dokumentów biznesowych
  • 150-200: Srednia intensywnosc, zrownowazona dla nagłówków i tytułow
  • 200-255: Silne poświetlenie, wysoki efekt dla materialow promocyjnych

Jakie sa przykłady efektow poświetlenia?

Efekty poświetlenia przyjmuja wartosci kolorow ARGB. Wartosc alfa kontroluje przezroczystosc. Te przykłady pokazuja praktyczne zastosowania poświetlenia w różnych kontekstach dokumentów. Skonfiguruj odpowiednie klucze licencyjne przed wdrożeniem produkcyjnym.

Kiedy powinienem używać różnych wartosci promienia?

Różne wartosci promienia sluzylyby różnym celom. Male promienie (5-10 punktow) tworza skupione poświetlenia, ktore subtelnie podkreślaja pojecia lub linki. Srednie promienie (15-20 punktow) sprawdzają sie w naglowkach sekcji i tytułach, zapewniając wyrazna hierarchie. Duze promienie (25+ punktow) nadaja sie do stron tytułowych lub wyroznien promocyjnych wymagajacych maksymalnej sile oddzialywania.

Oto implementacja pokazujaca zastosowania promienia:

public class RadiusExamples
{
    public void CreateRadiusComparison()
    {
        WordDocument doc = new WordDocument();

        // Example 1: Subtle emphasis for inline text
        Paragraph p1 = new Paragraph();
        Text subtleText = new Text("Important: This deadline cannot be extended.");
        subtleText.Style = new TextStyle
        {
            TextEffect = new TextEffect
            {
                GlowEffect = new Glow
                {
                    GlowRadius = 6,
                    GlowColor = Color.FromArgb(180, 255, 0, 0) // Soft red glow
                }
            }
        };
        p1.AddTextRun(subtleText);

        // Example 2: Section header with medium glow
        Paragraph p2 = new Paragraph();
        Text headerText = new Text("Chapter 1: Getting Started");
        headerText.Style = new TextStyle
        {
            FontSize = 28,
            FontFamily = "Calibri",
            TextEffect = new TextEffect
            {
                GlowEffect = new Glow
                {
                    GlowRadius = 18,
                    GlowColor = Color.FromArgb(150, 0, 120, 215) // Corporate blue
                }
            }
        };
        p2.AddTextRun(headerText);

        // Example 3: Promotional text with large glow
        Paragraph p3 = new Paragraph();
        Text promoText = new Text("SPECIAL OFFER - LIMITED TIME!");
        promoText.Style = new TextStyle
        {
            FontSize = 36,
            Bold = true,
            TextEffect = new TextEffect
            {
                GlowEffect = new Glow
                {
                    GlowRadius = 30,
                    GlowColor = Color.FromArgb(220, 255, 255, 0) // Bright yellow
                }
            }
        };
        p3.AddTextRun(promoText);

        doc.AddParagraph(p1);
        doc.AddParagraph(p2);
        doc.AddParagraph(p3);
        doc.SaveAs("radius-examples.docx");
    }
}
public class RadiusExamples
{
    public void CreateRadiusComparison()
    {
        WordDocument doc = new WordDocument();

        // Example 1: Subtle emphasis for inline text
        Paragraph p1 = new Paragraph();
        Text subtleText = new Text("Important: This deadline cannot be extended.");
        subtleText.Style = new TextStyle
        {
            TextEffect = new TextEffect
            {
                GlowEffect = new Glow
                {
                    GlowRadius = 6,
                    GlowColor = Color.FromArgb(180, 255, 0, 0) // Soft red glow
                }
            }
        };
        p1.AddTextRun(subtleText);

        // Example 2: Section header with medium glow
        Paragraph p2 = new Paragraph();
        Text headerText = new Text("Chapter 1: Getting Started");
        headerText.Style = new TextStyle
        {
            FontSize = 28,
            FontFamily = "Calibri",
            TextEffect = new TextEffect
            {
                GlowEffect = new Glow
                {
                    GlowRadius = 18,
                    GlowColor = Color.FromArgb(150, 0, 120, 215) // Corporate blue
                }
            }
        };
        p2.AddTextRun(headerText);

        // Example 3: Promotional text with large glow
        Paragraph p3 = new Paragraph();
        Text promoText = new Text("SPECIAL OFFER - LIMITED TIME!");
        promoText.Style = new TextStyle
        {
            FontSize = 36,
            Bold = true,
            TextEffect = new TextEffect
            {
                GlowEffect = new Glow
                {
                    GlowRadius = 30,
                    GlowColor = Color.FromArgb(220, 255, 255, 0) // Bright yellow
                }
            }
        };
        p3.AddTextRun(promoText);

        doc.AddParagraph(p1);
        doc.AddParagraph(p2);
        doc.AddParagraph(p3);
        doc.SaveAs("radius-examples.docx");
    }
}
Public Class RadiusExamples
    Public Sub CreateRadiusComparison()
        Dim doc As New WordDocument()

        ' Example 1: Subtle emphasis for inline text
        Dim p1 As New Paragraph()
        Dim subtleText As New Text("Important: This deadline cannot be extended.")
        subtleText.Style = New TextStyle With {
            .TextEffect = New TextEffect With {
                .GlowEffect = New Glow With {
                    .GlowRadius = 6,
                    .GlowColor = Color.FromArgb(180, 255, 0, 0) ' Soft red glow
                }
            }
        }
        p1.AddTextRun(subtleText)

        ' Example 2: Section header with medium glow
        Dim p2 As New Paragraph()
        Dim headerText As New Text("Chapter 1: Getting Started")
        headerText.Style = New TextStyle With {
            .FontSize = 28,
            .FontFamily = "Calibri",
            .TextEffect = New TextEffect With {
                .GlowEffect = New Glow With {
                    .GlowRadius = 18,
                    .GlowColor = Color.FromArgb(150, 0, 120, 215) ' Corporate blue
                }
            }
        }
        p2.AddTextRun(headerText)

        ' Example 3: Promotional text with large glow
        Dim p3 As New Paragraph()
        Dim promoText As New Text("SPECIAL OFFER - LIMITED TIME!")
        promoText.Style = New TextStyle With {
            .FontSize = 36,
            .Bold = True,
            .TextEffect = New TextEffect With {
                .GlowEffect = New Glow With {
                    .GlowRadius = 30,
                    .GlowColor = Color.FromArgb(220, 255, 255, 0) ' Bright yellow
                }
            }
        }
        p3.AddTextRun(promoText)

        doc.AddParagraph(p1)
        doc.AddParagraph(p2)
        doc.AddParagraph(p3)
        doc.SaveAs("radius-examples.docx")
    End Sub
End Class
$vbLabelText   $csharpLabel

Jakie sa popularne kombinacje kolorow dla efektow poświetlenia?

Efektywne kombinacje kolorow zaleza od celu dokumentu i tozsamosci marki. Dokumenty profesjonalne używają subtelnych odcieni niebieskiego, szarego lub kolorow marki z niższymi wartosciami alfa. Materialy marketingowe korzystaja z zywych, uzupelniajacych sie kolorow lub kombinacji o wysokim kontraście. Sprawdz aktualizacje produktów dla kompatybilnosci z innymi produktami Iron Software.

Popularne kombinacje kolorow:

  1. Profesjonalny Niebieski: Granatowy tekst z jasnoniebieskim poświetleniem (RGB: 100, 150, 255)
  2. Cieple Podkreślenie: Ciemnobrazówy tekst ze zlotym poświetleniem (RGB: 255, 200, 50)
  3. Wysoki Kontrast: Czarny tekst z białym/srebrnym poświetleniem (RGB: 220, 220, 220)
  4. Kolory Marki: Tekst w kolorze firmy z uzupełniającym poświetleniem
  5. Motywy Sezonowe: Zielono-czerwone na swieta, pomaranczowo-czarne na Halloween
Cztery przykłady tekstu z zastosowanymi efektami poświetlenia: morski 10pt, blekitny 20pt, zlote 30pt i własny zielony 40pt promien

Efekty poświetlenia powinny poprawiac czytelnosc, a nie ja utrudniać. Testuj kombinacje na różnych tłach i przestrzegaj wytycznych dostępności. Dla aplikacji enterprise potrzebujacych rozbudowanego wsparcia, zapoznaj sie z rozszerzeniami licencjonowania dla ciągłych aktualizacji i funkcji. Podczas skalowania aplikacji, opcje aktualizacji zapewniają elastycznosc dla rosnących zespolow i rozszerzajacych sie wymagań.

Często Zadawane Pytania

Jak dodać efekt poświaty do tekstu w dokumentach Word używając C#?

Aby dodać efekt poświaty używając IronWord, utwórz obiekt Glow z pożądanymi ustawieniami promienia i koloru, a następnie osadź go w obiekcie TextEffect i przypisz do właściwości Style.TextEffect elementu tekstowego. Można to zrobić w jednej linii: someTextElement.Style.TextEffect = new IronWord.Models.TextEffect { GlowEffect = new IronWord.Models.Glow { GlowRadius = 8, GlowColor = System.Drawing.Color.FromArgb(180, 0, 128, 255) } };

Jaki jest minimalny kod potrzebny do utworzenia świecącego tekstu?

IronWord pozwala na utworzenie świecącego tekstu jedną linią kodu, ustawiając właściwość Style.TextEffect elementu tekstowego z nowym obiektem TextEffect zawierającym skonfigurowany obiekt Glow. Zawiera to ustawienie promienia i koloru poświaty w jednym stwierdzeniu.

Czy mogę dostosować wygląd efektu poświaty?

Tak, IronWord zapewnia pełną personalizację efektów poświaty poprzez właściwości obiektu Glow. Możesz dostosować GlowRadius (w punktach) do kontroli rozmiaru poświaty i ustawić GlowColor używając System.Drawing.Color z wartościami ARGB dla precyzyjnej kontroli koloru i przejrzystości.

Dlaczego powinienem utworzyć oddzielny obiekt Glow zamiast konfiguracji inline?

Tworzenie oddzielnego obiektu Glow w IronWord przestrzega zasady separacji obaw i poprawia utrzymanie kodu. Pozwala to na ponowne użycie tej samej konfiguracji poświaty w wielu elementach tekstowych i dynamiczną modyfikację właściwości w oparciu o wymagania aplikacji, zgodnie z jednolitym wzorcem używanym w innych produktach Iron Software.

Jakie są główne kroki w zastosowaniu efektu poświaty do tekstu?

Przebieg pracy w IronWord obejmuje 5 kroków: 1) Pobierz bibliotekę IronWord C#, 2) Zastosuj efekt tekstowy do nowego lub istniejącego tekstu, 3) Skonfiguruj obiekt Glow z ustawieniami promienia i koloru, 4) Przypisz Glow do właściwości GlowEffect obiektu TextEffect, 5) Eksportuj edytowany dokument Word jako nowy plik.

Jakie typy dokumentów korzystają z efektów poświaty tekstu?

Funkcja efektu poświaty IronWord jest szczególnie przydatna do tworzenia prezentacji, materiałów marketingowych i profesjonalnych dokumentów, w których tekst wymaga wizualnego podkreślenia. Efekt świetlistej aureoli pomaga wyróżnić nagłówki, tytuły i istotne treści w dokumentach Word.

Curtis Chau
Autor tekstów technicznych

Curtis Chau posiada tytuł licencjata z informatyki (Uniwersytet Carleton) i specjalizuje się w front-endowym rozwoju, z ekspertką w Node.js, TypeScript, JavaScript i React. Pasjonuje się tworzeniem intuicyjnych i estetycznie przyjemnych interfejsów użytkownika, Curtis cieszy się pracą z nowoczesnymi frameworkami i tworzeniem dobrze zorganizowanych, atrakcyjnych wizualnie podrę...

Czytaj więcej
Gotowy, aby rozpocząć?
Nuget Pliki do pobrania 44,829 | Wersja: 2026.5 just released
Still Scrolling Icon

Wciąż przewijasz?

Czy chcesz szybko dowodu? PM > Install-Package IronWord
uruchom próbkę zobacz, jak twoje dane stają się dokumentem Word.