本文提供了有關如何創建 ASP.NET Core PDF 生成器應用程序的完整教程。它將幫助您了解如何在 ASP.NET Core 應用程序中創建 PDF 文件。

ASP.NET Core PDF 生成器

PDF(便攜式文檔格式)是一種眾所周知且廣泛使用的格式,用於顯示或查看數字文檔,無需擔心兼容的軟件、操作系統或硬件。以編程方式創建 PDF 文件對於在 Web 應用程序中在線生成報告、簡歷、發票等文檔非常有用。因此,在本文中,我將指導您如何使用 C# 在 ASP.NET Core Web 應用程序中創建 PDF 文件。

在 ASP.NET Core 中創建 PDF 文件

為了以編程方式創建 PDF 文件,我們將在 ASP.NET Core Web 應用程序中開發一個 PDF 編輯器。此應用程序將基於 WYSIWYG HTML 編輯器創建內容,並基於 Aspose.PDF for .NET 生成基於該內容的 PDF。因此,讓我們按照以下步驟開始在 ASP.NET Core 中創建我們的 PDF 編輯器應用程序。

  • 在 Visual Studio 中創建一個新的 ASP.NET Core Web 應用程序。
asp.net core 生成pdf
  • 從模板中選擇 Web Application (Model-View-Controller)。
asp.net 核心網絡應用程序

由於此 PDF 編輯器使用 WYSIWYG HTML 編輯器來創建 PDF 文檔的內容,因此為了演示,我使用了 CKEditor 的標準包。您可以隨意選擇最能滿足您需求的最喜歡的 HTML 編輯器。如果您願意使用上述編輯器,請按照以下步驟進行集成,否則跳過它。

  • 下載 CKEditor 的 package,將其解壓縮並複制/粘貼到 wwwroot 目錄中的文件夾。
asp.net pdf 生成器
  • 打開 NuGet Package Manager 並安裝 Aspose.PDF 和 CKEditor 的包。
在 ASP.NET Core 中創建 PDF
  • 打開 Views/Home/index.cshtml 並將腳本替換為以下內容。
@{
    ViewData["Title"] = "PDF Creator";
}
<script src="~/ckeditor/ckeditor.js"></script>
<div class="row">
    <div class="col-md-12">
        <h2>Create a PDF File</h2>
        <form method="post">
            <textarea name="editor1" id="editor1" rows="80" cols="80">
                Start creating your PDF document.
            </textarea>
            <br />
            <input type="submit" class="btn btn-success" value="Generate PDF" />
            <script>
                // <html>更換<textarea id="editor1">使用 CKEditor</html>
                // 例如,使用默認配置。
                CKEDITOR.replace('editor1');
            </script>
        </form>
    </div>
</div>
  • 打開 Controllers/HomeController.cs 並將代碼替換為以下內容。
public class HomeController : Controller
{ 
	public IActionResult Index()
	{
		return View();
	} 

	[HttpPost]
	public FileResult Index(string editor1)
	{ 
		// 創建一個唯一的文件名
		string fileName = Guid.NewGuid() + ".pdf";

		// 將 HTML 文本轉換為流
		byte[] byteArray = Encoding.UTF8.GetBytes(editor1);

		// 從 HTML 生成 PDF
		MemoryStream stream = new MemoryStream(byteArray);
		HtmlLoadOptions options = new HtmlLoadOptions();
		Document pdfDocument = new Document(stream, options);

		// 為 PDF 文件創建內存流
		Stream outputStream = new MemoryStream();
		pdfDocument.Save(outputStream);

		// 返回生成的PDF文件
		return File(outputStream, System.Net.Mime.MediaTypeNames.Application.Pdf, fileName);
	} 

	[ResponseCache(Duration = 0, Location = ResponseCacheLocation.None, NoStore = true)]
	public IActionResult Error()
	{
		return View(new ErrorViewModel { RequestId = Activity.Current?.Id ?? HttpContext.TraceIdentifier });
	}
}
  • 構建應用程序並在您喜歡的瀏覽器中運行它。

在 ASP.NET Core 應用程序中創建 PDF - 演示

以下是如何使用我們剛剛創建的 ASP.NET Core PDF 生成器創建 PDF 文件的演示。

下載源代碼

您可以從 GitHub 下載 ASP.NET PDF 編輯器的完整源代碼。

獲得 Aspose.PDF for .NET 的免費許可

您可以申請 Aspose.PDF for .NET 的免費臨時許可,以避免評估限制。

相關文章