如何使用C#和ItextSharp库下载简单的PDF文件

时间:2019-02-04 10:24:05

标签: c# itext

我正在尝试在我的项目中生成PDF报告。但是当我想测试下载功能时发现了一个问题。

当我调试它时,我发现我的代码成功返回了下载函数中的值。但是,运行此功能时,我的浏览器中没有下载PDF文件。

请帮助我找到我的代码有什么问题... 谢谢

public byte[] CreatePdf()
{
    var Stream = new MemoryStream();
    var Doc = new Document();

    var FileName = "Coba PDF";
    Doc.AddAuthor("Awan");
    Doc.SetMargins(0f, 0f, 0f, 0f);
    PdfPTable TableLayout = new PdfPTable(2);
    PdfWriter.GetInstance(Doc, Stream).CloseStream = false;
    Doc.Open();

    Doc.Add(Header(TableLayout));

    Doc.Close();
    var file = Stream.ToArray();

    return file;
}

private PdfPTable Header(PdfPTable tableHeader)
{
    var KMBDLogo = Image.GetInstance(this.Path + "\\wwwroot\\Assets\\logo.png");
    KMBDLogo.ScaleToFit(100, 50);
    tableHeader.SetWidths(new[] { 20,80 });
    tableHeader.WidthPercentage = 100;

    //set isi setiap cell
    tableHeader.AddCell(new PdfPCell(KMBDLogo)
    {
        Border = Rectangle.NO_BORDER,
        Rowspan = 3
    });

    tableHeader.AddCell(new PdfPCell(new Phrase("BLABLABLAB", this.FontTitle))
    {
        Border = Rectangle.NO_BORDER,
        Colspan = 3,
        VerticalAlignment = Element.ALIGN_MIDDLE,
    });
    return tableHeader;
}

public FileResult Download(byte[] wow)
{
    return File(wow, "application/pdf", "WowBanget.pdf");
}


       This is my OnGet() function : 
Public void OnGet()
{

PDFService Pdf = new PDFService();
 Pdf.download(pdf.createpdf());

   }

0 个答案:

没有答案