df_paper — the book's material: its paper, its ink and its hand.
Everything visual in the field journal is built from this module so the
whole book reads as one object: one sheet of aged rag paper, one pot of
iron-gall ink, one brass lamp, and three typefaces used consistently.
Slice owner: journal.
resolve(preferred: string, fallback: string) → string
The hand
Three faces, used for three jobs and never mixed up:
HAND a chancery italic — the naturalist's own writing. Headings, the
depth index, marginal annotations, the caption under a plate.
TEXT a transitional serif — everything printed: field notes, ranges.
LATIN an old-style italic — binomials, and only binomials.
The chancery face is a `.font` asset shipped beside this module; if it is
unavailable the book falls back to the engine's own old-style italic
rather than to a sans-serif, which would break the period entirely.
| arg | type | description |
|---|
| preferred | string | |
| fallback | string | |
sheet( ) → void
Surfaces
The whole sheet: aged rag, darker in the gutter on the left and along the
outer edge on the right, with the light coming from above.
foxing(w: number, h: number) → void
Foxing: the brown blooms an old sheet grows. A halftone dot screen at low
opacity, tiled coarsely so it reads as staining rather than as a pattern.
| arg | type | description |
|---|
| w | number | |
| h | number | |
laid(w: number, h: number) → void
The laid lines of hand-made paper, running down the sheet.
| arg | type | description |
|---|
| w | number | |
| h | number | |
ruling(w: number, h: number, top: number) → void
Faint ruling on the writing area, the way a field book is ruled.
| arg | type | description |
|---|
| w | number | |
| h | number | |
| top | number | |
rule(weight: number, color: string?, width: number?) → void
Marks
A ruled line across the page. `weight` 1 is a hairline, 2 a heavy rule.
| arg | type | description |
|---|
| weight | number | |
| color | string? | |
| width | number? | |
doubleRule(width: number) → void
The double rule a chapter head sits on.
| arg | type | description |
|---|
| width | number | |
smallcap(text: string, color: string?, size: number?) → void
A small-capital label — the printed word above a block of field notes.
| arg | type | description |
|---|
| text | string | |
| color | string? | |
| size | number? | |
hand(text: string, size: number, color: string?, opts: { [string]: any }?) → void
Text in the naturalist's own hand.
| arg | type | description |
|---|
| text | string | |
| size | number | |
| color | string? | |
| opts | { [string]: any }? | |
body(text: string, size: number, color: string?, wrap: boolean?) → void
Printed body text. Put the width on the container, never on the label.
| arg | type | description |
|---|
| text | string | |
| size | number | |
| color | string? | |
| wrap | boolean? | |
latin(text: string, size: number, color: string?) → void
| arg | type | description |
|---|
| text | string | |
| size | number | |
| color | string? | |
gap(h: number) → void
| arg | type | description |
|---|
| h | number | |
plateFrame(size: number, inner: any, extraStyle: { [string]: any }?) → void
The frame a plate is drawn inside: a hairline box on a slightly lighter
patch of paper, with brass register ticks at the corners.
| arg | type | description |
|---|
| size | number | |
| inner | any | |
| extraStyle | { [string]: any }? | |