write_pdf417.json

Le fichier JSON de l'exemple « Codes PDF417 ». Le code des pièces d'identité et des papiers d'expédition : il contient bien plus de texte qu'une rangée de barres, et il survit à un scanner laser qu'on traîne dessus.

JSON 79 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 le contenu de ces fichiers ; 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

Le PDF417 est le code des pièces d'identité, des titres de transport et des documents d'expédition. Il contient beaucoup plus de texte qu'une simple rangée de barres, et il supporte d'être lu par un pistolet laser passé dessus plutôt que par un appareil photo tenu immobile — c'est-à-dire par ce qu'ont vraiment en main un agent de comptoir et un quai de chargement.

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
{
  "metadata": {
    "title": "PDF417 codes, drawn as stacked bars"
  },
  "items": [
    {
      "type": "text",
      "rect": {"llx": 72, "lly": 794, "urx": 523.276, "ury": 813.2},
      "content": [
        "PDF417 codes, drawn as stacked bars"
      ],
      "font": "DejaVuSans",
      "font_size": 16
    },
    {
      "type": "text",
      "rect": {"llx": 72, "lly": 770, "urx": 523.276, "ury": 782.6},
      "content": [
        "A PDF417 code is rows of bars stacked one over another, and it holds a whole"
      ],
      "font": "DejaVuSans",
      "font_size": 10.5
    },
    {
      "type": "text",
      "rect": {"llx": 72, "lly": 755, "urx": 523.276, "ury": 767.6},
      "content": [
        "form rather than a number. Under each one is what a scanner reads back."
      ],
      "font": "DejaVuSans",
      "font_size": 10.5
    },
    {
      "type": "pdf417",
      "content": "https://example.test/track/FR-1964413",
      "columns": 4,
      "level": 2,
      "rect": {"llx": 72, "lly": 651, "urx": 283.5, "ury": 709.5}
    },
    {
      "type": "text",
      "rect": {"llx": 75, "lly": 600, "urx": 275, "ury": 656},
      "content": ["https://example.test/track/FR-1964413"],
      "font": "DejaVuSans",
      "font_size": 8,
      "leading": 8
    },
    {
      "type": "pdf417",
      "content": "SN:2026-07-19/ACME-4472",
      "columns": 4,
      "level": 2,
      "rect": {"llx": 72, "lly": 568.5, "urx": 283.5, "ury": 613.5}
    },
    {
      "type": "text",
      "rect": {"llx": 75, "lly": 520, "urx": 275, "ury": 573.5},
      "content": ["SN:2026-07-19/ACME-4472"],
      "font": "DejaVuSans",
      "font_size": 8,
      "leading": 8
    },
    {
      "type": "pdf417",
      "content": "a-Z 0..9 +*#% and on",
      "columns": 4,
      "level": 2,
      "rect": {"llx": 72, "lly": 499.5, "urx": 283.5, "ury": 544.5}
    },
    {
      "type": "text",
      "rect": {"llx": 75, "lly": 450, "urx": 275, "ury": 504.5},
      "content": ["a-Z 0..9 +*#% and on"],
      "font": "DejaVuSans",
      "font_size": 8,
      "leading": 8
    }
  ]
}