asciidoctor-pdf 1.6.2 → 2.0.0.alpha.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (99) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +1 -1
  3. data/CHANGELOG.adoc +224 -30
  4. data/NOTICE.adoc +16 -4
  5. data/README.adoc +207 -67
  6. data/asciidoctor-pdf.gemspec +3 -7
  7. data/data/fonts/ABOUT-mplus1mn-subset +1 -1
  8. data/data/fonts/ABOUT-mplus1p-subset +2 -2
  9. data/data/fonts/ABOUT-notosans-subset +26 -0
  10. data/data/fonts/ABOUT-notoserif-subset +1 -1
  11. data/data/fonts/{LICENSE-notoserif → LICENSE-noto} +0 -0
  12. data/data/fonts/mplus1mn-bold-subset.ttf +0 -0
  13. data/data/fonts/mplus1mn-bold_italic-subset.ttf +0 -0
  14. data/data/fonts/mplus1mn-italic-subset.ttf +0 -0
  15. data/data/fonts/mplus1mn-regular-subset.ttf +0 -0
  16. data/data/fonts/mplus1p-regular-fallback.ttf +0 -0
  17. data/data/fonts/notoemoji-subset.ttf +0 -0
  18. data/data/fonts/notosans-bold-subset.ttf +0 -0
  19. data/data/fonts/notosans-bold_italic-subset.ttf +0 -0
  20. data/data/fonts/notosans-italic-subset.ttf +0 -0
  21. data/data/fonts/notosans-regular-subset.ttf +0 -0
  22. data/data/fonts/notoserif-bold-subset.ttf +0 -0
  23. data/data/fonts/notoserif-bold_italic-subset.ttf +0 -0
  24. data/data/fonts/notoserif-italic-subset.ttf +0 -0
  25. data/data/fonts/notoserif-regular-subset.ttf +0 -0
  26. data/data/themes/base-theme.yml +18 -22
  27. data/data/themes/default-for-print-theme.yml +24 -0
  28. data/data/themes/default-for-print-with-fallback-font-theme.yml +3 -0
  29. data/data/themes/default-theme.yml +49 -54
  30. data/data/themes/default-with-fallback-font-theme.yml +2 -2
  31. data/data/themes/sans-with-fallback-font-theme.yml +10 -0
  32. data/docs/theming-guide.adoc +967 -344
  33. data/lib/asciidoctor/pdf/converter.rb +1691 -1478
  34. data/lib/asciidoctor/pdf/ext/asciidoctor/document.rb +18 -1
  35. data/lib/asciidoctor/pdf/ext/asciidoctor/image.rb +9 -15
  36. data/lib/asciidoctor/pdf/ext/asciidoctor/list.rb +6 -13
  37. data/lib/asciidoctor/pdf/ext/asciidoctor/section.rb +3 -16
  38. data/lib/asciidoctor/pdf/ext/asciidoctor.rb +1 -5
  39. data/lib/asciidoctor/pdf/ext/core/file.rb +1 -1
  40. data/lib/asciidoctor/pdf/ext/core/quantifiable_stdout.rb +1 -4
  41. data/lib/asciidoctor/pdf/ext/core/string.rb +2 -2
  42. data/lib/asciidoctor/pdf/ext/core.rb +1 -4
  43. data/lib/asciidoctor/pdf/ext/pdf-core/page.rb +8 -33
  44. data/lib/asciidoctor/pdf/ext/pdf-core.rb +0 -18
  45. data/lib/asciidoctor/pdf/ext/prawn/coderay_encoder.rb +5 -7
  46. data/lib/asciidoctor/pdf/ext/prawn/extensions.rb +433 -329
  47. data/lib/asciidoctor/pdf/ext/prawn/font/afm.rb +0 -4
  48. data/lib/asciidoctor/pdf/ext/prawn/font_metric_cache.rb +1 -1
  49. data/lib/asciidoctor/pdf/ext/prawn/formatted_text/arranger.rb +33 -3
  50. data/lib/asciidoctor/pdf/ext/prawn/formatted_text/box.rb +20 -14
  51. data/lib/asciidoctor/pdf/ext/prawn/formatted_text/fragment.rb +9 -3
  52. data/lib/asciidoctor/pdf/ext/prawn/images.rb +14 -16
  53. data/lib/asciidoctor/pdf/ext/prawn-svg/loaders/data.rb +6 -0
  54. data/lib/asciidoctor/pdf/ext/prawn-svg/loaders/web.rb +22 -0
  55. data/lib/asciidoctor/pdf/ext/prawn-svg/url_loader.rb +13 -0
  56. data/lib/asciidoctor/pdf/ext/prawn-svg.rb +5 -2
  57. data/lib/asciidoctor/pdf/ext/prawn-table/cell/asciidoc.rb +76 -20
  58. data/lib/asciidoctor/pdf/ext/prawn-table/cell/text.rb +39 -1
  59. data/lib/asciidoctor/pdf/ext/prawn-table/cell.rb +21 -15
  60. data/lib/asciidoctor/pdf/ext/prawn-table.rb +1 -1
  61. data/lib/asciidoctor/pdf/ext/pygments.rb +2 -2
  62. data/lib/asciidoctor/pdf/ext/rouge/formatters/prawn.rb +17 -20
  63. data/lib/asciidoctor/pdf/ext/rouge/themes/asciidoctor_pdf_default.rb +1 -0
  64. data/lib/asciidoctor/pdf/ext/rouge.rb +0 -1
  65. data/lib/asciidoctor/pdf/formatted_text/formatter.rb +2 -2
  66. data/lib/asciidoctor/pdf/formatted_text/inline_destination_marker.rb +8 -10
  67. data/lib/asciidoctor/pdf/formatted_text/inline_image_arranger.rb +69 -78
  68. data/lib/asciidoctor/pdf/formatted_text/inline_image_renderer.rb +7 -10
  69. data/lib/asciidoctor/pdf/formatted_text/inline_text_aligner.rb +2 -4
  70. data/lib/asciidoctor/pdf/formatted_text/parser.rb +53 -47
  71. data/lib/asciidoctor/pdf/formatted_text/parser.treetop +5 -7
  72. data/lib/asciidoctor/pdf/formatted_text/source_wrap.rb +14 -14
  73. data/lib/asciidoctor/pdf/formatted_text/text_background_and_border_renderer.rb +4 -7
  74. data/lib/asciidoctor/pdf/formatted_text/transform.rb +116 -109
  75. data/lib/asciidoctor/pdf/formatted_text.rb +0 -1
  76. data/lib/asciidoctor/pdf/index_catalog.rb +7 -11
  77. data/lib/asciidoctor/pdf/optimizer.rb +3 -5
  78. data/lib/asciidoctor/pdf/pdfmark.rb +16 -8
  79. data/lib/asciidoctor/pdf/roman_numeral.rb +4 -22
  80. data/lib/asciidoctor/pdf/sanitizer.rb +18 -13
  81. data/lib/asciidoctor/pdf/section_info_by_page.rb +24 -0
  82. data/lib/asciidoctor/pdf/theme_loader.rb +89 -79
  83. data/lib/asciidoctor/pdf/version.rb +1 -2
  84. data/lib/asciidoctor/pdf.rb +5 -2
  85. metadata +34 -64
  86. data/data/fonts/mplus1mn-bold-ascii.ttf +0 -0
  87. data/data/fonts/mplus1mn-bold_italic-ascii.ttf +0 -0
  88. data/data/fonts/mplus1mn-italic-ascii.ttf +0 -0
  89. data/data/fonts/mplus1mn-regular-ascii-conums.ttf +0 -0
  90. data/lib/asciidoctor/pdf/ext/asciidoctor/abstract_block.rb +0 -7
  91. data/lib/asciidoctor/pdf/ext/asciidoctor/abstract_node.rb +0 -7
  92. data/lib/asciidoctor/pdf/ext/asciidoctor/list_item.rb +0 -18
  93. data/lib/asciidoctor/pdf/ext/asciidoctor/logging_shim.rb +0 -33
  94. data/lib/asciidoctor/pdf/ext/core/array.rb +0 -11
  95. data/lib/asciidoctor/pdf/ext/core/hash.rb +0 -7
  96. data/lib/asciidoctor/pdf/ext/core/regexp.rb +0 -5
  97. data/lib/asciidoctor/pdf/ext/pdf-core/pdf_object.rb +0 -8
  98. data/lib/asciidoctor-pdf/converter.rb +0 -3
  99. data/lib/asciidoctor-pdf/version.rb +0 -3
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8acb8483d431db066ec50cd65e6da2d59055c5140c4b41d3500ee9b83a85dcd2
4
- data.tar.gz: 523bc1fea41b743c4eccece4b1b8dabb09c278fa20e71cb647d2d7add8c691f3
3
+ metadata.gz: 51c4377f62ca11147b6d896ed5e3951b4a1f592a1ae0d2361ed7285a751af428
4
+ data.tar.gz: 6d4011e829d0ffc774cd75833f633c76dbed53e1e9ada8c35d4d436c998ed82e
5
5
  SHA512:
