Skip to content

Latest commit

 

History

History
1814 lines (1318 loc) · 146 KB

CHANGELOG.md

File metadata and controls

1814 lines (1318 loc) · 146 KB

Change Log

All notable changes to this project will be documented in this file. See Conventional Commits for commit guidelines.

2.29.0 (2024-05-03)

Bug Fixes

  • CSS font descriptors wrongly validated as font properties (44f63fa), closes #1307
  • layout precision problem on float boxes (a561a32), closes #1312
  • Named page wrongly applied to blank pages (07b6a24), closes #1309
  • text-spacing-trim may not work properly between different font sizes (2fd345d), closes #1302
  • Unnecessary page break at footnote or page bottom float (6e4e367), closes #1311
  • Wrong handling of shorthand properties with variables in conditional rules (a26d179), closes #1313

Features

  • Update CSS text-spacing-trim support: Rename trim-auto to trim-both (83ca0c7), closes #1305

2.28.1 (2024-03-12)

Bug Fixes

  • Footnote causes layout problem on page breaking (aa22bbd), closes #1298

2.28.0 (2024-03-03)

Bug Fixes

  • adjust TOC box width to account for scrollbar width (47e5d5b)
  • All <nav epub:type="…"> elements in EPUB navigation doc should be shown in TOC box (d31010f), closes #1270
  • blank page selector misapplied when target-counter is used (40a760b), closes #1131
  • break-before specified on floats may not work (06890fe), closes #1288
  • Column floats disappear (52ede7d), closes #1273
  • Float box pushed out of the page area (7e86951), closes #1295
  • float margins collapsed wrongly (03121f2), closes #1282
  • remove old EPUB NCX handling (56ca0ed)
  • set overflow property of @-epubx-partition to hidden by default (c196685), closes /idpf.org/epub/pgt/#s3
  • target-counter leads to pagination to wrong named page (980632d), closes #1272
  • Top margin at unforced page break not truncated correctly (97779f3), closes #1279
  • Top margin of floats at page start should be kept (6c1fb7f), closes #1292
  • TypeError occurs on repeating_elements/nesting test (819e1fd)

Features

  • Add errorCallback config option to VivliostylePrint/printHTML() (9602d61)

2.27.0 (2024-02-09)

Bug Fixes

  • HTML documents listed in "resources" in pub-manifest should not be rendered as if in "readingOrder" (0bbbd48), closes #1257
  • remove ruby font-size workaround no longer necessary (3138fda)
  • text-spacing not working properly with text-spacing natively enabled browser (42e16f4), closes #1252
  • text-spacing-trim:space-first not working properly in some case (398b53e), closes #1261
  • TOC box should contain only the TOC element content (754a70c), closes #1258
  • Units vi and vb are mishandled when writing-mode is different from the root element (286cc1e), closes #1265
  • vertical-in-horizontal block height and horizontal-in-vertical block width not computed properly (0f7d45e), closes #1264
  • Viewer page navigation hangs with EPUB/webpub with undetermined page-progression-direction (a7f5572), closes #1260

Features

  • Update CSS user agent default style sheet (b0993a0), closes #1128

2.26.0 (2024-01-20)

Bug Fixes

  • set hanging-punctuation:none for pre-formatted text default style (52d50c9)
  • text-spacing-trim not working properly in some cases (99b3af3), closes #1251

Features

  • Update CSS text-spacing-trim property to support the latest spec change (114fd6d), closes #1244

2.25.9 (2023-12-04)

Bug Fixes

  • page breaking inside table with table-header may cause unexpected page type reset (7865dea), closes #1233
  • page-area content may disappear on print (2f2f85a), closes #1240

2.25.8 (2023-11-06)

Bug Fixes

  • page breaking inside table may cause unexpected page type reset (59929ea), closes #1233

2.25.7 (2023-10-24)

Bug Fixes

  • Pagination result depends on viewer window width (7980721), closes #1228

2.25.6 (2023-10-03)

Bug Fixes

  • viewer: Current page should be kept after Find results in "Not Found" (fb28b64)
  • viewer: Exclude generated page margin box content from text search (ea8a447)
  • viewer: Navigation with page slider should not affect browser history stack (7b3f117), closes #1219
  • viewer: selection highlighting problems on iOS (abb3ee2)
  • viewer: tweak viewer UI for mobile devices (167adee)
  • viewer: tweak viewer UI style for mobile devices (f6ef23b)

2.25.5 (2023-08-09)

Bug Fixes

  • negative page margin values not working as expected (3f352d2), closes #1217
  • TOC box disappeared when resizing window (115205f)

2.25.4 (2023-07-28)

Bug Fixes

  • viewer: Page navigation left/right buttons disappeared in v2.25.3 (294e085), closes #1214

2.25.3 (2023-07-24)

Bug Fixes

  • EPUB font deobfuscation not working (2bbd58b)
  • Failed to load when publication manifest has stylesheet URL without extension (5e092c4), closes #1207
  • Numbered list counts go wrong when footnote-related pseudo-elements exist (871bef7), closes #1200
  • viewer: Unexpected scrollbar appears when loading W3C documents (e96f6f0)
  • wrong URL resolution when baseURL has no file name extension (776791f), closes #1211

2.25.2 (2023-06-22)

Bug Fixes

  • Variable fonts not working properly (cf19623), closes #1198

2.25.1 (2023-05-31)

Bug Fixes

  • page counter in running element not incremented properly (7bf1b6d), closes #1194
  • viewer: marker edit menu closes unexpectedly when editing memo (110b8e9)
  • wrong running element output with position:running() on display:none element (c944a09), closes #1196

2.25.0 (2023-05-15)

Bug Fixes

  • content(first-letter) in string-set property should respect ::before/after pseudo-elements (2a142e3), closes #1174
  • image size in page margin boxes (2f08632), closes #1177
  • some list style types are unavailable in list-style shorthand property (52c3afd), closes #1184
  • text-spacing:none for pre/code/kbd/samp/tt elements should be default (a69b921)
  • unnecessary forced page breaks at the beginning of page after out-of-flow elements (a867344), closes #1176
  • viewer: prevent wrong text selection touching page navigation buttons (8ba017f)
  • Vivliostyle crashes when using CSS namespaces (2f54e24), closes #1172
  • Vivliostyle crashes with "Error: Function xxx is undefined" (619803d)
  • Vivliostyle crashes with "Error: Internal error" (26284e0), closes #1178
  • widows and orphans properties are ignored inside multi-column box (f61931e), closes #1182
  • wrong layout with ::first-letter and ::after pseudo-elements (f59e6bd), closes #1175

