Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
日本語組版に関連するCSS規格の策定状況について
Search
JunTajima
February 07, 2020
Programming
0
420
日本語組版に関連するCSS規格の策定状況について
Page2020オープンイベント XMLパブリッシング交流会発表資料
JunTajima
February 07, 2020
Tweet
Share
More Decks by JunTajima
See All by JunTajima
EPUBファイルからVivliostyleでPDFを作る
juntajima
0
660
XMLパブリッシング交流会2019パネルディスカッション資料
juntajima
0
560
Page2019 Adobeクリエイティブゾーンセミナー用資料
juntajima
0
790
Page2018 Adobeクリエイティブゾーンセミナーd8-2スライド
juntajima
0
730
Page2018 XMLパブリッシング交流会プレゼン資料(田嶋分)
juntajima
0
730
Other Decks in Programming
See All in Programming
RubyVM を PHP で実装する 〜Hello World を出力するまで〜
memory1994
PRO
1
490
Enhancing Applications with Accessibility API
kishikawakatsumi
3
830
生成 AI の中身を覗いてみよう〜基礎から医療現場での応用まで〜
soh9834
2
760
WebComponentsで フレームワークを1ページに共存させる
webuilder240
0
150
SwiftUI, Jetpack Composeの導入で変化した「家族アルバム みてね」のアプリ開発体験
hicka04
6
390
自作ソフト(VMagicMirror)がVRMA対応してる話+実装のTips
bakudreameater
0
110
Compiling Python to WebAssembly with py2wasm
syrusakbary
0
130
両面どころかインフラもTSでできるよ ~ 全方位TypeScriptによるプロダクト開発 ~
myfinder
7
2.1k
マイ隙間家具OSSたちのご紹介
karupanerura
2
150
Docker ハンズオン / docker-hands-on
suzukihoge
51
16k
Kotlinを用いたDSL的な設計手法と使用上の注意
kohii00
3
530
品質が高いコードって何?Rev2.1
ickx
1
490
Featured
See All Featured
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
1
1.2k
Music & Morning Musume
bryan
39
5.5k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
18
1.7k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
57
14k
Statistics for Hackers
jakevdp
789
220k
The Brand Is Dead. Long Live the Brand.
mthomps
48
21k
Fashionably flexible responsive web design (full day workshop)
malarkey
397
65k
Gamification - CAS2011
davidbonilla
76
4.5k
Docker and Python
trallard
33
2.6k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
225
51k
Embracing the Ebb and Flow
colly
78
4.1k
Building an army of robots
kneath
300
41k
Transcript
日本語組版に関連する CSS 規格の策定状況について JAGAT XML パブリッシング準研究会 資料作成:田嶋 淳 http://densyodamasii.com/
W3C の規格が策定に至るまでの道のり Editor’s Draft 作業草案 Working Draft/WD 勧告候補 Candidate Recommendation/CR 勧告案 Proposed Recommendation/PR
勧告 Recommendation/Rec 各段階での個々の議論の結果が Editor's Draft に記述され、ある程度まとまった段階で WD、CR など の文書となって随時公開される。最終的に Rec として承認されるまでは何度でも手戻りはあり得る。
CSS の策定状況 CSS 2.1 ↓ (CSS3) ↓ 各機能要素ごとのモジュールに分化した CSS 2.1
に入っていた要素はレベル「3」スタート(例:CSS Text Level3) 新たに追加された要素はレベル「1」スタート(例:CSS Ruby Layout Level1) 個々のプロパティ単位で次レベル送りになったりもする (例:text-spacing は当初 CSS Text Level3 で議論されていたが Level4 扱いに)
日本語組版への関連性が深い CSS モジュール CSS Writing Modes CSS Fragmentation CSS Line
Grid CSS Rhythmic Sizing CSS Logical Properties and Values CSS Ruby Layout CSS Text CSS Text Decoration
W3C 公式テストを見る 各プロパティのブラウザでの動作状況を確認するには① ここをクリック 「Test Case」 「Reference Page」 の表示をタブで切り替え、一致して いればそのブラウザ環境で表示対応
できている
各プロパティのブラウザでの動作状況を確認するには② web-platform-tests を見る http://wpt.fyi トップ 「CSS/」をクリックしてモジュールの一覧へ モジュール内各プロパティのテストページ一覧 各プロパティのテスト結果が見られる
CSS Writing Modes Level 3 https://www.w3.org/TR/css-writing-modes-3/ 規格策定段階: 勧告(Recommendation) 2019/12/10 関連する主な日本語組版要素:
縦組み/縦組み中の文字の向き
▼サンプルコード ▼表示例(Chrome) writing-mode で縦組み(vertical-rl)を指定し、一部の漢字を text-orientation で横転(sideways)を 指定した例 Unicode で決まっている縦組みテキスト中での文字のデフォルトの向きも関わってくる UAX#50
Unicode Vertical Text Layout https://www.unicode.org/reports/tr50/
CSS Fragmentation Module Level 3 https://www.w3.org/TR/css-break-3/ 規格策定段階: 勧告候補(Candidate Recommendation) 2018/12/4
関連する主な日本語組版要素: 改ページ処理、孤立行防止処理
Vivliostyle によるページネーションのデモ
CSS Line Grid Module Level 1 / CSS Rhythmic Sizing
https://drafts.csswg.org/css-line-grid/ 規格策定段階: 作業草案(Working Draft) 2014/9/16(Line Grid) 作業草案(Working Draft) 2017/3/2(Rhythmic Sizing) 関連する主な日本語組版要素: 行取り/行グリッド https://drafts.csswg.org/css-rhythm/
CSS Rhythmic Sizing デモ(CSS Working Group のもの)*動作には Chrome の設定が必要 https://drafts.csswg.org/css-rhythm/examples/snap-height.html
CSS Logical Properties and Values Level 1 https://www.w3.org/TR/css-logical-1/ 規格策定段階: 作業草案(Working
Draft) 2018/8/27 関連する主な日本語組版要素: インデント値、行間値指定などあらゆる数値指定要素 (書字方向にかかわらず論理方向指定ができる)
幅、高さなどの数値を論理値で指定し、書字方向の縦/横に依存しない指定を実現させる width/height → block-size/inline-size right/left → block-start-side/block-end-side top/bottom → inline-start-side/inline-end-side
縦横の一括変換が可能に:writingmode のオプション変更だけで OK
CSS Ruby Layout Module Level 1 https://drafts.csswg.org/css-ruby-1/ 規格策定段階: 規格策定段階:作業草案(Working Draft)
2014/8/5 関連する主な日本語組版要素: ルビ
▼サンプルコード ▼表示例(Firefox) 現状すでに通常のルビは各ブラウザで表示できるが、さらに高度なルビ表現の実現が検討されている
CSS Text Module Level 3 https://www.w3.org/TR/css-text-3/ 規格策定段階: 作業草案(Working Draft) 2019/11/13
関連する主な日本語組版要素: ぶら下げ組み
CSS Text Module Level 4 https://www.w3.org/TR/css-text-4/ 規格策定段階: 作業草案(Working Draft) 2019/11/13
関連する主な日本語組版要素: 約物の前後のツメ処理、和欧間自動アキ
▼ w3c / i18n tests で公開準備中のテストページ。対応すれば赤と黒の文字が重なる。 日本語の約物の前後のアキ制御、和欧間の自動アキ挿入を CSS で指定できるようにすることが検討中
▼ text-spacing が規格化されればカギ類等の表示の挙動も統一されるはず 現状規格が定まっていないために起きているぶら下げインデントのレイアウトの問題も解消が期待できる
CSS Text Decoration Module Level 3 https://www.w3.org/TR/css-text-decor-3/ 規格策定段階: 勧告候補(Candidate Recommendation)
2019/8/13 関連する主な日本語組版要素: 圏点
各プロパティの実装状況 CSS Writing Modes 縦書き(writing-mode:vertical-rl) ……………………………◦ (単純な)縦中横(text-combine-upright:all) … ……………◦
正立/横転指定(text-orientation) ……………………………△ ※ Safari がまだ怪しい CSS Fragmentation ※ページネート関連プロパティのテストの仕組み自体がこれから CSS Line Grid ※テスト見当たらず CSS Rhythmic Sizing… ……………………………………× CSS Logical Properties and Values… ……………◦ ※単純な指定なら大丈夫そう CSS Ruby Layout 肩付き/中付きルビ指定(ruby-align) …………………………× ※ Firefox 以外ほぼダメ 左側ルビ(ruby-position) … ……………………………………× ※ Firefox 以外怪しい CSS Text ぶら下げ組み(hanging-punctuation) ………………………△ ※まだ若干挙動が怪しい 約物前後のツメ処理、和欧間自動アキ(text-spacing) … ……× ※テスト自体がまだ作成中 CSS Text Decoration 圏点(text-emphasis-style) ……………………………………◦ ※単純な指定なら大丈夫そう ※ web-platform-tests でのテスト結果を参照/ 2020 年 1 月 21 日現在