Suivre un article de colonne en colonne

Dire dans quel ordre les morceaux d'un même article se lisent, quand il court sur plusieurs colonnes et plusieurs pages.

Résumé

Dans un journal, un article commence en première page, dans une colonne, et se termine trois pages plus loin. À côté, un autre article fait pareil, et rien sur la feuille ne dit lequel continue lequel : le lecteur cherche. Une fois écrit, cela permet au logiciel de lecture de sauter du bas d'un morceau au haut du suivant, sur la bonne page, sans qu'on ait rien à chercher.

Techniquement

Écrit au premier niveau d'une requête, sous "articles"

articles écrit le tableau /Threads : chaque fil a un titre et la suite de pavés de page qu'il traverse, dans l'ordre de lecture. Le logiciel de lecture qui suit un fil passe du pied d'un pavé à la tête du suivant, quelle que soit la page. Chaque pavé est un rectangle donné par ses quatre bords — gauche, bas, droite et haut — sur une page nommée par son numéro ; dans le fichier, un tel pavé est un dictionnaire /Bead, et la suite de ces pavés est le fil. Un fil se décrit aussi par un auteur, un sujet et des mots-clés.

Schéma de la requête

  • articles — tableau, facultatif, vide par défaut.
  • articles[].title — chaîne, obligatoire. Ce que le logiciel de lecture montre pour lui.
  • articles[].author — chaîne, facultative. Absente, le fil n'en dit rien.
  • articles[].subject — chaîne, facultative. Absente, le fil n'en dit rien.
  • articles[].keywords — chaîne, facultative. Absente, le fil n'en déclare aucun.
  • articles[].patches — tableau, obligatoire, au moins une entrée. Les zones parcourues, dans l'ordre de lecture. Un fil sans zone est refusé.
  • patches[].page — entier ≥ 1, obligatoire. La page où la zone se trouve. Une page que le document n'a pas est refusée.
  • patches[].llx, patches[].lly, patches[].urx, patches[].ury — nombres, obligatoires. Le bord gauche, le pied, le bord droit et le haut de la zone, en points depuis le coin inférieur gauche de la feuille, comme s'écrit tout rectangle dans une demande.

Une requête entière qui crée un PDF

{
  "articles": [
    {
      "title": "The bridge reopens",
      "author": "Claire Vasseur",
      "patches": [
        { "page": 1, "llx": 60, "lly": 500, "urx": 280, "ury": 740 },
        { "page": 2, "llx": 60, "lly": 500, "urx": 280, "ury": 740 }
      ]
    }
  ],
  "standard_fonts": [{ "name": "sans", "face": "helvetica" }],
  "items": [
    {
      "type": "text",
      "pages": [1],
      "rect": { "llx": 60, "lly": 500, "urx": 280, "ury": 740 },
      "content": ["The bridge reopens after two years of work,"],
      "font": "sans",
      "font_size": 10
    },
    {
      "type": "text",
      "pages": [2],
      "rect": { "llx": 60, "lly": 500, "urx": 280, "ury": 740 },
      "content": ["and the buses run over it again from Monday."],
      "font": "sans",
      "font_size": 10
    }
  ]
}

La ligne qui l'envoie, en trois langages

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 Comment le document s'ouvre et s'imprime

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

Voir les prix Voir les exemples