Features

  • Add support for CSS running elements (68adafe), closes #424

2.24.3 (2023-04-20)

Bug Fixes

  • viewer: marker text selection problem (11a6584)
  • z-index on page context problem (Regression in v2.23.1) (9dc8344), closes #1166

2.24.2 (2023-04-11)

Bug Fixes

  • prevent "TypeError: can't access property" (3d9850d), closes #1160
  • unnecessary scrollbars when zoom is fit-to-screen (bb504a6), closes #1158
  • viewer: marker annotation user interface problem on touch devices (17c770d)
  • viewer: viewport height problem on smartphones (f3649c7)
  • wrong hyphen appears at page break with line-break:anywhere (a5e1356), closes #1162

2.24.1 (2023-04-01)

Bug Fixes

  • wrong message "[object Object]" instead of delete confirmation (451f737)

2.24.0 (2023-04-01)

Bug Fixes

  • Browser "Back" button should work with internal link or TOC navigation (5b6795c)
  • Rendering error with SVG images in EPUB (Regression in v2.23.0) (bff1c63), closes #1139 #1135

Features

  • viewer: Add Restore View setting (550c019)
  • viewer: Add UI Language in settings panel (7e4ee0c)
  • viewer: Marker annotation (7202a57)
  • viewer: Multilingual user interface (en/ja) (aa2f27b)

2.23.2 (2023-03-25)

Bug Fixes

  • Page content is not painted in the bleed area (Regression in v2.23.1) (05c4828), closes #1145 #644

2.23.1 (2023-03-24)

Bug Fixes

  • Leader layout problem dependent on font and language (bf351a9), closes #1117
  • Page background image is not painted in the bleed area (fb14e6c), closes #644

2.23.0 (2023-03-13)

Bug Fixes

  • CSS rem unit not evaluated correctly in min/max/clamp functions (0694528), closes #1137
  • SVG rendering error with <use xlink:href=… /> (e36aba9), closes #1135
  • tweak TOC detection for VFM v2 change (4304f27)
  • Using a CSS target-counter breaks named-pages styling (f88013e), closes #1136
  • viewer: [Regression v2.22.4] Viewer TOC item indent too large (8f8067e), closes #1133

Features

  • Add support for new syntax of CSS text-spacing properties (da819c5), closes #1118

2.22.4 (2023-02-22)

Bug Fixes

  • HTML <link rel="stylesheet"> tag without href causes TypeError (c8a18c0), closes #1120
  • improve margin-break handling (5327f69), closes #611 #1124
  • margin-break:discard not working properly (660eefd), closes #1123
  • no break opportunity at empty block box (a2b4537), closes #749
  • no break opportunity between anonymous block box and block-level box (73df5bc), closes #611
  • wrong cascading with CSS logical properties (2f7fd7b), closes #1126
  • wrong page break inside table in vertical writing mode (2dae5fc), closes #1129

2.22.3 (2023-01-29)

Bug Fixes

  • Inline margins on leader not working properly (abb74e6), closes #1114
  • Leader layout problem on Safari (afac702), closes #1112
  • PDF internal links not working properly (50d4891), closes #1110

2.22.2 (2023-01-26)

Bug Fixes

  • Leader disappears in very large page (a75a2e4), closes #1109
  • Leader layout problem with text-indent (c9e6d07), closes #1107

2.22.1 (2023-01-26)

Bug Fixes

  • Leader layout broken with text-spacing processing (78a2e92), closes #1105
  • react: default to BookMode=true and revert to before modification of json determination as it changes the behavior (d4429d8)
  • react: Enable EPUB and Web publishing only when bookMode=true (3e17f7e)
  • react: Modify the conditional expression to determine if it is EPUB (00ea102)

2.22.0 (2023-01-25)

Bug Fixes

  • layout problem when devicePixelRatio is changed during rendering (58c6202), closes #1079
  • react: Fix code that causes null error (e05998f)
  • very thin border on printing with Microsoft Edge (0137d0e), closes #1079 #1085

Features

  • react: Modify type definition errors as a result of updating react (9fb71ba)
  • Support CSS leader() function (1fdbb15), closes #1027

2.21.1 (2023-01-06)

Bug Fixes

  • pixel ratio emulation for thin border width not worked with HeadlessChrome (530d31e), closes #1085

2.21.0 (2023-01-06)

Bug Fixes

  • float-min-wrap-block: 0 causes "TypeError: Cannot read properties of undefined" (02c1bc8), closes #1072
  • break-before:column on single column causes printed page content disappear (4eb82ed), closes #1067
  • display and overflow property value definition (bb34af2)
  • Page break position changes depending on display device pixel ratio (23792ce), closes #1076
  • remove workaround for old Chrome printing problem (fbad411), closes #600
  • Top page float should not absorb margin/border/padding of the block below (9999edd), closes #1071
  • wrong white-space processing on non-ASCII spaces such as U+3000 IDEOGRAPHIC SPACE (7fb7bc0), closes #1082

Features

  • Enable very thin border width on PDF output (0eadefe), closes #419 #1076
  • Improve page auto spread view mode (68119e3)
  • Update CSS text-spacing property spec to align to the latest draft (395b923), closes #1080

2.20.0 (2022-12-16)

Bug Fixes

  • hanging-punctuation makes text selection difficult for paragraph-last punctuation (00177d3), closes #1062
  • Question: react renderer size (9d1fe83), closes #709
  • Some text-* properties are not applied to page margin box content (c3082f6), closes #1059
  • Text-decoration-line should not be skipped at ideograph-alpha/numeric text spacing (e8382ed), closes #1061
  • Wrong cascading with shorthand property text-decoration and its longhand (7674360), closes #1054

