Movatterモバイル変換


[0]ホーム

URL:


Shinyu Murakami, profile picture
Uploaded byShinyu Murakami
PDF, PPTX1,011 views

Vivliostyle.js における CSS Paged Media の実装

「CSS組版 Vivliostyle ユーザーと開発者の集い 2021春」発表資料Vivliostyle Viewerで閲覧: http://bit.ly/vivliostyle202104English version: http://bit.ly/vivliostyle202104en

Embed presentation

Download as PDF, PPTX
Vivliostyle.js におけるCSSPaged Media の実装2021-04-10Shinyu MurakamiVivliostyle Foundation
目次1. CSS組版エンジンVivliostyle.js Core 31. Vivliostyle.js のアイデア since 2014 42. CSS組版に必要なCSS仕様は? 53. 再開発途上CSS Paged Media サポート 72. CSS Paged Media を使いこなそう! 81. Named strings—柱を本文の見出しから 92. Named pages—名前付きのページルール 103. Nth Page Selector: nth() 113. ページメディア用CSS仕様サポート状況まとめ 151. CSS Paged Media Level 3 162. CSS Generated Content for Paged Media (GCPM) 183. CSS Fragmentation Level 3 204. CSS Page Floats 215. より詳しくはVivliostyle ドキュメント→「サポートするCSS 機能」へ 222
CSS組版エンジンVivliostyle.js Core3
Vivliostyle.js のアイデア since 2014だれもが自由に使えるWebブラウザ上で動くCSS組版エンジンをオープンソースで開発WebブラウザのレンダリングエンジンとPDF出力機能を利用最新のWeb標準をサポートCSS組版仕様の標準化と普及に貢献❌独自仕様で高機能組版を目指す(というのではない。)CSS組版エンジンVivliostyle.js Core 4
CSS組版に必要なCSS仕様は?Webブラウザで標準で使える基本的なCSS仕様CSS 2.1Selectors Level 3CSS Backgrounds and Borders Level 3CSS Fonts Level 3CSS Writing Modes Level 3CSS Multi-column Layout Level 1CSS Flexible Box Level 1etc.CSS組版エンジンVivliostyle.js Core 5
ページメディア用のCSS仕様CSS Paged Media Level 3⭐️ページメディア用CSS基本仕様CSS Generated Content for Paged Media (GCPM) 3⭐️柱や脚注やクロスリファレンスCSS Fragmentation ⭐️改ページ関係CSS Page Floats⭐️図版などページフロート配置Vivliostyle.js はWebブラウザを利用する。したがってWeb用のCSS仕様は基本的に利用できる。ページメディア用のCSS仕様サポートを追加すればよい🌟そうしてVivliostyle.js 開発がスタート 👉Vivliostyle のなりたちCSS組版エンジンVivliostyle.js Core 6
再開発途上CSS Paged Media サポートVivliostyle.js にはだいぶ前からページメディア用のCSS仕様の多くの機能が実装済み。(初期の開発者たちに感謝🙏)しかし、いくつかの重要な機能が実装されずに残っていた。🐢やっと昨年末から、ぼちぼち実装を進めることができている。🌟最新バージョンで利用可能になったページメディア用CSS機能:✅Named strings(名前付き文字列)🌟v2.4 (2020-12-28)✅Nth Page Selector 🌟v2.5 (2021-02-26)✅Named pages(名前付きページ)🌟v2.7 (2021-04-07)CSS組版エンジンVivliostyle.js Core 7
CSS Paged Media を使いこなそう!8
Named strings—柱を本文の見出しから名前付き文字列(Named strings)の使用例:@page :right {@top-right { /* 右上のページヘッダに章見出し */content: string(chap-title, first-except); /* 章の先頭ページを除き表示 */}}h1.chapter { /* 章見出し */string-set: chap-title content();}h1.chapter[title] {string-set: chap-title attr(title); /* 属性の値を使うことも可能 */}CSS Paged Media を使いこなそう! 9
Named pages—名前付きのページルールページの種類ごとに名前をつけてページ設定を定義。例:@page cover { /* 名前付きのページ設定(名前: "cover")*/margin: 0; /* "cover" ページは余白無しに *//* "cover" ページは柱(ページヘッダー)無しに */@top-left { content: none; }@top-right { content: none; }}.cover {page: cover; /* pageプロパティで使用する名前付きページを指定 */}CSS Paged Media を使いこなそう! 10
Nth Page Selector: nth()文書のN 番目のページのスタイルを定義することなどできます。構文: @page :nth(An+B)(CSS セレクタ :nth-child(An+B) のページ版のようなもの)例:@page :nth(1) {margin: 0;background-image: url(cover.png);}CSS Paged Media を使いこなそう! 11
複数HTML文書連結の場合の @page :first と@page :nth(1) の違い複数HTML文書をまとめて1つの本(PDF、WebPub)にする場合:@page :first は全体の先頭ページだけに適用これはVivliostyle の以前からの動作仕様。現在のCSS PagedMedia 仕様には、複数のHTML文書をまとめて1つの本にする場合のことは定義されていないため、独自仕様といえる。@page :nth(1) は、各HTML文書の先頭ページに適用つまり、章ごとにファイルを分けている場合、@page :nth(1) は各章の先頭ページに適用、@page :first は全体の先頭ページだけ。CSS Paged Media を使いこなそう! 12
名前付きページと:nth() の組み合わせの例@page :first { /* 全体の一番最初のページのみに適用 */counter-reset: chapter;}@page chapter:nth(1) { /* 各章ファイルの最初のページに適用 */counter-increment: chapter;}h1::before {content: "第" counter(chapter) "章";}.chapter {page: chapter;}CSS Paged Media を使いこなそう! 13
各章のHTMLは次のようになってるとする:<body><section class="chapter"><h1>章のタイトル</h1>...</section></body>これにより、章カウンタを全体の先頭でリセット、各章の先頭でインクリメントすることができる。注意: もし複数の章を1つのHTMLファイルにしている場合は、@page chapter:nth(1) は各章ではなくて1つのHTMLファイルの先頭ページだけに適用される。CSS Paged Media を使いこなそう! 14
ページメディア用CSS仕様サポート状況まとめ15
CSS Paged Media Level 3https://www.w3.org/TR/css-page-3/4 Page Selectors and the Page Context4.1 The @page Rule ✅4.2 Page selectors4.2.1 Spread pseudo-classes: :left, :right ✅4.2.2 First-page pseudo-class: :first ✅4.2.3 Blank-page pseudo-class: :blank ❌5 Page-Margin Boxes ✅6 Page Properties6.1 Page-based counters ✅ページメディア用CSS仕様サポート状況まとめ 16
7 Page Size7.1 Page size: the size property ✅7.2 Crop and Registration Marks: the marks property ✅7.3 Bleed Area: the bleed property ✅8 Page Breaks8.1 Using named pages: page ✅🌟v2.7 (2021-04-07)ページメディア用CSS仕様サポート状況まとめ 17
CSS Generated Content for Paged Media(GCPM)https://www.w3.org/TR/css-gcpm-3/1 Running headers and footers1.1 Named strings ✅🌟v2.4 (2020-12-28)1.2 Running elements ❌2 Footnotes ✅3 Selecting Pages3.1 Page Selectors: :nth(An+B) ✅🌟v2.5 (2021-02-26)3.2 Page groups: :nth(An+B of pagegroup) ❌ページメディア用CSS仕様サポート状況まとめ 18
4 Leaders: leader() ❌5 Cross-references5.1 The target-counter() function ✅5.2 The target-counters() function ✅5.3 target-text ❌6 Bookmarksページメディア用CSS仕様サポート状況まとめ 19
CSS Fragmentation Level 3https://www.w3.org/TR/css-break-3/3.1 Breaks Between Boxes: the break-before and break-afterproperties ✅3.2 Breaks Within Boxes: the break-inside property ✅3.3 Breaks Between Lines: orphans, widows ✅5.4 Fragmented Borders and Backgrounds: the box-decoration-break property ✅ページメディア用CSS仕様サポート状況まとめ 20
CSS Page Floatshttps://www.w3.org/TR/css-page-floats-3/3.1 The float-reference property ✅3.2 The float property ✅4 The clear property ✅ページメディア用CSS仕様サポート状況まとめ 21
より詳しくはVivliostyle ドキュメント→「サポートするCSS 機能」へ日本語ドキュメントページ: https://vivliostyle.org/ja/documents/サポートするCSS 機能:https://docs.vivliostyle.org/#/ja/supported-css-featuresEnglish Documents: https://vivliostyle.org/documents/Supported CSS Features:https://docs.vivliostyle.org/#/supported-css-featuresページメディア用CSS仕様サポート状況まとめ 22