6
- metadata.gz: 04e279e44bfb426474e8ceff464ed41e37b9eaa570bf6824781b938cf6936d203e5ba58d2f533dfc7c558f0d25569cd3cb3ce198d22a72a2f3363f3852b0271f
7
- data.tar.gz: c859b5eabc90ffcd082866201bd11106cfb6f78ba476f9467e42ec6a873286bb5ac4232f7d8c552b959ba5232069def91580daed60fdf825ff60268236bec151
6
+ metadata.gz: beac89c0b3c561e881e4f0c80d350f01cb2a46f14ce19779dd69a7e08173c8c6ba19fb072ffab76b0dc305ec083aa3e8305aa977b584643b18a9ed3475e3d2cd
7
+ data.tar.gz: b347acb25d851c82ae9fddb6996bff0864fada2442237c9f6d4933ec18c1a9cf437ed85b1128fa857aab41c504fc237b29d6f104328a5ab00da7ecd4cf75df5d
data/.yardopts CHANGED
@@ -8,5 +8,5 @@
8
8
  lib/**/*.rb
9
9
  -
10
10
  CHANGELOG.adoc
11
- LICENSE.adoc
11
+ LICENSE
12
12
  NOTICE.adoc
data/CHANGELOG.adoc CHANGED
@@ -3,7 +3,226 @@
3
3
  :uri-repo: https://github.com/asciidoctor/asciidoctor-pdf
