I have Adobe 7.0 SDK. And I am trying to add a watermark to a pdf. There is an example in VB that comes with the SDK, but I'm not very good at VB. I have tried to convert the VB code to C#, but some of the function do not seem to be available in C#.
Here is the original Adobe sample code
Public Sub Main()
' Create a PDDoc IAC object.
Dim pdDoc As Acrobat.CAcroPDDoc
pdDoc = CreateObject("AcroExch.PDD
oc")
If pdDoc Is Nothing Then
MsgBox("Failed to create Acrobat PDDoc object.")
End
End If
' Open the source PDF document
Dim rc As Integer
rc = pdDoc.Open(SamplePDFFilePa
th)
If rc <> -1 Then
MsgBox("Failed to open PDF document " & SamplePDFFilePath)
End
End If
' Acquire the Acrobat JavaScript Object interface from the PDDoc object
jsObj = pdDoc.GetJSObject
' Add a watermark from a file.
' function prototype:
' addWatermarkFromFile(cDIPa
th, nSourcePage, nStart, nEnd, bOnTop, bOnScreen, bOnPrint, nHorizAlign, nVertAlign, nHorizValue, nVertValue, bPercentage, nScale, bFixedPrint, nRotation, nOpacity)
jsObj.addWatermarkFromFile
(SampleIma
geFilePath
, 0, 0, 0, True, True, True, 0, 3, 10, -10, False, 0.4, False, 0, 0.7)
' get current time and make a string from it
Dim currentTime As String
currentTime = Now.ToString
' make a color object
Dim oColor As Object
oColor = jsObj.color.blue()
' Add a text watermark.
' function prototype:
' addWatermarkFromText(cText
, nTextAlign, cFont, nFontSize, oColor, nStart, nEnd, bOnTop, bOnScreen, bOnPrint, nHorizAlign, nVertAlign, nHorizValue, nVertValue, bPercentage, nScale, bFixedPrint, nRotation, nOpacity)
jsObj.addWatermarkFromText
(currentTi
me, 1, "Helvetica", 10, oColor, 0, 0, True, True, True, 0, 3, 20, -45, False, 1.0, False, 0, 0.7)
' save the PDF with watermarks to a new document.
rc = pdDoc.Save(1, OutputFilePath) ' full save
' close original PDF.
pdDoc.Close()
pdDoc = Nothing
jsObj = Nothing
' to clean up, get the Acrobat application,
' close Acrobat if there are no open documents.
Dim gApp As Acrobat.CAcroApp
gApp = CreateObject("AcroExch.App
")
If gApp.GetNumAVDocs = 0 Then
gApp.CloseAllDocs()
gApp.Exit()
End If
' show message. You can comment it out if you really need a quiet operation.
If rc = True Then
MsgBox("PDF with the watermark was saved to " & OutputFilePath)
Else
MsgBox("Operation was failed.")
End If
End Sub
When I try and run the code in VB it blows up right way on (pdDoc = CreateObject("AcroExch.PDD
oc")). In my converted C# code I do not have the addWatermarkFromFile function from the Adobe Javascript object.
Looking at the SDK help files I don't understand how I can access all the watermark functions they speak of.
What am I missing or doing wrong? I think I am making this more difficult then it really is.
Thanks,
View the Solution FREE for 7 Days