Rotera text i PDF-dokument i C#

Om du genererar PDF-filer programmatiskt kan du behöva rotera PDF-text i en specifik vinkel. Det kan vara svårt att ändra orienteringen och positionen för en text i en PDF. Lösningen i den här artikeln har dock gjort det ganska enkelt att rotera text i PDF med C#. Så låt oss gräva ner och kolla hur man roterar text i en PDF i C#.

C#-bibliotek för att rotera text i PDF

För att rotera text i PDF kommer vi att använda Aspose.PDF för .NET. Det är ett C#-klassbibliotek som tillhandahåller grundläggande såväl som avancerade PDF-manipuleringsfunktioner för .NET-applikationer. Med hjälp av biblioteket kan du generera PDF-dokument med enkla eller komplexa layouter sömlöst.

Du kan antingen ladda ner bibliotekets DLL eller installera den med NuGet.

PM> Install-Package Aspose.PDF

Hur man roterar text i PDF i C#

Det finns flera sätt att rotera text i en PDF-fil med C#. Du kan antingen rotera ett textfragment eller hela stycket. Låt oss se hur var och en av dessa textrotationer fungerar.

C# Rotera text i PDF med TextFragment

Följande är stegen för att rotera ett textfragment i en PDF med C#.

Följande kodexempel visar hur man roterar text i en PDF-fil i C#.

// Initiera dokumentobjekt
Document pdfDocument = new Document();
            
// Skaffa en speciell sida
var pdfPage = pdfDocument.Pages.Add();
            
// Skapa textfragment
TextFragment textFragment1 = new TextFragment("main text");
textFragment1.Position = new Position(100, 600);
            
// Ställ in textegenskaper
textFragment1.TextState.FontSize = 12;
textFragment1.TextState.Font = FontRepository.FindFont("TimesNewRoman");
            
// Skapa ett roterat textfragment
TextFragment textFragment2 = new TextFragment("rotated text");
textFragment2.Position = new Position(200, 600);
            
// Ställ in textegenskaper
textFragment2.TextState.FontSize = 12;
textFragment2.TextState.Font = FontRepository.FindFont("TimesNewRoman");
textFragment2.TextState.Rotation = 45;
            
// Skapa ett roterat textfragment
TextFragment textFragment3 = new TextFragment("rotated text");
textFragment3.Position = new Position(300, 600);
            
// Ställ in textegenskaper
textFragment3.TextState.FontSize = 12;
textFragment3.TextState.Font = FontRepository.FindFont("TimesNewRoman");
textFragment3.TextState.Rotation = 90;
            
// skapa TextBuilder-objekt
TextBuilder textBuilder = new TextBuilder(pdfPage);
            
// Lägg till textfragmentet till PDF-sidan
textBuilder.AppendText(textFragment1);
textBuilder.AppendText(textFragment2);
textBuilder.AppendText(textFragment3);
            
// Spara dokument
pdfDocument.Save("Rotation_TextFragment.pdf");

Produktion

PDF-textrotation med TextFragment i C#

Rotera PDF-text med TextParagraph i C#

Du kan också använda rotation på texten medan du skapar ett nytt stycke. Detta kan uppnås med klassen TextParagraph. Följande är stegen för att tillämpa textrotation i PDF med TextParagraph-klassen.

Följande kodexempel visar hur man roterar text i ett stycke i PDF i C#.

// Initiera dokumentobjekt
Document pdfDocument = new Document();
           
// Skaffa en speciell sida
var pdfPage = pdfDocument.Pages.Add();
TextParagraph paragraph = new TextParagraph();
paragraph.Position = new Position(200, 600);
            
// Skapa textfragment
TextFragment textFragment1 = new TextFragment("rotated text");
            
// Ställ in textegenskaper
textFragment1.TextState.FontSize = 12;
textFragment1.TextState.Font = FontRepository.FindFont("TimesNewRoman");
            
// Ställ in rotation
textFragment1.TextState.Rotation = 45;
            
// Skapa textfragment
TextFragment textFragment2 = new TextFragment("main text");
            
// Ställ in textegenskaper
textFragment2.TextState.FontSize = 12;
textFragment2.TextState.Font = FontRepository.FindFont("TimesNewRoman");
            
// Skapa textfragment
TextFragment textFragment3 = new TextFragment("another rotated text");
            
// Ställ in textegenskaper
textFragment3.TextState.FontSize = 12;
textFragment3.TextState.Font = FontRepository.FindFont("TimesNewRoman");
            
// Ställ in rotation
textFragment3.TextState.Rotation = -45;
            
// Lägg till textfragmenten till stycket
paragraph.AppendLine(textFragment1);
paragraph.AppendLine(textFragment2);
paragraph.AppendLine(textFragment3);
            
// Skapa TextBuilder-objekt
TextBuilder textBuilder = new TextBuilder(pdfPage);
            
// Lägg till textstycket till PDF-sidan
textBuilder.AppendParagraph(paragraph);

// Spara dokument
pdfDocument.Save("Rotation_TextParagraph.pdf");

Produktion

PDF-textrotation med TextParagraph i C#

Gratis C#-bibliotek för att rotera text i PDF

Du kan få en gratis tillfällig licens och rotera text i PDF-filer utan några begränsningar.

Utforska C# PDF-biblioteket

Du kan utforska andra funktioner i C# PDF-biblioteket med hjälp av dokumentationen. Om du skulle ha några frågor eller funderingar kan du kontakta oss via vårt forum.

Slutsats

PDF-automatisering används allmänt för att skapa och manipulera PDF-dokument från webben eller skrivbordsapplikationer. I den här artikeln har du lärt dig hur du roterar text i PDF med C#. Vi har uttryckligen täckt hur man roterar text med hjälp av klasserna TextFragment och TextParagraph. Du kan enkelt använda de medföljande kodexemplen i dina applikationer efter att ha integrerat vårt C# PDF-bibliotek.

Se även