diff --git a/doc/specs/vulkan/Makefile b/doc/specs/vulkan/Makefile
index a23df3ec..5da76da6 100644
--- a/doc/specs/vulkan/Makefile
+++ b/doc/specs/vulkan/Makefile
@@ -120,7 +120,8 @@ ADOCHTMLOPTS = $(ADOCHTMLEXTS) -a katexpath=$(KATEXDIR)
ADOCPDFEXTS = -r asciidoctor-pdf -r asciidoctor-mathematical -r $(CURDIR)/config/asciidoctor-mathematical-ext.rb
ADOCPDFOPTS = $(ADOCPDFEXTS) -a mathematical-format=svg \
- -a imagesoutdir=$(PDFMATHDIR)
+ -a imagesoutdir=$(PDFMATHDIR) \
+ -a pdf-stylesdir=config/themes -a pdf-style=pdf
ADOCVUEXTS = -r $(CURDIR)/config/vu-to-json.rb
ADOCVUOPTS = $(ADOCVUEXTS)
diff --git a/doc/specs/vulkan/config/themes/pdf-theme.yml b/doc/specs/vulkan/config/themes/pdf-theme.yml
new file mode 100644
index 00000000..96488bf3
--- /dev/null
+++ b/doc/specs/vulkan/config/themes/pdf-theme.yml
@@ -0,0 +1,275 @@
+# Modified asciidoctor-pdf default-theme.yml adding chapter names to the page footer
+
+font:
+ catalog:
+ # Noto Serif supports Latin, Latin-1 Supplement, Latin Extended-A, Greek, Cyrillic, Vietnamese & an assortment of symbols
+ Noto Serif:
+ normal: notoserif-regular-subset.ttf
+ bold: notoserif-bold-subset.ttf
+ italic: notoserif-italic-subset.ttf
+ bold_italic: notoserif-bold_italic-subset.ttf
+ # M+ 1mn supports ASCII and the circled numbers used for conums
+ M+ 1mn:
+ normal: mplus1mn-regular-ascii-conums.ttf
+ bold: mplus1mn-bold-ascii.ttf
+ italic: mplus1mn-italic-ascii.ttf
+ bold_italic: mplus1mn-bold_italic-ascii.ttf
+ # M+ 1p supports Latin, Latin-1 Supplement, Latin Extended, Greek, Cyrillic, Vietnamese, Japanese & an assortment of symbols
+ # It also provides arrows for ->, <-, => and <= replacements in case these glyphs are missing from font
+ M+ 1p Fallback:
+ normal: mplus1p-regular-fallback.ttf
+ bold: mplus1p-regular-fallback.ttf
+ italic: mplus1p-regular-fallback.ttf
+ bold_italic: mplus1p-regular-fallback.ttf
+ fallbacks:
+ - M+ 1p Fallback
+page:
+ background_color: ffffff
+ layout: portrait
+ margin: [0.5in, 0.67in, 0.67in, 0.67in]
+ # margin_inner and margin_outer keys are used for recto/verso print margins when media=prepress
+ margin_inner: 0.75in
+ margin_outer: 0.59in
+ size: A4
+base:
+ align: justify
+ # color as hex string (leading # is optional)
+ font_color: 333333
+ # color as RGB array
+ #font_color: [51, 51, 51]
+ # color as CMYK array (approximated)
+ #font_color: [0, 0, 0, 0.92]
+ #font_color: [0, 0, 0, 92%]
+ font_family: Noto Serif
+ # choose one of these font_size/line_height_length combinations
+ #font_size: 14
+ #line_height_length: 20
+ #font_size: 11.25
+ #line_height_length: 18
+ #font_size: 11.2
+ #line_height_length: 16
+ font_size: 10.5
+ #line_height_length: 15
+ # correct line height for Noto Serif metrics
+ line_height_length: 12
+ #font_size: 11.25
+ #line_height_length: 18
+ line_height: $base_line_height_length / $base_font_size
+ font_size_large: round($base_font_size * 1.25)
+ font_size_small: round($base_font_size * 0.85)
+ font_size_min: $base_font_size * 0.75
+ font_style: normal
+ border_color: eeeeee
+ border_radius: 4
+ border_width: 0.5
+# FIXME vertical_rhythm is weird; we should think in terms of ems
+#vertical_rhythm: $base_line_height_length * 2 / 3
+# correct line height for Noto Serif metrics (comes with built-in line height)
+vertical_rhythm: $base_line_height_length
+horizontal_rhythm: $base_line_height_length
+# QUESTION should vertical_spacing be block_spacing instead?
+vertical_spacing: $vertical_rhythm
+link:
+ font_color: 428bca
+# literal is currently used for inline monospaced in prose and table cells
+literal:
+ font_color: b12146
+ font_family: M+ 1mn
+menu_caret_content: " \u203a "
+heading:
+ align: left
+ #font_color: 181818
+ font_color: $base_font_color
+ font_family: $base_font_family
+ font_style: bold
+ # h1 is used for part titles (book doctype only)
+ h1_font_size: floor($base_font_size * 2.6)
+ # h2 is used for chapter titles (book doctype only)
+ h2_font_size: floor($base_font_size * 2.15)
+ h3_font_size: round($base_font_size * 1.7)
+ h4_font_size: $base_font_size_large
+ h5_font_size: $base_font_size
+ h6_font_size: $base_font_size_small
+ #line_height: 1.4
+ # correct line height for Noto Serif metrics (comes with built-in line height)
+ line_height: 1
+ margin_top: $vertical_rhythm * 0.4
+ margin_bottom: $vertical_rhythm * 0.9
+title_page:
+ align: right
+ logo:
+ top: 10%
+ title:
+ top: 55%
+ font_size: $heading_h1_font_size
+ font_color: 999999
+ line_height: 0.9
+ subtitle:
+ font_size: $heading_h3_font_size
+ font_style: bold_italic
+ line_height: 1
+ authors:
+ margin_top: $base_font_size * 1.25
+ font_size: $base_font_size_large
+ font_color: 181818
+ revision:
+ margin_top: $base_font_size * 1.25
+block:
+ margin_top: 0
+ margin_bottom: $vertical_rhythm
+caption:
+ align: left
+ font_size: $base_font_size * 0.95
+ font_style: italic
+ # FIXME perhaps set line_height instead of / in addition to margins?
+ margin_inside: $vertical_rhythm / 3
+ #margin_inside: $vertical_rhythm / 4
+ margin_outside: 0
+lead:
+ font_size: $base_font_size_large
+ line_height: 1.4
+abstract:
+ font_color: 5c6266
+ font_size: $lead_font_size
+ line_height: $lead_line_height
+ font_style: italic
+ first_line_font_style: bold
+ title:
+ align: center
+ font_color: $heading_font_color
+ font_family: $heading_font_family
+ font_size: $heading_h4_font_size
+ font_style: $heading_font_style
+admonition:
+ column_rule_color: $base_border_color
+ column_rule_width: $base_border_width
+ padding: [0, $horizontal_rhythm, 0, $horizontal_rhythm]
+ #icon:
+ # tip:
+ # name: fa-lightbulb-o
+ # stroke_color: 111111
+ # size: 24
+ label:
+ text_transform: uppercase
+ font_style: bold
+blockquote:
+ font_color: $base_font_color
+ font_size: $base_font_size_large
+ border_color: $base_border_color
+ border_width: 5
+ # FIXME disable negative padding bottom once margin collapsing is implemented
+ padding: [0, $horizontal_rhythm, $block_margin_bottom * -0.75, $horizontal_rhythm + $blockquote_border_width / 2]
+ cite_font_size: $base_font_size_small
+ cite_font_color: 999999
+# code is used for source blocks (perhaps change to source or listing?)
+code:
+ font_color: $base_font_color
+ font_family: $literal_font_family
+ font_size: ceil($base_font_size)
+ padding: $code_font_size
+ line_height: 1.25
+ # line_gap is an experimental property to control how a background color is applied to an inline block element
+ line_gap: 3.8
+ background_color: f5f5f5
+ border_color: cccccc
+ border_radius: $base_border_radius
+ border_width: 0.75
+conum:
+ font_family: M+ 1mn
+ font_color: $literal_font_color
+ font_size: $base_font_size
+ line_height: 4 / 3
+example:
+ border_color: $base_border_color
+ border_radius: $base_border_radius
+ border_width: 0.75
+ background_color: ffffff
+ # FIXME reenable padding bottom once margin collapsing is implemented
+ padding: [$vertical_rhythm, $horizontal_rhythm, 0, $horizontal_rhythm]
+image:
+ align: left
+prose:
+ margin_top: $block_margin_top
+ margin_bottom: $block_margin_bottom
+sidebar:
+ background_color: eeeeee
+ border_color: e1e1e1
+ border_radius: $base_border_radius
+ border_width: $base_border_width
+ # FIXME reenable padding bottom once margin collapsing is implemented
+ padding: [$vertical_rhythm, $vertical_rhythm * 1.25, 0, $vertical_rhythm * 1.25]
+ title:
+ align: center
+ font_color: $heading_font_color
+ font_family: $heading_font_family
+ font_size: $heading_h4_font_size
+ font_style: $heading_font_style
+thematic_break:
+ border_color: $base_border_color
+ border_style: solid
+ border_width: $base_border_width
+ margin_top: $vertical_rhythm * 0.5
+ margin_bottom: $vertical_rhythm * 1.5
+description_list:
+ term_font_style: bold
+ term_spacing: $vertical_rhythm / 4
+ description_indent: $horizontal_rhythm * 1.25
+outline_list:
+ indent: $horizontal_rhythm * 1.5
+ #marker_font_color: 404040
+ # NOTE outline_list_item_spacing applies to list items that do not have complex content
+ item_spacing: $vertical_rhythm / 2
+table:
+ background_color: $page_background_color
+ #head_background_color:
+ #head_font_color: $base_font_color
+ head_font_style: bold
+ #body_background_color:
+ body_stripe_background_color: f9f9f9
+ foot_background_color: f0f0f0
+ border_color: dddddd
+ border_width: $base_border_width
+ cell_padding: 3
+toc:
+ indent: $horizontal_rhythm
+ line_height: 1.4
+ dot_leader:
+ #content: ". "
+ font_color: a9a9a9
+ #levels: 2 3
+# NOTE in addition to footer, header is also supported
+footer:
+ font_size: $base_font_size_small
+ # NOTE if background_color is set, background and border will span width of page
+ border_color: dddddd
+ border_width: 0.25
+ height: $base_line_height_length * 2.5
+ line_height: 1
+ padding: [$base_line_height_length / 2, 1, 0, 1]
+ vertical_align: top
+ #image_vertical_align: or
+ # additional attributes for content:
+ # * {page-count}
+ # * {page-number}
+ # * {document-title}
+ # * {document-subtitle}
+ # * {chapter-title}
+ # * {section-title}
+ # * {section-or-chapter-title}
+ recto:
+ #columns: "<50% =0% >50%"
+ right:
+ #content: '{page-number}'
+ content: '{chapter-title} | {page-number}'
+ #content: '{section-or-chapter-title} | {page-number}'
+ #content: '{document-title} | {page-number}'
+ #center:
+ # content: '{page-number}'
+ verso:
+ #columns: $footer_recto_columns
+ left:
+ #content: $footer_recto_right_content
+ content: '{page-number} | {chapter-title}'
+ #content: '{page-number} | {section-or-chapter-title}'
+ #center:
+ # content: '{page-number}'