Generic page layout options suitable for bound codices. Each page layout attempts to shape the page, textblock, and whitespace between them using only harmonious ratios.
Format
A tibble of generic harmonious layouts
- page_ratio
page proportion, height:width
- page_2up_ratio
two-page proportion, height:(2 × width)
- text_ratio
textblock proportion, height:width
- text_2up_ratio
two-page textblock proportion, height:(2 × width + 2 × inner margin)
- bt_ratio,oi_ratio,ot_ratio,ob_ratio,ti_ratio,bi_ratio
bottom (b), top (t), outer (o), and inner (i) margin ratios
- oii_ratio,tii_ratio,bii_ratio
two-page margin ratios that span the spine (i.e., width = 2 × inner margin)
- text_pct
textblock area as a fraction of the total page area
- page_height,page_width
page dimensions, relative to unit width of 1
- text_height,text_width
textblock dimensions, relative to unit width of 1
- b_mar,t_mar,o_mar,i_mar
margin dimensions, relative to unit width of 1
- error
total area of layout that is in disharmony, see Details
Details
All layouts are sized so the page width equals one. This allows the actual size to be scaled to suit the desired font and line spacing.
It is seldom possible to lock all thirteen ratios into perfect harmony, so
by design inner margins are allowed to be slightly wider than ideal if
needed. The curvature of pages towards the spine produces some optical
foreshortening, so this approach works to counteract this effect. Fit is
assessed by summing all inner margin whitespace in excess of the ideal ratio.
This error is typically very small and is often smaller than the resolution
of commercial printers.
Examples
str(layouts)
#> tibble [736 × 23] (S3: tbl_df/tbl/data.frame)
#> $ page_ratio : Factor w/ 13 levels "unison","minor 2nd",..: 7 7 7 7 7 7 7 7 7 7 ...
#> $ page_2up_ratio: Factor w/ 13 levels "unison","inverse minor 2nd",..: 6 6 6 6 6 6 6 6 6 6 ...
#> $ text_ratio : Factor w/ 14 levels "minor 2nd","major 2nd",..: 14 14 14 14 14 14 14 14 14 14 ...
#> $ text_2up_ratio: Factor w/ 24 levels "unison","minor 2nd",..: 9 11 11 11 1 1 5 8 11 11 ...
#> $ bt_ratio : Factor w/ 13 levels "minor 2nd","major 2nd",..: 2 4 4 4 5 6 6 6 11 11 ...
#> $ oi_ratio : Factor w/ 16 levels "unison","minor 2nd",..: 13 13 9 7 15 16 13 16 16 15 ...
#> $ ot_ratio : Factor w/ 14 levels "unison","minor 2nd",..: 7 7 7 7 12 12 12 13 12 12 ...
#> $ ob_ratio : Factor w/ 26 levels "unison","minor 2nd",..: 10 6 6 6 12 10 10 22 1 1 ...
#> $ ti_ratio : Factor w/ 14 levels "unison","minor 2nd",..: 6 6 2 1 7 12 1 6 12 7 ...
#> $ bi_ratio : Factor w/ 14 levels "unison","minor 2nd",..: 7 9 6 5 12 13 7 12 14 13 ...
#> $ oii_ratio : Factor w/ 16 levels "unison","inverse minor 2nd",..: 1 1 5 6 7 13 1 13 13 7 ...
#> $ tii_ratio : Factor w/ 14 levels "unison","inverse minor 2nd",..: 7 7 11 12 5 1 12 7 1 5 ...
#> $ bii_ratio : Factor w/ 14 levels "unison","inverse minor 2nd",..: 6 4 8 9 1 7 6 1 13 7 ...
#> $ text_pct : num [1:736] 0.0882 0.0741 0.0938 0.0999 0.1067 ...
#> $ page_height : num [1:736] 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 ...
#> $ page_width : num [1:736] 1 1 1 1 1 1 1 1 1 1 ...
#> $ text_height : num [1:736] 0.727 0.667 0.75 0.774 0.8 ...
#> $ text_width : num [1:736] 0.182 0.167 0.188 0.194 0.2 ...
#> $ b_mar : num [1:736] 0.409 0.463 0.417 0.403 0.4 ...
#> $ t_mar : num [1:736] 0.364 0.37 0.333 0.323 0.3 ...
#> $ o_mar : num [1:736] 0.545 0.556 0.5 0.484 0.6 ...
#> $ i_mar : num [1:736] 0.273 0.278 0.313 0.323 0.2 ...
#> $ error : num [1:736] 3.05e-09 4.10e-09 4.77e-11 9.68e-09 6.25e-09 ...