Features

  • Add support for CSS lh and rlh units (554d300), closes #1035
  • Add support for CSS margin-break property (a3086dc), closes #734
  • Support (-webkit-)text-stroke properties (73e0560), closes #1055

2.19.2 (2022-11-17)

Bug Fixes

  • @supports selector(…) did not work (49c48a4)
  • improve box edge treatment at page break and box-decoration-break support (d5ea1a9), closes #603 #1030 #1038
  • wrong first line treatment on text-spacing:space-first and hanging-punctuation:first (0ccdca2), closes #1041
  • wrong page break prohibition between text and block box (68b3754), closes #1036

2.19.1 (2022-10-21)

Bug Fixes

  • Error with undefined CSS variables in calc expression in shorthand property (db948cb), closes #1028

2.19.0 (2022-10-18)

Bug Fixes

  • Selector E ::pseudo is misinterpreted as E::pseudo (e79e5ce), closes #1026

Features

  • Add support for :has() pseudo-class in Selectors Level 4 (8ed553f), closes #828
  • Add support for :is()/:not()/:where() pseudo-classes in Selectors Level 4 (68baee0), closes #957

2.18.4 (2022-10-12)

Bug Fixes

  • CSS parser error with calc expression including parens and variables (88c4ae0), closes #1014
  • CSS parser error with property:calc(…) misinterpreted as selector with pseudo class (71c39bf), closes #1020
  • percentage units in color value changed, resulting in invalid colors (a45e861), closes #1012
  • RTL direction not behaving in multi column (d6280f1), closes #1016
  • TypeError occurs with ::nth-fragment() and ::after-if-continues() selectors (7a7c1aa), closes #1023
  • wrong CSS variable scoping (37e800a), closes #1015

2.18.3 (2022-09-30)

Bug Fixes

  • [Regression] wrong text-spacing with fullwidth opening brackets near end of line (667b219), closes #1010

2.18.2 (2022-09-30)

Bug Fixes

  • viewer: Apply and Cancel buttons in Settings menu should not be scrolled out (2df1b74)
  • viewer: disable shortcut keys when an input box exists in document and that is activated (0eedcc0)
  • wrong text-spacing when non-fullwidth closing and fullwidth opening brackets are adjacent (331322b), closes #1003
  • wrong text-spacing with fullwidth punctuations in some edge cases (6a79482), closes #1005 #1006
  • wrong text-spacing:space-first and hanging-punctuation:first at page break inside paragraph (ddd6d6c), closes #1008

2.18.1 (2022-09-18)

Bug Fixes

  • DOMException error caused by wrong instanceof Element usage (d959b95), closes #1000
  • viewer: crop marks values (e.g., crop cross) should be able to be specified (233ce43)

2.18.0 (2022-09-17)

Bug Fixes

  • error with <object> tag (9e9565f), closes #995
  • errors on the Acid2 Browser Test (849a604)
  • failed some of the css-variables tests (5d0f324)
  • incorrect column-rule positioning in vertical writing mode (3cc0e01), closes #978
  • unnecessary page break caused by ruby elements (21eb17c), closes #987
  • valid CSS rules ignored after parsing error with invalid or unsupported CSS rule (5e76ed5), closes #597 #976
  • viewer: problem on author/user stylesheet switch ("Set as user stylesheet" checkbox) (2799a34)
  • viewer: tweak Reset Custom Style checkbox behavior (9c96ccb)
  • viewer: unbound this error "Cannot set properties of undefined" (2505458)
  • wrong cascading on shorthand property with CSS variable (2ee7927), closes #979
  • wrong cascading with CSS !important (fb1dae2), closes #986
  • wrong text justification at last line of page caused by consecutive ruby elements (ad26952), closes #985

Features

  • viewer: add crop marks setting (1d0834b), closes #993
  • viewer: change "User Style" to "Custom Style" and treat it as an author stylesheet by default (bdb26d4), closes #991
  • viewer: set bookMode=true as default (5411264), closes #992

2.17.2 (2022-08-14)

Bug Fixes

  • Incorrect behavior of ::first-letter and ::first-line selectors (adca8ef), closes #566 #586

2.17.1 (2022-08-09)

Bug Fixes

  • float with clear not properly positioned (54a00b8), closes #969
  • Relative length units such as em and vw used in CSS calc() not working correctly (5bd7ce3), closes #968
  • unnecessary warning "Property not supported by the browser: ua-list-item-count" (f9419a3)

2.17.0 (2022-07-29)

Features

  • Support CSS custom properties (variables) (cd07654), closes #540

2.16.0 (2022-07-19)

Bug Fixes

  • Content overflow caused by line breaks in table cells that are not present in preview and appear in print (b1d7346), closes #958
  • CSS explicit defaulting (e.g. all: unset, break-inside: inherit) may not work as expected (745cbc2), closes #956
  • font-size with rem on root element causes wrong 1em size (3bcb351), closes #608
  • Footnote may disappear on Adaptive Layout (ae45017), closes #962

Features

  • Add support for CSS 'inset' shorthand property (2d2b8de)
  • Add support for CSS property value keywords 'initial', 'unset' and 'revert' (9f33464)
  • Add support for CSS shorthand property 'all' (1f809cd)
  • Improve CSS validator to support new property values supported in browser (1d5f493), closes #940

2.15.8 (2022-07-08)

Bug Fixes

  • Bleed not working when bleed is specified but marks and crop-offset are unspecified (7af167a), closes #948
  • Bottom border at page bottom edge disappeared on printing via Vivliostyle CLI v5.2.3 (e1b17ce), closes #947
  • Error: Negative or zero page area size (52292dd), closes #951

2.15.7 (2022-07-04)

Bug Fixes

  • float:left/right positioning broken on printing via Vivliostyle CLI v5.2.1 (b7cca0d), closes #945

2.15.6 (2022-07-03)

Bug Fixes

  • Error handling of negative or zero page area size that causes endless page generation loop (5532449), closes #941
  • Remove workaround for Chromium legacy layout engine (0dc02f6), closes 1121942#c79

2.15.5 (2022-06-12)

Bug Fixes

  • Layout problem with Chrome>=102 (b9d3d1f), closes #896

2.15.4 (2022-06-01)

Bug Fixes

  • White line left on the page bottom in output PDF (4ed4a47), closes #936 #934

