2012-01-24 319 views
3

是否有任何要使用Excel數據源填充PDF表單的字段? (Think 1000 pdf)使用Adobe Acrobat Pro從Excel中填寫PDF表單數據

對於Excel中的每一行,創建一個基於模板「myForm.pdf」的新的空白pdf,並將Excel中列的匹配值填入「myForm.pdf」中的字段中,然後保存as「myForm(i).pdf」

最後將所有pdf合併成一個PDF文檔。

只要概念成立,VBA或Adobe for Adob​​e就可以使用。如果不是太多,一些手動部件可以。

顯然沒有太多的教程,所以我非常感謝這裏的任何專業知識。

謝謝!

+0

會VB.NET代碼的幫助嗎?我沒有專業的Adobe,所以我從來沒有嘗試過使用VBA,但我確信它可以在VBA中使用。 –

+0

構建一個從excel中獲取數據集並將其轉儲爲pdf的vb.net應用程序?我寧願看c#.net代碼,因爲我實際上並不知道vb.net,並且不希望將其轉換。 – EKet

+0

好吧讓我看看我是否可以將其轉換爲C#。今天晚些時候會發布代碼。 –

回答

6

正如所承諾的:)

久經考驗

// Add reference to iTextSharp.dll. Freely available on the web. Free to use for non commercial applications. 

using System; 
using System.Collections.Generic; 
using System.ComponentModel; 
using System.Data; 
using System.Drawing; 
using System.Linq; 
using System.Text; 
using System.IO; 
using System.Windows.Forms; 
using iTextSharp; 
using iTextSharp.text; 
using iTextSharp.text.pdf; 
using iTextSharp.text.xml; 

namespace WindowsFormsApplication3 
{ 
    public partial class Form1 : Form 
    { 
     public Form1() 
     { 
      InitializeComponent(); 
     } 

     private void button1_Click(object sender, EventArgs e) 
     { 
      // Original Pdf 
      string PDFFile = "C:\\MyOriginalPDF.pdf"; 

      // New Pdf 
      string newPDFFile = "C:\\NewPDFFILE.pdf"; 

      PdfReader pdfReader = new PdfReader(PDFFile); 
      PdfStamper pdfStamper = new PdfStamper(pdfReader, new FileStream(newPDFFile, FileMode.Create)); 

      AcroFields pdfFFields = pdfStamper.AcroFields; 

      // Fill PDF Form Fields 
      pdfFFields.SetField("FieldName1", "Value1"); 
      pdfFFields.SetField("FieldName2", "Value2"); 
      // 
      // And So on 

      // Use this to remove editting options by setting it to false 
      // To keep editing option leave it as TRUE 
      pdfStamper.FormFlattening = true; 

      // close the pdf 
      pdfStamper.Close(); 
     } 
    } 
} 

編輯:與Excel交互的從C#,我會建議訪問下面提到的鏈接。

主題:VB.NET和Excel

鏈接VB.NET and Excel

到VB.Net代碼轉換爲C#使用以下鏈接:)

主題:轉換C#代碼到VB.Net和副詩

鏈接http://www.developerfusion.com/tools

不要讓我知道,如果你還停留,我們會從那裏... :)

更多的編輯!

受你博文的啓發,我終於在博客上寫了一篇文章。現在,所有你需要做的就是複製整個代碼,並將其轉換成C#並提出相關修改,以滿足您的需求:)

主題:使用VB.Net從Excel從PDF填寫表單域/恢復數據文件

鏈接http://www.siddharthrout.com/2012/01/28/fillretrieve-data-from-pdf-form-fields-using-vb-net-from-an-excel-file/

+0

非常酷的圖書館!在博客上工作出色,工作出色。當之無愧的100分。非常感謝Siddharth。 – EKet

相關問題