billryan / algorithm-exercise

Data Structure and Algorithm notes. 数据结构与算法/leetcode/lintcode题解/

Home Page:https://algorithm.yuanbin.me

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

add proper Chinese fonts for PDF

billryan opened this issue · comments

The Chinese fonts used in PDF version is unreadable. Proper Chinese fonts such as [文泉驿]([Habitat: MicroHei]%28http://wenq.org/wqy2/index.cgi?MicroHei%29) would be better. I do not find the way how to modify the Chinese fonts rendered for PDF, anybody can give a hint?

目前的 PDF 版字体巨丑无比,简直不忍直视!最好的办法就是等官方更新他们的系统字体了,本地测试生成的字体还不错。如果要离线查看本文档,目前还是比较推荐 epub 和离线的 html。

目前已使用 travis-ci.org 生成PDF/EPUB/HTML/MOBI,可以自行添加字体。将生成的 PDF/EPUB/MOBI/HTML 自动同步到七牛上,方便下载。

Reference

上传到七牛部分的脚本已经搞定,实测可以通过自行安装字体来解决中文字体渲染的问题,再试试看在fontconfig中指定不同字型。

哈哈哈好厉害,这玩意是不是也可以直接弄到 blog 的 文章 PDF 导出?

可以哇~ travis-ci相当于是可以免费使用的VPS,甚至比自己的VPS+docker还好用!内存最大可用3G,网络带宽超大!只要自己维护脚本就好了。

目前algorithm-exercise的travis脚本文件为 .travis.yml,你可以看看这玩意儿怎么玩的。

P.S. 你起得好早 👍

我研究研究,不懂问你哈哈我属于晚睡早起不用睡觉星人。

看起来你需要的应该是将 blog(based on jekyll) 中的 markdown 文件转成 PDF?

  1. Install pandoc, brew install pandoc pandoc-citeproc, 这个黑魔法利器的介绍 - 黑魔法利器pandoc
  2. Install jekyll plugin - Peter J. Lu - Converting the website to documents

完全可以在本地搞定~ 当然你也可以使用 Travis CI 监听你的 repo, 然后触发pandoc的编译,这个感觉比本地处理麻烦些。

pandoc 的 PDF 我试过诶,确实很方便。
其实我是想实现类似 pluskid 这个 blog 的功能。比如你看这篇博文:http://freemind.pluskid.org/machine-learning/denoising-lena/
有一个 PRINTABLE VERSION 的 button,就可以导出 PDF 了。这个应该是每次自动 pandoc 编译,随着 markdown post 发布也同时生成了一个 PDF 文件和 link 吧。然后直接按照 link 生成规则,加在 post 页面的 button 链接里。

他也是用了 pandoc 转换的,Blog 底部有Powered by Ruby, Pandoc and Liquid, Blog 的主机用的是这个 http://69.163.208.181,可控性高一点。

你用的是 Github Pages 和 jekyll?, 可控性差一点,在仍然使用 jekyll 的前提下暂时只想到改动 markdown 源文件。这个用本地和远程 travis-ci 都能实现。

本地的方案:简单起见可以在 Blog 目录下写个脚本封装git push, 即在 git push之前调用pandoc生成 PDF 后再用脚本改写原来的markdown

travis-ci 的方案相对省心一点,本地推送和以前一样,只是在 travis-ci 上把生成 PDF 和改写 markdown 源文件的脚本写下。优雅一点的方式可以在 master 使用源文件,travis-ci 根据 master 分支的内容改写后推送到 gh-pages 分支,这样就不用每次发文前 git pull了。也可以自定义其他分支存放源文件。

另外一种方案就是弃用 jekyll,改用如 Hexo 这种静态页面渲染引擎。感觉都挺折腾的...

一直下不定决心换 Hexo……让我再狠狠心……

方案都 get 了!不过其实也就是花一天时间折腾一下……等把论文丢出去。

@CrossLuna 中文電子屏閱讀部份已使用思源黑體,看起來效果還不錯,不過體積較大,我寫了個 webhook 腳本放在了自己 VPS 上編譯和靜態文件輸出。

http://public.yuanbin.me/ebook/algorithm-ebook_zh-tw.pdf

看起來相當漂亮! 讚

DONE at #26
现在仅保留非衬线字体如思源黑体,之前比较适合打印的衬线字体如宋体(明体)暂时废弃。