2.15.3 (2022-05-29)

Bug Fixes

  • break-after:avoid on heading not honored when float exists after the heading (d1ec6ce), closes #904
  • Error F_TASK_NOT_TOP_FRAME occurs when resizing and reformatting pages (01ea3d3), closes #742
  • page content missing in PDF output when bleed is specified without marks (6fcae7c), closes #929

2.15.2 (2022-05-22)

Bug Fixes

  • first-letter pseudo element with float disappears when page break occurs in the parent paragraph (99e9001), closes #923
  • Flexbox layout broken due to text-spacing side-effect (0c070ca), closes #926
  • hanging-punctuation/text-spacing not working correctly when a ruby element is adjacent (71a95f9)
  • showTOC() takes a long time on large HTML document (ad50fe9), closes #924
  • SyntaxError ':not(:not(script, link, style) ~ *)' is not a valid selector in slightly older browsers (3389ee4), closes #919
  • wrong hanging-punctuation on half-width ideographic comma/fullstop (8bbe420), closes #909

2.15.1 (2022-05-06)

Bug Fixes

  • output page size slightly bigger than the specified (ed7059d)

2.15.0 (2022-05-05)

Bug Fixes

  • crop marks color should not be C0 M0 Y0 K100 when converted to CMYK (d9386da), closes #910
  • text-spacing causes text accessibility problem in output PDF (5eb4f70), closes #908

Features

  • Add crop-offset property for at-page rule (4b8e328), closes #913
  • Support printing mixed page sizes (76d1ed2), closes #751

2.14.6 (2022-04-18)

Bug Fixes

  • Fallback page size not applied on HeadlessChrome on Linux or Windows (c57c5d6), closes #905
  • Page float displayed unexpectedly in earlier page when target-counter is used (82fde78), closes #681
  • TypeError: Cannot read properties of null (7db46f5)
  • Web fonts (with JavaScript) not enabled when used in the middle of large HTML file (3ba4160), closes #901

2.14.5 (2022-04-11)

Bug Fixes

  • hanging-punctuation caused wrong text hanging on Safari/WebKit (49e278b), closes #894
  • text-spacing caused wrong page break (a17e775), closes #898

2.14.4 (2022-02-21)

Bug Fixes

  • viewer: tweak mouse wheel/scroll handling to prevent unexpected page moves (2ac72a0)
  • wrong page break with ruby at beginning of a paragraph (a9c50a3), closes #885

2.14.3 (2022-02-18)

Bug Fixes

  • hanging-punctuation not working properly with non-full-width punctuation (a3a05d3), closes #879
  • internal links broken in output PDF (e59109a), closes #877
  • should not link to blank page generated by a spread break (e706947), closes #881

2.14.2 (2022-02-14)

Bug Fixes

  • footnotes not positioned correctly in vertical writing mode (4a14156), closes #862 #392
  • hang-up with footnote/pagefloat and ::after pseudo element (4840e7d), closes #869
  • margin-block-end on page floats ignored in vertical writing mode (42ab1e1), closes #866
  • should generate single text node for pseudo elements if possible (bed59df), closes #863
  • use appropriate fallback page size when window size is not available (5a90204)
  • wrong indent of fullwidth opening punctuation at first line in second page (033d63b), closes #861

2.14.1 (2022-02-05)

Bug Fixes

2.14.0 (2022-02-04)

Bug Fixes

  • CSS text-orientation property was ignored in page margin boxes (ff2bb2e)
  • do not ignore metadata (language, author) in publication manifest (e1ec75f), closes #849
  • follow-up fix to text-spacing and hanging-punctuation support (6c19d40), closes #853 #820 #851 #818 #814 #595
  • overflow:hidden should not be default in page margin boxes (cf25ad5)
  • page margin boxes with vertical writing-mode not properly aligned (1e0f4d0)
  • TypeError occurred with TOC button when the book url has fragment (b3b6087), closes #856
  • Unnecessary aria-hidden attributes caused tagged PDF output broken (772a821)

Features

  • support CSS text-spacing and hanging-punctuation in generated content (d905017), closes #820
  • support the allow-end value of text-spacing and hanging-punctuation (102aec6), closes #818

2.13.0 (2022-01-17)

Bug Fixes

  • "The target resource is invalid" error caused by TOC with non-HTML links (d90e2aa), closes #839
  • CSS parser error, failed to parse stylesheet (a5a48d2), closes #827
  • Layout problem with Web fonts (79cf301), closes #829
  • Pseudo elements should not be generated when content is none (342f5a0), closes #832
  • Viewer page position should be kept after the heading ID changed (9c80245), closes #826

Features

  • Allow JavaScript in HTML documents (ccd31da), closes #733 #735
  • viewer: Add zoom URL parameter to keep zoom value on reloading (3bdab51), closes #825

2.12.1 (2021-11-19)

Bug Fixes

  • MathJax not enabled with inline TeX notation (e7da5a2), closes #815
  • Ruby broken at column/page break (5dfc049), closes #821
  • Text with ruby overflowed at column/page break (f15534d), closes #816

2.12.0 (2021-11-13)

Features

  • Support CSS hanging-punctuation property (f85b36e)
  • Support CSS text-spacing property (dfebffb), closes #595

2.11.3 (2021-10-31)

Bug Fixes

  • Error: E_FONT_FAMILY_INCONSISTENT (9d7be19), closes #797
  • Page/column last line not justified when justify is specified on root (e2c9706), closes #803
  • Root element styles not inherited to page context in multi-column layout (83f8ee7), closes #800
  • Ruby broken when page float exists (376db9a), closes #804
  • Ruby with rp elements broken at page break (11ad5cf), closes #808
  • Text overflow at column/page break (824d5b6), closes #811
  • Text overflow at column/page break when wbr tag is used (57e358a), closes #802
  • TypeError: Cannot read properties of null (reading 'readingProgression') (b5d4acd), closes #796

2.11.2 (2021-10-17)

Bug Fixes

  • Workaround for Chromium problem of inconsistent screen and print layout (08f2337), closes #758 #793
  • Wrong hyphenation at bottom of page (bcbc72c), closes #792

