Une ligne de mots posée le long d'un chemin

Faites courir une ligne de texte autour d'un sceau ou sur une arche : chaque lettre se tient sur la courbe et penche comme elle penche.

Résumé

Les mots d'un timbre, d'un sceau ou d'une pièce font le tour du bord ; posés en ligne ordinaire, ils s'étaleraient à plat en travers du milieu. Ici, vous donnez la ligne et la forme qu'elle doit suivre, et chaque lettre est tournée pour se tenir sur cette forme. Les lettres sont espacées le long de la courbe elle-même, de sorte qu'un virage qui se resserre ne les tasse jamais, et vous dites où la ligne commence : au départ du chemin, à mi-chemin — ce qui garde les mots centrés quelle que soit leur longueur — ou à son bout, de sorte que la ligne s'arrête où le chemin s'arrête.

Techniquement

Demandé avec "type": "text_path"

Le chemin est la même suite de segments qu'énonce un chemin tracé : une forme s'écrit donc d'une seule façon dans toute une requête. move_to pose la plume, line_to et curve_to tracent, et close referme le sous-chemin en cours. Le chemin dit où il commence, et il ne commence qu'une fois : une ligne suit une seule suite de points, pas plusieurs. La suite est aplatie puis parcourue en longueur et non en angle, ce qui garde l'espacement égal là où la courbure change ; une ligne plus longue que le chemin déborde de son bout au lieu d'y être tassée.

Schéma de la requête

Clés exigées : content, la ligne ; font, le nom d'une police déclarée ; font_size, en points ; path, les segments, chacun étant move_to, line_to, curve_to ou close. Facultatives : start, une valeur parmi beginning (par défaut), middle et end ; color, la couleur des lettres, par défaut celle en vigueur ; graphics_state, le nom d'un état déclaré ; pages, un tableau d'entiers comptés à partir de un, vide par défaut ; transform, six nombres ; rotate, en degrés dans le sens inverse des aiguilles autour du centre de la boîte où tombe le chemin ; layer, le nom d'un calque déclaré ; tag avec mark, ou artifact. Refus croisés : transform avec rotate, et tag avec artifact.

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

{
  "standard_fonts": [{ "name": "sans", "face": "helvetica_bold" }],
  "items": [
    {
      "type": "text_path",
      "content": "CERTIFIED COPY",
      "font": "sans",
      "font_size": 16,
      "start": "middle",
      "color": [0.25, 0.35, 0.7],
      "path": [
        { "move_to": { "x": 196.5, "y": 620 } },
        {
          "curve_to": {
            "x1": 196.5, "y1": 675.78,
            "x2": 241.72, "y2": 721,
            "x": 297.5, "y": 721
          }
        },
        {
          "curve_to": {
            "x1": 353.28, "y1": 721,
            "x2": 398.5, "y2": 675.78,
            "x": 398.5, "y": 620
          }
        }
      ]
    }
  ]
}

La ligne qui l'envoie, en trois langages

Texte

Un bloc de texte posé sur la page Du texte en paragraphes, avec retraits et tabulations Un tampon en travers de la page Des blocs posés les uns sous les autres, page après page

Où aller ensuite

Toutes les clés JSON d'une requête, en une page Les vingt-deux autres choses que l'on peut dessiner

Voir les prix Voir les exemples