Acrobat SDK Code
Hi,
This might be too much to ask but I was wondering if anyone has any VB.Net code they would like to share pertaining to the Acrobat SDK? I am gradually becoming more comfortable with it but i am still running into several mind boggling issues that i have not been able to resolve via help and web searching. I was hoping someone has some "stable" methods for combining PDF files and adding watermarks to existing files. I have created some methods (using the SDK samples as a foundation) but their performance is pretty inconsistant. I seem to be encountering alot of errors due to the Acrobat process not closing in the background.
Any help will be greatly appreciated.
Thanks,
Joel
Hopefully some guys are general and contribute some codes.
I am also wating for some code to allow drawing a text select box on a PDF from my vb.net form.
Similar Messages
-
What gotchas should we watch out for when porting code from the Adobe SDK to the Acrobat SDK?
What gotchas should we watch out for when porting code from the Adobe SDK to the Acrobat SDK?
... and the other way around?
I have found some evidence that the preprocessor variable PLUGIN seems to prevent macros from includes from being defined. The NPROC and SPROC constructs seem to be involved (partners in crime, if you will).
-Ramon
ps: Please see my related thread "What is the difference between xxProcs.h and xxCalls.h?"Here's a gotcha that I bumped into:
extern "C" HINSTANCE gHINSTANCE;
I found it in a successfully developed code on the Windows/Plugin side. It is something that I had never used on the APDFL side AND my Windows linker is complaining about several gXXXX missing functions.
IOW: It sounds like the above statement is the solution to my linking problems. Somehow the APDFL seems to take care of the C vs. C++ details.
-Ramon -
Execute Javasript Code in Acrobat SDK
Hi,
I want to execute a javascript code in acrobat sdk, is there a way to write javascript code or call javascript function.
please guide.Where do you want to execute it from?
A plug-in?
An external program for a user who is watching Acrobat?
A button in a PDF?
A web process?
Something else? -
Merging PDF / Page Numbers / Acrobat SDK V9 & LiveCycle
Hello everyone,
I use Adobe LiveCycle to create forms, Visual Studio 2005 and the Acrobat SDK for the application I'm programming to fill in these forms. The application fills in the forms and merges them with no issues.
The problem I have is that these pages have page numbers in the upper right. I use the Page N of M object on these forms in LiveCycle. PDF page numbers are filled in correctly when filling in the forms, but when I merge PDFs, the pages keep their original page numbers. I've looked at the Windows - Interapplication Communications even using templates to no avail.
How can I merge these pdf's and have my program renumber these pages correctly and how can insert pages anywhere I want in the merge document?
Below is the code I use to merge the PDF's. It was posted in a forum.
Sub MergePDF(ByVal ThePath As String, ByVal outFileName As String)
On Error GoTo serror
Dim dPDDocMerge As New Acrobat.AcroPDDoc
Dim dPDDoc As New Acrobat.AcroPDDoc
Dim strFiles() As String
Dim numPage As Integer
Dim TotalPage As Integer
Dim objThisFile As IO.FileInfo 'get FileInfo object for file string
strFiles = System.IO.Directory.GetFiles(ThePath) ' Read in the file names
Dim b As Boolean ' mostly for testing purposes... could use it for error 'checking to make sure that a file is really added before deleleting it...
For i As Integer = 0 To strFiles.Length - 1 ' run through all the files in 'the directory
objThisFile = New IO.FileInfo(strFiles(i)) ' Get the extension
If objThisFile.Extension = ".pdf" Then ' Only add in PDFs
If dPDDocMerge.GetFileName = "" Then ' check if it's the first file
dPDDocMerge = New Acrobat.AcroPDDoc
b = dPDDocMerge.Open(strFiles(i)) ' open first file
TotalPage = dPDDocMerge.GetNumPages
Else
dPDDoc = New Acrobat.AcroPDDoc
b = dPDDoc.Open(strFiles(i)) ' open other files
numPage = dPDDocMerge.GetNumPages ' get the page count
TotalPage += numPage
b = dPDDocMerge.InsertPages(numPage - 1, dPDDoc, 0, dPDDoc.GetNumPages, _ False) ' Insert
End If
End If
Next
'b = dPDDocMerge.Save(1, ThePath & "\" & outFileName) ' save file
b = dPDDocMerge.Save(1, ThePath & "\" & "\MyTest.PDF") ' save file
b = dPDDocMerge.Close()
Exit Sub
serror:
MsgBox(ErrorToString)
End Sub
Thanks for any code or advice.You can't merge LiveCycle forms this way :(. LC forms are NOT standard PDF files and can't be processed in the same way.
-
How to Use Acrobat SDK for Automation Using VB or Perl
Hi Forum,
I am a new bie, just 2 days old to acrobat and javascript, and I am basically a perl developer
I am using Adobe Acrobat 9 Pro,
I downloaded Acrobat SDK, but i don't know what else to do further, how to use??
I tried to start learning SDK, but no proper documents i found to learn and start using SDK,
Please suggest some guide or documentation for start learning Acrobat SDK (Step by Step guide)
Here with I have created a small script to merge two pdf
// Create a new PDF document:
var newDoc = app.newDoc();
// Insert doc1.pdf:
newDoc.insertPages({
nPage : -1,
cPath : "/d/sathish/1.pdf",
// Insert doc2.pdf:
newDoc.insertPages({
nPage : newDoc.numPages-1,
cPath : "/d/sathish/2.pdf",
// Save the new document:
newDoc.saveAs("/d/sathish/myNewDoc.pdf");
My code is working fine and merging properly,
Is there any way to execute this script through commandline or using some other scripting languages like perl or through VB
My objective is to automate the merging process without any manual intervention, I don't want to open acrobat manually to execute this javacript, i want to automate that process too,
Please suggest me which will be very helpful to me,
Thanks in advance
Thanks & Regards
Sathish V.It is a big SDK and to learn its features requires a lot of reading. But to start with I guess I should start with "Introduction to SDK".
Since you want to control Acrobat from another application you should consider this under "Interapplication communication". You will be using OLE/COM. -
Hi,
Here I want to known one thing clearly, that is I was developed one application in C# with Acrobat SDK.
In my application I am using Acrobat AxAcroPDFLib.AxAcroPDF and also some other acrobat class.
In my development system i am using Acrobat 7.0.
When my application installed in my client system I am faced different types of problem.
System 1
System Configuration
OS : XP
Acrobat 7.0
Result : Success
System 2
System Configuration
OS : XP
Acrobat 5.0
Acrobat 7.0
Result : Fail
Error : Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)
System 3
System Configuration
OS : XP
Acrobat 7.0
Adobe Reader 9
Result : Success
Note:
But I having problem when I am use my application while Adobe Reader 9 is open.
What is problem?
Error is related to ActiveX COM fail like
Error HRESULT E_FAIL has been returned from a call to a COM component.
Retrieving the COM class factory for component with CLSID {FF76CB60-2E68-2E68-101B-B02E-04021C009402} failed due to the following error: 80080005
System 4
System Configuration
OS : XP
Acrobat 7.0
Result : Success
Problem:
At the time of tool installation the system configuration will be as mention above, after by mistake they installed Adobe Reader 5.0. I faced the problem to use my application ActiveX COM failed
So I was un installed Adobe Reader 5, and tried but I got the following error,
System.Runtime.InteropServices.COMException (0x80040154): Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG))
at System.Windows.Forms.UnsafeNativeMethods.CoCreateInstance(Guid& clsid, Object punkOuter, Int32 context, Guid& iid)
at System.Windows.Forms.AxHost.CreateWithoutLicense(Guid clsid)
at System.Windows.Forms.AxHost.CreateWithLicense(String license, Guid clsid)
at System.Windows.Forms.AxHost.CreateInstanceCore(Guid clsid)
at System.Windows.Forms.AxHost.CreateInstance()
at System.Windows.Forms.AxHost.GetOcxCreate()
at System.Windows.Forms.AxHost.TransitionUpTo(Int32 state)
at System.Windows.Forms.AxHost.CreateHandle()
at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
at System.Windows.Forms.AxHost.EndInit()
at Greenleaf_MetaData.ArticleMetaData_Jnl.InitializeComponent()
at Greenleaf_MetaData.ArticleMetaData_Jnl..ctor()
at Greenleaf_MetaData.MainForm.btn_Process_Click(Object sender, EventArgs e)
at System.Windows.Forms.Control.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ButtonBase.WndProc(Message& m)
at System.Windows.Forms.Button.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
So, I am advised my System Admin team to Re-Install the Acrobat 7.0, after the Re-Installation of Acrobat 7.0, all the problem get solved.
But I want to known what is problem?
And also what is the Adobe COM connection between Acrobat ActiveX and my Application(C#, VB, etc…).
So Please give clear information and guidance...
Thanks & Regard
Thirusanguraja VenkatesanA simple google can get:
Common problems such as Windows Error Code 0x80040154 can be resolved with without too much difficulty. In this article we will go through solving the problem and how to prevent it in the future.
What happens
If you are registering an ATL server, you may see this error code. In the case of DLLs, regsvr32.exe will generate this error. In the case of EXEs, calling _Module::RegisterServer (CComModule::RegisterServer) in _tWinMain() will generate this error.
For detail: http://www.error.info/windows/registry-0x80040154.html
Cheers,
andy -
Hi,
I have downloaded Acrobat sdk XI and tried to run plugin samples in visual studio 2010, It is build successfully but when I try to run the program am getting an error message saying " Unable to start Program 'C:\Users\downloads\sdk110_VI_win\Adobe\acrobatXISdk\Version1\Plugin Support\samples\BasicPlugin\Win32\Debug\BasicPlugin.api'."
Can anybody help me finding out why am getting this message.
Thanks.How do you run the program?
I need to copy the compiled BasicPlugin.api under Acrobat\plug_ins folder. I can create a subfolder of plug_ins and copy the .api file there. Just one level deep: if I create a subfolder under a subfolder of plug_ins, the .api file will not be found by Acrobat.
Then I need to restart Acrobat and I find the plugin running. In particular, BasicPlugin add a new Acrobat SDK menu and a menu item under it.
If I close Acrobat and go back to Visual Studio, I can push the Debug button which will open Acrobat for me and stop the program execution at any breakpoints I have set in the code. -
Where can I get Acrobat SDK for Visual Studio 6.0?
Several years ago, I purchased the Adobe Acrobat SDK for
VS 6.0. It has since been misplaced or deleted.
Where can I obtain another copy?There are legacy programs out there written in VB 6.0
Unfortunately, my client is not willing to spend the thousands of dollars it would cost for us to convert all that code to .NET
I don't expect Adobe to provide support for the VB 6.0 SDK.
I just need to get another copy of it.
Please advise.
Thanks -
How to use Acrobat sdk features in java application?
Hi
In my project i have an requirement to make static pdf in to dynamic form , So how can i make static PDF to dynamic one as my project platform is purely in java . How can i make use Acrobat SDK InterAppCommunicationSupport/ samples in my java code ?
Thanks & Regards,
Prashant P M.Hi Leonard,
Thanks for your kind reply , I am attaching a sample SchollForm static PDF with this post, where it consist of student details like Name ,lastName ,section etc.
I like to convert this static PDF in to dynamic PDF means above field should be fillable ,So Using Acrobat SDK is it possible to achieve this above stuff.
If yes then Please can you give a brief idea how to do this one using Acrobat SDK with java? .
Thanks in Advance.
Prashant P M. -
Set PDF Document Properties Initial View by Acrobat SDK with C#
Hi,
Here am trying to set the PDF document initial view by the Acrobat SDK with C#.
Here I am show my screen shot which properties I want to set.
For this process I am referred Acrobat SDK and also following Adobe forums they also asked similar question.
http://forums.adobe.com/message/3866361
http://forums.adobe.com/message/4803264
http://livedocs.adobe.com/acrobat_sdk
And also I am used following C# code
Acrobat.AcroPDDocClass doc = new Acrobat.AcroPDDocClass();
doc.Open(@"D:\..\sap.pdf");
doc.SetOpenInfo(1,1,"Fit Width");
doc.SetPageMode(3);
doc.Save(1, @"D:\..\sap.pdf");
doc.Close();
From the above code {doc.SetPageMode(3);} is working for set the page mode.
But I am having problem in following code {doc.SetOpenInfo(1,1,"Fit Width");}
Because it won’t work I do’t known, and there is no clear samples in the SDK reference document.
So please give advice and clear sample code/syntax to meet above needs which are marked in red box.
Document Properties - > Intial View
Document Option
Show: Bookmarks Panel and Page
Page Layout: Continuous
Magnification: Fit Width
Window Options
Show : Document Title
Regards,
Thirusanguraja Venkatesanok thank you Test Screen
I will try and let you know if i am done by automation .
Regard,
Thirusanguraja Venkatesan -
How [Insert|Add] Image into Opening PDF file with Acrobat SDK.
Hi Guys,
I'm trying to insert|add image file into opening PDF file with specified location (X|Y) and scale (Width|Hight) but got many of troubles
If use third party like iTextSharp or something else thing become simple but i want to use Acrobat SDK to do this
Any suggestion or idea?
Any help appreciated.Thank for your interested.
I use VB.NET and Acrobat
Here is some my code:
Try
If File.Exists(T(0)) Then
Dim AcroAVDoc As AcroAVDoc = Ap.GetActiveDoc
Dim AcroPDDoc As AcroPDDoc = AcroAVDoc.GetPDDoc
Dim AcroPDPage As Acrobat.AcroPDPage = AcroPDDoc.AcquirePage(Integer.Parse(T(3)))
Dim data() As String = T(1).Split("^")
Dim imgX = data(0)
Dim imgY = data(1)
Dim imgWidth = data(3)
Dim imgHight = data(4)
'TODO: insert into opening PDF file
Return 1
End If
Catch ex As Exception
End Try
I don not know what to do next to insert an image (JPEG, PNG, ..) into PDF file.
Can you show me or suggest some solution, idea?
Thank in advance. -
Where to download Acrobat SDK?
Hello, friends,
Where to download Acrobat SDK? I was brought to the download page,
http://www.adobe.com/cfusion/entitlement/index.cfm?e=acrobat%5Fsdk
Acrobat Developer CenterAcrobat 8.1 SDK
Acrobat 8.1 SDK is now available free of charge to all users. Developers can use the SDK to create software and plug-ins to interact and customize Acrobat and Adobe Reader.
All Acrobat 8.1 SDK Samples
Download - Windows (ZIP,21.8MB)
Download - Mac (ZIP, 18.8MB)
Acrobat 8.1 SDK documentation
Download (ZIP, 52.9MB)
Acrobat 8.1 SDK JavaScript support samples
Download - Windows (ZIP, 15.4MB)
Download - Mac (ZIP,14.4MB)
Thank you for your interest in the Acrobat 8 SDK.
however, all it has are sample source code. I was expecting the real SDK: Installation files to install necessary components.
Any ideas? Thanks a lot.Hi, Aandi,
"And after all, the description you cut and pasted did exactly describe it. "
I don't think so.
The exact description should be:
Acrobat 8.1 SDK is now available FREE of charge to all users. Although developers can use the SDK to create software and plug-ins to interact and customize FREE Adobe Reader, developers can NOT use the SDK to create software and plug-ins to interact and customize Acrobat without buying (NOT FREE) Acrobat.
But, Aandi, please do not misunderstand me: I was NOT intenting to argue with you. Simply I felt very frustarted and upset by Adobe's policy.
Our customers just need to read .pdf files. They wish our c#.net application can open the file they select from our app, and automatically jump to the page they preselect, and save the paper numbers they select this time so that they can use next time. They do not need edit/save/delete/... functions at all.
However, based on what you said, our customers will have to buy hundreds of Acrobat for the functions they will never allowed to use. (Those .pdf files are read only legal papers, no modification is allowed). -
Creating PDF using Acrobat SDK
Hello All,
I am developing application in VC++ which has requirement to create PDF file programatically and then write that file .
I just wanted to know can I use Acrobat SDK to create and Edit PDF file?
Please help me as I am new to this.
Waiting 4 soon reply.......................
ThanksDear Arthi,
This is the C++ code which will help u to create the pdf using the VC++ plugin, Hope this helps you,
PDDoc TargetPDF = PDDocCreate();
ASFixedRect mediaBox = { fixedZero, ASInt32ToFixed(792), ASInt32ToFixed(612), fixedZero };
PDPage emptyPage = PDDocCreatePage (TargetPDF, PDBeforeFirstPage, mediaBox);
PDPageRelease (emptyPage);
PDDocSave (TargetPDF, PDSaveFull | PDSaveCollectGarbage | PDSaveLinearized,
pdfPathName, ASGetDefaultUnicodeFileSys(), NULL, NULL);
PDDocClose (TargetPDF);
ASFileSysReleasePath(fileSys, pdfPathName);
Regard's
Amith Sai -
Add Digital Signature Using C# and Acrobat SDK
Hi everybody!
Please, how can I digitally sign PDF documents using Acrobat Professional 8 API and C# language?
I know that I need use JavaScript APIs (IAC) but I can't find anything really helpful in the Acrobat SDK Documentation. Could anyone post a sample of how use javascript manipulation inside C# (Framework 2.0), or give me a direction?
Thank in advance!Hi Felipe,
when i am signing the document.
I believe i am missing something in my code. After executing the code to sign, when i open it i get "The following signature fields are not signed".
Please let me know where i m doing wrong?
Here is my VB.NET Code
Dim gapp As Acrobat.CAcroApp
Dim gpddoc As Acrobat.CAcroPDDoc
Dim jso As Object
gapp = CreateObject("acroexch.app")
gpddoc = CreateObject("acroexch.pddoc")
If gpddoc.Open("C:\Test1.pdf") Then
jso = gpddoc.GetJSObject()
jso.SetUserPassword("'testpassword12'")
'jso.ShowMyMessage("SetUserDigitalIDPath")
jso.SetUserDigitalIDPath("'c:\\DrTest.pfx'")
jso.app.execMenuItem("ADBESDK:AddSignature")
jso.AddSignature(jso)
gapp.Show()
and here is the javascript
// password to use the digital signature
var sigUserPwd = "UNKNOWN";
// to test the sample without user input, specify:
// var sigUserPwd = "testpassword";
// path to the digital signature file
var sigDigitalIDPath = "UNKNOWN";
// to test the sample without user input, specify:
//var sigDigitalIDPath = "/C/DrTest.pfx";
// other variables the user can modify
var sigHandlerName = "Adobe.PPKLite";
var sigFieldname = "sdkSignatureTest";
var sigReason = "I want to test my digital signature program.";
var sigLocation = "San Jose, CA";
var sigContactInfo = "[email protected]";
/* Add a menu item for AddSignature */
app.addMenuItem( { cName: "ADBESDK:AddSignature", cUser: "Add My Signature", cParent: "Advanced",
cEnable: "event.rc = (event.target != null);",
cExec: "AddSignature(event.target)" });
// main function
AddSignature=app.trustedFunction(function (doc)
app.beginPriv(); // explicitly raise privilege
// if sigDigitalIDPath is not spcified, ask for user input
if(sigDigitalIDPath == "UNKNOWN"){
var cResponse = app.response({
cQuestion: "Input your digital ID path:",
cTitle: "Digital Signature",
cDefault: "/C/DrTest.pfx",
if ( cResponse == null) {
app.alert("No input.");
return;
else
SetUserDigitalIDPath(cResponse);
// if sigUserPwd is not spcified, ask for user input
if(sigUserPwd == "UNKNOWN"){
var cResponse = app.response({
cQuestion: "Input your password:",
cTitle: "Digital Signature",
cDefault: "testpassword",
if ( cResponse == null) {
app.alert("No input.");
return
else
SetUserPassword(cResponse);
// create a new signature field
var signatureField = AddSignatureField(doc);
// sign it
if(signatureField) Sign(signatureField, sigHandlerName);
app.endPriv();
// create a signature field in the upper left conner with name of sigFieldname
function AddSignatureField(doc)
var inch=72;
var aRect = doc.getPageBox( {nPage: 0} );
aRect[0] += 0.5*inch; // from upper left hand corner of page.
aRect[2] = aRect[0]+2*inch; // Make it 2 inch wide
aRect[1] -= 0.5*inch;
aRect[3] = aRect[1] - 0.5*inch; // and 0.5 inch high
var sigField = null;
try {
sigField = doc.addField(sigFieldname, "signature", 0, aRect );
} catch (e) {
console.println("An error occurred: " + e);
return sigField;
// define the Sign function as a privileged function
Sign = app.trustedFunction (
function( sigField, DigSigHandlerName )
try {
app.beginPriv();
var myEngine = security.getHandler(DigSigHandlerName);
myEngine.login( sigUserPwd, sigDigitalIDPath);
sigField.signatureSign({oSig: myEngine,
bUI: false,
oInfo: { password: sigUserPwd,
reason: sigReason,
location: sigLocation,
contactInfo: sigContactInfo}
app.endPriv
} catch (e) {
console.println("An error occurred: " + e);
// set a correct password for using the signature, so you can quietly sign a doc.
function SetUserPassword(pwd)
sigUserPwd = pwd;
// set path to the digital signature file
function SetUserDigitalIDPath(idPath)
sigDigitalIDPath = idPath;
Sumit -
Problem on setting pagelabel using acrobat sdk
hi all,
On setting pagelabel into the pdf file using acrobat sdk 9, we have an issue while opening the pdf file in notepad we got the value of pagelabel as <</P(CoverNUL)>> for your reference i have attached the screenshot and my code is below
ASInt32 textSt;
ASText prefix = ASTextFromScriptText("Cover",NULL);
PDPageLabel textLabel;
textLabel = PDPageLabelNewASText (pdDoc,ASAtomFromString("None"), prefix,NULL);
if(PDPageLabelIsValid(textLabel)==true)
PDDocSetPageLabel (pdDoc,0,textLabel);
PDDocSave (pdDoc, PDSaveFull | PDSaveLinearized, pathName, ASGetDefaultUnicodeFileSys(), NULL, NULL);
PDDocClose(pdDoc);
Please, can any one help me on this.
Regards,
JayakrishnanUse this it will work..
ASInt32 iTemp = PDDocGetNumPages (pdDoc);
PDPageLabel pageLabel;
pageLabel = PDPageLabelNew (pdDoc,ASAtomFromString(lblList), NULL,NULL, startPoint);
if(PDPageLabelIsValid(pageLabel)== true)
PDDocSetPageLabel (pdDoc,0,pageLabel);
PDDocSave(pdDoc, PDSaveFull, path3, ASGetDefaultFileSys(), NULL, NULL);
AVDocClose (avDoc, true);
Be Well
Maybe you are looking for
-
How to get a flv file to match the quality of a quicktime file?
- here's a 400kbps flash video http://gelconference.com/mov/cc-flash-400kbps.html - here's the same footage at a *lower* bitrate, 391kbps, in quicktime http://gelconference.com/mov/cc.mov - QUESTION: why is the quicktime so much better-looking than t
-
Messages.app and Yahoo account no workie?
I don't really use my yahoo accound for texting, but it's still kind of frustrarting to find that messages.app rejects my (valid) password at login, and is the only OS X application I've noticed doing so... So does anyone know how to fix this malfunc
-
Mail changes my email address to other account in sent mail
Mail app version 7.3 with Mavericks 10.9.4. (updated to 10.9.5 today) I have two Gmail based accounts one personal (POP) and the other a .com (IMAP) for business use that I use in the Mail app. I've been having this ongoing problem (which started at
-
Safari crashes more than it works , ipad3 os6 , any idea ??
Ay body knows the reason why safari crashes too much and if there is something to do to stop that ? Thanks
-
Cant get email for reset password of apple id
i try to reset password for my old apple id, but no receive any email. and i had try many times.