93 votes

Comment utiliser pdf.js

J'envisage d'utiliser pdf.js (un outil open source qui permet d'incorporer un pdf dans une page web). Il n'y a pas de documentation sur la façon de l'utiliser.

Je suppose que ce que je fais est de faire une page html avec le script référencé dans l'en-tête, puis dans le corps, je mets une sorte d'appel de fonction avec un tableau du nom et de l'emplacement du fichier. Quelqu'un peut-il m'aider ?

1 votes

### Article Github Je viens de commencer un article Configurer PDF.js dans un site web sur le wiki du projet sur GitHub. #### Demande de complétion Si vous avez de l'expérience, veuillez compléter l'article.

0 votes

Quelque chose de plus haut niveau comme viewerjs.org est probablement ce que vous voulez.

0 votes

Je veux extraire le fichier xml incorporé d'un PDF, y a-t-il un moyen de le faire ?

50voto

Treffynnon Points 13385

Une documentation est disponible sur leur lisez-moi sur github . Ils citent le exemple de code suivant :

/* -*- Mode: Java; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* vim: set shiftwidth=2 tabstop=2 autoindent cindent expandtab: */

//
// See README for overview
//

'use strict';

//
// Fetch the PDF document from the URL using promises
//
PDFJS.getDocument('helloworld.pdf').then(function(pdf) {
  // Using promise to fetch the page
  pdf.getPage(1).then(function(page) {
    var scale = 1.5;
    var viewport = page.getViewport(scale);

    //
    // Prepare canvas using PDF page dimensions
    //
    var canvas = document.getElementById('the-canvas');
    var context = canvas.getContext('2d');
    canvas.height = viewport.height;
    canvas.width = viewport.width;

    //
    // Render PDF page into canvas context
    //
    var renderContext = {
      canvasContext: context,
      viewport: viewport
    };
    page.render(renderContext);
  });
});

20 votes

Ce n'est pas bien documenté mais vous extrayez le zip pdf.js et laissez sa structure de répertoire intacte. Ensuite, pour visualiser un pdf, il suffit de naviguer vers le fichier viewer.html (via un navigateur) avec le fichier ajouté à la fin. E.x. yoursite.com/directory_that_viewer_._html_is_in/viewer.html?file=somepdfthatyouhave.pdf L'emplacement du pdf est simplement passé comme une variable GET au fichier viewer.html.

4 votes

De la wiki github : "Toutefois, nous vous demandons, si vous envisagez d'intégrer la visionneuse dans votre propre site, de ne pas en faire une version non modifiée. Veuillez le relooker ou le développer." - compte tenu de leur hideuse inexistence documentation api ce projet vous permet de sauter à travers suffisamment d'obstacles pour rester en forme :-)

33voto

James Hill Points 27532

Essayez de chercher sur Google pdf.js documentation

/* create the PDF document */

var doc = new pdf();
doc.text(20, 20, 'hello, I am PDF.');
doc.text(20, 30, 'i was created in the browser using javascript.');
doc.text(20, 40, 'i can also be created from node.js');

/* Optional - set properties on the document */
doc.setProperties({
  title: 'A sample document created by pdf.js',
  subject: 'PDFs are kinda cool, i guess',        
  author: 'Marak Squires',
  keywords: 'pdf.js, javascript, Marak, Marak Squires',
  creator: 'pdf.js'
});

doc.addPage();
doc.setFontSize(22);
doc.text(20, 20, 'This is a title');
doc.setFontSize(16); 
doc.text(20, 30, 'This is some normal sized text underneath.');

var fileName = "testFile"+new Date().getSeconds()+".pdf";
var pdfAsDataURI = doc.output('datauri', {"fileName":fileName});

NOTE : le projet "pdf.js" mentionné ici est https://github.com/Marak/pdf.js et a été déprécié depuis que cette réponse a été postée. La réponse de @Treffynnon concerne le projet Mozilla, toujours actif ( https://github.com/mozilla/pdf.js ) que la plupart des chercheurs recherchent.

0 votes

J'ai vu ça, mais je ne comprends pas le truc au-dessus de var=filename. Ai-je besoin de ce doc.addPage() à doc.text, et des trois doc.texts au-dessus ?

0 votes

Une autre question serait de savoir ce que je dois changer. Je suppose que le premier "nom de fichier" de la dernière ligne doit être modifié, ainsi que les propriétés du document. Est-ce bien cela ?

26 votes

N'est-ce pas un pdf.js différent ?

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X