Modérateur
Bonjour,

Insérer un pdf sur une page Web, voilà quelque chose que je n'ai jamais fait. Alors, bien entendu, la meilleure solution est simplement de placer un lien pointant vers le fichier (c'est en tout cas la méthode qui sera compatible avec le plus de supports).
Seulement, on peut vous demander de faire afficher des pdf directement dans la page Web. J'ia trouvé quelques ressources à ce sujet, voici les solutions proposées :
Utiliser une iframe :
<iframe src="test.pdf" width="600" height="800" align="middle"></iframe>

Utiliser la balise Object (pas compatible IE, mais lien s'affiche à la place dans ce cas-là) :
<object data="test.pdf" type="application/pdf" width="600" height="800">
  lie alternatif : <a href="test.pdf">test.pdf</a>
</object>

Utiliser le viewer de Mozilla par l'intermédiaire du script pdf.js :
http://influence-pc.fr/14-03-2014-inclure-des-pdf-sur-votre-site-avec-pdf-js-cree-par-mozilla

Il y a sûrement d'autres solutions (la solution Flash ne m'intéresse pas, bien évidemment)...
Je souhaitais votre avis, sachant que je souhaiterais que cela fonctionne sur tous les navigateurs modernes, IE > IE8 et les navigateurs "mobiles" (responsive).

Merci d'avance
Modérateur
Bon ben, je pense m'orienter plutôt vers les solutions les plus "simples" : iframe ou object. Il e faudra créer un bouton d'insertion de code dans WordPress, cela me permettra de le faire relativement simplement...
J'ai pu constater que contrairement à ce que je disais plus haut, la balise object fonctionne dans IE.
J'ai fait un petit test sur fiddle : https://jsfiddle.net/jojaba/sh2bu4tk/
L'avantage de la balise object est que l'on peut définir une alternative à l'affichage de la page (dans mon exemple un lien pointant vers le pdf). Je pense donc opter pour cette solution-là.
Des commentaires à ce sujet ?
Modifié par jojaba (09 Jun 2015 - 07:29)
J'ai une question de fond sur cette pratique.

Pourquoi vouloir absolument afficher un PDF directement dans le navigateur au lieu de
1 - soit laisser l'utilisateur télécharger et lire le PDF avec le logiciel qu'il souhaite
2 - soit convertir le contenu en HTML/CSS pour être vraiment sûr que le contenu soit immédiatement affiché partout

De toute façon, sur mobile, l'utilisateur n'aura d'autre choix que d'afficher le PDF sur une page séparée.

Au niveau de la'ccessibilité desktop, seul adobe reader peut ouvrir des PDF et les rendre à peu près correctement. Le lecteur intégré à firefox affiche n'importe quoi dans un ordre plus ou moins aléatoire et ça me gonfle, parce que je ne peux pas toujours télécharger le fichier pour le lire dans un environnement accessible ou le passer à l'OCR. Le lecteur intégré à IE est totalement inaccessible et dans ce cas point de salut. De l'autre côté le fait qu'IE me propose de télécharger le fichier dès le chargement de la page, ou pire, m'ouvre adobe reader sans me demander mon avis avant, est extrêmement agaçant. Donc personne ne m'offre des conditions optimales.

Alors je pose la question, pourquoi pas un simple lien dont on est sûr qu'il fonctionnera partout ? ou si ce n'est pas un document de 15 pages, pourquoi ne pas inclure le texte en HTML directement afin qu'il soit lisible sans effort supplémentaire ?
Modérateur
Bonjour Quentin et merci pour ta réaction.

Cette fonctionnalité est demandée par un client. Je n'ai pas encore débattu avec lui de l'utilité de la chose. Je suis également favorable à un lien simple comme je le disais dans mon premier message.
En ce qui concerne ce genre de dispositif sur portable, si tu utilises une balise object, tu obtiens le lien alternatif, le comportement que tu décris correspond à celui d'une iframe.
S'agissant de la conversion du pdf en HTML, je n'y avais pas penser. Merci pour la suggestion. Reste à savoir comment convertir des pdf avec formatage complexe (images, colonnes,...) en HTML... Je vais voir ça immédiatement.
a écrit :
En ce qui concerne ce genre de dispositif sur portable, si tu utilises une balise object, tu obtiens le lien alternatif, le comportement que tu décris correspond à celui d'une iframe.


