世俱杯 2025

PDF处理控件Aspose.PDF功能演示:在 C# 中旋转 PDF 文档中的文本

翻译|使用教程|编辑:胡涛|2022-05-24 11:51:10.803|阅读 63 次

概述:在本文中,我们将演示如何在 C# .NET 中以编程方式旋转 PDF 文档中的文本。

# 界面/图表报表/文档/IDE等千款热门软控件火热销售中 >>

相关链接:

在 C# 中旋转 PDF 文档中的文本

 PDF已成为数字世界中的主流文档格式。它的跨平台支持使其成为生成和共享文档的一种广泛采用的格式,例如研究文章、发票等。在以编程方式生成 PDF 时,您经常需要根据布局更改文本的位置和方向文件。在本文中,我们将演示如何在 C# .NET 中以编程方式旋转 PDF 文档中的文本。

Aspose.PDF 最新下载

(一)C# .NET API 在 PDF 中旋转文本

 Aspose.PDF for .NET 是一个 C# 类库,为 .NET 应用程序提供基本和高级 PDF 操作功能。使用 API,您可以无缝地生成具有简单或复杂布局的 PDF 文档。我们将使用这个 API 来旋转 PDF 文档中的文本。您可以 下载 API 的 DLL 或使用 NuGet安装它。

PM> Install-Package Aspose.PDF
(二)在 C# 中旋转 PDF 内的文本

 有多种方法可以旋转 PDF 文档中的文本。您可以旋转文本片段或整个段落。让我们看看这些文本旋转是如何工作的。

在 C# 中使用 TextFragment 进行 PDF 文本旋转

以下是使用 C# 旋转 PDF 文档中的文本片段的步骤。

  • 首先,使用Document类创建一个新文档。
  • 然后,将页面添加到文档并使用Document.Pages.Add()方法获取其引用。
  • 之后,使用TextFragment类创建一个新的文本片段。
  • 设置文本片段的位置和字体。
  • 使用TextFragment.TextState.Rotation属性设置旋转角度。
  • 创建一个新的TextBuilder对象并使用Page对象对其进行初始化。
  • 使用TextBuilder.AppendText(TextFragment)方法将文本添加到页面。
  • 最后,使用Document.Save(string)方法保存 PDF 文档。

以下代码示例展示了如何在 C# 中旋转 PDF 文档中的文本。

// Initialize document object
Document pdfDocument = new Document();

// Get particular page
var pdfPage = pdfDocument.Pages.Add();

// Create text fragment
TextFragment textFragment1 = new TextFragment("main text");
textFragment1.Position = new Position(100, 600);

// Set text properties
textFragment1.TextState.FontSize = 12;
textFragment1.TextState.Font = FontRepository.FindFont("TimesNewRoman");

// Create rotated text fragment
TextFragment textFragment2 = new TextFragment("rotated text");
textFragment2.Position = new Position(200, 600);

// Set text properties
textFragment2.TextState.FontSize = 12;
textFragment2.TextState.Font = FontRepository.FindFont("TimesNewRoman");
textFragment2.TextState.Rotation = 45;

// Create rotated text fragment
TextFragment textFragment3 = new TextFragment("rotated text");
textFragment3.Position = new Position(300, 600);

// Set text properties
textFragment3.TextState.FontSize = 12;
textFragment3.TextState.Font = FontRepository.FindFont("TimesNewRoman");
textFragment3.TextState.Rotation = 90;

// create TextBuilder object
TextBuilder textBuilder = new TextBuilder(pdfPage);

// Append the text fragment to the PDF page
textBuilder.AppendText(textFragment1);
textBuilder.AppendText(textFragment2);
textBuilder.AppendText(textFragment3);

// Save document
pdfDocument.Save("Rotation_TextFragment.pdf");

输出

在 C# 中使用 TextFragment 进行 PDF 文本旋转

(三)结在 C# 中使用 TextParagraph 进行 PDF 文本旋转

