This section describes how you can use the Generate PDF
Java API and web service API to programmatically convert a PDF document
to an RTF file, which is an example of a non-image format. Other
non-image formats include HTML, text, DOC, and EPS. When converting
a PDF document to RTF, ensure that the PDF document does not contain
form elements, such as a submit button. Form elements are not converted.
Summary of steps
To convert a PDF document to any of the supported types,
perform the following steps:
-
Include project files.
-
Create a Generate PDF client.
-
Retrieve the PDF document to convert.
-
Convert the PDF document.
-
Save the converted file.
Include project files
Include necessary files into your development
project. If you are creating a client application using Java, include
the necessary JAR files. If you are using web services, ensure that
you include the proxy files.
Create a Generate PDF client
Before
you can programmatically perform a Generate PDF operation, you must
create a Generate PDF service client. If you are using the Java API,
create a
GeneratePdfServiceClient
object. If you
are using the web service API, create a
GeneratePDFServiceService
object.
Retrieve the PDF document to convert
Retrieve the PDF document
to convert to a non-image format.
Convert the PDF document
After you create the service client,
you can invoke the PDF export operation. This operation needs information
about the document to be converted, including the path to the target
document.
Save the converted file
Save the converted file. For example,
if you convert a PDF document to an RTF file, save the converted
document to an RTF file.
Convert a PDF document to a RTF file using the Java API
Convert a PDF document to an RTF file by using the Generate
PDF API (Java):
-
Include project files.
Include client JAR files,
such as adobe-generatepdf-client.jar, in your Java project’s class
path.
-
Create a Generate PDF client.
Create a
GeneratePdfServiceClient
object by
using its constructor and passing a
ServiceClientFactory
object
that contains connection properties.
-
Retrieve the PDF document to convert.
-
Create
a
java.io.FileInputStream
object that represents
the PDF document to convert by using its constructor. Pass a string value
that specifies the location of the PDF document.
-
Create a
com.adobe.idp.Document
object by
using its constructor and passing the
java.io.FileInputStream
object.
-
Convert the PDF document.
Invoke the
GeneratePdfServiceClient
object’s
exportPDF2
method
and pass the following values:
-
A
com.adobe.idp.Document
object
that represents the PDF file to convert.
-
A
java.lang.String
object that contains
the name of the file to convert.
-
A
java.lang.String
object that contains
the name of the Adobe PDF settings.
-
A
ConvertPDFFormatType
object that specifies
the target file type for the conversion.
-
An optional
com.adobe.idp.Document
object
that contains settings to be applied while generating the PDF document.
The
exportPDF2
method
returns an
ExportPDFResult
object that contains
the converted file.
-
Convert the PDF document.
To obtain the newly created
file, perform the following actions:
Convert a PDF document to a RTF file using the web service API
Convert a PDF document to an RTF file by using the Generate
PDF API (web service):
-
Include project files.
Create a Microsoft .NET
project that uses MTOM. Ensure that you use the following WSDL definition:
http://localhost:8080/soap/services/GeneratePDFService?WSDL&lc_version=9.0.1
.
Note:
Replace
localhost
with the IP
address of the server hosting LiveCycle.
-
Create a Generate PDf client.
-
Create a
GeneratePDFServiceClient
object
by using its default constructor.
-
Create a
GeneratePDFServiceClient.Endpoint.Address
object
by using the
System.ServiceModel.EndpointAddress
constructor.
Pass a string value that specifies the WSDL to the LiveCycle service (for example,
http://localhost:8080/soap/services/GeneratePDFService?blob=mtom
.)
You do not need to use the
lc_version
attribute.
However, specify
?blob=mtom
.
-
Create a
System.ServiceModel.BasicHttpBinding
object
by getting the value of the
GeneratePDFServiceClient.Endpoint.Binding
field.
Cast the return value to
BasicHttpBinding
.
-
Set the
System.ServiceModel.BasicHttpBinding
object’s
MessageEncoding
field
to
WSMessageEncoding.Mtom
. This value ensures that
MTOM is used.
-
Enable basic HTTP authentication by performing the following tasks:
-
Assign the AEM forms user name to the field
GeneratePDFServiceClient.ClientCredentials.UserName.UserName
.
-
Assign the corresponding password value to the field
GeneratePDFServiceClient.ClientCredentials.UserName.Password
.
-
Assign the constant value
HttpClientCredentialType.Basic
to
the field
BasicHttpBindingSecurity.Transport.ClientCredentialType
.
-
Assign the constant value
BasicHttpSecurityMode.TransportCredentialOnly
to
the field
BasicHttpBindingSecurity.Security.Mode
.
-
Retrieve the PDF document to convert.
-
Create
a
BLOB
object by using its constructor. The
BLOB
object
is used to store a PDF document that is converted.
-
Create a
System.IO.FileStream
object by
invoking its constructor and passing a string value that represents the
file location of the PDF document and the mode in which to open
the file.
-
Create a byte array that stores the content of the
System.IO.FileStream
object.
You can determine the size of the byte array by getting the
System.IO.FileStream
object’s
Length
property.
-
Populate the byte array with stream data by invoking the
System.IO.FileStream
object’s
Read
method
and passing the byte array, the starting position, and the stream
length to read.
-
Populate the
BLOB
object by assigning to
its
MTOM
property the contents of the byte array.
-
Convert the PDF document.
Invoke the
GeneratePDFServiceServiceWse
object’s
ExportPDF2
method
and pass the following values:
-
A
BLOB
object
that represents the PDF file to convert.
-
A string that contains the path name of the file to convert.
-
A
java.lang.String
object that specifies
the file location.
-
A string object that specifies the target file type for the
conversion. Specify
RTF
.
-
An optional
BLOB
object that contains settings
to be applied while generating the PDF document.
-
An output parameter of type
BLOB
that is populated
by the
ExportPDF2
method. The
ExportPDF2
method
populates this object with the converted document. (This parameter
value is required only for web service invocation).
-
Save the converted file.
-
Retrieve the converted
RTF document by assigning the
BLOB
object’s
MTOM
field
to a byte array. The byte array represents the converted RTF document.
Ensure you use the
BLOB
object that is used as
the output parameter for the
ExportPDF2
method.
-
Create a
System.IO.FileStream
object by
invoking its constructor. Pass a string value that represents the location
of the RTF file.
-
Create a
System.IO.BinaryWriter
object by
invoking its constructor and passing the
System.IO.FileStream
object.
-
Write the contents of the byte array to a RTF file by invoking
the
System.IO.BinaryWriter
object’s
Write
method
and passing the byte array.
|
|
|