最近幾天,PDF 文檔的自動生成和處理已成為一項要求很高的功能。在各種應用程序中,PDF 文檔是動態生成的,例如發票、收據和不同類型的報告。據此,本文介紹了 .NET 應用程序中 PDF 自動化的基本實現。最終,您將學習如何使用 C# 創建 PDF 文件。代碼示例將演示如何使用 C# 在 PDF 中插入文本、圖像、表格和其他組件。
C# .NET PDF API - 免費下載
Aspose.PDF for .NET 是一種 PDF 文件操作 API,可讓您從 .NET 應用程序中生成和處理 PDF 文件。使用 API,您可以動態生成各種報告和業務文檔。該 API 可作為 可下載的 DLL 使用,也可託管在 NuGet 上。
Install-Package Aspose.Pdf
在 C# 中創建 PDF 文件
讓我們從創建一個包含文本片段的簡單 PDF 文檔開始。以下是使用 C# 創建 PDF 文件的步驟。
- 創建一個 Document 類的對象。
- 使用 Document.Pages.Add() 方法向文檔添加頁面。
- 創建一個新的 TextFragment 對象並設置其文本。
- 將 TextFragment 添加到頁面的 Paragraphs 集合。
- 使用 Document.Save(String) 方法保存 PDF 文件。
以下代碼示例展示瞭如何使用 C# 創建一個簡單的 PDF 文件。
// 初始化文檔對象
Document document = new Document();
// 添加頁面
Page page = document.Pages.Add();
// 向新頁面添加文本
page.Paragraphs.Add(new Aspose.Pdf.Text.TextFragment("Hello World!"));
// 保存PDF
document.Save("document.pdf");
閱讀有關 創建複雜的 PDF 文檔 的更多信息。
在 C# 中編輯 PDF 文件
修改 PDF 文件與創建新文件一樣簡單。只需使用 Document 類加載文件,執行所需的操作,然後保存即可。以下是修改 PDF 的步驟。
- 創建 Document 類的對象,並為其構造函數提供 PDF 文件的路徑。
- 操縱文檔的頁面或內容。
- 使用 Document.Save() 方法保存文檔。
以下代碼示例顯示瞭如何使用 C# 修改 PDF。
// 加載PDF
var pdfDocument = new Aspose.Pdf.Document("document.pdf");
// 進行一些操作,例如添加新的空白頁面
pdfDocument.Pages.Add();
// 保存更新的 PDF
pdfDocument.Save(modifiedFileName);
使用 C# 在 PDF 中插入圖像
現在讓我們檢查如何將圖像插入 PDF 文檔。以下是執行此操作的步驟。
以下代碼示例顯示瞭如何使用 C# 將圖像添加到 PDF 文檔。
// 打開文檔
Document pdfDocument = new Document("document.pdf");
// 設定坐標
int lowerLeftX = 100;
int lowerLeftY = 100;
int upperRightX = 200;
int upperRightY = 200;
// 獲取需要添加圖片的頁面
Page page = pdfDocument.Pages[1];
// 將圖像加載到流中
FileStream imageStream = new FileStream("aspose-logo.jpg", FileMode.Open);
// 將圖像添加到頁面資源的圖像集合
page.Resources.Images.Add(imageStream);
// 使用 GSave 運算符:此運算符保存當前圖形狀態
page.Contents.Add(new Aspose.Pdf.Operators.GSave());
// 創建矩形和矩陣對象
Aspose.Pdf.Rectangle rectangle = new Aspose.Pdf.Rectangle(lowerLeftX, lowerLeftY, upperRightX, upperRightY);
Matrix matrix = new Matrix(new double[] { rectangle.URX - rectangle.LLX, 0, 0, rectangle.URY - rectangle.LLY, rectangle.LLX, rectangle.LLY });
// 使用 ConcatenateMatrix(連接矩陣)運算符:定義必須如何放置圖像
page.Contents.Add(new Aspose.Pdf.Operators.ConcatenateMatrix(matrix));
XImage ximage = page.Resources.Images[page.Resources.Images.Count];
// 使用 Do 運算符:此運算符繪製圖像
page.Contents.Add(new Aspose.Pdf.Operators.Do(ximage.Name));
// 使用 GRestore 運算符:此運算符恢復圖形狀態
page.Contents.Add(new Aspose.Pdf.Operators.GRestore());
// 保存更新的文檔
pdfDocument.Save("document.pdf");
閱讀有關 在 PDF 中插入圖像 的更多信息。
使用 C# 在 PDF 中創建表格
表格是文檔的重要組成部分,用於以行和列的形式組織數據。 Aspose.PDF for .NET 為您提供了一種在 PDF 文檔中創建和插入表格的非常簡單的方法。以下是執行此操作的步驟。
- 使用 Document 類加載 PDF 文件。
- 初始化一個表並使用 Table 類設置其列和行。
- 設置表格的設置(即邊框)。
- 通過使用 Table.Rows.Add() 方法創建行來填充表格。
- 使用 Document.Pages1.Paragraphs.Add(Table) 方法將表格添加到頁面。
- 保存 PDF 文件。
以下代碼示例顯示瞭如何使用 C# 在 PDF 文檔中創建和添加表格。
// 加載源 PDF 文檔
Aspose.Pdf.Document doc = new Aspose.Pdf.Document("document.pdf");
// 初始化 Table 的新實例
Aspose.Pdf.Table table = new Aspose.Pdf.Table();
// 將表格邊框顏色設置為 LightGray
table.Border = new Aspose.Pdf.BorderInfo(Aspose.Pdf.BorderSide.All, .5f, Aspose.Pdf.Color.FromRgb(System.Drawing.Color.LightGray));
// 設置表格單元格的邊框
table.DefaultCellBorder = new Aspose.Pdf.BorderInfo(Aspose.Pdf.BorderSide.All, .5f, Aspose.Pdf.Color.FromRgb(System.Drawing.Color.LightGray));
// 創建一個循環以添加 10 行
for (int row_count = 1; row_count < 10; row_count++)
{
// 向表中添加行
Aspose.Pdf.Row row = table.Rows.Add();
// 添加表格單元格
row.Cells.Add("Column (" + row_count + ", 1)");
row.Cells.Add("Column (" + row_count + ", 2)");
row.Cells.Add("Column (" + row_count + ", 3)");
}
// 將表格對象添加到輸入文檔的第一頁
doc.Pages[1].Paragraphs.Add(table);
// 保存包含表格對象的更新文檔
doc.Save("document_with_table_out.pdf");
閱讀更多關於在 PDF 中創建表格。
在 C# 中創建 PDF 格式的表單
PDF 中的表格用於收集讀者的數據。您可以在 PDF 表單中插入文本框、複選框、單選按鈕和其他支持的控件。 PDF格式支持兩種形式; Acro 表格和 XFA 表格(查看詳情)。以下是在 PDF 中創建和添加表單的步驟。
- 使用 Document 類加載 PDF 文件。
- 創建表單控件,例如 TextBoxField。
- 使用 Document.Form.Add(textBoxField, 1) 方法向表單添加控件。
- 保存 PDF 文檔。
以下代碼示例顯示瞭如何使用 C# 向 PDF 文檔添加表單。
// 打開文檔
Document pdfDocument = new Document("document.pdf");
// 創建字段
TextBoxField textBoxField = new TextBoxField(pdfDocument.Pages[1], new Aspose.Pdf.Rectangle(100, 200, 300, 300));
textBoxField.PartialName = "textbox1";
textBoxField.Value = "Text Box";
// TextBoxField.Border = 新邊框(
Border border = new Border(textBoxField);
border.Width = 5;
border.Dash = new Dash(1, 1);
textBoxField.Border = border;
textBoxField.Color = Aspose.Pdf.Color.FromRgb(System.Drawing.Color.Green);
// 向文檔添加字段
pdfDocument.Form.Add(textBoxField, 1);
// 保存修改後的 PDF
pdfDocument.Save("output.pdf");
閱讀更多關於在 PDF 中創建表單。
結論
在本文中,您學習瞭如何使用 C# 從頭開始創建 PDF 文件。此外,您已經知道如何以編程方式在 PDF 文檔中插入各種類型的組件,例如文本、圖像、表格和表單。您可以使用 文檔 了解有關 PDF API 的更多信息。
也可以看看
信息:Aspose 提供了一個免費的在線網絡應用程序,允許您在線查看 PDF,另一個允許您將 PDF 轉換為視頻,還有一個允許您在線編輯 PDF.