Un filigrane posé sur une suite de pages

Donnez au document une ligne — SPÉCIMEN, COPIE, CONFIDENTIEL — et laissez-le la poser sur les pages que vous nommez, par-dessus leur texte ou en dessous.

Le résultat dans un vrai PDF

Tampons ajustés à un rectangle

Ce qu’un document dit de lui-même — DRAFT, COPY, PAID — posé en travers de rectangles de quatre formes différentes et mis à l’échelle de chacun, puis SPECIMEN donné une seule fois au document et posé sur chaque page paire.

Ouvrir le PDF Voir l’exemple complet

Résumé

Un mot comme SPECIMEN ou CONFIDENTIEL doit souvent traverser chaque page, ou une page sur deux, d’un document dont personne ne connaît la longueur à l’avance. Ici vous donnez le mot une seule fois, avec les pages qu’il couvre, et le document le pose lui-même sur chacune, centré et en biais. Vous dites s’il passe par-dessus le texte ou par-dessous, et s’il garde une même taille sur chaque page ou grandit pour remplir chacune.

Techniquement

Écrit au premier niveau d’une requête, sous "watermarks"

Chaque filigrane est une ligne de texte dessinée sur chaque page de sa suite, centrée sur la partie de la page que le logiciel de lecture montre — sa zone de rognage, ou à défaut la feuille — et tournée à travers cette partie dans le sens que dit son inclinaison. Il est dessiné dans une séquence marquée comme filigrane, pour que le logiciel qui lit la page à voix haute le laisse de côté. from_page et to_page bornent la suite, la dernière page suivant l’endroit où le document se termine ; parity en garde toutes les pages, les impaires ou les paires. Sans size, la ligne est ajustée à chaque page comme un élément stamp s’ajuste à sa boîte ; avec une taille, elle est posée à cette taille sur chaque page. stacking la dessine après le contenu propre de la page, couvrant ce qu’elle traverse, ou avant, pour que tout ce que la page peint la cache.

Schéma de la requête

  • watermarks — tableau, facultatif, vide par défaut.
  • watermarks[].content — chaîne, obligatoire. La ligne de texte qu’affiche le filigrane.
  • watermarks[].font — chaîne, obligatoire. Le nom de la police déclarée dans laquelle la ligne s’écrit.
  • watermarks[].from_page — entier ≥ 1, facultatif. La première page qu’il couvre ; absent, la première page.
  • watermarks[].to_page — entier ≥ 1, facultatif. La dernière page qu’il couvre ; absent, la dernière page, quelle qu’elle soit.
  • watermarks[].parity — chaîne, facultative, every par défaut. Les pages de la plage qu’il retient : every, odd (une, trois, cinq…) ou even (deux, quatre, six…).
  • watermarks[].stacking — chaîne, facultative, over par défaut. over le dessine après le contenu propre de la page, pour qu’il couvre ce qu’il traverse ; under le dessine avant, pour que tout ce que la page peint le cache.
  • watermarks[].size — nombre, facultatif. La taille de la ligne, en points, la même sur chaque page. Absent, elle est ajustée à chaque page.
  • watermarks[].span — nombre, facultatif, 0,95 par défaut. La part de la page que la ligne occupe, mise à l’échelle, quand elle n’a pas de taille propre.
  • watermarks[].slant — chaîne, facultative, up par défaut. Le sens dans lequel la ligne traverse la page : up, down ou flat, comme sur un élément stamp.
  • watermarks[].color — couleur, facultative, noir par défaut.
  • watermarks[].shadow — objet, facultatif. Une copie de la ligne dessinée derrière elle : dx, dy et color, tous trois obligatoires.
  • watermarks[].graphics_state — chaîne, facultative. Le nom d’un état graphique déclaré sous lequel la ligne est dessinée, pour son opacité ou son mode de fusion.

Une page hors de toute suite ne contient aucun filigrane. Un élément stamp pose une ligne sur les pages qu’il nomme, à la taille que donne sa boîte ; un filigrane est donné une seule fois au document, et chaque page de sa suite le reçoit.

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

{
  "standard_fonts": [{ "name": "sans", "face": "helvetica_bold" }],
  "graphics_states": [{ "name": "faint", "state": { "fill_alpha": 0.25 } }],
  "watermarks": [
    {
      "content": "SPECIMEN",
      "font": "sans",
      "from_page": 2,
      "parity": "even",
      "stacking": "over",
      "size": 96,
      "color": [0.75, 0.16, 0.16],
      "graphics_state": "faint"
    }
  ],
  "items": [
    {
      "type": "text",
      "rect": { "llx": 60, "lly": 740, "urx": 535, "ury": 765 },
      "content": ["Page one carries no watermark"],
      "font": "sans",
      "font_size": 14,
      "pages": [1]
    },
    {
      "type": "text",
      "rect": { "llx": 60, "lly": 740, "urx": 535, "ury": 765 },
      "content": ["Page two is even, and carries it"],
      "font": "sans",
      "font_size": 14,
      "pages": [2]
    }
  ]
}

La ligne qui l’envoie, en trois langages

La feuille, et ce qu’on pose dessous

La taille des pages Une taille propre à certaines pages L’unité dans laquelle une page est mesurée Où se place la feuille d’une page dans le dessin Les zones que la page déclare Les formes posées sur ce qu’une page dessine Dans quel sens une page s’affiche Comment une page arrive, et combien de temps elle reste Un PDF que vous envoyez, pris comme pages du document Jusqu’où un PDF fourni a le droit de se déplier Le modèle sous les pages Zones nommées à remplir sur une page

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