从Acrobat Reader VSTO调用Excel

时间:2011-09-09 09:14:10

标签: c# vsto excel-2007 acrobat

这是我的问题。

我在VSTO的帮助下制作了一个Excel模板。 Excel中的所有数据显示都来自DataBase。在Excel模板中,我放置了一个打开现有pdf表单模板的Button,用DB中的数据填充它并保存副本。要做到这一点,我使用了ITextSharp库,这对我帮助很大。直到这里没问题。

现在我想要做的是PDF中的每个字段都与Excel中的单元格有链接。 PDF是只读的,它只是显示存储在数据库中的数据的一种方式。当用户想要修改字段的值时,他必须进入Excel才能这样做。因此,目标是当他想要修改pdf中的值时,他只需单击字段,然后他将重定向Excel中的正确单元格以修改该值。

我不认为在Acrobat中有一种方法可以在JavaScript中执行此操作,因为如果我没有弄错,Acrobat将不允许您从JS调用宏。

我想也许在VSTO中有一种方法来控制Acrobat,但我没有找到它。

如果您对如何做到这一点有任何想法,我会很高兴 这是我的代码的一部分,也许它会更清晰。

        string pdfTemplatePath = @"C:\Files.pdf";
        string pdfFinalFile = @"C:\fileCopy.pdf";
        PdfReader reader = new PdfReader(pdfTemplatePath);
        PdfStamper stamper = new PdfStamper(reader, new FileStream(pdfFinalFile, FileMode.Create));

        AcroFields form = stamper.AcroFields;
        foreach (DataRow row in data.Rows)
        {
            form.SetField(row["Name"].ToString(), row["Value"].ToString());

        }
        stamper.FormFlattening= false;
        stamper.Close();

0 个答案:

没有答案