Pdf.js: IOS ne peut pas rendre certains PDF

Créé le 16 mars 2018  ·  4Commentaires  ·  Source: mozilla/pdf.js

16391_49885.pdf

Configuration:

Navigateur Web et sa version : Safari Latest
Système d'exploitation et il
version s : iOS 11.1.1
Version PDF.js : la plus récente
Étapes pour reproduire le problème :

Chargez le fichier joint dans n'importe quel moteur de rendu ou visionneuse pdf.js.
Quel est le comportement attendu ? (ajouter une capture d'écran)
Rendu de PDF

Qu'est ce qui ne s'est pas bien passé? (ajouter une capture d'écran)
La toile blanche vierge est affichée plutôt que le pdf.
Cela ne se produit que sur les navigateurs iOS. Il fonctionne sur tous les navigateurs pour Windows et tous les navigateurs pour MacOS. Il fonctionne également sur Google Chrome sur un appareil Android.

1-core 4-os-ios

Tous les 4 commentaires

J'ai vérifié le pdf répertorié ci-dessus dans la visionneuse Web

Je vérifie d'abord si cela fonctionne avec d'autres pdf avec ce pdf :

Dans Safari :

Dans Google Chrome :

Ensuite, j'essaie d'ouvrir le document spécifié dans Safari :

Tenter d'ouvrir le document spécifié dans Google Chrome

J'ai également constaté que si j'essayais d'ouvrir le pdf de travail avec la visionneuse Web après avoir essayé d'ouvrir le pdf de hanyan123, le pdf de travail n'était plus rendu.

Dans Safari :

29634560_10208553894044613_2131570870_o

Dans Google Chrome :

Nous avons également rencontré ce problème avec un autre document sur iOS : https://tcpdf.org/files/examples/example_033.pdf (PDF d'une page)

Après enquête, nous avons obtenu des informations supplémentaires sur cette erreur :

  • Il est également reproductible dans Safari de bureau (v. 11.0.3 (12604.5.6.1.1), macOS 10.12.6) en utilisant la visionneuse hébergée sur https://mozilla.github.io/pdf.js/web/viewer.html .
  • Les documents se chargent (à la fois celui lié ci-dessus et celui lié par @hanyan123) mais cela prend beaucoup de temps (environ 5 à 10 minutes).

J'ai observé quelque chose de similaire, bien que dans mon cas, je n'ai jamais vu le document s'afficher même après avoir attendu. J'ai décrit mes observations sur StackOverflow - je vais répéter ma question ici, ainsi que la réponse convaincante de quelqu'un :

J'ai un document pdf de deux pages qui ne s'affiche ni sur Safari ni sur Chrome sur iOS, en utilisant pdf.js ; il y a deux pages, mais elles sont toutes les deux vierges. Si j'"imprime" le document avec CutePDF dans un autre pdf, il s'affiche ! Mais si j'optimise à l'aide d'Acrobat PRO, il ne s'affiche pas. J'ai lu quelque part que si je rends en Postscript avec Acrobat PRO, puis réenregistre en pdf, cela se linéarise; toujours pas d'amour. Je montre les quatre saveurs ici - la vignette montre les métadonnées pdf, ainsi que la taille du fichier. Seule la version CutePDF est rendue, même si elle n'est pas la plus petite. En plus de simplement réimprimer chaque pdf que j'ai sur mon site Web avec CutePDF - quelqu'un peut-il me dire de quoi pdf.js n'est pas satisfait ?

NB : Les quatre versions sont rendues sous Windows. C'est seulement iOS qui a le problème, avec trois des quatre.

Voici la réponse :

Toutes les versions non fonctionnelles ont le bitmap dessiné comme un seul grand XObject enveloppé dans un motif. La version de travail a le bitmap découpé en de nombreuses images plus petites dessinées directement dans le contenu de la page. Vous voudrez peut-être rechercher les problèmes de pdf.js liés à ces facteurs.

CutePDF ne fournit pas la possibilité de contrôler le bitmap de cette façon - il le fait simplement. Qu'en est-il d'un "seul grand XObject enveloppé dans un motif" que pdf.js n'aime pas - et comment puis-je contrôler, par exemple, Acrobat PRO pour qu'il soit rendu comme le fait CutePDF (si c'est la solution de contournement) ?

J'ai observé quelque chose de similaire, bien que dans mon cas, je n'ai jamais vu le document s'afficher même après avoir attendu. J'ai décrit mes observations sur StackOverflow - je vais répéter ma question ici, ainsi que la réponse convaincante de quelqu'un :

J'ai un document pdf de deux pages qui ne s'affiche ni sur Safari ni sur Chrome sur iOS, en utilisant pdf.js ; il y a deux pages, mais elles sont toutes les deux vierges. Si j'"imprime" le document avec CutePDF dans un autre pdf, il s'affiche ! Mais si j'optimise à l'aide d'Acrobat PRO, il ne s'affiche pas. J'ai lu quelque part que si je rends en Postscript avec Acrobat PRO, puis réenregistre en pdf, cela se linéarise; toujours pas d'amour. Je montre les quatre saveurs ici - la vignette montre les métadonnées pdf, ainsi que la taille du fichier. Seule la version CutePDF est rendue, même si elle n'est pas la plus petite. En plus de simplement réimprimer chaque pdf que j'ai sur mon site Web avec CutePDF - quelqu'un peut-il me dire de quoi pdf.js n'est pas satisfait ?
NB : Les quatre versions sont rendues sous Windows. C'est seulement iOS qui a le problème, avec trois des quatre.

Voici la réponse :

Toutes les versions non fonctionnelles ont le bitmap dessiné comme un seul grand XObject enveloppé dans un motif. La version de travail a le bitmap découpé en de nombreuses images plus petites dessinées directement dans le contenu de la page. Vous voudrez peut-être rechercher les problèmes de pdf.js liés à ces facteurs.

CutePDF ne fournit pas la possibilité de contrôler le bitmap de cette façon - il le fait simplement. Qu'en est-il d'un "seul grand XObject enveloppé dans un motif" que pdf.js n'aime pas - et comment puis-je contrôler, par exemple, Acrobat PRO pour qu'il soit rendu comme le fait CutePDF (si c'est la solution de contournement) ?

Une mise à jour sur ce problème? Je l'ai aussi rencontré.

Cette page vous a été utile?
0 / 5 - 0 notes

Questions connexes

brandonros picture brandonros  ·  3Commentaires

dmisdm picture dmisdm  ·  3Commentaires

anggikolo11 picture anggikolo11  ·  3Commentaires

hp011235 picture hp011235  ·  4Commentaires

sujit-baniya picture sujit-baniya  ·  3Commentaires