
Transformer une grande image en PDF A4 ressemble à une simple arithmétique : calculez la hauteur de la page et coupez chaque nombre fixe de pixels. Cette approche peut diviser une ligne de texte, détacher un total de son étiquette ou séparer une légende de graphique du graphique. Screenshot PDF traite donc la limite mathématique A4 comme une proposition et recherche une coupe visuellement plus silencieuse à proximité.
Cet article documente la version actuelle de l'algorithme 0.0.13. Il explique ce que l'analyse des pixels peut détecter, ce qu'elle ne peut pas comprendre et comment examiner le résultat sans prétendre que les pixels révèlent la sémantique du document.
Pour le format portrait A4, le rapport hauteur/largeur est d'environ 1.4142. Si un canevas d’entrée a une largeur de 1 000 pixels, une zone de page complète au format A4 a une hauteur d’environ 1 414 pixels. L'éditeur utilise la largeur du canevas source afin que la pagination préserve la résolution horizontale de l'image capturée.
Si l’image tient sur une seule page, elle reste une seule image. Le mode sans fractionnement contourne également la pagination automatique. Sinon, l'éditeur propose une limite d'une hauteur A4 en dessous de la position de départ actuelle.
Les pages utilisent des arrière-plans teintés, des règles de table, des cartes, des thèmes sombres, des photographies et des dégradés. Une limite utile pourrait être le bleu pâle plutôt que le blanc. A l’inverse, une ligne blanche peut toujours contenir du texte fin qui ne doit pas être coupé. La capture d'écran PDF mesure les transitions de couleurs horizontales sur chaque ligne candidate au lieu de tester uniquement la luminosité.
Pour un pixel horizontal sur deux, l'algorithme compare les valeurs RVB avec un pixel situé à deux positions. Les différences au-dessus d'un seuil contribuent à l'énergie de transition de la rangée. Un texte dense et des images détaillées ont tendance à produire davantage de transitions ; les marges ouvertes et les bandes horizontales simples ont tendance à en produire moins.

Une seule ligne inhabituellement silencieuse peut être un bord anticrénelé ou un artefact de rendu. L'éditeur additionne chaque ligne avec ses voisines immédiates, créant ainsi une fenêtre de lissage vertical à trois lignes. Il trouve l'énergie lissée minimale dans la région de recherche actuelle de la taille de la page, puis accepte les lignes dans une petite tolérance de ce minimum.
La recherche recule à partir de la limite A4 proposée. Cette préférence utilise autant de page que possible tout en choisissant une ligne visuellement plus silencieuse. Une hauteur de bloc minimale de 15 % d'une page A4 empêche la recherche de renvoyer une petite bande près du haut.
Certaines images contiennent des détails denses de haut en bas : photographies, cartes, feuilles de calcul, listes de codes ou tableaux de bord avec un arrière-plan à fond perdu. Si aucune ligne d'énergie inférieure admissible n'apparaît au-dessus de la hauteur minimale du morceau, l'algorithme utilise la limite mathématique proposée.
Ce repli est intentionnel. Ne renvoyer aucune page serait pire, et se déplacer arbitrairement vers le haut pourrait produire des dizaines de feuilles pour la plupart vides. L'aperçu expose le résultat afin que l'utilisateur puisse choisir une orientation, un recadrage, une marge, un zoom ou une capture en coupe différents.
Les tranches intermédiaires sont placées sur une toile blanche de hauteur A4. Si une limite de sécurité se déplace vers le haut, la zone inférieure inutilisée reste blanche. La feuille finale peut utiliser sa hauteur réelle plus courte au lieu de forcer une queue entièrement vierge et inutile.
Le remplissage blanc ne constitue pas une preuve que le contenu source a été perdu. Cela peut indiquer que l’algorithme a choisi une limite calme antérieure. Vérifiez la continuité en comparant la dernière ligne visible d'une page avec la première ligne visible de la suivante.
Ce sont des tendances visuelles, pas des catégories garanties. Un tableau contenant des cellules multilignes très serrées peut toujours nécessiter une révision manuelle.
L'algorithme ne comprend pas qu'une signature appartient à une déclaration, qu'un sous-total appartient à des lignes d'éléments ou qu'une légende de graphique appartient à un graphique. Il n'analyse pas le HTML, l'ordre de lecture, les rôles d'accessibilité ou la signification juridique car il reçoit une image.
Examinez chaque limite à proximité :
Si la relation sémantique est importante, effectuez une capture source plus petite autour de l'unité complète ou utilisez un document né numérique.
Ouvrez le PDF à 100 pour cent. Pour chaque transition, enregistrez le dernier objet significatif sur la première page et le premier objet sur la suivante. Confirmez qu'aucune ligne de texte, chiffre, icône ou code lisible par machine n'est divisé. Répétez la vérification dans une deuxième visionneuse PDF car la mise à l'échelle et l'anticrénelage diffèrent.
Pour un test contrôlé, créez trois bandes sources : un texte de paragraphe, un tableau et une image à fond perdu. Capturez la page dans une fenêtre enregistrée et effectuez un zoom. Le résultat attendu n’est pas « jamais de coupure », mais un choix de frontière documenté et une solution de repli honnête lorsque la bande dense n’offre aucun espace de sécurité.
L’énergie des pixels peut réduire les coupures gênantes, mais elle ne peut pas certifier un document. La pagination automatique est un moteur de suggestion fonctionnant sur des informations visuelles. L'aperçu est l'endroit où l'utilisateur décide si la suggestion conserve son sens.
Le flux de travail le plus puissant combine un rapport déterministe, une recherche visuelle limitée, un comportement de repli transparent et une inspection page par page. C’est plus fiable que de promettre qu’un algorithme automatique peut comprendre chaque page Web uniquement à partir des pixels.