4
4
 
5
5
  This document provides a high-level view of the changes to the {project-name} by release.
6
- For a detailed view of what has changed, refer to the {uri-repo}/commits/v1.6.x[commit history] on GitHub.
6
+ For a detailed view of what has changed, refer to the {uri-repo}/commits/main[commit history] on GitHub.
7
+
8
+ == 2.0.0.alpha.1 (2022-04-20) - @mojavelinux
9
+
10
+ Enhancements::
11
+
12
+ * make delimited blocks breakable by default; require the `unbreakable` option on the block to retain the previous "`keep together`" behavior (#2004, #578, #509, #240)
13
+ * add support for the %unbreakable option on a table to prevent it from being split across pages (#2022, #871, #819, #331)
14
+ * add support for the %breakable option on a table (special case) to keep the caption and ID with the start of the table (#2022, #993)
15
+ * implement smart bottom margins on blocks to prevent extra space below blocks, particularly nested blocks (#1515, #1513, #1845)
16
+ * drop support for `top-margin` key on block and prose categories in theme; space between delimited blocks and lists now controlled using bottom margins only (#1515)
17
+ * allow location of anchor for block to be positioned relative to content using `block-anchor-top` key in theme (#2013)
18
+ * allow page numbering and running content to start after first page of a document without a title page by assigning an integer to the respective `start_at` theme key (#1644)
19
+ * allow page numbering and running content to start after toc (wherever it's placed) by assigning the keyword `after-toc` to the respective `start_at` theme key (#1763)
20
+ * allow theme to configure page numbering to start at cover (#1727)
21
+ * allow the front and back cover images to be defined in the theme (#1584)
22
+ * allow the front and back cover images to be specified as a data URI (#1584)
23
+ * allow theme to control margin and content margin of running content per periphery (header or footer) and per side (recto or verso) (#994)
24
+ * allow theme to control border style of delimited blocks (example, sidebar, code, admonition, verse, quote) (#1586)
25
+ * allow theme to control font color of first line of abstract using `abstract-first-line-font-color` key
26
+ * allow theme to control background color and border offset (only for background) of links (#1705)
27
+ * support custom role on paragraph to allow theme to control font properties (#483)
28
+ * change lead category in theme to built-in role named lead (#2031)
29
+ * allow theme to control line height of blocks using line-height property where font properties are accepted (#2032)
30
+ * don't render index section if index is empty (i.e., there are no index entries)
31
+ * allow title of special section to be hidden by setting `untitled` option on section
32
+ * stabilize font paths in built-in themes by prefixing paths with GEM_FONTS_DIR (#1568)
33
+ * assign `page-layout` attribute in running content so it can be used to select a background per layout (#1570)
34
+ * reset numbering of footnotes in each chapter (#1639)
35
+ * add chapter xreftext to label of footnote reference that refers to previous chapter (#1639)
36
+ * add support for assigning the same font file to all font variants (i.e., styles) using the wildcard key (`*`) (#1588)
37
+ * bundle Noto Sans in addition to Noto Serif and add built-in theme sans-with-fallback-font (#2010)
38
+ * allow caption max-width to be set to percentage of content by passing argument to fit-content function (#1494)
39
+ * allow theme to control text alignment of caption independent of box alignment (#1493)
40
+ * set `chapter-numeral` attribute in running content on pages in chapter if `sectnums` attribute is set (#1373)
41
+ * set `part-numeral` attribute in running content on pages in part if `partnums` attribute is set (#1373)
42
+ * add support for normal_italic font style (to reset font style to normal, then apply italic) (#1603)
43
+ * honor text alignment roles (e.g., `text-left`) or `list-text-align` theme key on callout lists
44
+ * honor text alignment roles (e.g., `text-center`) on block image (#1609)
45
+ * honor role and inherited role on inline image (#1939, #1376)
46
+ * disable running header and/or footer on toc pages if `noheader` and/or `nofooter` option is set on toc macro (#1378)
47
+ * add support for preamble toc placement
48
+ * only insert macro toc at location of first toc macro
49
+ * ignore requested pages not found in imported PDF (#1616)
50
+ * disable document outline if `outline` document attribute is unset (#1619)
51
+ * keep temporary artifacts (for debugging) if KEEP_ARTIFACTS env var is set
52
+ * define a dest name "toc" at the top of the default toc location
53
+ * normalize space characters in authors content and drop lines with unresolved attribute references (#1642)
54
+ * skip image block with missing image if computed alt text resolves to empty string (#1645)
55
+ * custom theme does not inherit from base theme by default; must be specified explicitly using `extends: base` (#1640)
56
+ * allow theme to configure number of index columns using `index_columns` key (#1663)
57
+ * configure AsciiDoc table cell to inherit font properties from table and scale font size of nested blocks (#926)
58
+ * scale font size of literal table cell (#1696)
59
+ * add support for `id` attribute on link macro
60
+ * add support for `link` attribute on icon macro (#1915)
61
+ * allow theme to configure width of block border on ends separate from sides (#1693)
62
+ * add additional glyphs to built-in fonts (heavy checkmark to fallback font; both checkmarks to monospaced font; numero sign to prose and fallback fonts) (#1625)
63
+ * allow theme to specify text decoration style, color, and width for captions (globally)
64
+ * allow admonition icon image to be remote (if allow-uri-read is set) or data URI (#1711)
65
+ * allow theme to configure font color of unresolved footnote using unresolved role
66
+ * show textual label on admonition if icon image fails to embed (#1741)
67
+ * allow theme to disable title page by assigning false to `title_page` category key (#1754)
68
+ * allow Rouge theme to be specified as theme class or instance (API only)
69
+ * allow theme to control font size of dot leader in TOC
70
+ * allow section to override outlinelevels for self and children using `outlinelevels` attribute on section
71
+ * use value of `author` attribute for PDF info and pdfmark if locked by the API (#1778)
72
+ * only extend theme in extends hierarchy once unless modified with `!important` (#1800)
73
+ * add print-optimized themes (default-for-print and default-for-print-with-fallback-font) (#1699)
74
+ * add support for power operator in theme (with same precedence as multiply and divide) (#1813)
75
+ * include floor and ceil match characters in fallback font (#1832) (*@oddhack*)
76
+ * allow horizontal and vertical lines of table grid to be styled independently (#1875) (*@hextremist*)
77
+ * allow theme to define the characters for typographical quotation marks (#1880) (*@klonfish*)
78
+ * allow theme to control top margin of callout lists that immediately follow a code block using `callout-list-margin-top-after-code` key (#1895)
79
+ * introduce `layout_general_heading` to allow extended converter to access node (#1904)
80
+ * use `Document#authors` to retrieve authors instead of extracting the information from the indexed document attributes
81
+ * add support for character references that contain both uppercase and lowercase hexadecimal characters (#1990) (*@etiwnad*)
82
+ * log error and skip table instead of raising error if cell content cannot fit into column width of table (#2009)
83
+ * extract `arrange_section` method to compute whether section title should be advanced to next page (#2023)
84
+ * introduce `callout-list` category in theme to control font properties and item spacing of callout lists (#1722)
85
+ * only indent inner paragraphs (paragraphs that follow an adjacent paragraph) if `prose-text-indent-inner` key is set in theme (#2034)
86
+ * stop and restart conversion in scratch document once the code determines the block does not fit in the available space (#2003)
87
+
88
+ Bug Fixes::
89
+
90
+ * reimplement arrange block logic by using scratch document to compute extent for content block in primary document instead of height (#2003, #2016, #789)
91
+ * correctly compute height of delimited block attached to description of item in horizontal dlist (follow-up to #2003)
92
+ * do not crash if item in horizontal description list has no desc
93
+ * do not crash if item in unordered description list has no desc and do not append subject stop to term
94
+ * ensure that `Time.parse` is loaded
95
+ * resolve images in theme correctly when theme is loaded from classloader (JRuby only) (#1829)
96
+ * log warning rather than crash if front cover image cannot be embedded (such as a broken SVG)
97
+ * do not insert blank line in index when term is forced to break (#1665)
98
+ * honor prepress page margins on subsequent pages in index (#1929)
99
+ * use more robust strategy for line height normalization that accounts for case when line contains only monospaced text (#1650)
100
+ * add support for line-height property on lead role as documented
101
+ * prevent generator from allocating space for placeholder null char (used for anchors) if font is missing glyph (#1672)
102
+ * ensure background and admonition icon image files are closed after being read (#1566)
103
+ * ensure temporary images generated by running content are cleaned up (#1566)
104
+ * fix encoding of indent in wrapped source blocks when font is AFM (#1934)
105
+ * fix spacing after first line of indented paragraph (#1557)
106
+ * fix crash if btn or kbd macro is used in section title (#1563)
107
+ * fix crash when applying text transform to heading cell in table body (#1575)
108
+ * allow custom inline role to control text transform when it's not the only role on the phrase
109
+ * do not convert already converted intrinsic width for block and inline SVG
110
+ * honor font style when looking for glyph in font
111
+ * resolve character references in custom admonition label (as defined via caption attribute)
112
+ * convert blocks inside abstract, not just the contents of the blocks
113
+ * only suggest installing prawn-gmagick gem if not loaded (#1578)
114
+ * applying double border style to thematic break should honor border width
115
+ * warn once instead of crashing if page background image cannot be embedded (#1780)
116
+ * warn once instead of crashing if `cache-uri` is set but library is not available
117
+ * sanitize values of PDF info values (#1594)
118
+ * configure headings to inherit font styles from theme (#1604)
119
+ * use conum font family defined in theme for conum in verbatim block (#1611)
120
+ * apply font color and text transform from theme to terms in horizontal dlist (#1994)
121
+ * prevent content of AsciiDoc table cell from overrunning content on subsequent pages (#1623)
122
+ * account for top/bottom padding when computing height of AsciiDoc table cell
123
+ * log error message if table cell is truncated (#1626)
124
+ * take hard line breaks into account when computing natural width of table cell (#1762)
125
+ * use "toc" as the default dest name for the macro toc
126
+ * position page split indicator correctly when block has transparent border
127
+ * replace block macro with missing PDF target with alt text
128
+ * consistently use default margin when page margin resolves to empty array
129
+ * sort page numbers in index numerically instead of lexicographically; sort mixed page number types correctly (#1657)
130
+ * use informal title prefixed with down indicator for collapsible block (#1660)
131
+ * don't apply border, shading, or padding to collapsible block (#1660)
132
+ * escape bare ampersand in attribution and citetitle of quote or verse block (#1662)
133
+ * fix numeric assertions in test suite (#1542)
134
+ * prevent converter for list item from inserting new page to position marker when next page is already instantiated (#2001)
135
+ * keep block anchor with code block when block is moved to next page (#1897)
136
+ * keep block anchor with admonition block when block is moved to next page
137
+ * remove poorly-defined (and undocumented) border bottom property for caption
138
+ * fix crash when theme specifies CMYK value for table border color (#1700)
139
+ * fallback gracefully if unrecognized convert-time syntax highlighter is used
140
+ * correctly process a sequence of two or more callouts separated by spaces in a source block (#1898)
141
+ * allow callouts sub to be disabled on source blocks (#1704)
142
+ * show missing footnote reference in superscript
143
+ * fix crash when `icons=font` and `admonition_label_min_width` is set in theme
144
+ * use oembed API over HTTPS to get thumbnail for Vimeo video
145
+ * show link to Vimeo video if `allow-uri-read` attribute is not set
146
+ * don't apply syntax highlighting if Rouge lexer fails to highlight source; show plain source instead
147
+ * don't apply syntax highlighting to source block if `specialchars` sub is disabled
148
+ * apply border bottom to correct table row when frame and grid are disabled (#1873)
149
+ * allow caption max width to be set by theme to fixed value
150
+ * fix crash when footnote is defined in section title with auto-generated ID
151
+ * do not duplicate footnotes in desc of horizontal description list (#1775)
152
+ * allow an index term to be defined in section title with auto-generated ID
153
+ * fix alignment of link box for image in running content with numeric vertical alignment
154
+ * fix vertical center alignment of normal table cell
155
+ * short-circuit xreftext containing a circular reference path
156
+ * prevent PDF page import from corrupting references in PDF (#1726)
157
+ * display decimal list marker correctly when list is reversed (e.g., 10., 09., 08., etc)
158
+ * use correct spacing for dotted border dash on table (length and spacing should match width)
159
+ * set color space on page with only image so font color is preserved in running content (#1742)
160
+ * compute font size for superscript and subscript correctly when parent element uses em and % units (#1745)
161
+ * respect hyphenation exceptions when word is adjacent to non-word character (#1715)
162
+ * fix crash when TOC is enabled and index is empty
163
+ * align TOC section properly when index exceeds one page and `section_indent` is positive (#1735)
164
+ * fix left margin drift when indentation is active across a page break (#1735, #1949)
165
+ * render image at end of section title in corresponding toc entry (#1752)
166
+ * allow inline image to be enclosed in link macro (alt text was breaking parsing)
167
+ * prevent inline image from rendering multiple times if fallback font is used for alt text (#1858)
168
+ * allow theme to set font style of first line of abstract to normal
169
+ * resize admonition label to fit if height exceeds height of content box
170
+ * fix crash when underline style is used in Rouge theme
171
+ * fix crash when Text token is not defined in custom Rouge theme
172
+ * fix crash when Pygments style is not recognized; fall back to pastie style
173
+ * avoid loss of precision in CMYK color value for conum or footnote font
174
+ * use value of `untitled-label` attribute as fallback value for doctitle in running content (#1772)
175
+ * use value of `untitled-label` attribute as fallback value for Title field in pdfmark (follow-up to #1772)
176
+ * show sensible error message if background image cannot be loaded (e.g., data is corrupt)
177
+ * honor alignment role when aligning alt text for missing block image
178
+ * don't crash when rendering alt text for block image if value of align attribute is invalid (#1781)
179
+ * correctly scale down SVG that only marginally exceeds bounds of page when `fit=scale-down`
180
+ * prevent font scale from compounding for nested blocks in AsciiDoc table cell (#2007)
181
+ * don't suppress actual error message when theme cannot be loaded; may contain information about theme being extended
182
+ * force inline image to fit within table cell when width is larger than available space (#1798)
183
+ * hide print annotation for bare email address (#1806)
184
+ * patch float precision constant so prawn-table does not fail to arrange cells that span columns (#1835)
185
+ * capture footnotes in AsciiDoc table cell and render them with other footnotes at end of article/chapter (#1777)
186
+ * prevent PDF from being used as logo image on title page (since it cannot work properly anyway)
187
+ * don't crash when generating TOC if section title is empty
188
+ * escape closing square bracket around alt text of missing image so it doesn't get matched as part of a link macro
189
+ * use value of `author` attribute in PDF info and pdfmark if `authors` attribute is not set (#1922)
190
+ * honor `pdf-folio-placement` setting even when `media=prepress` (#1917)
191
+ * honor `pre-wrap` role on phrase (#1927)
192
+ * verify alignment of list marker in AsciiDoc table cell (#1965)
193
+ * don't crash if value of `width` attribute on image has invalid format (#1970)
194
+ * don't render borders and backgrounds in scratch document
195
+ * don't insert blank page after document title if first block (chapter or toc macro) has nonfacing option (#1988)
196
+ * coerce negated variable reference to number if value of variable is numeric
197
+ * prepress page margins should honor value of `pdf-folio-placement` (#1918)
198
+ * ensure callout number in callout list stays with primary text when item is advanced to next page (#1967)
199
+
200
+ Compliance::
201
+
202
+ * drop support for Ruby < 2.7 and JRuby < 9.2 (#1681, #2038)
203
+ * declare the matrix gem as a dependency to fix compatibility with Ruby 3.1
204
+ * use `YAML.safe_load` from Ruby stdlib instead of `safe_yaml gem`
205
+ * drop deprecated Pdf module alias in API (leaving only PDF)
206
+ * remove deprecated "ascii" fonts; only bundle the more complete "subset" fonts
207
+ * remove support for `<color>` tag in passthrough content; use `<font color="...">` instead (may affect themes)
208
+ * remove asciidoctor-pdf/converter and asciidoctor-pdf/version shim scripts; use asciidoctor/pdf/converter and asciidoctor/pdf/version instead
209
+ * rename Optimizer#generate_file method to Optimizer#optimize_file
210
+ * drop support for deprecated `pdf-style` and `pdf-stylesdir` attributes (#1827)
211
+ * drop use of the undocumented `vertical-spacing` key from the built-in themes
212
+ * rename the `outline-list` category in the theme to `list` and map the `outline-list-` keys to `list-` with warning if found (#1894)
213
+ * rename the `literal` category in the theme to `codespan` and map the `literal-` keys to `codespan-` with warning if found (#1796)
214
+ * rename the `blockquote` category key in the theme to `quote` and map the `blockquote-` prefix to `quote-` with warning if found (#2054)
215
+ * rename the `key` category key in theme to `kbd` and map the `key-` prefix to `kbd-` with warning if found (#2052)
216
+ * remove unneeded _mb functions (e.g., `uppercase_mb`); multibyte support for upcase, downcase, and capitalize is now provided by corelib
217
+
218
+ Build / Infrastructure::
219
+
220
+ * migrate Linux CI jobs to GitHub Actions (#1814)
221
+ * enable CI job on macOS (#1817)
222
+ * add Ruby 3.1 to CI matrix; use as primary Ruby
223
+ * test against Asciidoctor upstream (#1821)
224
+ * skip tests for unreadable files when euid is 0
225
+ * use prawn-table release and drop recommendation to use the development version (converter now patches prawn-table)
7
226
 
8
227
  == 1.6.2 (2021-12-31) - @mojavelinux
9
228
 
@@ -39,7 +258,7 @@ Bug Fixes::
39
258
  Compliance::
40
259
 
41
260
  * add support for Ruby 3 and drop support for Ruby < 2.5 and JRuby < 9.2 (#1681)
42
- * upgrade to Prawn 2.4.0 (adds support for Ruby 3)
261
+ * upgrade to Prawn 2.4.0 (adds support for Ruby 3 and OTF font support)
43
262
  * upgrade to prawn-svg 0.32 (adds support for Ruby 3 without a patch and for loading embedded images from a data URI)
44
263
  * upgrade to prawn-icon 3.0.x
45
264
  * release lock on ttfunk version (1.6 produces slightly different output from 1.5 for certain missing glyphs)
@@ -49,31 +268,6 @@ Build / Infrastructure::
49
268
 
50
269
  * run tests against pygments.rb 2.x in addition to pygments.rb 1.2.0
51
270
 
52
- == 1.5.4 (2021-01-09) - @mojavelinux
53
-
54
- Bug Fixes::
55
-
56
- * restore compatibility with Asciidoctor 2.0.12 when using Pygments (#1846)
57
- * fix numeric assertions in test suite (#1542)
58
- * keep caption with image when image is scaled down to fit page (#1803)
59
- * prevent inline image from rendering multiple times if fallback font is used for alt text (#1858)
60
- * disable cache tests if open-uri-cache gem is not available
61
- * disable hyphen tests if text-hyphen gem is not available
62
- * compensate for change in how character_spacing is applied in FontMetricCache#width_of after Prawn 2.2.2
63
- * allow inline image to be enclosed in link macro (alt text was breaking parsing)
64
- * use oembed API over HTTPS to get thumbnail for Vimeo video
65
- * use conum font family defined in theme for conum in verbatim block (#1611)
66
- * patch float precision constant so prawn-table does not fail to arrange cells that span columns (#1835)
67
- * resolve images in theme correctly when theme is loaded from classloader (JRuby only) (#1829)
68
-
69
- Compliance::
70
-
71
- * upgrade to prawn-svg 0.31 (adds support for loading embedded images from a data URI) (#1810)
72
-
73
- Build / Infrastructure::
74
-
75
- * migrate Linux CI jobs to GitHub Actions
76
-
77
271
  == 1.5.3 (2020-02-28) - @mojavelinux
78
272
 
79
273
  Bug Fixes::
@@ -144,7 +338,7 @@ Bug Fixes::
144
338
 
145
339
  == 1.5.0.rc.2 (2020-01-09) - @mojavelinux
146
340
 
147
- * patch Prawn to fix incompatibilty with Ruby 2.7 (to fix text wrapping)
341
+ * patch Prawn to fix incompatibility with Ruby 2.7 (to fix text wrapping)
148
342
  * fix crash when assigning font style to header cell in table body (#1468)
149
343
  * fix parsing of array value of pdf-page-margin attribute (#1475)
150
344
  * fix warning when reading data from a remote URL when running with Ruby 2.7 (#1477)
@@ -508,8 +702,8 @@ Bug Fixes::
508
702
  * avoid call to super in prepended module to fix Ruby 1.9.3
509
703
  * look for correct file to require in bin script
510
704
  * upgrade prawn-icon from 1.3.0 to 1.4.0
511
- * upgrade rouge to 2.2.1
512
- * add concurrent-ruby to runtime dependencies for compatiblity w/ Asciidoctor 1.5.8
705
+ * upgrade rouge to 2.2.1
706
+ * add concurrent-ruby to runtime dependencies for compatibility w/ Asciidoctor 1.5.8
513
707
 
514
708
  == 1.5.0.alpha.16 (2017-07-30) - @mojavelinux
515
709
 
data/NOTICE.adoc CHANGED
@@ -18,23 +18,35 @@ See the License for the specific language governing permissions and limitations
18
18
 
19
19
  == Third-party licensed work
20
20
 
21
- M+ OUTLINE FONTS (M+ TESTFLIGHT 058)::
21
+ M+ OUTLINE FONTS (M+ TESTFLIGHT 063a)::
22
22
  The M+ OUTLINE FONTS are used for literal text, annotation numbers and fallback characters and are bundled in the PDF file.
23
23
  These fonts are free software and are designed and maintained by Coji Morishita.
24
24
  Unlimited permission is granted to use, copy, and distribute them, with or without modification, either commercially or noncommercially.
25
25
  THESE FONTS ARE PROVIDED "AS IS" WITHOUT WARRANTY.
26
+ (Effectively the same as the Zero-Clause BSD License: https://opensource.org/licenses/0BSD).
26
27
 
27
- - http://mplus-fonts.sourceforge.jp/mplus-outline-fonts/index-en.html
28
+ - http://mplus-fonts.osdn.jp/about-en.html
28
29
 
29
- Noto Serif Font (v2015-06-05)::
30
+ Noto Serif and Noto Sans Fonts (86b2e553c3e3e4d6614dadd1fa0a7a6dafd74552)::
30
31
  Noto is font family developed by the Google Internationalization Team that aims to support all the world's languages.
31
32
  The Noto Serif font is used for headings and body copy and is bundled in the PDF file.
33
+ The Noto Sans font is provided as an alternative for headings and body copy and is bundled in the PDF file.
32
34
  The Noto fonts are licensed under the Apache 2.0 License.
33
35
  You may obtain a copy of the license at:
34
36
 
35
37
  http://www.apache.org/licenses/LICENSE-2.0
36
38
 
37
- - https://code.google.com/p/noto/
39
+ - https://github.com/googlefonts/noto-fonts
40
+
41
+ Noto Emoji Font (16151a2312a1f8a7d79e91789d3cfe24559d61f7)::
42
+ Noto is font family developed by the Google Internationalization Team that aims to support all the world's languages.
43
+ The Noto Emoji font is used to support emoji characters encoded in the document.
44
+ The Noto fonts are licensed under the Apache 2.0 License.
45
+ You may obtain a copy of the license at:
46
+
47
+ http://www.apache.org/licenses/LICENSE-2.0
48
+
49
+ - https://github.com/googlefonts/noto-emoji
38
50
 
39
51
  Font Awesome Icon Font (v5.4)::
40
52
  Font Awesome (@fontawesome), the iconic font designed for Bootstrap by David Gandy (@davegandy), is used for the admonition icons and other icons in author's content and bundled in the PDF file.