您还可以在创建新段落时对文本应用旋转。这可以使用TextParagraph类来实现。以下是使用TextParagraph类应用文本旋转的步骤。

  • 首先,使用Document类创建一个新文档。
  • 然后,将页面添加到文档并使用Document.Pages.Add()方法获取其引用。
  • 之后,创建一个新的TextParagraph对象。
  • 使用TextFragment类创建一个新的文本片段并设置文本和字体。
  • 使用TextFragment.TextState.Rotation属性设置旋转角度。
  • 使用TextParagraph.AppendLine(TextFragment)方法将文本添加到段落。
  • 创建一个新的TextBuilder对象并使用Page对象对其进行初始化。
  • 使用TextBuilder.AppendParagraph(TextParagraph)方法将段落添加到页面。
  • 最后,使用Document.Save(string)方法保存 PDF 文档。

以下代码示例显示了如何以编程方式旋转 PDF 中段落内的文本。

// Initialize document object
Document pdfDocument = new Document();

// Get particular page
var pdfPage = pdfDocument.Pages.Add();
TextParagraph paragraph = new TextParagraph();
paragraph.Position = new Position(200, 600);

// Create text fragment
TextFragment textFragment1 = new TextFragment("rotated text");

// Set text properties
textFragment1.TextState.FontSize = 12;
textFragment1.TextState.Font = FontRepository.FindFont("TimesNewRoman");

// Set rotation
textFragment1.TextState.Rotation = 45;

// Create text fragment
TextFragment textFragment2 = new TextFragment("main text");

// Set text properties
textFragment2.TextState.FontSize = 12;
textFragment2.TextState.Font = FontRepository.FindFont("TimesNewRoman");

// Create text fragment
TextFragment textFragment3 = new TextFragment("another rotated text");

// Set text properties
textFragment3.TextState.FontSize = 12;
textFragment3.TextState.Font = FontRepository.FindFont("TimesNewRoman");

// Set rotation
textFragment3.TextState.Rotation = -45;

// Append the text fragments to the paragraph
paragraph.AppendLine(textFragment1);
paragraph.AppendLine(textFragment2);
paragraph.AppendLine(textFragment3);

// Create TextBuilder object
TextBuilder textBuilder = new TextBuilder(pdfPage);

// Append the text paragraph to the PDF page
textBuilder.AppendParagraph(paragraph);

// Save document
pdfDocument.Save("Rotation_TextParagraph.pdf");

输出

在 C# 中使用 TextParagraph 进行 PDF 文本旋转

(四)结论

 PDF 自动化被广泛用于从 Web 或桌面应用程序中创建和操作 PDF 文档。在本文中,您学习了如何使用 C# 以编程方式旋转 PDF 中的文本。我们已经明确介绍了如何使用TextFragment和TextParagraph类来旋转文本。 此外,您可以使用Aspose.PDF for .NET的文档来探索其他功能 。如果您有任何问题或疑问,您可以联系我们。



欢迎下载|体验更多Aspose文档管理产品 
获取更多信息请咨询 或 加入Aspose技术交流群(761297826

标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@dpuzeg.cn


为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
相关产品
Aspose.PDF for .NET

PDF文档创建组件,无需Adobe Acrobat,也可以在任何平台上操作PDF文档。

Aspose.Pdf for Reporting Services

Aspose.Pdf for Reporting Services 是一个强大的 .Net 解决方案,可以在 Microsoft SQL Server 2000、2005 和 2008 Reporting Services 中产生 PDF 报表。

Aspose.Words for .NET

无需Microsoft Word也可在任何平台上满足Word文档的一切操作需求。

Spire.Doc for .NET

Spire.Doc for .NET 是一款专门对 Word 文档进行操作的 .NET 类库。

VMProtect

新一代软件保护系统,将保护后的代码放到虚拟机中运行,代码反编译软件反破解。

扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP