About

What does book design mean when layouts are no longer created page by page? When content updates automatically, systems make decisions, and design works through rules, structures, and algorithms? And what role does print play when web, code, and analog techniques intersect?

The project explores the tension between automated work processes and contemporary book design. Instead of traditional layout software, the focus lies on systemic thinking, fixed rules, and networked content. Automation enables new forms of production: content can be updated live, publications emerge from dynamic sources, and print often becomes a by-product of a larger, hybrid system.

Drawing on historical and current forms of automation—from lead typesetting to digital standards and web-to-print—the project examines both visible and invisible design rules. Topics such as hybrid publishing, print on demand, system design, Paged.js, open source, and AI form the basis for experimental and systematic approaches.

The resulting works highlight interfaces and symbioses between web-based design and analog techniques. Print is not replaced, but recontextualized.

The publications consciously work with processes, formats, and limitations. Automation is understood not only as a tool for efficiency, but also as a creative and artistic method to reveal, question, and rethink existing systems.

Lesson 15.10.25

The Automatic Book

Johannes Bergerhausen & Alexander Roidl

Course description

In this seminar, we examine the constitution of the book under the conditions of automated processes. What design is appropriate for current knowledge production today?
Automation has shaped book design since Gutenberg: from lead typesetting, which determined font sizes and grids, to phototypesetting and desktop publishing, which opened up new freedoms but was also shaped by grid principles and software logic.
For centuries, the typographic grid determined the order of text, images, and white space—while today, digital standards such as Unicode and EPUB define which characters can be displayed and how texts are structured and distributed on platforms.
Each medium and each technology brings its own logic, structures, aesthetics (and biases). Which of these fit with our viewing habits today? Which design rules will still be relevant in the future?
In pairs, we analyze and question the visible and invisible rules, systems, and algorithms of book production and publication. In the context of current developments such as print on demand, e.g.: www.apod.li and web-to-print, e.g.: https://prepostprint.org/resources/, we explore new possibilities for algorithmic, systematic design.
Practical experiments result in books and publications that address, challenge, or outsmart the automation of book design, production, and distribution. Each group develops the “content” individually through a systematic process according to self-imposed rules on a topic of their choice.
Thus, it is not only about the efficient implementation of layouts and print templates, but we also use the formats, processes, and restrictions creatively and artistically.


Preliminary schedule

Date Content
15/10 Introduction to the topic
22/10 Systems & Book Design
29/10 Web-To-Print 1
05/11 Web-to-print 2
12/11 Grid / Layout / InDesign Scripting
19/11 Print On Demand
26/11 Project Idea Presentation
03/12 Compile content
10/12 Project work
17/12 Interim presentation
24/12 (Christmas)
31/12 (Christmas)
07/01 Project work
14/01 Project work / Evaluation
21/01 (BaMa colloquium week)
28/01 Final presentation

Organization

Introduction

The book today!

Systematic book and layout design

Rule-based design

Web-to-print

Post digital Print (Ludovico)

Print on demand


(1) Auto Book

https://prepostprint.org/site/templates//img/ppp.svg

(2) Systematiken

https://seafile.rlp.net/lib/2db570d8-cb08-4e86-98f3-84dff78c4cb6/file/images/auto-upload/image-1760364064323.png?raw=1

https://i.ebayimg.com/images/g/o6AAAeSwobZotxFJ/s-l300.jpg

(3) Sol LeWitt Wall Drawings

https://miro.medium.com/v2/resize:fit:1400/0*FXAwV-uGAF4i58o1.jpg?

(4) Generative / Automatische Gestaltung

https://workbook.conditionaldesign.org/retina/book_ret_1.jpg?

http://www.generative-gestaltung.de/

(5) InDesign Scripting

https://type.hanli.eu/typepad-manual/

(6) Web-To-Print

https://prepostprint.org/

https://pagedjs.org/

https://office-roxx.de/wp-content/uploads/2022/06/STRG-P.jpg?

(7) Einfluss auf Praxis

https://cc.vvvvvvaria.org/wiki/images/thumb/a/ab/01-toolsshape.png/400px-01-toolsshape.png?

(8) An der Hochschule entstanden

https://hybrid.publishing.systems/#/

https://unlearn.gestaltung.ai/de

https://timrodenbroeker.de/wp-content/uploads/2024/08/01_Coverl-1.jpg

https://cdn.shopify.com/s/files/1/0268/4407/0021/files/WEBBookImage-Environment.png

(9) Print on Demand

www.apod.li

References

Tools

Exercise

Conventional, unconventional

Rules in book design

Please look at (individual work) contemporary and antiquarian books and distill from your findings at least three conventional and three unconventional rules from microtypography (typesetting, detail typography, orthotypography) and macrotypography (layout).

Please scan or photograph these findings and print them out in black and white on A3 paper.

Please write down the rule—as short as possible, as long as necessary— as a single line on the A3 paper below the image.


Lesson 22.10.25

Systems

Discussion of the design rules found

What rules were found?

How are the rules formulated?

-> Possible corrections

Write rules in a pad as instructions?

https://pad.riseup.net/p/book-rules-keep

(A)bbreviation

Special text passages are set in bold

Stage directions are set in italics.

Code blocks of any programming language are set in any blackletter font

Names are set in small caps.

(B)lank pages

There is a blank page before each chapter.

Different text alignment and deliberate asymmetry between the left and right pages.

There are no page numbers on blank pages.

(B)lank spaces

Instead of blank spaces, the gaps are replaced with design elements ( -, _, /,|, *, etc).

(C)aptions

Captions are placed above the image on the left without line spacing.

The caption is always placed opposite the image in the margin column on the double page, aligned at the top with the type area.

(C)hapter titles

Chapter titles refer to a period of time to which the information belongs, e.g., year xxxx, week x, hour/minute/second XX.

(C)olors

All chapter headings are set in color.

(C)olumn titles

Column titles are centered on the center axis below the page margin at the same height as the page number and in a smaller font size than the body text, with a consistent distance from the footer.

Column titles are positioned vertically in the inner margin, flush with the top of the type area. Left from bottom to top, right from top to bottom.

(D)

(E)nd indents

The first line of each new paragraph is indented to the right. However, the first paragraph of a chapter has no indentation.

Indents are distinguished by a different color in the typography.

(F)ootnotes

The footnotes extend flush from the bottom into the page. The text grows upwards.

The footnote is set in italics.

The footnotes are smaller than the body text.

(F)lush text

Justified text is only used for direct speech, otherwise block text is used.

(F)onts

Never use more than two fonts.

(F)ont size

All texts, headings, page numbers, etc. are set in the same font size and font type.

(F)ormatted text

The text flows within a non-rectangular graphic shape

(G)raphic symbols

Graphic symbols are used as punctuation marks in the body text.

Graphic motifs are visual elements that are repeatedly used by brands or designs. To maintain a sense of unity throughout the image, do not use them in a size that is too large or too small.

The font sizes and styles are determined by the hierarchy of the content: heading > subheading > body text > footnotes

(G)rid

The layout follows a grid with 6 rows and 4 columns

(H)eadings

Always place the heading in large letters below the body text

Place the heading on the left-hand page at the right-hand margin and the heading on the right-hand page at the left-hand margin.

Chapter numbers and titles are indented to different degrees.

(H)ighlighting

When using a sans-serif typeface, emphasis is applied with a serif typeface.

(When using a sans-serif typeface, emphasis is applied with a serif typeface.)

(I)llustrations

Full-page illustrations are used without page numbers.

The illustrations are not included in the type area.

(I)Images

Pages that are completely filled with an image do not have page numbers.

(I)nitials

Initials are placed at the beginning of a body text, after the start of a new chapter.

Initials are illustrated at the beginning of each new chapter.

Initials as a decorative element at the beginning of a chapter.

(J)ustified text

The lines of justified text are slightly offset and the space between them is no greater than the space between words.

The text leaves the justified text and extends beyond the center into the column of the other justified text.

(K)

(L)ists

List items are inserted into lists and begin with a +, followed by the text content without spacing.

(M)arginalia

(N)ames

Names of people or characters are mirrored on the X-axis.

Names that indicate the acting character are set in small caps

(N)umbering

Numbering is set in a different font style.

(O)rnaments

An ornament is positioned centered after each paragraph

Ornaments border the type area

