EPUBファイルからVivliostyleでPDFを作る

8449a3dd13b7a5a0c5f43354e62b07d6?s=47 JunTajima
August 31, 2019

 EPUBファイルからVivliostyleでPDFを作る

CSS組版 Vivliostyle 開発者とユーザーの集い 2019夏LT発表資料

8449a3dd13b7a5a0c5f43354e62b07d6?s=128

JunTajima

August 31, 2019
Tweet

Transcript

  1. &16#ϑΝΠϧ͔Β 7JWMJPTUZMFͰ1%'Λ࡞Δ ాౢɹ३ɹ!+VO5BKJNB  IUUQEFOTZPEBNBTJJDPN

  2. ͣͬͱ&16#Λखܰʹ1%'ʹ͔ͨͬͨ͠ʂ

  3. ͣͬͱ&16#Λखܰʹ1%'ʹ͔ͨͬͨ͠ʂ ԿͰʁ ↓

  4. "ग़൛͕ࣾߍਖ਼ͷࡍʹࢴʹग़ྗ͕ͨ͠Δ͔Β

  5. Ͱ΋ٕज़తʹ૬౰೉͔ͬͨ͠

  6. Ͱ΋ٕज़తʹ૬౰೉͔ͬͨ͠ ԿͰʁ ↓

  7. "঎༻&16#ϏϡʔΞʹ͸ҹ࡮ͷػೳ͕ͳ͍͔Β

  8. "঎༻&16#ϏϡʔΞʹ͸ҹ࡮ͷػೳ͕ͳ͍͔Β ෇͚ͯ͠·͏ͱւ଑൛࡞੒ิॿʹͳͬͯ͠·͏ ↓

  9. Ͱ͸͜Ε·ͰͲ͏΍ͬͯ1%'Խ͍ͯͨ͠ͷ͔

  10. Ͱ͸͜Ε·ͰͲ͏΍ͬͯ1%'Խ͍ͯͨ͠ͷ͔ .BDͷΞΫηγϏϦςΟؔ܎ͷػೳΛ࢖ͬͯΞϓϦࣗಈ ૢ࡞Ͱ࿈ଓεΫϦʔϯγϣοτˠը૾ΛଋͶͯ1%'Խ ↓

  11. ϑΝΠϧ͕όΧΈ͍ͨʹॏ͘ͳΔ
 ˍ࡞Δͷʹ͕͔͔࣌ؒΔʂ

  12. ϑΝΠϧ͕όΧΈ͍ͨʹॏ͘ͳΔ
 ˍ࡞Δͷʹ͕͔͔࣌ؒΔʂ ΋ͬͱखܰʹ1%'ʹ͍ͨ͠ʂ ↓

  13. 7JWMJPTUZMF͕ల։ޙͷ&16#දࣔʹରԠʂ

  14. 7JWMJPTUZMF͕ల։ޙͷ&16#දࣔʹରԠʂ ŝŦʕʕʕ ƅ˲ƅ ʕʕʕʕ ↓

  15. ΍Γ͍ͨ͜ͱ EPUBΛCSSͷඪ४తͳදݱʹԊͬͨܗͰPDFԽ͍ͨ͠ ྲྀ௨͢Δલͷ঎༻ిࢠॻ੶ͷߍਖ਼༻్ͳͷͰՄೳͳΒ WebʹΞοϓϩʔυͤͣϩʔΧϧͰॲཧ͍ͨ͠ ՄೳͳΒߍਖ਼ࢦࣔͷͨΊʹϖʔδ൪߸͸ೖΕ͍ͨ Ͱ͖Ε͹Macඪ४ͷπʔϧ܈ͰͲ͏ʹ͔͍ͨ͠ʢձࣾͷ Ϛγϯ਺୆ʹ͍Ζ͍ΖಥͬࠐΜͰҰਓϝϯςͭΒ͍ʣ

  16. ΍ͬͯΈͨᶃ 8FCαʔόΛϩʔΧϧͰཱͯΔ λʔϛφϧͰʮpython -m SimpleHTTPServer 8000ʯ ΛೖΕͯϩʔΧϧͰWebαʔόΛ্ཱͪ͛ͨ Node.JSΠϯετʔϧͰτϥϒͬͨɻ·͋ඪ४ͷ PythonͰࡁΉͷͳΒͦͬͪͷํ͕Α͍ɻ

  17. None
  18. ΍ͬͯΈͨᶄ 7JWMJPTUZMF7JFXFSΛϩʔΧϧىಈ ϩʔΧϧWebαʔόʔ্ཱ͕͕ͪͬͯΔঢ়ଶͰʮhttp:// localhost:8000/Desktop/vivliostyle_test/vivliostyle-js- 2019.1.105/viewer/vivliostyle-viewer.html ʯͳͲͱϒϥ΢βͷ ΞυϨεόʔʹೖΕΕ͹Vivliostyle Viewer্ཱ͕͕ͪΔ ↑͸VivliostyleͷύοέʔδΛσεΫτοϓ্ͷ ʮvivliostyle_testʯϑΥϧμ಺ʹஔ͍͍ͯΔ

  19. None
  20. ΍ͬͯΈͨᶅ ςετϑΝΠϧΛ7JWMJPTUZMFͰදࣔ ͖͞΄ͲͷΞυϨεͷޙʹʮ#b=ʯΛॻ͖ɺʮhttp:// localhost:8000 ʯͷޙʹදࣔϑΝΠϧͷύεΛࢦఆ ʢ#b=͸ϒοΫࢦఆʣ EPUBΛද͍ࣔͤͨ͞৔߹͸ల։ޙͷEPUBϑΥϧμ ΋͘͠͸EPUB಺ͷ.opfϑΝΠϧΛࢦఆ͢Δ

  21. ʮ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 ʯͷΑ͏ʹࢦ ఆͯ͠දࣔ

  22. ΍ͬͯΈͨᶆ $44Λ௥هͯ͠ϖʔδ൪߸౳Λදࣔ VilliostyleͷઃఆͰʮOverride Document Style Sheetsʯ ʹνΣοΫΛೖΕɺCSSΛ௥هͯ͠΍Ε͹ίϯςϯπ ଆͷϑΝΠϧΛ࿔Βͳͯ͘΋දࣔCSS͕௥ՃͰ͖Δ ௥Ճͨ͠CSS͸શͯURLͷ຤ඌʹ௥Ճ͞ΕΔʢͷͰε ΰ͍௕͘ͳͬͨΓ΋͢Δʣ

  23. None
  24. ͜ͷลͷઃఆ΋େࣄ શϖʔδϨϯμϦϯάಡΈ ࠐΈࢦఆɻϓϦϯτͯ͠ PDFʹม׵͢Δͷ͕໨తͳ ͷͰνΣοΫ͓ͯ͘͠ɻ ը૾ͷϖʔδ಺഑ஔ࠷దԽ ࢦఆɻ͜ΕΛνΣοΫͯ͠ ͓͔ͳ͍ͱը૾͕͖ͪΜͱ ϨΠΞ΢τ͞Εͳ͍ɻ

  25. 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
  26. ͋ͱ͸ϒϥ΢βը໘্Ͱ1ߦจࣈ਺ͳͲΛ ௐ੔ͯ͠ϓϦϯτͯ͠΍Ε͹PDF͕Ͱ͖Δ

  27. ͓͔ͭΕ͞·Ͱͨ͠ʂ

  28. ҰԠͰ͖͚ͨͲίϨຖճखಈͰ΍Δͷπϥ͍ ˍ৬৔Ͱࣗ෼͔͠Ͱ͖ͦ͏ʹͳ͍

  29. ҰԠͰ͖͚ͨͲίϨຖճखಈͰ΍Δͷπϥ͍ ˍ৬৔Ͱࣗ෼͔͠Ͱ͖ͦ͏ʹͳ͍ 1FSMΛ࢖ͬͯ͜͜·ͰͷॲཧΛࣗಈԽͨ͠ ↓

  30. https://github.com/JunTajima/epubVivliostylePreview.pl/blob/master/ epubVivliostylePreview.pl

  31. osascriptͰApplescriptݺΜͰλʔϛφϧͱ͔Chrome ্ཱͪ͛ͯΔͷͰMacઐ༻ ల։ޙͷEPUBϑΝΠϧ͸ͦͷ··࢒ΔͷͰফ͢ඞཁ ΞϦʢޙड़ͷΞϓϦͰ͸ऴྃ࣌ʹࣗಈͰফ͢Α͏ʹ ͨ͠ʣ ௥ՃϞδϡʔϧͱ͔͸࢖ͬͯͳ͍ͷͰMacͳΒׂͱ؀ ڥΛબ͹ͣಈ͘͸ͣ

  32. ৬৔༻ʹ͸λʔϛφϧ௚΋πϥ͍ͷͰ 9PKPͰΞϓϦԽͨ͠

  33. None
  34. ͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