Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
ITextSharp and wwDotNetBridge to fill in PDF forms
Message
From
29/10/2015 10:58:16
 
 
To
29/10/2015 10:24:09
Charlie Schreiner
Myers and Stauffer Consulting
Topeka, Kansas, United States
General information
Forum:
Visual FoxPro
Category:
Third party products
Environment versions
Visual FoxPro:
VFP 9 SP2
OS:
Windows 10
Network:
Windows 2008 Server
Database:
MS SQL Server
Application:
Web
Miscellaneous
Thread ID:
01626591
Message ID:
01626622
Views:
78
I thought I would mention CLEAR RESOURCES [ FileName], but the more I look, it seems that while your code is in VFP, the buttons aren't. So I take it back.

LOL!!! That is correct. iTextSharp is a C# library that I am accessing from VFP using Rick Strahl's wwDotNetBridge. The buttons are buttons in a PDF document.

Even more mysterious is that I am testing this code in C# and it doesn't replace the button there either!

>>Hi All.
>>
>>I am using this code to fill in fillable PDF forms (error checking removed for brevity)
>>
>>
>>Do wwDotNetBridge
>>loBridge = CREATEOBJECT("wwDotNetBridge", "V4")
>>loFdfReader = loBridge.CreateInstance("iTextSharp.text.pdf.FdfReader", tcFDF_nme)
>>loPdfReader = loBridge.CreateInstance("iTextSharp.text.pdf.PdfReader", tcTemplate_nme)
>>loFileMode = loBridge.CreateComValue()
>>loFileMode.SetValueFromStaticProperty("System.IO.FileMode", "Create")
>>loFileStream = loBridge.CreateInstance("System.IO.FileStream", tcPDF_nme, loFileMode)
>>loStamper = loBridge.CreateInstance("iTextSharp.text.pdf.PdfStamper", loPdfReader, loFileStream, ;
>>	loBridge.ConvertToDotNetValue(0, "byte"), .t.)
>>loStamper.AcroFields.SetFields(loFdfReader)
>>
>>
>>This code works flawlessly. The problem is the next few lines of code that I added in order to change the image on a command button. It runs without error, but it doesn't change the image on the command button either.
>>
>>
>>loForm = loStamper.AcroFields
>>loCmd = loBridge.InvokeMethod(loForm, "GetNewPushbuttonFromField", "cmdSignature")
>>loSig = loBridge.InvokeStaticMethod("iTextSharp.text.Image", "GetInstance", "E:\Marcia\MGASig.tif")
>>loBridge.setstaticproperty(loCmd, "Image", loSig)
>>loBridge.InvokeMethod(loForm, "ReplacePushbuttonField", "cmdSignature", loCmd.Field)
>>
>>
>>Does anyone have any idea what the problem might be?
>>
>>TIA.
Previous
Reply
Map
View

Click here to load this message in the networking platform