Comment le document s'ouvre et s'imprime
Demander au logiciel de lecture ce qu'il affiche à l'ouverture, comment il dispose les pages, et ce qu'il propose à l'impression.
Résumé
Un document peut arriver déjà réglé. Il s'ouvre avec son sommaire déplié sur le côté, à la bonne page, à la bonne taille. Un livre s'affiche par deux pages côte à côte, comme un vrai livre ouvert. Et au moment d'imprimer, la fenêtre propose déjà le recto-verso, deux exemplaires, et les pages qui comptent. Ce sont des souhaits : le logiciel de lecture les suit s'il sait le faire, et rien ne casse s'il fait autrement.
Techniquement
Écrit au premier niveau d'une requête, sous
"reading"
reading tient dix-sept réglages, tous facultatifs, qui décrivent ce que la requête demande au logiciel de lecture : /PageMode et /PageLayout dans le catalogue pour le panneau latéral et la disposition des pages, une /OpenAction pour la page d'ouverture et son cadrage, et le reste dans /ViewerPreferences — les atours de la fenêtre, l'ordre de lecture, et les souhaits que lit une boîte de dialogue d'impression. Chaque champ reste hors du document tant que la requête ne l'écrit pas : une requête qui demande une chose demande cette chose-là et laisse le reste du logiciel de lecture tranquille.
Schéma de la requête
-
reading— objet, facultatif, absent par défaut. Dix-sept clés, toutes facultatives. -
open_mode— chaîne. Ce que le logiciel de lecture montre à côté de la page à l'ouverture. Six valeurs :page_only,bookmarks,thumbnails,full_screen,layers,attachments. -
page_layout— chaîne. Six valeurs :single_page,one_column,two_columns_odd_left,two_columns_odd_right,two_pages_odd_left,two_pages_odd_right. -
open_on— objet.pageentier ≥ 1 obligatoire,fitfacultatif,whole_pagepar défaut, les huit formes de cadrage étant celles dedestinations. -
hide_toolbar,hide_menu_bar,hide_window_controls,fit_window,center_window,show_title— booléens. -
after_full_screen— chaîne. Ce qui est affiché à côté de la page une fois le plein écran quitté. Quatre valeurs :page_only,bookmarks,thumbnails,layers. -
reading_order— chaîne. Deux valeurs :left_to_right,right_to_left. -
print_scaling— chaîne. Deux valeurs :viewer,actual_size. -
lock_actual_size— booléen,falsepar défaut. Dit au logiciel de lecture qu'il ne peut proposer d'autre taille que celle demandée. -
duplex— chaîne. Trois valeurs :one_sided,short_edge,long_edge. -
tray_by_page_size— booléen. -
copies— entier ≥ 1. -
print_runs— tableau, vide par défaut. Chaque entrée contientfirst_pageetlast_page, entiers ≥ 1, tous deux obligatoires.
Les souhaits d'impression demandent au moins PDF 1.7 ; lock_actual_size demande PDF 2.0. Un document qui déclare une version inférieure à ce qu'il contient est refusé au moment de l'écriture, et la réponse nomme ce qui en demandait plus.
Une requête entière qui crée un PDF
{
"reading": {
"open_mode": "bookmarks",
"after_full_screen": "bookmarks",
"duplex": "long_edge",
"print_scaling": "actual_size",
"reading_order": "left_to_right",
"page_layout": "two_pages_odd_right",
"open_on": { "page": 1, "fit": "whole_page" }
},
"bookmarks": [{ "title": "The cover", "page": 1 }],
"standard_fonts": [{ "name": "sans", "face": "helvetica" }],
"items": [
{
"type": "text",
"rect": { "llx": 60, "lly": 700, "urx": 535, "ury": 740 },
"content": ["The handbook"],
"font": "sans",
"font_size": 28
}
]
}
S'y retrouver
L'ordre du passage d'un champ au suivant Ce qu'une page déclenche à l'arrivée et au départ Ce dont le document dit être fait Le sommaire cliquable sur le côté Des points d'arrivée qui ont un nom Suivre un article de colonne en colonne
Où aller ensuite
Toutes les clés JSON d'une requête, en une page Les quarante et un autres réglages d'une requête