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
830
EPUBファイルからVivliostyleでPDFを作る
CSS組版 Vivliostyle 開発者とユーザーの集い 2019夏LT発表資料
JunTajima
August 31, 2019
Tweet
Share
More Decks by JunTajima
See All by JunTajima
日本語組版に関連するCSS規格の策定状況について
juntajima
0
530
XMLパブリッシング交流会2019パネルディスカッション資料
juntajima
0
670
Page2019 Adobeクリエイティブゾーンセミナー用資料
juntajima
0
840
Page2018 Adobeクリエイティブゾーンセミナーd8-2スライド
juntajima
0
770
Page2018 XMLパブリッシング交流会プレゼン資料(田嶋分)
juntajima
0
780
Other Decks in Technology
See All in Technology
Aspire をカスタマイズしよう & Aspire 9.2
nenonaninu
0
380
更新系と状態
uhyo
8
2.2k
Simplify! 10 ways to reduce complexity in software development
ufried
1
230
MCPが変えるAIとの協働
knishioka
1
140
今日からはじめるプラットフォームエンジニアリング
jacopen
8
2k
テストって楽しい!開発を加速させるテストの魅力 / Testing is Fun! The Fascinating of Testing to Accelerate Development
aiandrox
0
160
Dataverseの検索列について
miyakemito
1
180
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
2
460
GraphQLを活用したリアーキテクチャに対応するSLI/Oの再設計
coconala_engineer
0
200
2025-04-14 Data & Analytics 井戸端会議 Multi tenant log platform with Iceberg
kamijin_fanta
1
180
白金鉱業Meetup_Vol.18_AIエージェント時代のUI/UX設計
brainpadpr
1
280
C++26アップデート 2025-03
faithandbrave
0
1.2k
Featured
See All Featured
Documentation Writing (for coders)
carmenintech
71
4.8k
A Tale of Four Properties
chriscoyier
159
23k
Building Better People: How to give real-time feedback that sticks.
wjessup
368
19k
Typedesign – Prime Four
hannesfritz
41
2.6k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
What's in a price? How to price your products and services
michaelherold
245
12k
Music & Morning Musume
bryan
47
6.5k
The Straight Up "How To Draw Better" Workshop
denniskardys
233
140k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
227
22k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
13
830
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
͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