保存PDF文件作为字节数组或使用Rotativa流数组、字节、文件、PDF

2023-09-04 01:21:28 作者:のゞ寳贝ノ

我试图将HTML转换成使用Rotativa PDF格式,但我想在保存为一个字节数组或数据流,所以我可以很容易地将其连接到一个邮件什么的。我找到了解决办法here但该文件不能被任何PDF阅读器打开,因为它是不支持的格式或该文件已损坏。

I'm trying to convert html to a PDF using Rotativa but I want to save at as a byte array or a stream so I can easily attach it to a mail or something. I found a solution here but the file can't be opened by any PDF reader because it's not a supported format or the file is corrupted.

下面是另一个solution在同一个线程,但我无法弄清楚什么是所需的参数传递给这一功能,我找不到任何文档Rotativa网上。

Here is another solution from the same thread but I can't figure out what is the required parameters to pass to this function and I couldn't find any documentation for Rotativa online.

推荐答案

我找到了解决办法here

            var actionPDF = new Rotativa.ActionAsPdf("YOUR_ACTION_Method", new { id = ID, lang = strLang } //some route values)
            {
                //FileName = "TestView.pdf",
                PageSize = Size.A4,
                PageOrientation = Rotativa.Options.Orientation.Landscape,
                PageMargins = { Left = 1, Right = 1 }
            };
            byte[] applicationPDFData = actionPDF.BuildPdf(ControllerContext);