新增了一个About个人简历页面

文章字数:962

博客一直没有增加About页面,一方面在置顶的文章《第一篇正式文章 随便聊聊吧》里已经把博客初衷什么的讲了一次,另一方面也没什么好的灵感。今天在家里闲来无事,突然想整理整理自己的简历,然后发现之前很多好用的工具都开始收费了。本来都掏出支付宝了,突然想起来,这东西好像很适合自己来实现一下。毕竟如果不考虑易用性和商业化,自己写个静态页面应该也不是很复杂。

所以最后就把这个About页面作为个人简历的一个展示页了,提供了HTML、PDF、PNG的导出。考虑到毕竟简历页包含了一些隐私信息,虽然现在也没啥必要故意隐藏,不过总归是不太适合大庭广众地推广,所以入口链接放在了站点左上角的头像上,也是某种程度上的“灯下黑”。

基本思路是先写一个HTML的静态页面,然后在hugo的主题里新增一个页面嵌入进去。

写HTML页面这一步也没有硬写,借助腾讯元宝的帮助,靠视图很快就把基础框架搭建好了,剩下的就是根据自己的喜好调整一些css的实现即可。话说回来,腾讯元宝最近的版本似乎很喜欢生成html,让他回答一个普通的程序问题,他也要生成一个页面来说明(具体的回复在页面里,就很华而不实……)。

导出图片目前不复杂,使用html2canvas即可完美的根据html的最终样式生成图片。

导出DPF最早使用的是html2pdf库,它的原理是先用html2canvas生成一个图片然后转为pdf。这个方式会丢失html中的链接、文本等信息,最终得到的是一个有图片的pdf,不太优雅。因此最后我使用的是浏览器的打印功能,通过调用window.print,如果浏览器支持则会调出打印对话框,用户可以选择保存为pdf。

不过由于打印默认是对整个页面进行打印的,因此为了维护方便,最后把简历页单独提出了一个个人简历的HTML,然后通过iframe嵌入到了主页面中,这样调用打印的时候就可以只关注简历本身。而且还可以再提出一个打开新窗口的按钮,让用户可以直接关注简历页本身。

此外,还可以在css中使用@media print媒体查询,来使得只有打印的时候触发某些样式,这样可以调整最终pdf的效果。

其实有段时间想做个游戏项目打一个web包放到站点里的,毕竟职业生涯目前还是以游戏业为主,不过还没酝酿好灵感,只好暂时搁置了。以后日子长着呢,也许哪天又有灵感还有波大改呢。

该内容采用 CC BY-NC-SA 4.0 许可协议。

如果对您有帮助或存在意见建议,欢迎在下方评论交流。

加载中...