繁体   English   中英

在信头上导出 RDLC

[英]Exporting RDLC on letter head

我有一个要求将RDLC报告导出到PDF,它还应该在后台包含公司的信头。 我看到的问题是RDLC有一个header,body和footer,我们如何应用常见的图像背景? 对这个问题有任何想法吗?

(作为答案发布,因为评论太长了。)

我不知道直接在 RDLC 中添加页面背景的方法。 但是,我们的报告生成器(MS Access,而不是 RDLC)遇到了类似的问题,并通过 (1) 创建没有信笺抬头的 PDF 然后 (2) 使用PDFSharp将生成的 PDF 与信笺抬头(“背景” ) PDF。 像这样的东西也可能适用于您的用例。

我们使用以下代码:

public static void AddBackground(string source, string background, string result)
{
    using (var formBackground = XPdfForm.FromFile(background))
    using (var pdf = PdfReader.Open(source, PdfDocumentOpenMode.Modify))
    {
        foreach (var page in pdf.Pages.Cast<PdfPage>())
        {
            var xg = XGraphics.FromPdfPage(page, XGraphicsPdfPageOptions.Prepend);
            xg.DrawImage(formBackground, 0, 0);

            if (formBackground.PageIndex < formBackground.PageCount - 1)
            {
                formBackground.PageIndex += 1;
            }
        }

        pdf.Save(result);
    }
}

所有参数都是相应 PDF 文件的路径。 If the background PDF has less pages than the source PDF, then the last page of the background PDF is added to all remaining source PDF pages. 如果您的第一页的背景与所有其余页面的背景不同,这很有用,您只需要一个 2 页背景 PDF 即可。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM