zoukankan      html  css  js  c++  java
  • [.Net]

    背景

    基于 PDF Template 预填充表单项,生成一份新的 PDF 文件,并保留表单域允许继续修改。

    代码段

    using iTextSharp.text.pdf;
    
    /* Code Snippet */
    using (var dia = new SaveFileDialog())
    {
        dia.Filter = @"PDF files|*.pdf";
        dia.FileName = string.Format("PDF_{0}", DateTime.Today.ToString("yyyy-MM-dd"));
        if (dia.ShowDialog() == DialogResult.OK)
        {
            using (FileStream fsWrite = new FileStream(dia.FileName, FileMode.OpenOrCreate, FileAccess.Write))
            {
                using (var reader = new PdfReader(@"TemplatesPDFTemplateTemplate01.pdf"))
                {
                    using (var stamper = new PdfStamper(reader, fsWrite))
                    {
                        stamper.Writer.CloseStream = false;
    
                        // 保留表单域,允许继续编辑
                        stamper.FormFlattening = false;
    
                        // 更新表单域字段
                        var form = stamper.AcroFields;
                        form.SetField("form1[0].#subform[0].flt_txtUserName[0]", "username");
                        stamper.Close();
                    }
                }
            }
            MessageBox.Show("Report has been exported", Resources.Common_Successed, MessageBoxButtons.OK, MessageBoxIcon.Information);
        }
    }
    
  • 相关阅读:
    五分钟上手Markdown
    css中居中方法小结
    事务和同步锁
    插入排序
    插入排序
    交换排序
    eclipse 常用快捷键
    交换排序
    二叉搜索树(BST)
    二叉树遍历以及根据前序遍历序列反向生成二叉树
  • 原文地址:https://www.cnblogs.com/jinzesudawei/p/7464090.html
Copyright © 2011-2022 走看看