write_flow_break.json

Die JSON-Datei des Beispiels „Ein überlanges Wort umbrechen“. Ein Wort, länger als die Spalte, die es enthält: Die Bibliothek lässt es ganz, schneidet es am Rand der Spalte ab oder schneidet es ab und schließt die Zeile mit einem Bindestrich.

JSON 146 Zeilen

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

Dieses Beispiel setzt denselben Absatz dreimal in eine Spalte, die für eines seiner Wörter zu schmal ist: Jedes Layout trifft irgendwann auf das Wort, das nicht passt — einen chemischen Namen, ein deutsches Kompositum, eine Webadresse, eine Bestellreferenz, an die niemand gedacht hat. Das Wort taucht im Betrieb auf, in einem Datensatz von tausend, lange nachdem das Team das Layout abgenommen hat, und es kommt mit der nächsten Referenz wieder, welche Breite die Spalte auch erhält. Die Einstellung für überlange Wörter entscheidet: overflow lässt das ganze Wort über den Rand laufen, break schneidet es nach der letzten passenden Glyphe ab, und eine Schnittmarke, wo eine angegeben ist, schließt jede Zeile, an der ein Schnitt endet, mit einem Bindestrich.

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
 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
{
  "items": [
    {
      "type": "text",
      "rect": {
        "llx": 80.0,
        "lly": 750.4,
        "urx": 480.0,
        "ury": 760.0
      },
      "content": [
        "Overflow: the word is left whole, and runs past the edge."
      ],
      "font": "DejaVuSans",
      "font_size": 8.0
    },
    {
      "type": "text",
      "rect": {
        "llx": 80.0,
        "lly": 650.0,
        "urx": 230.0,
        "ury": 740.0
      },
      "content": [
        "Paid by bank transfer, reference GB29NWBK60161331926819-2026-07-DEPOSIT, to be matched against the purchase order before the accounts are closed."
      ],
      "font": "DejaVuSans",
      "font_size": 11.0,
      "leading": 15.0,
      "overlong": "overflow"
    },
    {
      "type": "rect",
      "rect": {
        "llx": 80.0,
        "lly": 650.0,
        "urx": 230.0,
        "ury": 740.0
      },
      "stroke": {
        "width": 0.5,
        "color": [
          0.8,
          0.8,
          0.8
        ]
      }
    },
    {
      "type": "text",
      "rect": {
        "llx": 80.0,
        "lly": 610.4,
        "urx": 480.0,
        "ury": 620.0
      },
      "content": [
        "Break: the word is cut after its last glyph that fits."
      ],
      "font": "DejaVuSans",
      "font_size": 8.0
    },
    {
      "type": "text",
      "rect": {
        "llx": 80.0,
        "lly": 510.0,
        "urx": 230.0,
        "ury": 600.0
      },
      "content": [
        "Paid by bank transfer, reference GB29NWBK60161331926819-2026-07-DEPOSIT, to be matched against the purchase order before the accounts are closed."
      ],
      "font": "DejaVuSans",
      "font_size": 11.0,
      "leading": 15.0,
      "overlong": "break"
    },
    {
      "type": "rect",
      "rect": {
        "llx": 80.0,
        "lly": 510.0,
        "urx": 230.0,
        "ury": 600.0
      },
      "stroke": {
        "width": 0.5,
        "color": [
          0.8,
          0.8,
          0.8
        ]
      }
    },
    {
      "type": "text",
      "rect": {
        "llx": 80.0,
        "lly": 470.4,
        "urx": 480.0,
        "ury": 480.0
      },
      "content": [
        "Break with a cut mark: each line the cut closes ends on a hyphen."
      ],
      "font": "DejaVuSans",
      "font_size": 8.0
    },
    {
      "type": "text",
      "rect": {
        "llx": 80.0,
        "lly": 355.0,
        "urx": 230.0,
        "ury": 460.0
      },
      "content": [
        "Paid by bank transfer, reference GB29NWBK60161331926819-2026-07-DEPOSIT, to be matched against the purchase order before the accounts are closed."
      ],
      "font": "DejaVuSans",
      "font_size": 11.0,
      "leading": 15.0,
      "overlong": "break",
      "cut_mark": "-"
    },
    {
      "type": "rect",
      "rect": {
        "llx": 80.0,
        "lly": 355.0,
        "urx": 230.0,
        "ury": 460.0
      },
      "stroke": {
        "width": 0.5,
        "color": [
          0.8,
          0.8,
          0.8
        ]
      }
    }
  ]
}