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
EPUBファイルからVivliostyleでPDFを作る
Search
JunTajima
August 31, 2019
Technology
0
670
EPUBファイルからVivliostyleでPDFを作る
CSS組版 Vivliostyle 開発者とユーザーの集い 2019夏LT発表資料
JunTajima
August 31, 2019
Tweet
Share
More Decks by JunTajima
See All by JunTajima
日本語組版に関連するCSS規格の策定状況について
juntajima
0
430
XMLパブリッシング交流会2019パネルディスカッション資料
juntajima
0
570
Page2019 Adobeクリエイティブゾーンセミナー用資料
juntajima
0
790
Page2018 Adobeクリエイティブゾーンセミナーd8-2スライド
juntajima
0
730
Page2018 XMLパブリッシング交流会プレゼン資料(田嶋分)
juntajima
0
740
Other Decks in Technology
See All in Technology
Databricks における 『MLOps』
databricksjapan
2
170
Tellus の衛星データを見てみよう #mf_fukuoka
kongmingstrap
0
160
DevOpsDays History and my DevOps story
kawaguti
PRO
9
2.4k
一生覚えておきたい「システム開発=コミュニケーション」〜初めての実務案件振り返りLT〜
maimyyym
0
110
オーナーシップを持つ領域を明確にする
konifar
13
3.1k
ChatworkのSRE部って実は 半分くらいPlatform Engineering部かもしれない
saramune
0
160
生産性向上チームの紹介
cybozuinsideout
PRO
1
860
Google Cloud Next '24でブログを10本書いた方法と勉強会を沸かせた方法
yasumuusan
0
290
EMとして2023年度に頑張ったこと / What we did well in FY2023 as a EM
pauli
1
160
ゼロから始めるVue.jsコミュニティ貢献 / first-vuejs-community-contribution-link-and-motivation
lmi
1
110
レガシーをぶっ壊せ。AEONで始めるDevRelの話 / Qiita Night 2024-2-22
aeonpeople
3
1.3k
複雑な構成要素を持つUIとの向き合い方 〜新・支出グラフでの実例〜 / B43 TECH TALK
nakamuuu
0
140
Featured
See All Featured
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
322
20k
The Invisible Side of Design
smashingmag
294
49k
Typedesign – Prime Four
hannesfritz
36
2.1k
Code Review Best Practice
trishagee
55
15k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
17
1.4k
Learning to Love Humans: Emotional Interface Design
aarron
267
39k
RailsConf 2023
tenderlove
4
540
How GitHub (no longer) Works
holman
304
140k
The Power of CSS Pseudo Elements
geoffreycrofte
60
5k
For a Future-Friendly Web
brad_frost
172
9k
Optimizing for Happiness
mojombo
370
69k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
6
1.5k
Transcript
&16#ϑΝΠϧ͔Β 7JWMJPTUZMFͰ1%'Λ࡞Δ ాౢɹ३ɹ!+VO5BKJNB IUUQEFOTZPEBNBTJJDPN
ͣͬͱ&16#Λखܰʹ1%'ʹ͔ͨͬͨ͠ʂ
ͣͬͱ&16#Λखܰʹ1%'ʹ͔ͨͬͨ͠ʂ ԿͰʁ ↓
"ग़൛͕ࣾߍਖ਼ͷࡍʹࢴʹग़ྗ͕ͨ͠Δ͔Β
Ͱٕज़తʹ૬͔ͬͨ͠
Ͱٕज़తʹ૬͔ͬͨ͠ ԿͰʁ ↓
"༻&16#ϏϡʔΞʹҹͷػೳ͕ͳ͍͔Β
"༻&16#ϏϡʔΞʹҹͷػೳ͕ͳ͍͔Β ͚ͯ͠·͏ͱւ൛࡞ิॿʹͳͬͯ͠·͏ ↓
Ͱ͜Ε·ͰͲ͏ͬͯ1%'Խ͍ͯͨ͠ͷ͔
Ͱ͜Ε·ͰͲ͏ͬͯ1%'Խ͍ͯͨ͠ͷ͔ .BDͷΞΫηγϏϦςΟؔͷػೳΛͬͯΞϓϦࣗಈ ૢ࡞Ͱ࿈ଓεΫϦʔϯγϣοτˠը૾ΛଋͶͯ1%'Խ ↓
ϑΝΠϧ͕όΧΈ͍ͨʹॏ͘ͳΔ ˍ࡞Δͷʹ͕͔͔࣌ؒΔʂ
ϑΝΠϧ͕όΧΈ͍ͨʹॏ͘ͳΔ ˍ࡞Δͷʹ͕͔͔࣌ؒΔʂ ͬͱखܰʹ1%'ʹ͍ͨ͠ʂ ↓
7JWMJPTUZMF͕ల։ޙͷ&16#දࣔʹରԠʂ
7JWMJPTUZMF͕ల։ޙͷ&16#දࣔʹରԠʂ ŝŦʕʕʕ ƅ˲ƅ ʕʕʕʕ ↓
Γ͍ͨ͜ͱ EPUBΛCSSͷඪ४తͳදݱʹԊͬͨܗͰPDFԽ͍ͨ͠ ྲྀ௨͢Δલͷ༻ిࢠॻ੶ͷߍਖ਼༻్ͳͷͰՄೳͳΒ WebʹΞοϓϩʔυͤͣϩʔΧϧͰॲཧ͍ͨ͠ ՄೳͳΒߍਖ਼ࢦࣔͷͨΊʹϖʔδ൪߸ೖΕ͍ͨ Ͱ͖ΕMacඪ४ͷπʔϧ܈ͰͲ͏ʹ͔͍ͨ͠ʢձࣾͷ Ϛγϯʹ͍Ζ͍ΖಥͬࠐΜͰҰਓϝϯςͭΒ͍ʣ
ͬͯΈͨᶃ 8FCαʔόΛϩʔΧϧͰཱͯΔ λʔϛφϧͰʮpython -m SimpleHTTPServer 8000ʯ ΛೖΕͯϩʔΧϧͰWebαʔόΛ্ཱͪ͛ͨ Node.JSΠϯετʔϧͰτϥϒͬͨɻ·͋ඪ४ͷ PythonͰࡁΉͷͳΒͦͬͪͷํ͕Α͍ɻ
None
ͬͯΈͨᶄ 7JWMJPTUZMF7JFXFSΛϩʔΧϧىಈ ϩʔΧϧWebαʔόʔ্ཱ͕͕ͪͬͯΔঢ়ଶͰʮhttp:// localhost:8000/Desktop/vivliostyle_test/vivliostyle-js- 2019.1.105/viewer/vivliostyle-viewer.html ʯͳͲͱϒϥβͷ ΞυϨεόʔʹೖΕΕVivliostyle Viewer্ཱ͕͕ͪΔ ↑VivliostyleͷύοέʔδΛσεΫτοϓ্ͷ ʮvivliostyle_testʯϑΥϧμʹஔ͍͍ͯΔ
None
ͬͯΈͨᶅ ςετϑΝΠϧΛ7JWMJPTUZMFͰදࣔ ͖͞΄ͲͷΞυϨεͷޙʹʮ#b=ʯΛॻ͖ɺʮhttp:// localhost:8000 ʯͷޙʹදࣔϑΝΠϧͷύεΛࢦఆ ʢ#b=ϒοΫࢦఆʣ EPUBΛද͍ࣔͤͨ͞߹ల։ޙͷEPUBϑΥϧμ ͘͠EPUBͷ.opfϑΝΠϧΛࢦఆ͢Δ
ʮhttp://localhost:8000/Desktop/vivliostyle_test/vivliostyle- js-2019.1.105/viewer/vivliostyle-viewer.html#b=http://localhost:8000/ Desktop/vivliostyle_test/testepubfolder/item/standard.opf ʯͷΑ͏ʹࢦ ఆͯ͠දࣔ
ͬͯΈͨᶆ $44Λهͯ͠ϖʔδ൪߸Λදࣔ VilliostyleͷઃఆͰʮOverride Document Style Sheetsʯ ʹνΣοΫΛೖΕɺCSSΛهͯ͠Είϯςϯπ ଆͷϑΝΠϧΛ࿔Βͳͯ͘දࣔCSS͕ՃͰ͖Δ Ճͨ͠CSSશͯURLͷඌʹՃ͞ΕΔʢͷͰε ΰ͍͘ͳͬͨΓ͢Δʣ
None
͜ͷลͷઃఆେࣄ શϖʔδϨϯμϦϯάಡΈ ࠐΈࢦఆɻϓϦϯτͯ͠ PDFʹม͢Δͷ͕తͳ ͷͰνΣοΫ͓ͯ͘͠ɻ ը૾ͷϖʔδஔ࠷దԽ ࢦఆɻ͜ΕΛνΣοΫͯ͠ ͓͔ͳ͍ͱը૾͕͖ͪΜͱ ϨΠΞτ͞Εͳ͍ɻ
http://localhost:8000/Desktop/vivliostyle_test/vivliostyle-js-2019.1.105/viewer/vivliostyle- viewer.html#b=http://localhost:8000/Desktop/vivliostyle_test/testepubfolder/item/ standard.opf&userStyle=data:,/*%3Cviewer%3E*/%0Aimg,%20svg%20%7B%20max-inline-size: %20100%25%20!important;%20max-block-size:%20100vb%20!important;%20object-fit: %20contain%20!important;%20%7D%0A/*%3C/viewer%3E*/%0A@page%20%7B%0A%20%20size: %20105mm%20148mm;%0A%20%20width:%20240pt;%0A%20%20height:%20331.5pt; %0A%20%20margin-top:%2015mm;%0A%20%20margin-bottom:%20auto;%0A%20%20margin-left: %20auto;%0A%20%20margin-right:%20auto;%0A%20%20font-size:%206pt;%0A%20%20font-family: %20%22%E6%B8%B8%E6%98%8E%E6%9C%9D%22,%20%22YuMincho%22,%20serif; %0A%20%20vertical-align:%20top;%0A%7D%0A@page%20:left%20%7B%0A%20%20margin-right:
%2010mm;%0A%20%20@top-left%20%7B%0A%20%20%20%20content: %20%22%E9%BB%92%E6%AD%BB%E9%A4%A8%E6%AE%BA%E4%BA%BA%E4%BA%8B%E4% BB%B6%22;%0A%20%20%20%20margin-left:%205pt;%0A%20%20%20%20margin-top:%206mm; %0A%20%20%20%20writing-mode:%20horizontal-tb;%0A%20%20%7D%0A%20%20@bottom- left%20%7B%0A%20%20%20%20content:%20counter(page);%0A%20%20%20%20margin-left: %205pt;%0A%20%20%20%20margin-bottom:%206mm;%0A%20%20%20%20writing-mode: %20horizontal-tb;%0A%20%20%7D%0A%7D%0A@page%20:right%20%7B%0A%20%20margin-left: %2010mm;%0A%20%20@bottom-right%20%7B%0A%20%20%20%20content:%20counter(page); %0A%20%20%20%20margin-right:%205pt;%0A%20%20%20%20margin-bottom:%206mm; %0A%20%20%20%20writing-mode:%20horizontal-tb; %0A%20%20%7D%0A%7D%0A@page%20:first%20%7B%0A%20%20@bottom- left%20%7B%0A%20%20%20%20content:%20'';%0A%20%20%7D%0A%20%20@top- left%20%7B%0A%20%20%20%20content:%20'';%0A%20%20%7D%0A%7D खೖྗΦεεϝ͠ͳ͍w
͋ͱϒϥβը໘্Ͱ1ߦจࣈͳͲΛ ௐͯ͠ϓϦϯτͯ͠ΕPDF͕Ͱ͖Δ
͓͔ͭΕ͞·Ͱͨ͠ʂ
ҰԠͰ͖͚ͨͲίϨຖճखಈͰΔͷπϥ͍ ˍ৬Ͱ͔ࣗ͠Ͱ͖ͦ͏ʹͳ͍
ҰԠͰ͖͚ͨͲίϨຖճखಈͰΔͷπϥ͍ ˍ৬Ͱ͔ࣗ͠Ͱ͖ͦ͏ʹͳ͍ 1FSMΛͬͯ͜͜·ͰͷॲཧΛࣗಈԽͨ͠ ↓
https://github.com/JunTajima/epubVivliostylePreview.pl/blob/master/ epubVivliostylePreview.pl
osascriptͰApplescriptݺΜͰλʔϛφϧͱ͔Chrome ্ཱͪ͛ͯΔͷͰMacઐ༻ ల։ޙͷEPUBϑΝΠϧͦͷ··ΔͷͰফ͢ඞཁ ΞϦʢޙड़ͷΞϓϦͰऴྃ࣌ʹࣗಈͰফ͢Α͏ʹ ͨ͠ʣ ՃϞδϡʔϧͱ͔ͬͯͳ͍ͷͰMacͳΒׂͱ ڥΛબͣಈͣ͘
৬༻ʹλʔϛφϧπϥ͍ͷͰ 9PKPͰΞϓϦԽͨ͠
None
͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