PDF处理控件Aspose.PDF功能演示:使用 C# 创建多列 PDF 文档

翻译|使用教程|编辑:张莹心|2021-10-13 16:05:43.350|阅读 20 次

概述:多栏 PDF 用于各种类型的出版物,例如杂志、报纸、研究文章等。在使用 PDF 自动化时,您可能会遇到需要以编程方式生成多栏 PDF 的情况。据此,本文介绍了如何使用 C# 创建多列 PDF 文件。

# 31款JAVA开发必备控件和工具 # 企业数字化建设合规无风险[专题]

多栏 PDF 用于各种类型的出版物,例如杂志、报纸、研究文章等。在使用 PDF 自动化时,您可能会遇到需要以编程方式生成多栏 PDF 的情况。据此,本文介绍了如何使用 C# 创建多列 PDF 文件。

  • 用于创建多列 PDF 的 C# API
  • 创建多列 PDF 文件
  • 用于创建多列 PDF 的 C# API

Aspose.PDF for .NET是一个强大且功能丰富的 API,用于创建和操作 PDF 文档。我们将使用此 API 使用 C# 创建多列 PDF 文件。

点击下载最新版Aspose.PDF for .NET

使用 C# 创建多列 PDF

Aspose.PDF for .NET 使您可以更轻松地创建多列 PDF 文件。以下步骤从头开始创建多列 PDF。
  • 创建一个新的Document对象。
  • 使用Document.PageInfo.Margin.Left和Document.PageInfo.Margin.Right属性设置页边距。
  • 使用Documents.Pages.Add()方法在 PDF 中添加一个新页面,并将其引用添加到Page对象中。
  • 创建一个新的Graph对象并使用Page.Paragraphs.Add()方法将其添加到段落中。
  • 创建一个新Line并将其添加到Graph.Shapes集合中。
  • 使用Page.Paragraphs.Add()方法向页面添加标题文本。
  • 创建一个新的FloatingBox并指定列数、列间距和列宽。
  • 创建另一个Graph对象。
  • 向Graph.Shapes集合中添加一条新线。
  • 将 Graph 添加到FloatingBox.Paragraphs集合。
  • 创建一个新的TextFragment并将其添加到FloatingBox.Paragraphs集合。
  • 使用Page.Paragraphs.Add()方法将FloatingBox添加到页面。
  • 使用Document.Save(string)方法保存 PDF 文件。

以下代码示例展示了如何使用 C# 创建两列 PDF。

// For complete examples and data files, please go to https://github.com/aspose-pdf/Aspose.PDF-for-.NET
// Create document
Document doc = new Document();

// Specify the left margin info for the PDF file
doc.PageInfo.Margin.Left = 40;
// Specify the Right margin info for the PDF file
doc.PageInfo.Margin.Right = 40;

// Add page
Page page = doc.Pages.Add();

// Create a graph object
Aspose.Pdf.Drawing.Graph graph1 = new Aspose.Pdf.Drawing.Graph(500, 2);
// Add the graph to paraphraphs collection of section object
page.Paragraphs.Add(graph1);

// Specify the coordinates for the line
float[] posArr = new float[] { 1, 2, 500, 2 };
Aspose.Pdf.Drawing.Line l1 = new Aspose.Pdf.Drawing.Line(posArr);
graph1.Shapes.Add(l1);

// Create string variable with text containing HTML tags
string s = "<font face=\"Times New Roman\" size=4>" +
"<strong> How to Steer Clear of money scams</<strong> "
+ "</font>";

// Create text fragment and initialize it
HtmlFragment heading_text = new HtmlFragment(s);
page.Paragraphs.Add(heading_text);

// Create a floating box
Aspose.Pdf.FloatingBox box = new Aspose.Pdf.FloatingBox();

// Add four columns in the section
box.ColumnInfo.ColumnCount = 2;
// Set the spacing between the columns
box.ColumnInfo.ColumnSpacing = "5";
// Set column widths
box.ColumnInfo.ColumnWidths = "250 250";

