Show Menu
ARGOMENTI×

Assemblaggio di portfolio PDF

È possibile assemblare un portfolio PDF utilizzando l'Assembler Java e l'API del servizio Web. Un portfolio può combinare diversi documenti di vari tipi, tra cui file Word, file immagine (ad esempio, un file jpeg) e documenti PDF. Il layout del portfolio può essere impostato su stili diversi come Griglia con anteprima , Sul layout Immagine o persino Rivoluzione .
L'illustrazione seguente è una schermata di un portfolio con layout In stile immagine .
La creazione di un portfolio PDF può essere utilizzata come alternativa inutilizzata al passaggio di una raccolta di documenti. Con AEM Forms è possibile creare portfolio richiamando il servizio Assembler con un documento DDX strutturato. Il seguente documento DDX è un esempio di documento DDX che crea un portfolio PDF.
 <DDX xmlns="https://ns.adobe.com/DDX/1.0/">
     <PDF result="portfolio1.pdf">
         <Portfolio>
             <Navigator source="myNavigator">
                 <Resource name="navigator/image.xxx" source="myImage.png"/>
             </Navigator>
         </Portfolio>
         <PackageFiles source="dog1"  >
              <FieldData name="X">72</FieldData>
             <FieldData name="Y">72</FieldData>
             <File filename="saint_bernard.jpg" mimetype="image/jpeg"/>
         </PackageFiles>
         <PackageFiles source="dog2"  >
             <FieldData name="X">120</FieldData>
             <FieldData name="Y">216</FieldData>
             <File filename="greyhound.pdf"/>
         </PackageFiles>
     </PDF>
 </DDX>

Il documento DXX deve contenere un Portfolio tag con un Navigator tag nidificato. Il tag <Resource name="navigator/image.xxx" source="myImage.png"/> è necessario solo se myNavigator è assegnato come navigatore di layout onImage: AdobeOnImage.nav . Questo tag consente al servizio Assembler di selezionare l'immagine da usare come sfondo del portfolio. Includete PackageFiles e File i tag per definire il nome file e il tipo MIME del file del pacchetto.
Per ulteriori informazioni sul servizio Assembler, consultate Guida di riferimento ai servizi per AEM Forms .
Per ulteriori informazioni su un documento DDX, vedere Servizio Assembler e Riferimento DDX.

Riepilogo dei passaggi

Per creare un portfolio PDF, effettuare le seguenti operazioni:
  1. Includere i file di progetto.
  2. Creare un client Assembler PDF.
  3. Fare riferimento a un documento DDX esistente.
  4. Fate riferimento ai documenti richiesti.
  5. Impostare le opzioni di esecuzione.
  6. Assemblate il portafoglio.
  7. Salvate il portafoglio assemblato.
Includi file di progetto
Includete i file necessari nel progetto di sviluppo. Se create un'applicazione client utilizzando Java, includete i file JAR necessari. Se utilizzate i servizi Web, accertatevi di includere i file proxy.
I seguenti file JAR devono essere aggiunti al percorso di classe del progetto:
  • adobe-livecycle-client.jar
  • adobe-usermanager-client.jar
  • adobe-assembler-client.jar
  • adobe-utilities.jar (richiesto se AEM Forms è distribuito su JBoss)
  • jbossall-client.jar (richiesto se AEM Forms è distribuito su JBoss)
