Conversión del PDF a archivos Postscript y de imagen converting-pdf-to-postscript-andimage-files
Las muestras y los ejemplos de este documento solo son para AEM Forms en un entorno JEE.
Acerca del servicio PDF de conversión
El servicio ConvertPDF convierte los documentos de PDF a PostScript y a varios formatos de imagen (JPEG, JPEG 2000, PNG y TIFF). Convertir un documento PDF a PostScript es útil para la impresión desatendida basada en servidor en cualquier impresora PostScript. Convertir un documento PDF en un archivo TIFF de varias páginas es práctico cuando se archivan documentos en sistemas de administración de contenido que no admiten documentos PDF.
Puede realizar estas tareas mediante el servicio Convert PDF:
- Convertir documentos de PDF a PostScript.
- Convierta documentos de PDF a formatos de imagen.
Convertir documentos de PDF a PostScript converting-pdf-documents-to-postscript
En este tema se describe cómo puede utilizar la API del servicio ConvertPDF (Java y servicio web) para convertir mediante programación documentos de PDF en archivos de PostScript. El documento de PDF convertido en un archivo PostScript debe ser un documento de PDF no interactivo. Es decir, si intenta convertir un documento PDF interactivo en un archivo PostScript, se genera una excepción.
Resumen de los pasos summary-of-steps
Para convertir un documento de PDF en un archivo de PostScript, realice los siguientes pasos:
- Incluir archivos de proyecto.
- Cree un cliente de servicio del PDF Convert.
- Haga referencia al documento del PDF para convertirlo en un archivo de PostScript.
- Establecer las opciones de tiempo de ejecución de conversión.
- Convierta el documento del PDF en un archivo de PostScript.
- Guarde el archivo PostScript.
Incluir archivos de proyecto
Incluya los archivos necesarios en el proyecto de desarrollo. Si está creando una aplicación cliente con Java, incluya los archivos JAR necesarios. Si utiliza servicios web, asegúrese de incluir los archivos proxy.
Crear un cliente PDF de conversión
Para poder realizar mediante programación una operación de servicio ConvertPDF, debe crear un cliente de servicio ConvertPDF. Si está usando la API de Java, cree un objeto ConvertPdfServiceClient
. Si está usando la API del servicio web, cree un objeto ConvertPDFServiceService
.
Esta sección utiliza la funcionalidad de servicio web que se introduce en AEM Forms. Para acceder a la nueva funcionalidad, debe construir el objeto proxy con el atributo lc_version
. (Consulte "Acceso a la nueva funcionalidad mediante servicios web" en Invocación de AEM Forms mediante servicios web).
Hacer referencia al documento del PDF para convertirlo en un archivo de PostScript
Haga referencia al documento de PDF que desea convertir en un archivo de PostScript. Como se ha indicado anteriormente en este tema, el documento de PDF debe ser un documento de PDF no interactivo. Si intenta convertir un documento PDF interactivo en un archivo PostScript, se producirá una excepción.
Establecer opciones de tiempo de ejecución de conversión
Al convertir un documento de PDF en un archivo de PostScript, puede definir opciones en tiempo de ejecución que especifiquen el tipo de PostScript que se crea. Por ejemplo, puede definir un archivo PostScript de nivel 3.
Normalmente, el archivo PostScript generado reflejará el tamaño del documento del PDF de entrada. Si selecciona la opción ShrinkToFit
(que reduce la salida del archivo PostScript para que se ajuste a la página), no verá una diferencia entre el documento del PDF de entrada y el archivo PostScript generado. La opción ShrinkToFit
sólo tiene efecto si selecciona imprimir en un tamaño de página menor que el documento del PDF de entrada. Para seleccionar un tamaño de página menor, defina la opción PageSize
. Además, se recomienda establecer la opción RotateAndCenter
en true
para obtener el resultado de PostScript correcto.
Del mismo modo, si selecciona la opción ExpandToFit
(que expande la salida del archivo PostScript para que se ajuste a la página), solo tendrá efecto si selecciona imprimir en un tamaño de página mayor que el documento del PDF de entrada. Para seleccionar un tamaño de página mayor, defina la opción PageSize
. Además, se recomienda establecer la opción RotateAndCenter
en true
para obtener el resultado de PostScript correcto.
ToPSOptionsSpec
en Referencia de API de AEM Forms.Convertir el documento del PDF en un archivo de PostScript
Después de crear el cliente de servicios y establecer las opciones en tiempo de ejecución, puede invocar la operación de conversión de PostScript. Esta operación necesitará información sobre el documento que desea convertir, incluido el nivel de PostScript preferido para el documento de destino.
Guardar el archivo de PostScript
Después de convertir el documento de PDF a PostScript, puede guardar la salida como un archivo de PostScript.
Consulte también
Conversión de un documento de PDF en PS mediante la API de Java
Conversión de un documento de PDF en PS mediante la API de servicio web
Incluir archivos de biblioteca Java de AEM Forms
Conversión de un documento de PDF en PS mediante la API de Java convert-a-pdf-document-to-ps-using-the-java-api
Conversión de un documento de PDF a PostScript mediante la API del servicio ConvertPDF (Java):
-
Incluir archivos de proyecto.
Incluya archivos JAR de cliente, como adobe-convertpdf-client.jar, en la ruta de clase del proyecto Java.
-
Cree un cliente PDF de conversión.
- Cree un objeto
ServiceClientFactory
que contenga propiedades de conexión. - Cree un objeto
ConvertPdfServiceClient
utilizando su constructor y pasando el objetoServiceClientFactory
.
- Cree un objeto
-
Haga referencia al documento del PDF para convertirlo en un archivo de PostScript.
- Cree un objeto
java.io.FileInputStream
utilizando su constructor y pase un valor de cadena que especifique la ubicación del documento de PDF que se va a convertir. - Cree un objeto
com.adobe.idp.Document
que almacene el documento del PDF mediante el constructorcom.adobe.idp.Document
. Pase el objetojava.io.FileInputStream
que contiene el documento de PDF.
- Cree un objeto
-
Establecer las opciones de tiempo de ejecución de conversión.
- Cree un objeto
ToPSOptionsSpec
invocando su constructor. - Establezca las opciones en tiempo de ejecución invocando un método apropiado que pertenezca al objeto
ToPSOptionsSpec
. Por ejemplo, para definir el nivel de PostScript que se crea, invoque el métodosetPsLevel
del objetoToPSOptionsSpec
y pase un valor de enumeraciónPSLevel
que especifique el nivel de PostScript. Para obtener información acerca de todos los valores en tiempo de ejecución que puede establecer, vea la referencia de claseToPSOptionsSpec
en Referencia de API de AEM Forms.
- Cree un objeto
-
Convierta el documento del PDF en un archivo de PostScript.
Invoque el método
toPS2
del objetoConvertPdfServiceClient
y pase los siguientes valores:- Objeto
com.adobe.idp.Document
que representa el documento de PDF que se va a convertir en un archivo PostScript. - Un objeto
ToPSOptionsSpec
que especifica las opciones de tiempo de ejecución de PostScript.
El método
toPS2
devuelve un objetoDocument
que contiene el nuevo documento de PostScript. - Objeto
-
Guarde el archivo PostScript.
- Cree un objeto
java.io.File
y asegúrese de que la extensión de nombre de archivo sea .ps. - Invoque el método
copyToFile
del objetoDocument
para copiar el contenido del objetoDocument
en el archivo (asegúrese de utilizar el objetoDocument
devuelto por el métodotoPS2
).
- Cree un objeto
Consulte también
SOAP Inicio rápido (modo de): Conversión de un documento de PDF a PostScript mediante la API de Java
Conversión de un documento de PDF en PS mediante la API de servicio web convert-a-pdf-document-to-ps-using-the-web-service-api
Conversión de un documento de PDF a PostScript mediante la API del servicio ConvertPDF (servicio web):
-
Incluir archivos de proyecto.
Cree un proyecto de Microsoft .NET que utilice MTOM. Asegúrese de utilizar la siguiente definición de WSDL:
http://localhost:8080/soap/services/ConvertPDFService?WSDL&lc_version=9.0.1
.note note NOTE Reemplace localhost
por la dirección IP del servidor que hospeda AEM Forms. -
Cree un cliente PDF de conversión.
-
Cree un objeto
ConvertPdfServiceClient
utilizando su constructor predeterminado. -
Cree un objeto
ConvertPdfServiceClient.Endpoint.Address
mediante el constructorSystem.ServiceModel.EndpointAddress
. Pase un valor de cadena que especifique el WSDL al servicio AEM Forms (por ejemplo,http://localhost:8080/soap/services/ConvertPDFService?blob=mtom
). No necesita usar el atributolc_version
. Sin embargo, especifique?blob=mtom
. -
Cree un objeto
System.ServiceModel.BasicHttpBinding
obteniendo el valor del campoConvertPdfServiceClient.Endpoint.Binding
. Convertir el valor devuelto enBasicHttpBinding
. -
Establezca el campo
MessageEncoding
del objetoSystem.ServiceModel.BasicHttpBinding
enWSMessageEncoding.Mtom
. Este valor garantiza que se utiliza MTOM. -
Habilite la autenticación HTTP básica realizando las siguientes tareas:
- AEM Asigne el nombre de usuario de los formularios de la al campo
ConvertPdfServiceClient.ClientCredentials.UserName.UserName
. - Asigne el valor de contraseña correspondiente al campo
ConvertPdfServiceClient.ClientCredentials.UserName.Password
. - Asigne el valor constante
HttpClientCredentialType.Basic
al campoBasicHttpBindingSecurity.Transport.ClientCredentialType
. - Asigne el valor constante
BasicHttpSecurityMode.TransportCredentialOnly
al campoBasicHttpBindingSecurity.Security.Mode
.
- AEM Asigne el nombre de usuario de los formularios de la al campo
-
-
Haga referencia al documento del PDF para convertirlo en un archivo de PostScript.
- Crear un objeto
BLOB
mediante su constructor. El objetoBLOB
se usa para almacenar un documento de PDF convertido en un archivo de PostScript. - Cree un objeto
System.IO.FileStream
invocando su constructor y pasando un valor de cadena que represente la ubicación de archivo del documento de PDF que se va a convertir y el modo en que se va a abrir el archivo. - Cree una matriz de bytes que almacene el contenido del objeto
System.IO.FileStream
. Puede determinar el tamaño de la matriz de bytes obteniendo la propiedadLength
del objetoSystem.IO.FileStream
. - Rellene la matriz de bytes con datos de secuencia invocando el método
Read
del objetoSystem.IO.FileStream
y pasando a leer la matriz de bytes, la posición inicial y la longitud de secuencia. - Rellene el objeto
BLOB
asignando su campoMTOM
con el contenido de la matriz de bytes.
- Crear un objeto
-
Establecer las opciones de tiempo de ejecución de conversión.
- Cree un objeto
ToPSOptionsSpec
invocando su constructor. - Establezca las opciones en tiempo de ejecución asignando un valor al miembro de datos del objeto
ToPSOptionsSpec
. Por ejemplo, para definir el nivel de PostScript que se crea, asigne un valor de enumeraciónPSLevel
al miembro de datospsLevel
del objetoToPSOptionsSpec
.
- Cree un objeto
-
Convierta el documento del PDF en un archivo de PostScript.
Invoque el método
toPS2
del objetoGeneratePDFServiceService
y pase los siguientes valores:- Un objeto
BLOB
que representa el documento del PDF que se va a convertir en un archivo PostScript - Un objeto
ToPSOptionsSpec
que especifica las opciones en tiempo de ejecución
Una vez completada la conversión, extraiga los datos binarios que representan el documento de PostScript teniendo acceso a la propiedad
MTOM
de su objetoBLOB
. Devuelve una matriz de bytes que puede escribir en un archivo PostScript. - Un objeto
-
Guarde el archivo PostScript.
- Cree un objeto
System.IO.FileStream
invocando su constructor. Pase un valor de cadena que represente la ubicación del archivo PS. - Cree una matriz de bytes que almacene el contenido de datos del objeto
BLOB
devuelto por el métodoencryptPDFUsingPassword
. Rellene la matriz de bytes obteniendo el valor del campoMTOM
del objetoBLOB
. - Cree un objeto
System.IO.BinaryWriter
invocando su constructor y pasando el objetoSystem.IO.FileStream
. - Escriba el contenido de la matriz de bytes en el archivo PostScript invocando el método
Write
del objetoSystem.IO.BinaryWriter
y pasando la matriz de bytes.
- Cree un objeto
Consulte también
Conversión de documentos de PDF a formatos de imagen converting-pdf-documents-to-image-formats
Puede utilizar el servicio PDF de conversión para convertir mediante programación documentos de PDF a formatos de imagen, que incluyen JPEG, JPEG 2000, TIFF y PNG. Al convertir un documento de PDF en un archivo de imagen, puede utilizar el documento de PDF como archivo de imagen. Por ejemplo, puede colocar la imagen en un sistema de administración de contenido empresarial para su almacenamiento.
Al convertir un documento de PDF en una imagen, el servicio ConvertPDF crea una imagen independiente para cada página del documento. Es decir, si el documento tiene 20 páginas, el servicio ConvertPDF crea 20 archivos de imagen. Al convertir un documento de PDF a un formato de imagen, puede crear imágenes individuales para cada página dentro del documento de PDF o un solo archivo de imagen para todo el documento de PDF.
Resumen de los pasos summary_of_steps-1
Para convertir un documento de PDF en cualquiera de los tipos compatibles, realice los siguientes pasos:
- Incluir archivos de proyecto.
- Cree un cliente de servicio del PDF Convert.
- Recupere el documento del PDF que desea convertir.
- Establecer opciones en tiempo de ejecución.
- Convierta el PDF en una imagen.
- Recupere los archivos de imagen de una colección.
Incluir archivos de proyecto
Incluya los archivos necesarios en el proyecto de desarrollo. Si está creando una aplicación cliente con Java, incluya los archivos JAR necesarios. Si utiliza servicios web, asegúrese de incluir los archivos proxy.
Crear un cliente PDF de conversión
Para poder realizar mediante programación una operación de servicio ConvertPDF, debe crear un cliente de servicio ConvertPDF. Si está usando la API de Java, cree un objeto ConvertPdfServiceClient
. Si está usando la API del servicio web, cree un objeto ConvertPDFServiceService
.
Recuperar el documento de PDF para convertir
Recupere el documento del PDF para convertirlo en una imagen. No se puede convertir un documento interactivo de PDF en una imagen. Si intenta hacerlo, se produce una excepción. Para convertir un documento de PDF interactivo en un archivo de imagen, debe acoplar el documento de PDF antes de convertirlo. (Consulte Acoplar documentos de PDF.)
Establecer opciones en tiempo de ejecución
Establezca opciones en tiempo de ejecución como el formato de imagen y los valores de resolución. Para obtener información acerca de los valores en tiempo de ejecución, vea la referencia de clase ToImageOptionsSpec
en Referencia de API de AEM Forms.
Convertir el PDF en imagen
Después de crear el cliente de servicios y establecer las opciones en tiempo de ejecución, puede convertir el documento de PDF en una imagen. Se devuelve un objeto de colección que contiene las imágenes.
Recuperar los archivos de imagen de una colección
Puede recuperar archivos de imagen de un objeto de colección devuelto por el servicio Convert PDF. Cada elemento de la colección es una instancia de com.adobe.idp.Document
(o una instancia de BLOB
si utiliza servicios web) que puede guardar como archivo de imagen, como un archivo de JPG.
El formato del archivo de imagen depende de la opción de tiempo de ejecución ImageConvertFormat
. Es decir, si establece la opción de tiempo de ejecución de ImageConvertFormat
en ImageConvertFormat.JPEG
, puede guardar archivos de imagen como archivos de JPG de archivos de imagen de la manera que lo desee.
Consulte también
Incluir archivos de biblioteca Java de AEM Forms
Conversión de un documento de PDF en archivos de imagen mediante la API de Java convert-a-pdf-document-to-image-files-using-the-java-api
Conversión de un documento de PDF a un formato de imagen mediante la API del servicio ConvertPDF (Java):
-
Incluir archivos de proyecto.
Incluya archivos JAR de cliente, como adobe-convertpdf-client.jar, en la ruta de clase del proyecto Java.
-
Cree un cliente PDF de conversión.
- Cree un objeto
ServiceClientFactory
que contenga propiedades de conexión. - Cree un objeto
ConvertPdfServiceClient
utilizando su constructor y pasando el objetoServiceClientFactory
.
- Cree un objeto
-
Recupere el documento del PDF que desea convertir.
- Cree un objeto
java.io.FileInputStream
que represente el documento de PDF que se va a convertir utilizando su constructor y pasando un valor de cadena que especifique la ubicación del documento de PDF. - Cree un objeto
com.adobe.idp.Document
utilizando su constructor y pasando el objetojava.io.FileInputStream
.
- Cree un objeto
-
Establecer opciones en tiempo de ejecución.
- Crear un objeto
ToImageOptionsSpec
mediante su constructor. - Invoque los métodos que pertenezcan a este objeto según sea necesario. Por ejemplo, establezca el tipo de imagen invocando el método
setImageConvertFormat
y pasando un valor de enumeraciónImageConvertFormat
que especifique el tipo de formato.
note note NOTE Es obligatorio establecer el valor de enumeración ImageConvertFormat
. - Crear un objeto
-
Convierta el PDF en una imagen.
Invoque el método
toImage2
del objetoConvertPdfServiceClient
y pase los siguientes valores:- Objeto
com.adobe.idp.Document
que representa el archivo PDF que se va a convertir. - Un objeto
com.adobe.livecycle.converpdfservice.client.ToImageOptionsSpec
que contiene las distintas preferencias sobre el formato de imagen de destino.
El método
toImage2
devuelve un objetojava.util.List
que contiene imágenes. Cada elemento de la colección es una instancia decom.adobe.idp.Document
. - Objeto
-
Recupere los archivos de imagen de una colección.
Recorra en iteración el objeto
java.util.List
para determinar si las imágenes están presentes. Cada elemento es una instancia decom.adobe.idp.Document
. Guarde la imagen invocando el métodocopyToFile
del objetocom.adobe.idp.Document
y pasando un objetojava.io.File
.
Consulte también
Conversión de un documento de PDF en archivos de imagen mediante la API de servicio web convert-a-pdf-document-to-image-files-using-the-web-service-api
Conversión de un documento de PDF a un formato de imagen mediante la API del servicio ConvertPDF (servicio web):
-
Incluir archivos de proyecto.
Cree un proyecto de Microsoft .NET que utilice MTOM. Asegúrese de utilizar la siguiente definición de WSDL:
http://localhost:8080/soap/services/ConvertPDFService?WSDL&lc_version=9.0.1
.note note NOTE Reemplace localhost
por la dirección IP del servidor que hospeda AEM Forms. -
Cree un cliente PDF de conversión.
-
Cree un objeto
ConvertPdfServiceClient
utilizando su constructor predeterminado. -
Cree un objeto
ConvertPdfServiceClient.Endpoint.Address
mediante el constructorSystem.ServiceModel.EndpointAddress
. Pase un valor de cadena que especifique el WSDL al servicio AEM Forms (por ejemplo,http://localhost:8080/soap/services/ConvertPDFService?blob=mtom
). No necesita usar el atributolc_version
. Sin embargo, especifique?blob=mtom
. -
Cree un objeto
System.ServiceModel.BasicHttpBinding
obteniendo el valor del campoConvertPdfServiceClient.Endpoint.Binding
. Convertir el valor devuelto enBasicHttpBinding
. -
Establezca el campo
MessageEncoding
del objetoSystem.ServiceModel.BasicHttpBinding
enWSMessageEncoding.Mtom
. Este valor garantiza que se utiliza MTOM. -
Habilite la autenticación HTTP básica realizando las siguientes tareas:
- AEM Asigne el nombre de usuario de los formularios de la al campo
ConvertPdfServiceClient.ClientCredentials.UserName.UserName
. - Asigne el valor de contraseña correspondiente al campo
ConvertPdfServiceClient.ClientCredentials.UserName.Password
. - Asigne el valor constante
HttpClientCredentialType.Basic
al campoBasicHttpBindingSecurity.Transport.ClientCredentialType
. - Asigne el valor constante
BasicHttpSecurityMode.TransportCredentialOnly
al campoBasicHttpBindingSecurity.Security.Mode
.
- AEM Asigne el nombre de usuario de los formularios de la al campo
-
-
Recupere el documento del PDF que desea convertir.
- Crear un objeto
BLOB
mediante su constructor. Este objetoBLOB
se usa para almacenar el formulario de PDF. - Cree un objeto
System.IO.FileStream
invocando su constructor. Pase un valor de cadena que especifique la ubicación del formulario de PDF y el modo en que se abrirá el archivo. - Cree una matriz de bytes que almacene el contenido del objeto
System.IO.FileStream
. Determine el tamaño de la matriz de bytes obteniendo la propiedadLength
del objetoSystem.IO.FileStream
. - Rellene la matriz de bytes con datos de secuencia invocando el método
Read
del objetoSystem.IO.FileStream
. Pase a leer la matriz de bytes, la posición inicial y la longitud de la secuencia. - Rellene el objeto
BLOB
asignando su campoMTOM
con el contenido de la matriz de bytes.
- Crear un objeto
-
Establecer opciones en tiempo de ejecución.
- Crear un objeto
ToImageOptionsSpec
mediante su constructor. - Invoque los métodos que pertenezcan a este objeto según sea necesario. Por ejemplo, establezca el tipo de imagen invocando el método
setImageConvertFormat
y pasando un valor de enumeraciónImageConvertFormat
que especifique el tipo de formato.
note note NOTE Es obligatorio establecer el valor de enumeración ImageConvertFormat
. - Crear un objeto
-
Convierta el PDF en una imagen.
Invoque el método
toImage2
del objetoConvertPDFServiceService
y pase los siguientes valores:- Objeto
BLOB
que representa el archivo que se va a convertir - Un objeto
ToImageOptionsSpec
que contiene las distintas preferencias sobre el formato de imagen de destino
El método
toImage2
devuelve un objetoMyArrayOfBLOB
que contiene los archivos de imagen recién creados. - Objeto
-
Recupere los archivos de imagen de una colección.
- Determine el número de elementos en el objeto
MyArrayOfBLOB
obteniendo el valor de su campoCount
. Cada elemento es un objetoBLOB
que contiene la imagen. - Recorra en iteración el objeto
MyArrayOfBLOB
y guarde cada archivo de imagen.
- Determine el número de elementos en el objeto
Consulte también
Invocar AEM Forms mediante MTOM
Invocar AEM Forms mediante SwaRef