write_first_page_first.json

Die JSON-Datei des Beispiels „Seite eins zeigen, bevor die Datei angekommen ist“. Dasselbe Dokument zweimal geschrieben: einmal, wie es ist, einmal mit seiner ersten Seite am Anfang der Datei. Die Seite nennt für jedes der beiden die Zahl der Bytes, die ein Browser empfangen haben muss, bevor er Seite 1 zeigt.

JSON 5431 Zeilen von denen die ersten 93 hier gezeigt werden

Diese Datei ist weit länger als die anderen: Sie ganz zu zeigen, würde diese Seite zehnmal schwerer machen als jede andere, und das bezahlt, wer sie auf einem Telefon liest. Die Seite zeigt daher, wie die Datei beginnt, und die Schaltfläche unten übergibt die Datei selbst, vollständig.

Diese Datei ist eine Anfrage: Eine Anwendung sendet sie über das Netz an den Server, der das PDF erzeugt und zurücksendet. Sie erzeugt dieselbe Seite wie die Rust- und die Python-Fassung dieses Beispiels. Eine Anfrage nennt jede Datei, die sie verwendet, nie ihren Inhalt; der Aufruf trägt die Anfrage und die Dateien zusammen. Eine Schrift, die der Server bereits vorhält, etwa DejaVuSans, wird ohne Anhang genannt. Senden Sie die Anfrage an die Adresse, die die API-Seite angibt.

Wofür dieses Beispiel da ist

Öffnen Sie das Buch unten: Die erste Seite erscheint in dem Moment, in dem Sie es anklicken, als enthielte die Datei eine einzige Seite — und sie enthält 357. Dafür ist dieses Beispiel da, und es ist umso mehr wert, je länger das Dokument wird: Ein Katalog, ein Handbuch, ein Bericht mit zweihundert Seiten verhält sich genauso.

Was dieses Beispiel zeigt

 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
{
  "first_page_first": true,
  "renumber": [
    {
      "from_page": 2,
      "value": 1
    }
  ],
  "items": [
    {
      "type": "flow",
      "rect": {
        "llx": 64.0,
        "lly": 530.0,
        "urx": "{page_width} - 64",
        "ury": 560.0
      },
      "content": "Little Women",
      "font": "DejaVuSans",
      "font_size": 24.0,
      "align": "center",
      "leading": 30.0,
      "pages": [
        1
      ]
    },
    {
      "type": "flow",
      "rect": {
        "llx": 64.0,
        "lly": 462.0,
        "urx": "{page_width} - 64",
        "ury": 480.0
      },
      "content": "Louisa May Alcott",
      "font": "DejaVuSans",
      "font_size": 13.0,
      "align": "center",
      "leading": 18.0,
      "pages": [
        1
      ]
    },
    {
      "type": "stack",
      "id": "chapter_1",
      "start": {
        "page": 4
      },
      "first": {
        "llx": 64.0,
        "lly": 66.0,
        "urx": "{page_width} - 64",
        "ury": 700.0
      },
      "next": {
        "llx": 64.0,
        "lly": 66.0,
        "urx": "{page_width} - 64",
        "ury": "{page_height} - 64"
      },
      "blocks": [
        {
          "type": "text",
          "content": "CHAPTER I.",
          "font": "DejaVuSans",
          "font_size": 11.0,
          "align": "center",
          "leading": 13.0,
          "color": [
            0.42,
            0.42,
            0.45
          ]
        },
        {
          "type": "space",
          "height": 15.0
        },
        {
          "type": "text",
          "content": "Playing Pilgrims",
          "font": "DejaVuSans",
          "font_size": 15.0,
          "align": "center",
          "leading": 20.0
        },
        {
          "type": "space",
          "height": 34.0
        },
        {
          "type": "text",