Creare un client Assembler PDF
Prima di eseguire un'operazione Assembler a livello di programmazione, create un client di servizio Assembler.
Riferimento a un documento DDX esistente
Per assemblare un portfolio PDF è necessario fare riferimento a un documento DDX. Il documento DDX deve contenere gli elementi Portfolio , Navigator e PackageFiles .
Riferimento ai documenti richiesti
Per assemblare un portfolio PDF, fare riferimento a tutti i file che rappresentano i documenti da assemblare. Ad esempio, trasmettere al servizio Assembler tutti i file immagine specificati nel documento DDX. Tenere presente che a questi file viene fatto riferimento nel documento DDX specificato in questa sezione: myImage.png e saint_bernard.jpg .
Quando assemblate un portfolio PDF, passate un file NAV (un file di navigazione) al servizio Assembler. Il file NAV passato al servizio Assembler dipende dal tipo di portfolio PDF da creare. Ad esempio, per creare un layout Immagine , passate il file AdobeOnImage.nav. Potete individuare i file NAV nella cartella seguente:
<Install folder>\Acrobat 9.0\Acrobat\Navigators
Copiare il file NAV dalla directory di installazione di Acrobat 9 (o versione successiva). Posizionare il file NAV in un percorso in cui l'applicazione client può accedervi. Tutti i file vengono passati al servizio Assembler all'interno di un oggetto raccolta Map.
Gli avvii rapidi associati all’assemblaggio di portfolio PDF utilizzano AdobeOnImage.nav.
Impostazione delle opzioni di esecuzione
È possibile impostare opzioni di esecuzione che controllano il comportamento del servizio Assembler mentre esegue un processo. Ad esempio, potete impostare un'opzione che indichi al servizio Assembler di continuare l'elaborazione di un processo in caso di errore.
Assemblare il portafoglio
Per assemblare un portfolio PDF è necessario chiamare l' invokeDDX operazione. Il servizio Assembler restituisce il portfolio PDF all'interno di un oggetto raccolta.
Salva il portafoglio assemblato
Un portfolio PDF viene restituito all'interno di un oggetto raccolta. Iterare l'oggetto raccolta e salvare il portfolio PDF come file PDF.
Consulta anche

Assemblare un portfolio PDF utilizzando l'API Java

Assemblate un portfolio PDF utilizzando l'API di Assembler Service (Java):
  1. Includere i file di progetto.
    Includete file JAR client, ad esempio adobe-assembler-client.jar, nel percorso di classe del progetto Java.
  2. Creare un client Assembler PDF.
    • Creare un ServiceClientFactory oggetto che contenga proprietà di connessione.
    • Creare un AssemblerServiceClient oggetto utilizzando il relativo costruttore e passando l' ServiceClientFactory oggetto.
  3. Fare riferimento a un documento DDX esistente.
    • Creare un java.io.FileInputStream oggetto che rappresenta il documento DDX utilizzando il relativo costruttore e passando un valore di stringa che specifica la posizione del file DDX.
    • Creare un com.adobe.idp.Document oggetto utilizzando il relativo costruttore e passando l' java.io.FileInputStream oggetto.
  4. Fate riferimento ai documenti richiesti.
    • Creare un oggetto java.util.Map utilizzato per memorizzare i documenti PDF di input utilizzando un HashMap costruttore.
    • Creare un java.io.FileInputStream oggetto utilizzando il relativo costruttore. Passa la posizione del file NAV richiesto (ripeti questa attività per ogni file necessario per creare un portfolio).
    • Create un com.adobe.idp.Document oggetto e passate l' java.io.FileInputStream oggetto che contiene il file NAV (ripetete questa attività per ogni file necessario per creare un portfolio).
    • Aggiungere una voce all' java.util.Map oggetto richiamandone il put metodo e passando gli argomenti seguenti:
      • Un valore di stringa che rappresenta il nome della chiave. Questo valore deve corrispondere al valore dell'elemento di origine specificato nel documento DDX. Ripetete questa attività per ogni file necessario per creare un portfolio.
      • Un com.adobe.idp.Document oggetto che contiene il documento PDF. Ripetete questa attività per ogni file necessario per creare un portfolio.
  5. Impostare le opzioni di esecuzione.
    • Creare un AssemblerOptionSpec oggetto che memorizza le opzioni di esecuzione utilizzando il relativo costruttore.
    • Impostate le opzioni di runtime per soddisfare i requisiti aziendali richiamando un metodo che appartiene all' AssemblerOptionSpec oggetto. Ad esempio, per indicare al servizio Assembler di continuare a elaborare un processo quando si verifica un errore, richiamare il metodo dell' AssemblerOptionSpec oggetto setFailOnError e passare false .
  6. Assemblate il portafoglio.
    Richiamare il metodo dell' AssemblerServiceClient oggetto invokeDDX e trasmettere i seguenti valori obbligatori:
    • Un com.adobe.idp.Document oggetto che rappresenta il documento DDX da utilizzare
    • Un java.util.Map oggetto che contiene i file necessari per creare un portfolio PDF.
    • Un com.adobe.livecycle.assembler.client.AssemblerOptionSpec oggetto che specifica le opzioni di runtime, incluso il font predefinito e il livello di registro del processo Il invokeDDX metodo restituisce un com.adobe.livecycle.assembler.client.AssemblerResult oggetto che contiene il portfolio PDF assemblato ed eventuali eccezioni.
  7. Salvate il portafoglio assemblato.
    Per ottenere il portfolio PDF, effettuare le seguenti operazioni:
    • Richiama il metodo dell’ AssemblerResult oggetto getDocuments . Questo metodo restituisce un java.util.Map oggetto.
    • Iterare l' java.util.Map oggetto fino a individuare l' com.adobe.idp.Document oggetto risultante.
    • Richiamare il metodo dell' com.adobe.idp.Document oggetto copyToFile per estrarre il portfolio PDF.