(O)pen capitals

Open capitals (with outlines) only work in large fonts.

(P)age number

The page number is always 2 cm below the bottom of the type area. If there is no text on the page, the page number is at the top.

The page number always appears 15 times on a page. They are always in the same grid (3x5).

The page number always appears on the left-hand side of a double page.

The page number is centered at the bottom and is cut off horizontally due to the book edge.

(P)oints

Points (.) are underlined.

(P)unctuation marks

are in a different color than the body text

(Q)Quotation marks

French quotation marks are used. “Quote.”

French quotation marks are used the other way around. «Quote».

(Q) Cross-references

Cross-references are colored blue and underlined. The glyph ⤴ is inserted at the end of the text content.

(R)eading direction

The reading direction may vary.

(R)otation

All texts are rotated by 9°.

(S)entence beginning

Each sentence begins with a dash. — Like this.

(S)mall letters

Everything is written in small letters.

(T)ype area

The type area for continuous text is located exclusively on the right-hand pages with a single outer margin and a 6.5-fold gutter margin.

Symmetrical double-page layout with wide outer margin.

The type area is rotated 90 degrees counterclockwise.

Individual words leave the type area and are arranged according to other rules.

The type area is not symmetrical, e.g., always on the left.

Uniform page margins for a calm layout.

(T)itle

The title on the cover is not horizontal and is not centered.

The title is printed again in black on the first page of the book.

(T)ypo

Font size does not follow a fixed structure - RANDOM

(T)ranslation

Divide the page into two columns. The original text is in the left column, the translation directly next to it in the right column.

(V)erses

Each line of verse begins with the verse number. The text content of the verse is inserted, followed by a blank line.

(V)ertical forms

Vertical forms and text appear compressed to the human eye and therefore require a larger character spacing (+2pt) than horizontal text and forms.

(V)ersal letters

Comic texts are set in versal letters.

Headings, column titles, and introductory texts are set in uppercase letters.

(V)owels

All vowels are changed with umlaut variations (also possible with consonants).

(W)hite space

White space is deliberately used as a design element

(W)hite space

Direct speech is set with a line break and the first line is indented.

(X)- Height

The position of the type area is calculated using the x-height of the font

(Y)

(Q)uotations

All speakers are assigned a unique color, and quotations/reproductions of spoken words are set in the respective color

(Z)Line spacing

Inconsistent line spacing in the same typeface

(Q)uotations

Quotations are set in italics and extend 10 cm beyond the type area.


Experiment: Design a layout using only this rule

Micro/macro typography

Exercise

Why noise?

Please prepare

Reading

Task

Lesson 29.10.25

Web to Print 1

!disclaimer! The printing functions of browsers are often still uncared-for, buggy and imprecise, so be prepared for glitches and paradox situations.​

Post-Digital Print

Examples:

Frameworks:

What you will need ✏️

Framework used

https://pagedjs.org/

Paged.js is a free and open source JavaScript library that paginates content in the browser to create PDF output from any HTML content. This means you can design works for print (eg. books) using HTML and CSS!

Paged.js follows the Paged Media standards published by the W3C (ie the Paged Media Module, and the Generated Content for Paged Media Module). In effect Paged.js acts as a polyfill) for the CSS modules to print content using features that are not yet natively supported by browsers.

0 Creating a HTML / CSS project 📂

  1. Open Visual Studio Code (VSC)

  2. Create a project folder on your hard drive

  3. Open that folder in VSC

  4. create a new index.html and style.css

  5. in the index.html use ! (Emmet) to create a basic HTML file

  6. link the style.css in the head of the HTML using \

  7. test by launching the server

1 Including Paged js

Let's look at the documentation: https://pagedjs.org/en/documentation/

Download the latest version of paged js:

https://unpkg.com/pagedjs@0.4.3/dist/paged.polyfill.js

+ download the interface.css stylesheet from: https://gitlab.coko.foundation/pagedjs/interface-polyfill

Put those files in you project folder and include

<script src="js/paged.polyfill.js"></script>

<link href="css/interface.css" rel="stylesheet" type="text/css" />

in the HTML head.

🙌 Great, we are ready for our first book layout

To print the pdf do the following (from the paged.js documentation):​