2.11.1 (2021-10-08)

Bug Fixes

  • column-fill:balance on vertical writing mode causes columns left-aligned (fe55f36), closes #544
  • Consecutive ruby elements cause line overflow (7c57ddb)
  • float:inline-start and inline-end misinterpreted as float:right (2e71481), closes #789
  • Inline-block or ruby at beginning of a block causes unexpected page/column break (0631dfe), closes #546
  • No break opportunity between math or svg (ea08a02), closes #750

2.11.0 (2021-09-29)

Bug Fixes

  • viewer: unwanted text deselection when mouse out of buttons (63c5335)

Features

  • viewer: Add basic text find feature (f85d731), closes #575
  • viewer: Disable Find and Text Smaller/Larger buttons for fixed layout EPUBs (fa0ae2e)

2.10.0 (2021-09-17)

Bug Fixes

  • Default body margin should be 0 in paged media (874a518), closes #776
  • Footnote counter should be predefined and available by default (16096b2), closes #723
  • Named page at the first page is not applied when HTML head part is big (0f696dc), closes #770
  • Named page not properly changed when target-counter refers the page (c303c2b), closes #771
  • Percentage font-size on :root causes wrong font-size in table with page/column breaks (6f0e6c3), closes #549
  • prevent useless warning "Property not supported by the browser: behavior" (1462a89)
  • Remove -ms- prefixed properties for no-longer supported browsers (7e7bf1b)
  • Root element styles should be inherited to the page context (1a41185), closes #568
  • text-combine-upright with text-indent does not work properly (1cabb91)
  • The :not() selector not working when the argument has ID selector (60a127f), closes #769

Features

  • Add support for line-break: anywhere (ba60007)
  • Add support for overflow-wrap: anywhere (96564af)
  • Add support for white-space: break-spaces (f563b61)
  • Add support for the font-variant-* properties (504896b), closes #592
  • Support the min-content, max-content, and fit-content values for width and height (9ce72b0), closes #605
  • Support unicode-range descriptor (a3f488f), closes #598

2.9.1 (2021-09-08)

Bug Fixes

  • Page at-rule in conditional rule is applied even if condition is false (b114396)

2.9.0 (2021-09-03)

Bug Fixes

  • "TypeError: Cannot read property '1' of null" occurred in getTOC() (d4539f7)
  • Vivliostyle Viewer stops working when window resizing on renderAllPages=false mode (5ae9298), closes #752
  • viewer: HTML markup errors in the Vivliostyle Viewer start page (aed4ea9), closes #755

Features

  • Support the @supports CSS at-rule (08efaef), closes #730
  • viewer: Add Content MathML extension in mathjax-config (e01ffa0)

2.8.1 (2021-07-14)

Bug Fixes

  • inherited text-indent ignored after page/column break (32aba92), closes #737
  • Problem on navigation to document URL without fragment from TOC (a948394), closes #736
  • Text disappears at page break when footnote or page float is given on before pseudo element (d78a168), closes #740
  • typescript error TS2612: Property 'xxx' will overwrite the base property (e8c52ea)
  • Unnecessary reformatting when resizing window (51e2f99), closes #743

2.8.0 (2021-04-16)

Bug Fixes

  • Failed to fetch documents when pub-manifest file has no file name extension (7fd2e15)
  • InvalidNodeTypeError: Failed to execute 'setStartBefore' on 'Range': the given Node has no parent (836b64c), closes #715
  • Stops with error when CSS property value calc() has invalid expression (61001a2), closes #717
  • Stops with InvalidCharacterError: Failed to execute 'setAttribute' on 'Element' (f0253fa), closes #718
  • target-counter and forced page break caused layout problems (377eaf9), closes #722
  • The ::first-letter pseudo-element not applied when a newline is preceding the first letter (546ed74), closes #716
  • TOC panel should not have a whole document in web publication (d95043b), closes #720

Features

2.7.0 (2021-04-07)

Features

2.6.2 (2021-03-25)

Bug Fixes

  • Failed to load documents from URL that contains "%26" or "%3F" etc. (c7da706), closes #711
  • TypeError: Cannot read property 'anchorSlot' of undefined (1625c81), closes #712

2.6.1 (2021-03-23)

Bug Fixes

  • Minimum font size setting in Chrome causes ruby font size problem (5e52c6f), closes #673

2.6.0 (2021-03-14)

Bug Fixes

  • core: Footnotes may cause "TypeError: Cannot read property 'styler' of null" (fbce3c7), closes #707
  • core: Stops with "TypeError: Cannot read property 'toLowerCase' of undefined" (38548ab), closes #706

Features

  • viewer: Add Print button and improve Settings menu (7a98a6e)
  • viewer: MathJax config update: use default scale and margin settings (0bedbbe), closes #593
  • viewer: Set coreViewer to the window object to allow other program to control the viewer (db47cef)

2.5.2 (2021-03-05)

Bug Fixes

  • core: Hang-up with footnote or page float on pseudo elements (cf324d4), closes #703

2.5.1 (2021-02-28)

Bug Fixes

  • core: Wrong page counter value when page counter is reset in the previous doc (a4d9e18), closes #701

2.5.0 (2021-02-26)

Features

  • core: Support the :nth() page selector (ad6f3e9), closes #667

2.5.0-pre.0 (2021-02-23)

Bug Fixes

  • core: spread break at beginning of a document does not work properly (f1208bf), closes #666
  • core: Missing source map (f8add2b), closes #695

Features

2.4.2 (2021-01-25)

Bug Fixes

  • top margin at forced break was ignored when target-counter is used (c8485ad), closes #690
  • react: Add react-dom to peer deps (3325031)
  • react: init core-viewer once even if source is updated (56f3d1b)
  • react: remove incorrect startPage (7f7951c)

2.4.1 (2021-01-12)

Bug Fixes

  • Page float displayed unexpectedly in earlier page when target-counter is used (34952e9), closes #681

2.4.0 (2020-12-28)

Features

  • Support named strings for running headers and footers (e02a06c), closes #545

2.3.0 (2020-12-07)

Bug Fixes

  • break-before:left/right is ignored when the previous block has break-after:page, etc. (01092f1), closes #676
  • CSS 'hyphens' property specified on the root element is ignored (dfb9f87), closes #674

