示例代码定义了一个名为PdfController的API控制器,其中的GeneratePdf方法创建了一个新的PDF文档,并将内容添加到文档中。最后,将文档内容转换为字节数组,并通过File方法返回给前端。
注意,你需要在你的项目中添加对iTextSharp库的引用。可以通过在csproj文件中的ItemGroup节点中添加以下引用来实现:文章来源:https://www.toymoban.com/news/detail-645097.html
<PackageReference Include="iTextSharp" Version="5.5.13.2" />
当调用/api/pdf接口时,将返回一个带有生成的PDF文件的响应。你可以将其用于前端下载或进一步处理。文章来源地址https://www.toymoban.com/news/detail-645097.html
using System.IO;
using iTextSharp.text;
using iTextSharp.text.pdf;
using Microsoft.AspNetCore.Mvc;
[ApiController]
[Route("api/pdf")]
public class PdfController : ControllerBase
{
[HttpGet]
public IActionResult GeneratePdf()
{
// 创建新的PDF文档
Document document = new Document();
// 创建内存流用于存储生成的PDF
MemoryStream stream = new MemoryStream();
// 创建PDF写入器
PdfWriter writer = PdfWriter.GetInstance(document, stream);
// 打开文档
document.Open();
// 添加内容到文档
document.Add(new Paragraph("Hello, world!", font));
// 创建表格
PdfPTable table = new PdfPTable(3); // 3列
// 添加表头
table.AddCell("列1");
table.AddCell("列2");
table.AddCell("列3");
// 添加内容行
table.AddCell("内容1");
table.AddCell("内容2");
table.AddCell("内容3");
// 将表格添加到文档
document.Add(table);
// 关闭文档
document.Close();
// 设置响应内容类型为PDF
// Response.Headers.Add("Content-Disposition", "attachment; filename=example.pdf");
// 将文档内容作为字节数组返回给前端
return File(stream.ToArray(), "application/pdf", "example.pdf");
}
}
到了这里,关于iTextSharp 生成PDF的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!