Closed JayPanoz closed 5 years ago
We can’t release the alpha version at the moment because we don’t manage vertical writing yet. This will be implemented ASAP, especially as we’ll get some help and feedback from the Japanese APL. Please be assured this is our top priority.
An important note: we moved our Android target to 5.0.
What we’ve got so far:
Moreover:
Congratulations, and thank you:) Just to be clear: support for RTL page-progression-direction in horizontal writing mode (e.g. Arabic, Hebrew) has not been formally tested yet, right? I managed to get it working in the Electron (Chromium) / NodeJS / TypeScript app but I had to override the "text align" parameter (left, center, justify, right) to ensure the correct application of @dir=rtl HTML attribute (or CSS direction property) for right-aligned text. Of course the JavaScript -side handling of CSS column offsets (and more importantly: the scroll offset -based overflow or coordinate-based viewport wrapper that pans pages across the horizontal axis) uses mirror calculations for the RTL case ; as expected ; and that's something we might want to document in ReadiumCSS in order to showcase different methods to fully enable the pagination of reflowable documents. I will produce some documentation for the Electron navigator as soon as it is stable (I have not yet tested edge cases including nested CSS boxes with mixes of static/relative/absolute positioning, which typically affect scroll offset calculations).
support for RTL page-progression-direction in horizontal writing mode (e.g. Arabic, Hebrew) has not been formally tested yet, right?
I can confirm it has not been tested yet, since testing and feedback has been tightly coupled to the iOS test app for most of proto/alpha, and it didn't have RTL support at that point. The webpub-viewer I’ve been using was then diverging too much from this practical implementation so it was a little bit difficult to manage it this way.
For the text-align
parameter, you might want to try start
if you want something cleaner (I added that to the docs yesterday, but I can’t recommend it formally because of Trident/EdgeHTML, which doesn't support it).
To sum things up, the start
value will be left
in LTR and right
in RTL. And, consequently, end
will be right
in LTR and left
in RTL.
It is part of the logical properties and values which will make it a lot easier to manage RTL and writing-modes in the middle term – webkit/blink/gecko already use those props and values in their default stylesheets for example, but they’re non-standard.
the scroll offset -based overflow or coordinate-based viewport wrapper that pans pages across the horizontal axis) uses mirror calculations for the RTL case ; as expected ; and that's something we might want to document in ReadiumCSS in order to showcase different methods to fully enable the pagination of reflowable documents.
Well noted. There’s indeed still a lot to document on that front (relationships between Readium CSS and the more global Reading System in which it will be used) but that was planned.
So yeah sorry, I had to create an “alpha” branch to deal with the release of this version, given the architectural changes, and all the doc-breaking changes – so it absolutely requires docs to be updated before the release.
And to clarify, there is no breaking change at the CSS level, the stylesheets you’ve been using will be almost the same as the stylesheets the alpha will ship (with a few minor improvements in the form of safeguards).
So the alpha version is almost ready.
In addition to the roadmap list items, it ships with:
package.json
so that you can install PostCSS dev dependencies, build dist stylesheets, etc.;ReadiumCSS-config.css
file so that you can customize media queries, flags e.g. advanced settings, night mode, etc. (Dan, that should allow you to declare a min-width
small enough that it applies to the desktop app without removing the media query entirely);md
, epub
and exploded folder from epub
);Warning: the iOS-implem has been deprecated (and removed) as we didn’t need it anymore – dist
stylesheets are now doing the job the iOS-implem has been doing so far.
Alpha will be version 0.0.8
.
Also, as regards i18n, you’ll find ReadiumCSS-before.css
, ReadiumCSS-default.css
, and ReadiumCSS-after.css
in subfolders.
Question to implementers: does that help you? Or should we suffix those files with -rtl
, -cjk-horizontal
, and -cjk-vertical
?
Personally, I don’t necessarily like having files by the same names but it might ease injection a little bit – the folder’s path being the only difference?
Any question, feel free to ask.
Thanks, I will start looking inside https://github.com/readium/readium-css/tree/alpha/css/dist to figure-out how to update the R2 Electron navigator.
Right now I'm using the ReadiumCSS files as-is (no removal of Media Queries, etc.). The rendered reflowable documents look okay, I will figure-out how to switch vertical, RTL, etc. later (especially as this will probably require changes in the Electron/JS pagination code).
So yeah I can confirm the most reasonable path seems to be:
And of course please feel free if something is unclear or poorly-worded in docs. :)
Alpha has just been merged into develop.
It will be merged into master in the upcoming weeks.
Alpha has been merged into master.
We’ll merge develop updates much regularly from now on.
It’s highly likely we won’t need this issue any longer since we’ll make smaller merges from now on (and not the huge ones we did for the proto and alpha version) so I’ll close it in a few days if nobody disagrees.
This issue is meant for tracking progress.
The roadmap can be found in the Wiki.
August 21, 2017
We’ll publish the Readium CSS prototype on the master branch this week, with basic documentation so that implementers can take a look, review, test and report issues if needed.
A lot of testing has happened this last week, with few minor issues to report, and quite good results in any browser tested (Chrome, Safari, Firefox, Edge).
Proto features
Font size being the more complex issue to manage, check issue #8 as it is UX-related.
Ahead of schedule
The good news is that we’re way ahead of schedule for the following:
Extras
We can reliably offer extra user settings for images in night mode:
Known issues
font-size
) in the normalize stylesheet. Problem is EPUB3 files make heavy use ofsection
and the type scale issues are generally related toaside
. If authors usediv
we can’t do anything.max-width
in scroll and one-column view (user setting) doesn’t apply because of the media query in pagination at the moment. This will be fix in alpha (advanced paged + scroll rendering).line-height
may not apply in a few publications.margin-left
are aligned ontext-indent
, should we override that if the user setstext-indent: 0
?mix-blend-mode
. It happens in Blink/Webkit in particular, the former being the worst. This has consequently been disabled in the proto.Should we set a baseline-height
? Some authors don’t and the default is something like1.2
?