ããŒã¯ããŠã³ã§é»åæžç±ãäœæããç°å¢ãæ¢ãç¶ããŠãã
ããŒã¯ããŠã³ã§é»åæžç±ãäœæããç°å¢ãæ¢ãç¶ããŠãã
å°ã£ãããšã«ããªããªãé»åæžç±ããããªãäœæã§ããç°å¢ã決ããããŠããã
ããŸãŸã§åºçããŠãããã®ã¯ãã¹ãŠPandocãšããããŒã«ãå©çšãããã®ã ã£ãã
ã³ãŒãã®ãã€ã©ã€ãã¯highlight.jsã§ãããŒã¯ããŠã³ã«å¯ŸããŠè¡ãã«ã¯metalsmithãšããnpmã¢ãžã¥ãŒã«ãšmetalsmith-metalicãšããmetalsmithãã©ã°ã€ã³ã䜵çšããŠè¡ã£ãŠããã
ãããWindowsãšmacOSã§åããããªç°å¢ãäœæããããšãããšãæå€ãšé¢åã ã£ãã
metalsmithãã³ãã³ãã©ã€ã³ããŒã«ãšããŠäœ¿çšãããã®ã ããWindowsãšmacOSã§èµ·åã®ããæ¹ãã©ã®ãã¡ã€ã«ãå®è¡ããããªã©ãããŒã¯ããŠã³ãã¡ã€ã«ã®äžãæ¹ãªã©çްããå·®ããã£ãŠãçµå±OSã§åãåããããããªgulpãã¡ã€ã«ãæžããŠããã
ã§ãã©ãã«ãé¢åãªããšãïŒã€ãã£ãŠãèè æ å ±ãªã©ãå«ããYAMLãã©ãŒãããã ãã®ããŒã¯ããŠã³ãã¡ã€ã«ãmetalsmith-metalicã«ãããŠããŸããšãããŒã¯ããŠã³ããããŒãããããšããããšã§ç©ºãã¡ã€ã«ãåºåãããŠããŸããšããå°ã£ãããšããã£ããçŸåšã¯ããã ãé€ããŠmetalicããŠãã
代ãããæ¢ãã
æè¿ã¯ããŒã¯ããŠã³ãšãã£ã¿ã§ã䟿å©ãªãã®ãå€ããŠãçŽæ¥PDFã«ããããšãã§ããããããã¹ã¿ã€ã«ã·ãŒããæå®ããå¿ èŠããã£ãŠãmarkdown-pdfãšããnpmã¢ãžã¥ãŒã«ã䜿ããšäžç©ãªãšã©ãŒã¯åºããã®ã®PDFã¯çæããããšãç°¡åã«ã§ããããã¡ããWindows10ã§ãubuntuãµãã·ã¹ãã ãå©çšããã°äœè£ã ã
äžæ¹ãepubãåãåºãããšã ããèãããšãããããããšã«ã¯ãªããªãã
ããã売ãããããããã§ã¯ãªãããããç°å¢ãæŽããã®ãé¢åã ããããããŸã§çºå±ããŠãªããªãšããå°è±¡ã ã
æè¿è©ŠããŠã¿ããã®ãïŒã€ç޹ä»ããŠã¿ãã
epub-gen
ãããŸãnpmã¢ãžã¥ãŒã«ã ããéåžžã«å°ããªã³ãŒãã§epubããµã¯ããšåºåããããšãã§ããã
var epub = require('epub-gen'); var fs = require('fs'); var json = JSON.parse(fs.readFileSync(process.argv[2]), 'utf8'); new epub(json);
ããã§ã³ã³ãœãŒã«ããæ¬¡ã®ããã«ãããšãã¡ã€ã«ãåºåãããã
node index.js sample.json
sample.jsonã¯ã«ãŒã«ã«åŸã£ãŠæ¬¡ã®ããã«ããŠããã
{ "title": "æŽãã空ãèªãããªã倿®ãããŠã§ã€ã", "author": "æå åºèŠ", "publisher": "ãªããŒããŒ", "content": [ { "title": "ãã€ã€ã¢ã³ãã ã£ãŠ", "data": "幎ããšã£ã¡ããã<br/>ãŸããŠãæãªããŠâŠ<b>çããŠæ¶ãããã ïŒïŒ</b>" }, { "title": "圢ãããã®ã", "data": "éããããªããŠïŒç¡åžžïŒ<br/>ãã¿ãããæ·»ããŠâŠ<b>ä¿¡ããã£ãŠããã</b><img src='http://localhost/03-001.JPG' />" } ], "output": "./sample.epub" }
ãããããšããããªæãã«ãªãã
䟿å©ïŒ
epub-genã§é»åæžç±ãã€ãããšãã«å°ãããš
éåžžã«ç°¡åã«jsonããepubã«ããããšãã§ãããcontent[].dataãããŒã¯ããŠã³ããHTML倿ããæååã«ããŠããã°ãããŒã¯ããŠã³ããèªåã§epubãäœæããããšãã§ããä»çµã¿ãç°¡åã«ã§ãããïŒ
ãšã¬ãåã³ããã
ãæ°ã¥ããããããªãããå ã»ã©ã®epubã¯ç»åãã¡ã€ã«ãå«ãã§ããªãã
ã©ããã£ãŠè¡šç€ºããŠããããšãããšããã©ãŠã¶ã§ããŒãžãèŠããšããšåãããŠã§ããµãŒããŒããããŠã³ããŒãããŠè¡šç€ºãããŠããã®ã ã
ã ããç»åã®imgã¿ã°ã«ããsrcå€ã¯ãhttp:ãããå§ãŸã£ãŠãããããã¯epub-genã®readmeã«ãèšèŒããã£ããäžèšã®ãµã³ãã«ã§ã¯æå ã§ãŠã§ããµãŒããŒãèµ·åããç¶æ ã«ããŠããããã ã
ã©ãããepub-genã§ã¯ç»åãepubãžå«ããããšãã§ããªãããã®ãããã®ãããªæ¹åŒã«ãªã£ãŠãããšæããããããã
ã§ãã§ãã³ã³ããŒã¿ - http://conv.denshochan.com/
ã®æèœããéç«ã€ããã
ãŠã§ããµãŒããŒããæã¡ã®é»åæžç±ã®èè ããã¯ãããããŠããããããã®ããªã
ããè¯ãç°å¢ãç®æããŠ
ããŸã®ãšãããèªåã®ããããããã«ããã«ã¯Pandocãå©çšããäžé£ã®ä»çµã¿ãäžçªäŸ¿å©ã®ããã ã
ç¡å¿µâŠãããããã£ãšè¯ãæ¹æ³ãããã¯ããªã®ã ã
äœãæ°ã«ãããããŒã¯ããŠã³ã ãèšè¿°ããŠãã£ãŠç»åã¯è¿ãã«imagesãã©ã«ããªã©äœæããŠãã®äžãžæŸã蟌ãã§ãããŠãã¹ã¿ã€ã«ã·ãŒããåããã©ã«ãå ã«å«ããŠããã°ãŸãšããŠepubã«ããŠãããæªæ¥ãããã¯ãã
ãã£ãšè¿ãå°æ¥ãMicrosoftãšããVisual Studioã«ããŒã¯ããŠã³ããepubã«ãã«ãããŠããããããªãã®ãçšæããŠããããã ãšæã蟌ã¿ã€ã€ã