Features

  • Support EPUB spine properties page-spread-left and -right (38b0774), closes #671

2.2.3 (2020-11-28)

Note: Version bump only for package vivliostyle

2.2.2 (2020-11-28)

Bug Fixes

  • viewer: Fix UI stylesheet problem for print (5244462)

2.2.1 (2020-11-26)

Bug Fixes

  • viewer: bug in v2.2.0 "TypeError: Cannot read property 'toString' of null" (08cf029)
  • viewer: Mouse wheel should be able to use to scroll TOC when TOC is active (c6c5eb8)

2.2.0 (2020-11-26)

Features

  • viewer: Add page slider in Vivliostyle Viewer UI (3e80c67), closes #670
  • viewer: Mouse wheel support for page navigation (94113f6)

2.1.4 (2020-10-30)

Bug Fixes

  • negative z-index on [@page](https://github.com/page) {...} causes page (margin-box) content to disappear (000eed6), closes #665

2.1.3 (2020-09-30)

Bug Fixes

  • Internal links and TOC links not working when the document URL has %-encoded characters (bdabb71), closes #662
  • page display shakes horizontally when all pages finish loading (18ab3c9), closes #663
  • SyntaxError: Invalid regular expression: invalid group specifier name, on Safari (3a70707), closes #664

2.1.2 (2020-09-28)

Note: Version bump only for package vivliostyle

2.1.2-pre.5 (2020-09-28)

Bug Fixes

  • Relative URLs in pub-manifest are not resolved properly when the pub-manifest is linked from HTML elsewhere (b6fe7c1), closes #661
  • TOC is not enabled when TOC exists in HTML but is not specified in the manifest (ea280a1), closes #659

2.1.2-pre.4 (2020-09-27)

Bug Fixes

  • "404 Not Found" error message does not appear when bookMode=true (43b137c), closes #660

2.1.2-pre.3 (2020-09-25)

Note: Version bump only for package vivliostyle

2.1.2-pre.2 (2020-09-25)

Bug Fixes

  • improve error messages when failed to load, wrongly mentioning CORS problem (55843cf), closes #638

2.1.2-pre.1 (2020-09-24)

Bug Fixes

  • 'start' and 'value' attributes on OL and LI elements are ignored (0aea654), closes #654
  • Error occurs by links to external site in TOC (fd4af3e), closes #657
  • HTML 'hidden' attribute is ignored (bf51734), closes #653
  • Style elements in the body element should not be ignored (d8603c3), closes #655
  • TOC element with 'hidden' attribute should be hidden in the page but visible in TOC panel (19d8f62)

2.1.2-pre.0 (2020-09-18)

Bug Fixes

  • EPUBCFI with %-encoded characters not working (309ab42), closes #650
  • Internal links not working when the URL fragment has %-encoded characters (f12e9c5), closes #649
  • Reloading causes unexpected move to the previous page (8f872e1), closes #651

2.1.1 (2020-06-30)

Bug Fixes

2.1.0 (2020-06-30)

Note: Version bump only for package vivliostyle

2.1.0-pre.3 (2020-06-30)

Bug Fixes

  • change epage type to number (a059d11)

2.1.0-pre.2 (2020-06-30)

Note: Version bump only for package vivliostyle

2.1.0-pre.1 (2020-06-30)

Bug Fixes

Features

  • react: support all documentOptions (9408681)
  • support userStyleSheet and authorStyleSheet (b0a68ca)
  • react: add renderer (3eb027b)
  • react: implement Renderer component (49afd58)
  • react: page navigation (4b39a9b)
  • react: VivliostyleViewer component (b857860)

2.1.0-pre.0 (2020-05-13)

Bug Fixes

  • epub metadata sorts and uses "scheme" correctly (301e5b4)
  • improve type safety of epub metadata parsing (b4dc5e2)

Features

  • add core viewer method to export the toc (f080aa5)
  • add core viewer methods to export metadata (d4f700c)
  • support reading role properties from epub metadata (955d01d)

2.0.0 (2020-04-03)

Note: Version bump only for package vivliostyle

2.0.0-pre.13 (2020-04-02)

Note: Version bump only for package vivliostyle

2.0.0-pre.12 (2020-04-02)

Bug Fixes

  • use generics for setTimeout (9cedc74)

2.0.0-pre.11 (2020-04-01)

Note: Version bump only for package vivliostyle

2.0.0-pre.10 (2020-03-26)

Features

  • update "start-webserver" and add "start-viewer" scripts/batch files (b4ac9ea)

2.0.0-pre.9 (2020-03-20)

Note: Version bump only for package vivliostyle

2.0.0-pre.8 (2020-03-16)

Features

  • update Vivliostyle logo images (cea5822)
  • viewer: new URL parameters (1fe081c), closes #628

2.0.0-pre.7 (2020-01-03)

Bug Fixes

  • "Received an empty response" error on web servers that don't know XHTML MIME type (6e7c6ba)
  • core: TypeError: Cannot read property 'cell' of undefined (0598e6c), closes #623

2.0.0-pre.6 (2019-12-23)

Note: Version bump only for package vivliostyle

2.0.0-pre.5 (2019-12-23)

Bug Fixes

2.0.0-pre.1 (2019-12-15)

Note: Version bump only for package vivliostyle

2019.11.100-pre - 2019-11-26

Fixed

  • Fix error on logical border shorthand properties
  • Fix bug: Internal links don't work when publication URL has ".html"
  • Fix bug: Links to document with Vivliostyle Viewer with relative URL don't work

Changed

2019.8.101 - 2019-08-20

Fixed

2019.8.100 - 2019-08-16

Changed

Fixed

2019.1.106 - 2019-06-14

Fixed

2019.1.105 - 2019-04-23

Fixed

2019.1.103 - 2019-04-05

Fixed

Changed

2019.1.102 - 2019-03-04

Fixed

2019.1.101 - 2019-02-27

Added

  • TOC (Table of Contents) navigation is now enabled
    • #498, #511
    • TOC box generation is enabled when #b= Viewer parameter (= Viewer.loadPublication() function) is used, and the publication has TOC data. In HTML documents, TOC is marked up with e.g. <nav role="doc-toc">. Vivliostyle recognizes element that is selected with CSS selector [role=doc-toc], [role=directory], nav li, .toc, #toc as a TOC element.
    • [Viewer UI] vivliostyle/vivliostyle-ui#62
  • Support Web Publications and similar multi-HTML documents
    • #511
    • Supported document types with #b= Viewer parameter (= Viewer.loadPublication() function):
      • Unzipped EPUB
        • URL of the OPF file can be specified as well as the top directory of the unzipped EPUB files.
      • Web publication (a collection of HTML documents with reading order)
      • (X)HTML document
        • When (X)HTML document URL is specified, the URL is treated as primary entry page's, and a series of HTML files are automatically loaded.
          • When the web publication manifest is specified in the primary entry page (X)HTML document, the readingOrder in the manifest is used.
          • If manifest is not specified or "readingOrder" is not in the manifest, the (X)HTML documents linked from the TOC element that is selected with CSS selector [role=doc-toc], [role=directory], nav li, .toc, #toc are loaded.
  • Support loading documents from GitHub and some specific URLs
    • #499, #505, https://github.com/vivliostyle/vivliostyle.js/commit/3424d965
    • GitHub and Gist URLs can be directly specified. Vivliostyle loads raw github/gist content when github/gist URL is specified.
    • Aozorabunko (青空文庫) (X)HTML URL can be specified. Vivliostyle loads Aozorabunko's raw github content when Aozorabunko (X)HTML URL is specified.
    • JS Bin URL is converted to JS Bin output URL and can be loaded. This is useful for testing Vivliostyle output from small HTML + CSS code, as well as Gist.
  • Publication title and individual HTML document title are now passed to viewer UI
  • env(pub-title) and env(doc-title) environment variables for page headers with publication/document titles
    • #512
    • Spec: CSS Environment Variables Module Level 1 defines env() function, but env(pub-title) and env(doc-title) are not yet defined so far.
    • env(pub-title): publication title = EPUB, Web publication, or primary entry page HTML title. Enabled when #b= Viewer parameter (= Viewer.loadPublication() function) is used.
    • env(doc-title): document title = HTML title, which may be chapter or section title in a publication composed of multiple HTML documents
    • When title data are not found, i.e. no <title> element in HTML, or env(pub-title) with #x= Viewer parameter (= Viewer.loadDocument() function), the empty string "" is returned.
  • Viewport-percentage length units: vw, vh, vi, vb, vmin, vmax, and page-size-percentage units pvw, pvh, pvi, pvb, pvmin, pvmax
    • #507
    • Spec: CSS Values and Units - Viewport-percentage lengths, but page-size-percentage units are not defined so far.
    • Note: On paged media context, the viewport-percentage units vw, vh, vi, vb, vmin, vmax are relative to the size of the page area, i.e., the content area of a page box and not including margin, border and padding specified on @page rule. This makes a lot of sense, but page size relative units may also be necessary. The pvw, pvh, pvi, pvb, pvmin, pvmax units are similar to the vw, vh, vi, vb, vmin, vmax but the reference size is the page size including page margins.
  • Support CSS calc() function
  • [Viewer UI] New "User Style Preferences" in the Settings panel
    • vivliostyle/vivliostyle-ui#64
    • New settings: Page Margins, Page Breaks (widows/orphans), Images, Text (base font-size, line-height, font-family)
    • User style CSS code is shown and editable in "CSS Details" box
    • User style CSS is saved in the URL parameter userStyle=data:,/*<viewer>*//*</viewer>*/ and not disappear when reloading, and can be bookmarked in browser.
    • "Font size (%)" reflects the ViewerOptions.fontSize that can be increase/decrease with "Text: larger/smaller" buttons, and this setting is saved in the new URL parameter fontSize=.
  • [Viewer UI] Vivliostyle Viewer start page with document URL input and usage description
    • vivliostyle/vivliostyle-ui#65
    • When document URL parameter (#b= or #x=) is not specified, the start page is now displayed.
    • Document URL entered by user is reflected in the URL parameter #b=, and   when the Enter key is pressed, the document is loaded.

Changed

Fixed

2018.12.103 - 2019-01-03

Fixed

  • Fix bug that ruby causes incorrect pagination
  • Fix bug on epubcfi failing to navigate to beginning of a spine item
  • Fix error occurring when inline-table is nested in another table

Changed

  • [Viewer UI] UI adjustment
    • Setting panel "Apply" button now closes the panel
    • Enable "Previous Page", "Next Page", and "Text: Default Size" buttons when window is wide enough

2018.10.100 - 2018-10-31

Added

Changed

Fixed

  • Fix bug that EPUB internal link does not work

2018.8.100 - 2018-09-10

Added

Changed

Fixed

  • Fix a bug that page spread view becomes incorrect when content doc's writing mode does not match the page-progression-direction in OPF
  • Fix a bug that stylesheet link element is ignored when class attribute exists
  • Fix a bug that writing mode specified on body didn't determine the root writing mode
  • Fix a bug that page spread view is weird when viewport width/height is specified
  • Fix a bug that clear: both on page floats causes "Error: Unexpected side: both".
  • Workaround for Microsoft Edge's text-justify: inter-ideograph problem
  • [Viewer UI] Fix sticky hover effect on touch devices

2018.2 - 2018-02-02 (Unreleased)

Added

Changed

  • Avoid text wrapping around fragmented page floats

Fixed

  • Fix a bug that a bottom margin on a page float is not taken into account when the float has a bottom padding or border
  • Fix a bug that box-decoration-break: clone makes a block incorrectly overflow
  • Avoid invalid fragmentation occurring between an edge of a block container and its child
  • Fix a bug that a table is not fragmented correctly
  • Fix a bug that a float inside an element with position:relative is positioned incorrectly
  • Fix a bug that a table is occasionally fragmented immediately before the end of it
  • Avoid printing bug on Gecko
  • Avoid printing bug on Blink
  • Fix incorrect justification when a positive text-indent is specified
  • Fix display of mglyph element of MathML
  • Fix a bug that order of page floats is sometimes incorrect

2017.6 - 2017-06-22

Added

Changed

  • Place footnotes at the bottom of pages (or regions) rather than columns
  • Disable hyphenation by default

Fixed

  • Fix footnote layout bugs
  • Fix justification bugs
  • Fix problem that content sometimes overflows a partition instead of being deferred to the next partition

2017.2 - 2017-02-22

Added

Changed

  • Change license to AGPL 3.0

Fixed

  • Fix incorrect page breaking at boundaries of inline-block boxes
  • Improve page/column breaking inside tables
    • #311
    • Following issues are resolved:
      • Table cell with rowspan disappears after page break
      • Table (column) width should not change over page breaks
      • Table breaks occur between the colgroup and the first row
  • Fix incorrect treatment of percentage value for line-height property
  • Support repeating table header/footer across pages
  • Fix incorrect widows behavior with footnote call close to the end of the page

2016.10 - 2016-10-25

Added

Changed

  • Introduce background layout and change event model
  • Improve zoom behavior
  • Add very simple 'auto spread' page view mode

Fixed

  • Fix bug that pages occasionally disappear when resolving cross references
  • Respect target="_blank" on links to external URLs
  • Fix incorrect page breaks with cross references
  • Fix image-resolution behavior when max/min-width/height is specified in length (not percentage)
  • Fix image-resolution to take box-sizing into account
  • Fix cross reference bug with name attribute
  • Avoid error when inherit value is used
  • Avoid error when rem unit is used
  • Fix rem unit inside position: relative elements
  • Fix internally generated IDs on elements to conform to the XML specification

2016.7 - 2016-07-04

Added

Changed

  • counter-reset and counter-increment specified in a page master (@-epubx-page-master) are now effective to page-based counters
    • #251
    • Note that these values, if specified, always override values specified in page contexts.

Fixed

  • Fix a bug that clear is ignored when white-space property is used before the element
  • Fix incorrect float positioning
  • Fix incorrect float clearance
  • Fix incorrect text offset caused by float
  • Fix improper rendering of floats with relative width/height
  • Fix positioning when a float is specified position: relative or a float is inside an positioned element
  • Fix positioning when a float has a writing-mode value different from its container
  • Fix issue with floats inside an element with an overflow value other than visible
  • Fix issue that a display value was always set to block for a float, ignoring the original value
  • Fix layout when a float is wider than its containing block
  • Avoid error when an element with pseudoelements overflows its container
  • Fix handling of padding and border of a block fragmented by a page/column break
  • Fix layout of floats inside flex containers
  • Fix page break bug in vertical text on Firefox (partially)

2016.4 - 2016-04-08

Added

Fixed

2016.1 - 2016-01-20

Added

  • Support EPUB loading
    • #60
    • loadEPUB method of Viewer class loads an unzipped EPUB directory.
  • Support some EPUB features
    • #62
    • Support page-progression-direction attribute of spine element in OPF
    • Accept -epub- prefixed text-emphasis-* properties
  • Support :nth-child() pseudo-class selector (only an integer argument can be used)
  • Basic CSS Page Floats support
    • #72
    • Spec: CSS Page Floats
    • Only basic float placement without stacking or collision avoidance is supported.
  • Improve handling of @font-face rules
  • Support JIS-B5 and JIS-B4 page sizes
  • Accept flexbox properties
  • Support srcset attribute for img and source elements

Changed

  • Add default page margin

Fixed

  • Fix zoom problem when viewport is specified by the document
  • Fix incorrect layout of HTML which is well-formed as XML
  • Fix viewport blinking while loading
  • Fix media queries behavior
  • Fix calculation of rem unit values
  • Improve MathJax performance
  • Fix bug that rules above footnotes disappear
  • Allow an EPUB directory URL not followed by a slash
  • Change initial values of orphans and widows to 2
  • Allow page/column break inside tables
  • Fix internal hyperlinks to elements with 'name' attributes
  • Allow units spelled in upper case
  • Fix handling of forced and avoid break values; update acceptable values for break-* properties
    • Spec: CSS Fragmentation Module Level 3
    • Note that the current implementation treats all values of break-inside other than auto as the same as avoid. The fine-grained control (distinguishing avoid, avoid-page, avoid-column and avoid-region) will be a future task and tracked with a separate issue.
    • Note that though the spec requires to honor multiple break-before/break-after values at a single break point, the current implementation choose one of them and discard the others. The fine-grained control of these break values will be a future task and tracked with a separate issue.
    • #26
    • #103
  • Element names and attribute names in selectors are now treated in a case-insensitive manner
  • Fix incorrect positioning of floats and clearance
  • Fix attribute selector ~=
  • Fix initial value of unicode-bidi
  • Fix support for q unit
  • Avoid page break between ruby base and annotation
  • Do not block entire process when stylesheets cannot be fetched or parsed
  • Fix problem that pages with viewport specified have incorrect horizontal offset on screen

0.2.0 - 2015-09-16

Beta release.

Added

Changed

Fixed

  • [core] Avoid incorrect margin collapse of the page area
  • [core] Fix incorrect positioning of floats
  • [viewer] Make keyboard shortcuts work on various browsers
  • [core] Fix duplicating page when navigate to the last page of each spine
  • [core] Fix several problems on web font loading

0.1.1 - 2015-05-06

Minor update with several changes and bug fixes.

Added

Changed

  • [core] Cascade page size specified in @page rules to page masters defined by @-epubx-page-master rules
    • #17
    • When @page rules and @-epubx-page-master rules are both specified, the page size specified by 'size' property in @page rules is applied to the selected page master. This behavior is not defined in the related specs. We added this behavior for a use case in which one wants to print content styled with Adaptive Layout on a paper sheet and wants to specify the sheet size by adding a (user) stylesheet containing @page rules with 'size' property.

Fixed

0.1.0 - 2015-04-28

Initial alpha release. Following features are added while keeping the original Adaptive Layout features.

Added

  • [core] Support @page rule
  • [viewer] Support spread view mode
    • #7
    • The spread view can be enabled by adding '&spread=true' to the end of the viewer URL.
    • Note: Page size calculation is incorrect when content with 'auto' page size is viewed in the spread view mode. This problem will be fixed in the next release.
  • [viewer] Added page navigation buttons