Le rendu maison sur <canvas> dimensionnait chaque page à la largeur du volet, sans jamais pouvoir aller au-delà : sur une page A4 (595,3 pt) dans un volet de 495 px — soit 40 % d'une fenêtre bureau de 1280 px — cela faisait une échelle de 0,83x, et les tableaux du CRG composés en 7 pt tombaient à 5,8 px de haut. Illisible, sans recours : aucun zoom, aucun re-rendu au redimensionnement (la canvas était simplement étirée en CSS), et devicePixelRatio à 1 sur écran non-HiDPI, donc aucun suréchantillonnage. L'<iframe> rend au moteur le zoom, la recherche, l'impression et la sélection de texte, tous absents jusqu'ici, et redessine à chaque niveau de zoom. Le document s'ouvre à `#zoom=100` : « ajuster à la largeur » ne sauverait rien dans un volet étroit (54 %, soit 5 px pour du 7 pt) alors qu'à 100 % le 7 pt fait 9,3 px. Les mots-clés `page-width`, `view=FitH` et `pagemode=none` sont ignorés par le lecteur de Chrome ; une valeur numérique est honorée. Un lien « ouvrir dans un nouvel onglet » sert de porte de sortie si le moteur n'embarque pas de lecteur PDF. pdfjs-dist n'a plus d'utilisateur : bundle principal 966 Ko -> 492 Ko, et le worker de 1,3 Mo n'est plus émis. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
93 KiB
93 KiB