C# Document Element Tutorial
IronWord jest potężną biblioteką dokumentów Word, zaprojektowaną aby wspierać programistów .NET C# w integracji możliwości tworzenia, odczytywania i edytowania dokumentów Word oraz DOCX w ich aplikacjach. W kontekście dokumentu Word, elementy dokumentu są blokami budującymi jego treść.
Szybki start: Tworzenie wystylizowanego TextRun i osadzanie obrazu
Oto, jak można użyć IronWord do dodania bogatej treści – łącząc wystylizowany tekst i osadzony obraz w dokumencie. Ten przykład demonstruje wzorzec wrappera Run dla wystylizowanego tekstu.
-
Install IronWord with NuGet Package Manager
PM > Install-Package IronWord -
Skopiuj i uruchom ten fragment kodu.
using IronWord; using IronWord.Models; // Create document WordDocument doc = new WordDocument(); // Create styled Run Run textRun = new Run(new TextContent("Hello IronWord!")); textRun.Style = new TextStyle() { IsBold = true, Color = Color.Blue }; // Create paragraph and add Run Paragraph paragraph = new Paragraph(); paragraph.AddChild(textRun); paragraph.AddImage(new ImageContent("pic.png")); // Add to document and save doc.AddParagraph(paragraph); doc.SaveAs("output.docx"); -
Wdrożenie do testowania w środowisku produkcyjnym
Rozpocznij używanie IronWord w swoim projekcie już dziś z darmową wersją próbną
Spis treści
- Dodaj tekst
- Treść tekstowa (Dodawanie, Dołączanie i Dzielnie)
- Ustalanie stylizacji (Rodzina czcionek i rozmiar, Kolor, Pogrubienie i Kursywa, Przekreślenie, Podkreślenie, Indeks górny i dolny)
- Osadzanie obrazów
- Dodawanie obrazów
- Ładowanie obrazu (Plik i FileStream)
- Ustawianie zawijania tekstu
- Ustawianie wymiarów (Szerokość i Wysokość)
- Ustawianie przesunięcia pozycji
- Ustawianie odległości od rogów
Kluczowe pojęcia
Hierarchia dokumentu
IronWord podąża za strukturą hierarchii dokumentu: Dokument → Akapit → Run → TextContent. Zrozumienie tej hierarchii jest niezbędne do pracy z wystylizowanym tekstem:
WordDocument: Kontener najwyższego poziomu reprezentujący cały dokumentParagraph: Blok treści w dokumencieRun: Obiekt wrapper, który zawieraTextContenti może mieć zastosowaną stylizacjęTextContent: Faktyczny ciąg tekstu
Dodawanie treści do akapitów
IronWord dostarcza dwóch metod do dodawania treści do akapitów:
AddText(TextContent): Używane dla niesformatowanego tekstu plain. DodajeTextContentbezpośrednio do akapitu.AddChild(Run): Używane dla tekstu stylizowanego. Dodaje obiektRun(który zawijaTextContenti zawiera stylizację) do akapitu.
Kiedy trzeba zastosować stylizację, taką jak rozmiar czcionki, kolor lub pogrubienie, należy utworzyć obiekt Run, przypisać TextStyle do Run i użyć AddChild, aby dodać go do akapitu.
Dodawanie TextRun
Zawartość tekstu
Metoda Split jest wykorzystywana do dzielenia przebiegu tekstu na listę mniejszych przebiegów tekstu, na podstawie określonego separatora. Pozwala to na organizację i manipulację informacjami tekstowymi w dokumencie.
:path=/static-assets/word/content-code-examples/tutorials/add-textrun-text-content.cs
using IronWord;
using IronWord.Models;
WordDocument doc = new WordDocument();
// Add text
TextContent addText = new TextContent("Add text using IronWord");
doc.AddParagraph(new Paragraph(addText));
// Append text
TextContent appendText = new TextContent("The first text.");
appendText.Append(new TextContent("The second text."));
doc.AddParagraph(new Paragraph(appendText));
// Split text
TextContent splitText = new TextContent("Use split to split the sentence.");
splitText.Split(" ");
doc.AddParagraph(new Paragraph(splitText));
// Export docx
doc.SaveAs("textrun.docx");
Imports IronWord
Imports IronWord.Models
Private doc As New WordDocument()
' Add text
Private addText As New TextContent("Add text using IronWord")
doc.AddParagraph(New Paragraph(addText))
' Append text
Dim appendText As New TextContent("The first text.")
appendText.Append(New TextContent("The second text."))
doc.AddParagraph(New Paragraph(appendText))
' Split text
Dim splitText As New TextContent("Use split to split the sentence.")
splitText.Split(" ")
doc.AddParagraph(New Paragraph(splitText))
' Export docx
doc.SaveAs("textrun.docx")
Ustaw stylizację
Ustalanie stylizacji dla tekstu wymaga użycia wzorca wrapper Run. Stwórz obiekt Run zawierający TextContent, potem przypisz TextStyle do Run (nie do TextContent). Obiekt TextStyle pozwala określić atrybuty wizualne, takie jak FontSize, kolor, pogrubienie, kursywa, przekreślenie, podkreślenie, indeks górny i dolny.
Zauważ, że FontSize jest konfigurowany na poziomie TextStyle, podczas gdy FontFamily jest ustawiany wewnątrz właściwości TextFont. Po wystylizowaniu, użyj AddChild, aby dodać Run do akapitu. To odzwierciedla hierarchię dokumentu: Dokument → Akapit → Fragment tekstu → Zawartość tekstu.
:path=/static-assets/word/content-code-examples/tutorials/add-textrun-set-styling.cs
using IronWord;
using IronWord.Models;
using IronWord.Models.Enums;
// Load docx
WordDocument doc = new WordDocument("document.docx");
// Configure text
Run textRun = new Run(new TextContent("Add text using IronWord"));
textRun.Style = new TextStyle()
{
FontSize = 72,
TextFont = new Font()
{
FontFamily = "Caveat"
},
Color = Color.Red,
IsBold = true,
IsItalic = true,
Underline = new Underline(),
Strike = StrikeValue.Strike,
};
Paragraph paragraph = new Paragraph();
// Add text
paragraph.AddChild(textRun);
// Add paragraph
doc.AddParagraph(paragraph);
// Export docx
doc.SaveAs("save_document.docx");
Imports IronWord
Imports IronWord.Models
Imports IronWord.Models.Enums
' Load docx
Dim doc As New WordDocument("document.docx")
' Configure text
Dim textRun As New Run(New TextContent("Add text using IronWord"))
textRun.Style = New TextStyle() With {
.FontSize = 72,
.TextFont = New Font() With {
.FontFamily = "Caveat"
},
.Color = Color.Red,
.IsBold = True,
.IsItalic = True,
.Underline = New Underline(),
.Strike = StrikeValue.Strike
}
Dim paragraph As New Paragraph()
' Add text
paragraph.AddChild(textRun)
' Add paragraph
doc.AddParagraph(paragraph)
' Export docx
doc.SaveAs("save_document.docx")
Uzyskiwanie koloru wypełnienia tekstu
Oprócz ustalania stylizacji, IronWord dostarcza sposób na uzyskanie wartości koloru RGBA z istniejących dokumentów, aby zachować konsekwencję w całej stylizacji.
:path=/static-assets/word/content-code-examples/tutorials/rgba-color-value.cs
using IronWord;
using IronWord.Models;
using System;
// Open existing Word
WordDocument doc = new WordDocument("Accent1TextThemcolor.docx");
TextContent content = doc.Paragraphs[0].Texts[0];
// This will show the R G B A of the themecolor
var filledColor = content.Color;
// Print the filled color variable to the console
Console.WriteLine(filledColor);
Imports IronWord
Imports IronWord.Models
Imports System
' Open existing Word
Dim doc As New WordDocument("Accent1TextThemcolor.docx")
Dim content As TextContent = doc.Paragraphs(0).Texts(0)
' This will show the R G B A of the themecolor
Dim filledColor = content.Color
' Print the filled color variable to the console
Console.WriteLine(filledColor)
Aby pobrać wartości kolorów, załaduj dokument używając WordDocument, następnie uzyskaj dostęp do kolekcji Paragraphs i tablicy Texts, aby uzyskać obiekt TextContent. Właściwość Color z TextContent zwraca wartość RGBA istniejącego koloru tekstu, umożliwiając utrzymanie spójnej stylizacji w całym dokumencie.
Osadzanie obrazów
Ta funkcja pozwala na bezproblemowe dołączanie obrazów do treści, zwiększając ogólną atrakcyjność wizualną i moc komunikacyjną dokumentu.
:path=/static-assets/word/content-code-examples/tutorials/add-textrun-embed-images.cs
using IronWord;
using IronWord.Models;
// Load docx
WordDocument doc = new WordDocument();
// Configure image
ImageContent image = new ImageContent("image.jpg");
image.Width = 200; // In unit pixel
image.Height = 200; // In unit pixel
TextContent textRun = new TextContent();
// Add image
Paragraph para = new Paragraph(textRun);
para.AddImage(image);
// Add paragraph
doc.AddParagraph(new Paragraph(textRun));
// Export docx
doc.SaveAs("save_document.docx");
Imports IronWord
Imports IronWord.Models
' Load docx
Private doc As New WordDocument()
' Configure image
Private image As New ImageContent("image.jpg")
image.Width = 200 ' In unit pixel
image.Height = 200 ' In unit pixel
Dim textRun As New TextContent()
' Add image
Dim para As New Paragraph(textRun)
para.AddImage(image)
' Add paragraph
doc.AddParagraph(New Paragraph(textRun))
' Export docx
doc.SaveAs("save_document.docx")
Dodaj obrazy
Ładowanie obrazu
Ładowanie obrazów jest kluczowym procesem. To obejmuje pobieranie zewnętrznych plików obrazu do dokumentu. Możliwość ładowania obrazów ułatwia dołączanie odpowiednich elementów wizualnych, przyczyniając się do bardziej wciągającego i pouczającego dokumentu.
:path=/static-assets/word/content-code-examples/tutorials/add-image-load-image.cs
using IronWord;
using IronWord.Models;
// Load docx
WordDocument doc = new WordDocument();
Paragraph paragraph = new Paragraph();
// Add image
paragraph.AddImage("image.jpg");
// Add paragraph
doc.AddParagraph(paragraph);
// Export docx
doc.SaveAs("document.docx");
Imports IronWord
Imports IronWord.Models
' Load docx
Private doc As New WordDocument()
Private paragraph As New Paragraph()
' Add image
paragraph.AddImage("image.jpg")
' Add paragraph
doc.AddParagraph(paragraph)
' Export docx
doc.SaveAs("document.docx")
Konfigurowanie obrazu
Optymalizuj obrazy za pomocą konfigurowalnych ustawień. Obejmuje to ustawianie właściwości, takich jak zawijanie tekstu, wymiary, pozycja i odległość od rogów. Odpowiednia konfiguracja zapewnia, że obrazy są wyświetlane w sposób atrakcyjny wizualnie i odpowiedni kontekstowo.
:path=/static-assets/word/content-code-examples/tutorials/add-image-configure-image.cs
using IronWord;
using IronWord.Models;
using IronWord.Models.Enums;
using IronSoftware.Abstractions.Word;
// Load docx
WordDocument doc = new WordDocument();
// Configure image
ImageContent image = new ImageContent("image.jpg");
image.TextWrapBehavior = new TextWrapSquare();
image.Width = 100;
image.Height = 100;
image.DistanceFromTop = 50;
var position = new ElementPosition();
position.X = 50;
position.Y = 50;
image.Position = position;
Paragraph paragraph = new Paragraph();
// Add image
paragraph.AddImage(image);
// Add paragraph
doc.AddParagraph(paragraph);
// Export docx
doc.SaveAs("document.docx");
Imports IronWord
Imports IronWord.Models
Imports IronWord.Models.Enums
Imports IronSoftware.Abstractions.Word
' Load docx
Dim doc As New WordDocument()
' Configure image
Dim image As New ImageContent("image.jpg")
image.TextWrapBehavior = New TextWrapSquare()
image.Width = 100
image.Height = 100
image.DistanceFromTop = 50
Dim position As New ElementPosition()
position.X = 50
position.Y = 50
image.Position = position
Dim paragraph As New Paragraph()
' Add image
paragraph.AddImage(image)
' Add paragraph
doc.AddParagraph(paragraph)
' Export docx
doc.SaveAs("document.docx")
Często Zadawane Pytania
Jak mogę dodać tekst do dokumentu WORD za pomocą języka C#?
Możesz dodać tekst do dokumentu WORDa, używając IronWord do utworzenia instancji fragmentu tekstu, który następnie można dołączyć do akapitu w dokumencie.
Jaka jest metoda dzielenia tekstu w dokumencie WORD?
IronWord udostępnia metodę Split, która pozwala podzielić ciąg tekstu na mniejsze segmenty na podstawie określonego separatora, ułatwiając manipulację tekstem.
Jak sformatować tekst w dokumencie WORD za pomocą IronWord?
Za pomocą IronWord można formatować tekst, ustawiając różne atrybuty, takie jak rozmiar czcionki, kolor oraz style, np. pogrubienie, kursywa, przekreślenie, podkreślenie, indeks górny i indeks dolny.
Jak osadzić obrazy w dokumencie WORD za pomocą języka C#?
Aby osadzić obrazy w dokumencie Worda za pomocą IronWord, można załadować obraz z pliku i dodać go jako obraz wbudowany do akapitu w dokumencie.
Jakie kroki trzeba wykonać, żeby wgrać obrazek do dokumentu WORDa?
Dzięki IronWord możesz załadować obraz z pliku lub strumienia plików, co pozwala na włączenie treści wizualnych do dokumentu WORD.
Jak skonfigurować właściwości obrazów w dokumencie WORD?
Za pomocą IronWord można konfigurować właściwości obrazów, takie jak zawijanie tekstu, wymiary, przesunięcie pozycji i odległość od narożników, aby zapewnić prawidłowe wyświetlanie obrazów w dokumencie.
Czy mogę pobrać wartość koloru RGBA tekstu w dokumencie WORD?
Tak, IronWord pozwala uzyskać wartość koloru RGBA istniejącego tekstu w dokumencie, aby zachować spójny styl w całym dokumencie.
Jak mogę zacząć korzystać z IronWord do edycji dokumentów WORD?
Aby rozpocząć pracę z IronWord, można zintegrować go z aplikacją .NET C# w celu tworzenia, odczytywania i edytowania dokumentów Word, wykorzystując jego wszechstronne funkcje biblioteki IronWord.

