write_own_notes.json

Le fichier JSON de l'exemple « Les notes qu'un programme se laisse ». Une épreuve d'imprimerie qui porte le tirage sur le fichier, la plaque sur la page et l'encre sur la gamme de couleurs placée deux fois. Rien n'en est dessiné et aucun logiciel de lecture ne le montre : c'est là pour le programme qui l'a écrit.

JSON 184 lignes

Ce fichier est une requête : une application l'envoie par le réseau au serveur, qui crée le PDF et le renvoie. Il donne la même page que les versions Rust et Python de cet exemple. Une requête nomme chaque fichier qu'elle emploie, jamais son contenu ; l'appel porte la requête et les fichiers ensemble. Une police que le serveur détient déjà, comme DejaVuSans, se nomme sans rien y joindre. Envoyez la requête à l'adresse que donne la page de l'API.

À quoi sert cet exemple

Une imprimerie envoie une épreuve et la récupère trois jours plus tard, une note au crayon dans la marge. Pour reprendre le travail, il lui faut savoir à quel tirage la feuille appartient, pour quelle plaque la page a été composée, et contre quelle encre la gamme de couleurs a été tracée — et rien de tout cela ne regarde celui qui tient la feuille. Cela voyage donc sous le document plutôt que dessus : le fichier porte le tirage, la page porte sa plaque, et la gamme de couleurs, placée deux fois sur cette page, porte l'encre contre laquelle elle a été réglée.

Ce que montre cet exemple

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
{
  "items": [
    {
      "type": "text",
      "rect": {
        "llx": 56.0,
        "lly": 780.0,
        "urx": 539.0,
        "ury": 799.2
      },
      "content": [
        "Press proof"
      ],
      "font": "DejaVuSans",
      "font_size": 16.0
    },
    {
      "type": "text",
      "rect": {
        "llx": 56.0,
        "lly": 658.0,
        "urx": 539.0,
        "ury": 770.0
      },
      "content": [
        "This sheet is a proof, and everything a reading software shows of it is on it: a title, this paragraph, and a colour bar placed twice. Under it the file states the run it belongs to, the page states the plate it was set for, and the bar states the ink it was drawn against."
      ],
      "font": "DejaVuSans",
      "font_size": 10.0,
      "leading": 14.0
    },
    {
      "type": "drawing",
      "drawing": "bar",
      "x": 56.0,
      "y": 672.0,
      "scale": 1.0
    },
    {
      "type": "drawing",
      "drawing": "bar",
      "x": 56.0,
      "y": 616.0,
      "scale": 0.5
    },
    {
      "type": "text",
      "rect": {
        "llx": 56.0,
        "lly": 464.8,
        "urx": 539.0,
        "ury": 560.0
      },
      "content": [
        "None of those three is drawn, and no reading software shows them. Each is filed under the name of the program that left it, stamped with the moment that program last touched it, and travels with the file until it opens the file again."
      ],
      "font": "DejaVuSans",
      "font_size": 8.5,
      "leading": 11.899999999999999,
      "color": [
        0.35,
        0.35,
        0.35
      ]
    }
  ],
  "private_data": {
    "program": "PressDesk",
    "modified": "2026-09-07T08:15:00+02:00",
    "private": "{\"run\":47,\"press\":\"K4\",\"proof\":3}"
  },
  "page_private_data": [
    {
      "page": 1,
      "private_data": {
        "program": "PressDesk",
        "modified": "2026-09-07T08:15:00+02:00",
        "private": "{\"plate\":\"C\",\"screen\":175}"
      }
    }
  ],
  "drawings": [
    {
      "name": "bar",
      "box": {
        "llx": 0.0,
        "lly": 0.0,
        "urx": 168.0,
        "ury": 18.0
      },
      "items": [
        {
          "type": "rect",
          "rect": {
            "llx": 0.0,
            "lly": 0.0,
            "urx": 28.0,
            "ury": 18.0
          },
          "fill": [
            0.85,
            0.9775,
            1.0
          ]
        },
        {
          "type": "rect",
          "rect": {
            "llx": 28.0,
            "lly": 0.0,
            "urx": 56.0,
            "ury": 18.0
          },
          "fill": [
            0.7,
            0.955,
            1.0
          ]
        },
        {
          "type": "rect",
          "rect": {
            "llx": 56.0,
            "lly": 0.0,
            "urx": 84.0,
            "ury": 18.0
          },
          "fill": [
            0.55,
            0.9325,
            1.0
          ]
        },
        {
          "type": "rect",
          "rect": {
            "llx": 84.0,
            "lly": 0.0,
            "urx": 112.0,
            "ury": 18.0
          },
          "fill": [
            0.4,
            0.91,
            1.0
          ]
        },
        {
          "type": "rect",
          "rect": {
            "llx": 112.0,
            "lly": 0.0,
            "urx": 140.0,
            "ury": 18.0
          },
          "fill": [
            0.19999999999999996,
            0.88,
            1.0
          ]
        },
        {
          "type": "rect",
          "rect": {
            "llx": 140.0,
            "lly": 0.0,
            "urx": 168.0,
            "ury": 18.0
          },
          "fill": [
            0.0,
            0.85,
            1.0
          ]
        }
      ],
      "private_data": {
        "program": "PressDesk",
        "modified": "2026-09-07T08:15:00+02:00",
        "private": "{\"ink\":\"process cyan\",\"bar\":\"solid\"}"
      }
    }
  ]
}