Click on the “Print” button of your browser. (It will most likely be in File > Print or, on your keyboard, CTRL/CMD + P)
                

2 @page 📄

The styling of pages can now be altered by using the @page rules in the css as well as @media print media queries (you might know this from responsive design: @media screen and (min-width: 900px) for instance)

General settings for the page:

@page {
                        size: A5;
                        margin-top: 10mm;
                        margin-bottom: 10mm;
                        font-family: 'Franklin Gothic Medium', 'Arial Narrow', Arial, sans-serif;

                        @bottom-left {
                            content: counter(page);
                        }
                    }
                

Options for left and right page:

    @page:left {
                        margin-left: 10mm;
                        margin-right: 20mm;
                        @top-left {
                            content: "Chapter";
                        }
                    }

                    @page:right {
                        margin-left: 20mm;
                        margin-right: 10mm;

                        @top-right {
                            content: "Hybrid Publishing";
                        }
                    }
                

In the @media print query we can include all the styles that we want ONLY to appear in the print

@media print {
                        html, body {
                            height: 99vh;
                            margin: 0;
                            padding: 0;
                          }
                }
                

3 web and print at the same time 🏗

To avoid loading the print preview already on the first load we can include the following little script:

<script>
                        window.PagedConfig = {
                                auto: false
                        };       
                </script>
                

! before the script include (<script src="js/paged.polyfill.js"></script>)

and then create a button to call the preview:

<button class="noprint" onclick="preview()">print preview</button>

<script>
                //this will load paged.js and generate the PDF preview
                function preview(){
                        window.PagedPolyfill.preview();
                }
                </script>
                

with the noprint class we can hide elements in the print version in @media print

.noprint{
                        display: none;
                }
                

4 get the flow right

Paged.js breaks the HTML content into multiple pages.

With CSS properties we can control that flow.

.chapter
                {
                break-before: page;
                }
                

to break the page before every .chapterelement

5 more options … … …​

Setting bleeds:

@page    {
                    bleed: 6mm;
                }
                

Setting up crop marks:

@page {
                    marks: crop;
                }
                

Add content before:

.note::before {
                    content: "Note: ";
                }
                

counters: (e.g. for counting images)

body {
                    counter-reset: figureNumber;
                }

                figcaption {
                    counter-increment: figureNumber;
                }

                figcaption::before {
                    content: counter(figureNumber);
                }
                

generated images:

.glossary::after {
                    content: " " url("/images/glossary-icon.png");
                }
                

showing links:

a::after {
                    content: " (" attr(href) ")";
                }
                

Running title with header:

h3 {
                    string-set: title content(text);
                }

                @page {
                    @bottom-center {
                        content: string(title);
                    }
                }
                

page templates

.frontmatter {
                        page: frontmatterLayout;
                }

                @page frontmatterLayout {
                        /* specifics rules for the frontmatter*/
                }
                

select specific page

@page:nth(5){
                }
                

Creating a table of contents is a bit more tricky, but doable with some JS / CSS:

https://pagedjs.org/posts/en/build-a-table-of-contents-from-your-html/

Building an index:

https://pagedjs.org/posts/en/build-an-index-with-pagedjs/

Parallel flows:

https://pagedjs.org/posts/en/parallel-flows-within-paged.js/

Cross references:

https://pagedjs.org/en/documentation/-cross-references/

🍳 Let's cook some PDFs

Experiment with CSS styles and content ~

Many more options can be found in the reference: https://pagedjs.org/en/documentation/

Booklet Imposition

Download the imposition.js: https://gitlab.coko.foundation/pagedjs/pagedjs-plugins/booklet-imposition/-/raw/master/imposition.js?ref_type=heads\&inline=false

Include in the index.html (! after the paged.js script):

<script src="js/imposition.js"></script>

In the CSS under @page add the following:

--paged-layout: booklet;
                

Now if you click CMD+P the layout should be layouted as a booklet and ready to print!

References and Resources


Reading

https://pagedjs.org/posts/en/parallel-flows-within-paged.js/

Exercise

Booklets

Make a Booklet with pajed.js

Use the Text and the Rules you formulated in the last exercise and make a booklet using only paged.js.

print & bring the finished zines