Je suis en train de construire une application qui génère des PDF à partir de HTML en utilisant la bibliothèque PHP DOMPDF. Les PDF nécessitent la possibilité de mettre à jour leur contenu ou de télécharger une version plus récente si elle est disponible à partir de l'API des sites et pour ce faire, je crois que je vais devoir utiliser Acrobat Javascript mais je ne sais pas comment le faire. J'ai écrit le javascript suivant qui est incorporé dans les PDF bien qu'il ne fasse rien (même pas montrer la boîte d'alerte). Il est incorporé en utilisant une balise <script type="text/javascript">
dans la tête html.Génération de PDF avec Acrobat Jascript en utilisant DomPDF/PHP
Toute aide sur ce serait grandement apprécié :)
// The JS that needs to be inserted in to a PDF file to self update
app.alert('checking for updates');
var version = "1";
var book_id = "1234";
var update_url = "http://localhost/koolbookz/"+book_id+"/"+version;
// Open the source documents:
var source1 = app.openDoc(update_url);
// Obtain the OCG order array for each source document:
var mergedOCGArray = new Array();
var source1OCGArray = source1.getOCGOrder();
// Merge the OCG order arrays into the target array:
for (var i=0; i<source1OCGArray.length; i++) mergedOCGArray[i] = source1OCGArray[i];
var offset = source1OCGArray.length;
// Create the target document:
var target = app.newDoc(book_id+".pdf");
// Insert source1.pdf:
target.insertPages({
nPage : -1,
cPath : update_url,
});
// Set the OCG order array in the target document
target.setOCGOrder(mergedOCGArray);
// Save the target document:
target.saveAs(book_id+".pdf");
// Close the target document without notifying the user:
//target.closeDoc(true);
Essayez de placer le code JavaScript dans le corps du document. Je crois que dompdf supprime actuellement la plupart des contenus d'en-tête. – BrianS
Merci pour les commentaires. Cela ne semble pas résoudre le problème malheureusement. Peut-être existe-t-il une autre méthode pour accomplir ce que j'essaie? –
Quelle version de dompdf utilisez-vous? Les versions 0.5 ne supportent pas JS embarqué, mais 0.6 le fait. –