PDF stał się dominującym formatem dokumentów w cyfrowym świecie. Jego wieloplatformowość sprawiła, że jest to powszechnie stosowany format do generowania i udostępniania dokumentów, takich jak artykuły naukowe, faktury itp. Podczas programowego generowania pliku PDF często zachodzi potrzeba zmiany położenia i orientacji tekstu zgodnie z układem dokument. W tym artykule pokażemy, jak programowo obracać tekst w dokumentach PDF w języku C# .NET.
C# .NET API do obracania tekstu w formacie PDF
Aspose.PDF for .NET to biblioteka klas języka C#, która zapewnia podstawowe i zaawansowane funkcje manipulacji plikami PDF dla aplikacji .NET. Korzystając z interfejsu API, możesz bezproblemowo generować dokumenty PDF o prostych lub złożonych układach. Będziemy używać tego interfejsu API do obracania tekstu w dokumentach PDF. Możesz pobrać bibliotekę DLL interfejsu API lub zainstalować ją za pomocą NuGet.
PM> Install-Package Aspose.PDF
Obróć tekst w pliku PDF w C#
Istnieje wiele sposobów obracania tekstu w dokumencie PDF. Możesz obrócić fragment tekstu lub cały akapit. Zobaczmy, jak działa każda z tych rotacji tekstu.
Obrót tekstu PDF przy użyciu TextFragment w C#
Poniżej przedstawiono kroki obracania fragmentu tekstu w dokumencie PDF przy użyciu języka C#.
- Najpierw utwórz nowy dokument przy użyciu klasy Document.
- Następnie dodaj stronę do dokumentu i pobierz jej referencję metodą Document.Pages.Add().
- Następnie utwórz nowy fragment tekstu za pomocą klasy TextFragment.
- Ustaw pozycję i czcionkę fragmentu tekstu.
- Ustaw kąt obrotu za pomocą właściwości TextFragment.TextState.Rotation.
- Utwórz nowy obiekt TextBuilder i zainicjuj go obiektem Page.
- Użyj metody TextBuilder.AppendText(TextFragment), aby dodać tekst do strony.
- Na koniec zapisz dokument PDF za pomocą metody Document.Save(string).
Poniższy przykładowy kod pokazuje, jak obrócić tekst w dokumencie PDF w języku C#.
// Zainicjuj obiekt dokumentu
Document pdfDocument = new Document();
// Uzyskaj określoną stronę
var pdfPage = pdfDocument.Pages.Add();
// Utwórz fragment tekstu
TextFragment textFragment1 = new TextFragment("main text");
textFragment1.Position = new Position(100, 600);
// Ustaw właściwości tekstu
textFragment1.TextState.FontSize = 12;
textFragment1.TextState.Font = FontRepository.FindFont("TimesNewRoman");
// Utwórz obrócony fragment tekstu
TextFragment textFragment2 = new TextFragment("rotated text");
textFragment2.Position = new Position(200, 600);
// Ustaw właściwości tekstu
textFragment2.TextState.FontSize = 12;
textFragment2.TextState.Font = FontRepository.FindFont("TimesNewRoman");
textFragment2.TextState.Rotation = 45;
// Utwórz obrócony fragment tekstu
TextFragment textFragment3 = new TextFragment("rotated text");
textFragment3.Position = new Position(300, 600);
// Ustaw właściwości tekstu
textFragment3.TextState.FontSize = 12;
textFragment3.TextState.Font = FontRepository.FindFont("TimesNewRoman");
textFragment3.TextState.Rotation = 90;
// utwórz obiekt TextBuilder
TextBuilder textBuilder = new TextBuilder(pdfPage);
// Dołącz fragment tekstu do strony PDF
textBuilder.AppendText(textFragment1);
textBuilder.AppendText(textFragment2);
textBuilder.AppendText(textFragment3);
// Zapisz dokument
pdfDocument.Save("Rotation_TextFragment.pdf");
Wyjście
Obrót tekstu PDF przy użyciu TextParagraph w C#
Możesz także obrócić tekst podczas tworzenia nowego akapitu. Można to osiągnąć za pomocą klasy TextParagraph. Poniżej przedstawiono kroki, aby zastosować obrót tekstu przy użyciu klasy TextParagraph.
- Najpierw utwórz nowy dokument przy użyciu klasy Document.
- Następnie dodaj stronę do dokumentu i pobierz jej referencję metodą Document.Pages.Add().
- Następnie utwórz nowy obiekt TextParagraph.
- Utwórz nowy fragment tekstu za pomocą klasy TextFragment i ustaw tekst oraz czcionkę.
- Ustaw kąt obrotu za pomocą właściwości TextFragment.TextState.Rotation.
- Dodaj tekst do akapitu za pomocą metody TextParagraph.AppendLine(TextFragment).
- Utwórz nowy obiekt TextBuilder i zainicjuj go obiektem Page.
- Użyj metody TextBuilder.AppendParagraph(TextParagraph), aby dodać akapit do strony.
- Na koniec zapisz dokument PDF za pomocą metody Document.Save(string).
Poniższy przykładowy kod pokazuje, jak programowo obrócić tekst wewnątrz akapitu w pliku PDF.
// Zainicjuj obiekt dokumentu
Document pdfDocument = new Document();
// Uzyskaj określoną stronę
var pdfPage = pdfDocument.Pages.Add();
TextParagraph paragraph = new TextParagraph();
paragraph.Position = new Position(200, 600);
// Utwórz fragment tekstu
TextFragment textFragment1 = new TextFragment("rotated text");
// Ustaw właściwości tekstu
textFragment1.TextState.FontSize = 12;
textFragment1.TextState.Font = FontRepository.FindFont("TimesNewRoman");
// Ustaw obrót
textFragment1.TextState.Rotation = 45;
// Utwórz fragment tekstu
TextFragment textFragment2 = new TextFragment("main text");
// Ustaw właściwości tekstu
textFragment2.TextState.FontSize = 12;
textFragment2.TextState.Font = FontRepository.FindFont("TimesNewRoman");
// Utwórz fragment tekstu
TextFragment textFragment3 = new TextFragment("another rotated text");
// Ustaw właściwości tekstu
textFragment3.TextState.FontSize = 12;
textFragment3.TextState.Font = FontRepository.FindFont("TimesNewRoman");
// Ustaw obrót
textFragment3.TextState.Rotation = -45;
// Dołącz fragmenty tekstu do akapitu
paragraph.AppendLine(textFragment1);
paragraph.AppendLine(textFragment2);
paragraph.AppendLine(textFragment3);
// Utwórz obiekt TextBuilder
TextBuilder textBuilder = new TextBuilder(pdfPage);
// Dołącz akapit tekstu do strony PDF
textBuilder.AppendParagraph(paragraph);
// Zapisz dokument
pdfDocument.Save("Rotation_TextParagraph.pdf");
Wyjście
Uzyskaj bezpłatną licencję API
Możesz wypróbować Aspose.PDF for .NET za darmo, uzyskując tymczasową licencję.
Wniosek
Automatyzacja plików PDF jest szeroko stosowana do tworzenia dokumentów PDF i manipulowania nimi z poziomu aplikacji internetowych lub komputerowych. W tym artykule nauczyłeś się, jak programowo obracać tekst w formacie PDF przy użyciu języka C#. Wyraźnie omówiliśmy sposób obracania tekstu za pomocą klas TextFragment i TextParagraph. Poza tym możesz odkrywać inne funkcje, korzystając z dokumentacji Aspose.PDF for .NET. W przypadku jakichkolwiek pytań lub wątpliwości możesz skontaktować się z nami za pośrednictwem naszego forum.