Toutes les images qu’un scanner met dans un seul fichier

Un scanner ne vous rend pas un fichier par feuille. Il en rend un seul, avec toute la pile dedans, et un télécopieur fait pareil : toutes les pages de l’appel sont là, l’une après l’autre. Un logiciel qui ne regarde que la première perd les autres sans rien dire, et personne ne s’en aperçoit avant le jour où il faut la page quatre.

On demande donc au fichier combien d’images il contient, et chacune est prise à son tour et reçoit une page taillée à sa mesure. L’un des deux fichiers de cette page contient trois feuilles ; l’autre contient une seule photographie, et celle-là est recopiée sans être démontée puis remontée : une photographie, un logiciel de lecture sait déjà l’afficher, donc on ne gagne rien à y toucher et on y perd de la qualité.

Ce que montre cet exemple

  • Toutes les images du fichier, pas seulement la première.
  • Chacune sur une page taillée à sa mesure.
  • Une photographie rangée dans le fichier est recopiée telle quelle : elle ressort aussi nette qu’elle est entrée.

Le code source complet

Rien n’est omis et rien n’est simplifié : c’est le programme exactement tel qu’il tourne, pour le développeur qui utilise cette bibliothèque. La troisième est la description elle-même : une simple liste de ce que la page doit dire, et c’est elle qu’on envoie au service.

Voir le code Rust Voir le code Python Voir le code JSON

Le document lui-même

Ouvrir le document

Exemples proches de celui-ci

Des images sur une page

Une photo qui entre exactement comme elle est sortie de l’appareil, et une image à parties transparentes qui les garde, chacune sur une page taillée à sa mesure.

Une galerie de formats d’image

Les quatre formats d’image lus — JPEG, PNG, BMP et TIFF — montrés sur toutes les images livrées avec la bibliothèque, chacune légendée par ce que déclare son propre fichier.

Une image ajustée à un rectangle

Une même image ajustée de huit façons dans un rectangle d’une seule taille : trois façons de la dimensionner, la même posée dans le coin en haut à gauche avec un retrait de 12 points, un quart de tour à gauche, un quart de tour à droite, une rotation de 20 degrés, et un miroir de gauche à droite — chaque panneau traçant l’image à l’endroit et à la taille que la bibliothèque a calculés. Une deuxième page en ajoute huit : l’image à sa propre taille, puis deux fois plus grande et coupée là où elle dépasse ; réduite seulement quand elle est trop grande ; posée à neuf positions à la fois ; placée au quart de la largeur et de la hauteur ; tournée d’un demi-tour ; et retournée de haut en bas.

Code 128 et codes-barres du commerce

Des rayures pour les deux usages qui en veulent : le Code 128 pour n’importe quel texte, et les trois que lit une caisse — EAN-13, UPC-A, EAN-8 — chacun avec son dernier chiffre calculé plutôt que tapé.

QR codes

Le code qu’une facture, une carte d’embarquement ou une étiquette finit par réclamer, dessiné dans le document plutôt que récupéré en image sur un site et collé dedans.

Tous les exemples, par sujet