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
930
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
EPUBファイルからVivliostyleでPDFを作る
CSS組版 Vivliostyle 開発者とユーザーの集い 2019夏LT発表資料
JunTajima
August 31, 2019
More Decks by JunTajima
See All by JunTajima
日本語組版に関連するCSS規格の策定状況について
juntajima
0
600
XMLパブリッシング交流会2019パネルディスカッション資料
juntajima
0
740
Page2019 Adobeクリエイティブゾーンセミナー用資料
juntajima
0
870
Page2018 Adobeクリエイティブゾーンセミナーd8-2スライド
juntajima
0
800
Page2018 XMLパブリッシング交流会プレゼン資料(田嶋分)
juntajima
0
830
Other Decks in Technology
See All in Technology
最近評価が難しくなった
maroon8021
0
210
打造你的 AI 工作流:Agent Skill + MCP 實戰工作坊
appleboy
0
530
Agentic AI 時代のテスト手法: Kiro とはじめるプロパティベーステスト (AWS Summit Japan 2026 | DEV212)
ymhiroki
0
200
ループエンジニアリングでE2Eテストを実践
noriyukitakei
0
260
Mastraエージェント、どのクラウドにデプロイする?
minorun365
PRO
2
160
本当の”仕事”を手放せる未来が見えた
mu7889yoon
0
220
そのタスクオンスケですか?
poropinai1966
0
130
FinOps X 2026 Recap from Engineer Side #JapanFinOps
chacco38
0
250
『AIに負けない』より『AIと遊ぶ』」〜ワクワクが最強のテスト・QA学習戦略_公開用
odan611
1
380
なぜ私たちのSREプラクティスはなかなか機能しないのか 〜システムより先に組織を見る〜 / Why our SRE practices aren't really working
vtryo
0
600
初めてのDatabricks勉強会
taka_aki
2
230
はじめてのWDM
miyukichi_ospf
0
100
Featured
See All Featured
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.9k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
500
Build your cross-platform service in a week with App Engine
jlugia
234
18k
RailsConf 2023
tenderlove
30
1.5k
The Pragmatic Product Professional
lauravandoore
37
7.4k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
480
Test your architecture with Archunit
thirion
1
2.3k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.8k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
150
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
180
Optimizing for Happiness
mojombo
378
71k
Documentation Writing (for coders)
carmenintech
77
5.4k
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
͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