Consulta anche

Assemblare un portfolio PDF utilizzando l'API del servizio Web

Assemblate un portfolio PDF utilizzando l'API di Assembler Service (servizio Web):
  1. Includere i file di progetto.
    Creare un progetto Microsoft .NET che utilizza MTOM. Quando imposti un riferimento a un servizio, accertatevi di utilizzare la seguente definizione WSDL: http://localhost:8080/soap/services/AssemblerService?WSDL&lc_version=9.0.1 .
    Sostituire localhost con l'indirizzo IP del server in cui è installato AEM Forms.
  2. Creare un client Assembler PDF.
    • Creare un AssemblerServiceClient oggetto utilizzando il relativo costruttore predefinito.
    • Creare un AssemblerServiceClient.Endpoint.Address oggetto utilizzando il System.ServiceModel.EndpointAddress costruttore. Passa un valore di stringa che specifica il WSDL al servizio AEM Forms (ad esempio, http://localhost:8080/soap/services/AssemblerService?blob=mtom ). Non è necessario utilizzare l' lc_version attributo. Questo attributo viene utilizzato quando create un riferimento a un servizio.
    • Creare un System.ServiceModel.BasicHttpBinding oggetto ottenendo il valore del AssemblerServiceClient.Endpoint.Binding campo. Inserite il valore restituito in BasicHttpBinding .
    • Impostare il campo System.ServiceModel.BasicHttpBinding dell' MessageEncoding oggetto su WSMessageEncoding.Mtom . Questo valore assicura che venga utilizzato MTOM.
    • Abilitate l'autenticazione HTTP di base eseguendo le seguenti operazioni:
      • Assegnare il nome utente dei moduli AEM al campo AssemblerServiceClient.ClientCredentials.UserName.UserName .
      • Assegnare il valore della password corrispondente al campo AssemblerServiceClient.ClientCredentials.UserName.Password .
      • Assegnare il valore costante HttpClientCredentialType.Basic al campo BasicHttpBindingSecurity.Transport.ClientCredentialType .
      • Assegnare il valore costante BasicHttpSecurityMode.TransportCredentialOnly al campo BasicHttpBindingSecurity.Security.Mode .
  3. Fare riferimento a un documento DDX esistente.
    • Creare un BLOB oggetto utilizzando il relativo costruttore. L' BLOB oggetto viene utilizzato per memorizzare il documento DDX.
    • Creare un System.IO.FileStream oggetto richiamando il relativo costruttore e passando un valore di stringa che rappresenta la posizione del file del documento DDX e la modalità in cui aprire il file.
    • Creare un array di byte che memorizza il contenuto dell' System.IO.FileStream oggetto. È possibile determinare la dimensione dell'array di byte ottenendo la proprietà dell' System.IO.FileStream oggetto Length .
    • Compilare l'array di byte con i dati del flusso richiamando il metodo dell' System.IO.FileStream oggetto Read . Passare l'array di byte, la posizione iniziale e la lunghezza del flusso da leggere.
    • Compilare l' BLOB oggetto assegnandone MTOM la proprietà con il contenuto dell'array di byte.
  4. Fate riferimento ai documenti richiesti.
    • Per ciascun file di input, creare un BLOB oggetto utilizzando il relativo costruttore. L' BLOB oggetto viene utilizzato per memorizzare il file di input.
    • Creare un System.IO.FileStream oggetto richiamando il relativo costruttore e passando un valore di stringa che rappresenta la posizione del file di input e la modalità di apertura del file.
    • Creare un array di byte che memorizza il contenuto dell' System.IO.FileStream oggetto. È possibile determinare la dimensione dell'array di byte ottenendo la proprietà dell' System.IO.FileStream oggetto Length .
    • Compilare l'array di byte con i dati del flusso richiamando il metodo dell' System.IO.FileStream oggetto Read . Passare l'array di byte, la posizione iniziale e la lunghezza del flusso da leggere.
    • Compilare l' BLOB oggetto assegnandone MTOM il campo con il contenuto dell'array di byte.
    • Create a MyMapOf_xsd_string_To_xsd_anyType object. Questo oggetto raccolta viene utilizzato per memorizzare i file di input necessari per creare un portfolio PDF.
    • Per ciascun file di input, creare un MyMapOf_xsd_string_To_xsd_anyType_Item oggetto.
    • Assegnare un valore stringa che rappresenta il nome chiave al campo dell' MyMapOf_xsd_string_To_xsd_anyType_Item oggetto key . Questo valore deve corrispondere al valore dell'elemento specificato nel documento DDX. (Eseguire questa operazione per ciascun file di input).
    • Assegnare l' BLOB oggetto che memorizza il file di input al MyMapOf_xsd_string_To_xsd_anyType_Item campo dell' value oggetto. (Eseguire questa operazione per ciascun documento PDF di input.)
    • Aggiungere l' MyMapOf_xsd_string_To_xsd_anyType_Item oggetto all' MyMapOf_xsd_string_To_xsd_anyType oggetto. Richiamare il MyMapOf_xsd_string_To_xsd_anyType metodo dell'oggetto Add e passare l' MyMapOf_xsd_string_To_xsd_anyType oggetto. (Eseguire questa operazione per ciascun documento PDF di input.)
  5. Impostare le opzioni di esecuzione.
    • Creare un AssemblerOptionSpec oggetto che memorizza le opzioni di esecuzione utilizzando il relativo costruttore.
    • Impostare le opzioni di runtime per soddisfare i requisiti aziendali assegnando un valore a un membro di dati appartenente all' AssemblerOptionSpec oggetto. Ad esempio, per indicare al servizio Assembler di continuare l'elaborazione di un processo in caso di errore, assegnare false al membro AssemblerOptionSpec dati dell' failOnError oggetto.
  6. Assemblate il portafoglio.
    Richiama il metodo dell’ AssemblerServiceClient oggetto invokeDDX e passa i seguenti valori:
    • Un BLOB oggetto che rappresenta il documento DDX
    • L' MyMapOf_xsd_string_To_xsd_anyType oggetto che contiene i file richiesti
    • Un oggetto AssemblerOptionSpec che specifica le opzioni di esecuzione Il invokeDDX metodo restituisce un AssemblerResult oggetto che contiene i risultati del processo ed eventuali eccezioni.
  7. Salvate il portafoglio assemblato.
    Per ottenere il portfolio PDF appena creato, effettuare le seguenti operazioni:
    • Accedere al campo AssemblerResult dell' documents oggetto, ovvero un Map oggetto che contiene i documenti PDF risultanti.
    • Eseguire un'iterazione sull' Map oggetto per ottenere ogni documento risultante. Quindi, inserite il membro dell'array value in un BLOB .
    • Estrarre i dati binari che rappresentano il documento PDF accedendo alla BLOB proprietà dell' MTOM oggetto. Questo restituisce un array di byte che è possibile scrivere in un file PDF.
Consulta anche