Recommended

PDF
Data platformdesign
PDF
[Cloud OnAir] GCP で構築するデータ分析基盤の最新情報をご紹介! 2018年11月15日 放送
PDF
スモールサービスにおけるCloudFrontの真骨頂
PDF
Modern Enterprise 여정의 핵심 – SAP on AWS 마이그레이션-장현, AWS SAP Architect / 강병수, AWS...
PDF
Spring Boot × Vue.jsでSPAを作る
PPTX
NTTデータ流Infrastructure as Code~ 大規模プロジェクトを通して考え抜いた基盤自動化の新たな姿~(NTTデータ テクノロジーカンフ...
PDF
Awsでつくるapache kafkaといろんな悩み
PDF
DBスキーマもバージョン管理したい!
 
PDF
クラウドDWHにおける観点とAzure Synapse Analyticsの対応
PDF
.NET の過去、現在、そして未来 ~ .NET 最新アップデート
PDF
【BS3】Visual Studio 2022 と .NET 6 での Windows アプリ開発技術の紹介
PDF
Azure Data Explorer
PDF
Spark Streaming + Amazon Kinesis
PDF
Amazon ElastiCache(初心者向け 超速マスター編)JAWSUG大阪
PDF
Let's scale-out PostgreSQL using Citus (Japanese)
PDF
初心者向けインターネットの仕組みと8/25の障害についての説明
PDF
VMware Cloud on AWSネットワーク詳細解説
PPTX
Azure Api Management 俺的マニュアル 2020年3月版
PDF
アドテクを支える基盤 〜10Tバイト/日のビッグデータを処理する〜
PDF
[DI12] あらゆるデータをビジネスに活用! Azure Data Lake を中心としたビックデータ処理基盤のアーキテクチャと実装
PDF
AlmaLinux と Rocky Linux の誕生経緯&比較
PDF
一歩先行く Azure Computing シリーズ(全3回) 第2回 Azure VM どれを選ぶの? Azure VM 集中講座
PDF
Amazon Pinpoint × グロースハック活用事例集
PDF
Só Poetrix
PPTX
私がなぜZscalerに?
PDF
OpenStack超入門シリーズ Novaのディスク周りあれこれ
PPTX
CloudFront経由でのCORS利用
PDF
Kafkaによるリアルタイム処理
PDF
使いやすいWordPressのためのCSSのつくりかた
PDF
Css

More Related Content

PDF
Data platformdesign
PDF
[Cloud OnAir] GCP で構築するデータ分析基盤の最新情報をご紹介! 2018年11月15日 放送
PDF
スモールサービスにおけるCloudFrontの真骨頂
PDF
Modern Enterprise 여정의 핵심 – SAP on AWS 마이그레이션-장현, AWS SAP Architect / 강병수, AWS...
PDF
Spring Boot × Vue.jsでSPAを作る
PPTX
NTTデータ流Infrastructure as Code~ 大規模プロジェクトを通して考え抜いた基盤自動化の新たな姿~(NTTデータ テクノロジーカンフ...
PDF
Awsでつくるapache kafkaといろんな悩み
PDF
DBスキーマもバージョン管理したい!
 
Data platformdesign
[Cloud OnAir] GCP で構築するデータ分析基盤の最新情報をご紹介! 2018年11月15日 放送
スモールサービスにおけるCloudFrontの真骨頂
Modern Enterprise 여정의 핵심 – SAP on AWS 마이그레이션-장현, AWS SAP Architect / 강병수, AWS...
Spring Boot × Vue.jsでSPAを作る
NTTデータ流Infrastructure as Code~ 大規模プロジェクトを通して考え抜いた基盤自動化の新たな姿~(NTTデータ テクノロジーカンフ...
Awsでつくるapache kafkaといろんな悩み
DBスキーマもバージョン管理したい!
 

What's hot

PDF
クラウドDWHにおける観点とAzure Synapse Analyticsの対応
PDF
.NET の過去、現在、そして未来 ~ .NET 最新アップデート
PDF
【BS3】Visual Studio 2022 と .NET 6 での Windows アプリ開発技術の紹介
PDF
Azure Data Explorer
PDF
Spark Streaming + Amazon Kinesis
PDF
Amazon ElastiCache(初心者向け 超速マスター編)JAWSUG大阪
PDF
Let's scale-out PostgreSQL using Citus (Japanese)
PDF
初心者向けインターネットの仕組みと8/25の障害についての説明
PDF
VMware Cloud on AWSネットワーク詳細解説
PPTX
Azure Api Management 俺的マニュアル 2020年3月版
PDF
アドテクを支える基盤 〜10Tバイト/日のビッグデータを処理する〜
PDF
[DI12] あらゆるデータをビジネスに活用! Azure Data Lake を中心としたビックデータ処理基盤のアーキテクチャと実装
PDF
AlmaLinux と Rocky Linux の誕生経緯&比較
PDF
一歩先行く Azure Computing シリーズ(全3回) 第2回 Azure VM どれを選ぶの? Azure VM 集中講座
PDF
Amazon Pinpoint × グロースハック活用事例集
PDF
Só Poetrix
PPTX
私がなぜZscalerに?
PDF
OpenStack超入門シリーズ Novaのディスク周りあれこれ
PPTX
CloudFront経由でのCORS利用
PDF
Kafkaによるリアルタイム処理
クラウドDWHにおける観点とAzure Synapse Analyticsの対応
.NET の過去、現在、そして未来 ~ .NET 最新アップデート
【BS3】Visual Studio 2022 と .NET 6 での Windows アプリ開発技術の紹介
Azure Data Explorer
Spark Streaming + Amazon Kinesis
Amazon ElastiCache(初心者向け 超速マスター編)JAWSUG大阪
Let's scale-out PostgreSQL using Citus (Japanese)
初心者向けインターネットの仕組みと8/25の障害についての説明
VMware Cloud on AWSネットワーク詳細解説
Azure Api Management 俺的マニュアル 2020年3月版
アドテクを支える基盤 〜10Tバイト/日のビッグデータを処理する〜
[DI12] あらゆるデータをビジネスに活用! Azure Data Lake を中心としたビックデータ処理基盤のアーキテクチャと実装
AlmaLinux と Rocky Linux の誕生経緯&比較
一歩先行く Azure Computing シリーズ(全3回) 第2回 Azure VM どれを選ぶの? Azure VM 集中講座
Amazon Pinpoint × グロースハック活用事例集
Só Poetrix
私がなぜZscalerに?
OpenStack超入門シリーズ Novaのディスク周りあれこれ
CloudFront経由でのCORS利用
Kafkaによるリアルタイム処理

Similar to Vivliostyle.js における CSS Paged Media の実装

PDF
使いやすいWordPressのためのCSSのつくりかた
PDF
Css
PDF
次世代CSS組版〜Vivliostyle プロジェクト
PPT
CSS勉強会
PDF
まだ間に合う「CSS設計」ことはじめ。CSSの闇に飲み込まれないための考え方。
PDF
CSS Design and Programming
PDF
CSS3の最新事情
PDF
CSSの光と闇
PDF
壊れやすいCSS
PDF
今必要なCSSアーキテクチャ
PDF
今更ながらCSS3を試してみた
PPTX
Css3
PDF
マークアップ講座 02 CSS
PPTX
about CSS3 vol.2
PDF
Styleguide Driven Development x CMS - MTDDC Tokyo 2015
PDF
HTML初心者向け勉強会
PDF
HTML5など社内勉強会 Vol.2 - HTML5, CSS3
PDF
〈次世代CSS組版〉Vivliostyle プロジェクト
PPTX
Cssによるレイアウト
PDF
130107html5
使いやすいWordPressのためのCSSのつくりかた
Css
次世代CSS組版〜Vivliostyle プロジェクト
CSS勉強会
まだ間に合う「CSS設計」ことはじめ。CSSの闇に飲み込まれないための考え方。
CSS Design and Programming
CSS3の最新事情
CSSの光と闇
壊れやすいCSS
今必要なCSSアーキテクチャ
今更ながらCSS3を試してみた
Css3
マークアップ講座 02 CSS
about CSS3 vol.2
Styleguide Driven Development x CMS - MTDDC Tokyo 2015
HTML初心者向け勉強会
HTML5など社内勉強会 Vol.2 - HTML5, CSS3
〈次世代CSS組版〉Vivliostyle プロジェクト
Cssによるレイアウト
130107html5

More from Shinyu Murakami

PDF
CSS組版について
PDF
CSS text-spacingサポート等Vivliostyle.jsの進化と今後の開発予定
PDF
学術出版のHTML5標準化とCSS組版――Scholarly HTMLとVivliostyle
PDF
CSS3縦書きをサポートする組版エンジンAH Formatterの紹介
PDF
TeXの後継として、HTML5&CSS組版〜Vivliostyleプロジェクト
PDF
「日本語組版処理の要件(JLREQ)」とは何か
PDF
Vivliostyleの紹介
PDF
Webと出版と、CSSの未来の話
PDF
html5j 電子出版部セッション「Webと本の未来どうなる?」
PDF
ウェブ技術で電子の本も紙の本も作れるように
PDF
ビブリオスタイルが目指しているもの
CSS組版について
CSS text-spacingサポート等Vivliostyle.jsの進化と今後の開発予定
学術出版のHTML5標準化とCSS組版――Scholarly HTMLとVivliostyle
CSS3縦書きをサポートする組版エンジンAH Formatterの紹介
TeXの後継として、HTML5&CSS組版〜Vivliostyleプロジェクト
「日本語組版処理の要件(JLREQ)」とは何か
Vivliostyleの紹介
Webと出版と、CSSの未来の話
html5j 電子出版部セッション「Webと本の未来どうなる?」
ウェブ技術で電子の本も紙の本も作れるように
ビブリオスタイルが目指しているもの

Vivliostyle.js における CSS Paged Media の実装


[8]ページ先頭

©2009-2025 Movatter.jp