En effet.

De mon point de vue, sur IE avec mon lecteur d'écran, en fait, ça ne fait aucune différence que tu utilises une iframe ou object. Jaws le voit comme une iframe dans les deux cas.

a écrit :
S'agissant de la conversion du pdf en HTML, je n'y avais pas penser. Merci pour la suggestion. Reste à savoir comment convertir des pdf avec formatage complexe (images, colonnes,...) en HTML... Je vais voir ça immédiatement.


Ca c'est le plus gros problème de PDF en réalité. C'est pas facilement interopérable. Une fois qu'un document est enregistré en PDF, il n'y a que très peu de moyens de revenir en arrière et de retrouver quelque chose d'acceptable.

C'est pour ça que je suis fondamentalement contre ce format, fusse-t-il en théorie ouvert et couvert par un standard ISO, et que j'aimerais bien favoriser un peu plus l'epub.

Personnellement je ne connais aucune bibliothèque qui peut récupérer plus que seulement le texte d'un PDF. Le reste est plus ou moins hasardeux et nécessite toujours une intervention humaine.

JE pensais à ça parce que je trouve passablement saoulant quand on te propose un PDF, et que c'est juste pour une seule page, ou pire, à peine quelques lignes. ET ça se voit souvent. Le PDF ça sert juste à être imprimé sur du papier, rien d'autre.
Modifié par QuentinC (09 Jun 2015 - 13:02)
Modérateur
QuentinC a écrit :
De mon point de vue, sur IE avec mon lecteur d'écran, en fait, ça ne fait aucune différence que tu utilises une iframe ou object. Jaws le voit comme une iframe dans les deux cas.
Dommage Smiley ohwell

QuentinC a écrit :
C'est pour ça que je suis fondamentalement contre ce format, fusse-t-il en théorie ouvert et couvert par un standard ISO, et que j'aimerais bien favoriser un peu plus l'epub.
On parle de l'accessibilité d'un pdf dans l'article suivant que j'ai pu trouver par hasard lors de mes recherches : Balisage et accessibilité d'un pdf

QuentinC a écrit :
Personnellement je ne connais aucune bibliothèque qui peut récupérer plus que seulement le texte d'un PDF. Le reste est plus ou moins hasardeux et nécessite toujours une intervention humaine.
Oui, moi j'ai rien trouvé à ce sujet, la conversion pdf » HTML doit être vraiment rarissime. Je vais donc probablement me cantonner à ma balise object. Un moyen de contourner le problème pour les lecteurs comme jaws (servir plutôt le lien à la place de l'iframe) ?

QuentinC a écrit :
JE pensais à ça parce que je trouve passablement saoulant quand on te propose un PDF, et que c'est juste pour une seule page, ou pire, à peine quelques lignes. ET ça se voit souvent. Le PDF ça sert juste à être imprimé sur du papier, rien d'autre.
Revoir le lien que je donne plus haut...
a écrit :
Revoir le lien que je donne plus haut...


Oui, et non. Les PDF sont accessibles si et seulement si ils sont balisés et ouverts dans un logiciel qui est capable d'envoyer ce balisage au lecteur d'écran. En l'occurence il n'y en a qu'un seul, adobe reader.

Que ce soit sur IE ou sur firefox, la vue intégrée n'est pas accessible; que le PDF soit balisé ou pas.

En outre, j'ai déjà étudié le sujet; word et konsor peuvent produire des PDF accessibles, mais de loin pas parfaits, et seulement si le word de départ est lui-même accessible. Comme très très peu de monde utilise les styles de titre dans word à part ceux qui sont au courant de la probématique, on est loin du compte.