// Create a new text fragment
TextFragment text1 = new TextFragment("By A Googler (The Official Google Blog)");
text1.TextState.FontSize = 8;
text1.TextState.LineSpacing = 2;
box.Paragraphs.Add(text1);
text1.TextState.FontSize = 10;
text1.TextState.FontStyle = FontStyles.Italic;

// Create a graph object to draw a line
Aspose.Pdf.Drawing.Graph graph2 = new Aspose.Pdf.Drawing.Graph(50, 10);

// Specify the coordinates for the line
float[] posArr2 = new float[] { 1, 10, 100, 10 };
Aspose.Pdf.Drawing.Line l2 = new Aspose.Pdf.Drawing.Line(posArr2);
graph2.Shapes.Add(l2);

// Add the line to paragraphs collection of section object
box.Paragraphs.Add(graph2);

// Create a new text fragment
TextFragment text2 = new TextFragment(@"Sed augue tortor, sodales id, luctus et, pulvinar ut, eros. Suspendisse vel dolor. Sed quam. Curabitur ut massa vitae eros euismod aliquam. Pellentesque sit amet elit. Vestibulum interdum pellentesque augue. Cras mollis arcu sit amet purus. Donec augue. Nam mollis tortor a elit. Nulla viverra nisl vel mauris. Vivamus sapien. nascetur ridiculus mus. Nam justo lorem, aliquam luctus, sodales et, semper sed, enim Nam justo lorem, aliquam luctus, sodales et,nAenean posuere ante ut neque. Morbi sollicitudin congue felis. Praesent turpis diam, iaculis sed, pharetra non, mollis ac, mauris. Phasellus nisi ipsum, pretium vitae, tempor sed, molestie eu, dui. Duis lacus purus, tristique ut, iaculis cursus, tincidunt vitae, risus. Sed commodo. *** sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nam justo lorem, aliquam luctus, sodales et, semper sed, enim Nam justo lorem, aliquam luctus, sodales et, semper sed, enim Nam justo lorem, aliquam luctus, sodales et, semper sed, enim nAenean posuere ante ut neque. Morbi sollicitudin congue felis. Praesent turpis diam, iaculis sed, pharetra non, mollis ac, mauris. Phasellus nisi ipsum, pretium vitae, tempor sed, molestie eu, dui. Duis lacus purus, tristique ut, iaculis cursus, tincidunt vitae, risus. Sed commodo. *** sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Sed urna. . Duis convallis ultrices nisi. Maecenas non ligula. Nunc nibh est, tincidunt in, placerat sit amet, vestibulum a, nulla. Praesent porttitor turpis eleifend ante. Morbi sodales.nAenean posuere ante ut neque. Morbi sollicitudin congue felis. Praesent turpis diam, iaculis sed, pharetra non, mollis ac, mauris. Phasellus nisi ipsum, pretium vitae, tempor sed, molestie eu, dui. Duis lacus purus, tristique ut, iaculis cursus, tincidunt vitae, risus. Sed commodo. *** sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Sed urna. . Duis convallis ultrices nisi. Maecenas non ligula. Nunc nibh est, tincidunt in, placerat sit amet, vestibulum a, nulla. Praesent porttitor turpis eleifend ante. Morbi sodales.");
box.Paragraphs.Add(text2);

// Add floating box to the page
page.Paragraphs.Add(box);

// Save PDF file
doc.Save("multi-column.pdf");

以下是Aspose.PDF for .NET生成的多栏PDF截图。

PDF处理控件Aspose.PDF功能演示:使用 C# 创建多列 PDF 文档

如果你想试用Aspose的全部完整功能,可联系在线客服获取30天临时授权体验。


还想要更多吗?您可以点击阅读【Aspose最新资源在线文库】查找需要的教程资源。如果您有任何疑问或需求,请随时加入Aspose技术交流群(761297826),我们很高兴为您提供查询和咨询



标签:

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


为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
在线咨询
联系我们
TOP
在线客服系统
live chat