我用HTML写简历
本文属于原创文章,转载请注明--来自桃源小盼的博客
起因
每次换工作写简历都是有点痛苦的事情,尤其是下载word模板,各种注册流程,有的还得买积分,冲会员,甚是不爽。就算下载好了,修改其中的一些细节也不太熟悉各种功能,由于长期不用word,早把很多设置功能抛之脑后。
忽然有一天灵感涌上,这种简易的模板样式,对于一个前端工程师来说,写个页面分分钟的事,只要能把html转成pdf格式这事就成了。
Puppeteer
Puppeteer是谷歌出的一个headless自动化工具。
- 利用网页生成PDF、图片
- 抓取网站内容
- 自动化表单提交、UI测试、键盘输入等
- 创建一个最新的自动化测试环境
用来把html转换pdf,虽然是有点大材小用,但是很适合,渲染效果也是足够放心的。
install
# > Node v6.4.0
npm i puppeteer --save
但是安装这里有坑位,还好前人踩过坑了,失败的人点这里,笔者也是下载失败了~~~
index.html
具体怎么写得养眼,就是自己的事情了,这里提供一个简单的模板。
<!doctype html>
<html lang="zh">
<head>
<meta charset="UTF-8">
<title>我的简历</title>
<meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
<link rel="stylesheet" href="style.css"/>
</head>
<body>
<div class="content">
主要内容
</div>
</body>
</html>
gulpfile.js
既然想要写得爽,怎么也得来个热更新吧,搞个简单的自动化工具。
Puppeteer只能访问http地址,所以还需要静态资源服务
npm i --save browser-sync gulp gulp-notify
- browser-sync 提供静态服务器和热更新
- gulp 自动化工具
const gulp = require('gulp')
const notify = require('gulp-notify')
const browserSync = require('browser-sync').create()
const reload = browserSync.reload
// 热更新
gulp.task('styles', function () {
return gulp.src('src/*.css')
.pipe(reload({stream: true}))
.pipe(notify({message: 'Styles complete'}))
});
// 静态资源服务
gulp.task('serve', ['styles'], function () {
browserSync.init({
server: {
baseDir: "./src"
},
port: 7000,
// 关闭右上角通知
notify: false
})
gulp.watch('src/**/*.css', ['styles'])
gulp.watch('src/**/*.html', reload)
})
build.js
只差转换生成了,这里用到了await语法,否则层级太深。
(async function () {
const path = require('path')
const puppeteer = require('puppeteer')
const browser = await puppeteer.launch()
const page = await browser.newPage()
await page.goto('http://localhost:7000')
await page.pdf({
path: 'resume.pdf',
format: 'A4',
// 打印背景色
printBackground: true
})
await browser.close()
console.info('build done')
})()
结语
最后写简历的事情,也被我们工程化了,想想也是省心省力。可以发挥我们的想象,加入各种好玩的东西,再也没人有跟我一样的简历样式了。
这里写了一个简单的项目,仅供参考demo地址
我用HTML写简历的更多相关文章
- 【转】IT职场人生系列之四:怎样写简历
本文是IT职场人生系列的第四篇. 因为早年跳槽无数,所以积累了不少"技巧",逐渐变成写简历的"专家",最长的时候简历到了12页,所以现在练就一手写长篇博客的功夫 ...
- 怎么写简历,简历才不会被丢到非洲🌍
前言 只有光头才能变强. 文本已收录至我的GitHub精选文章,欢迎Star:https://github.com/ZhongFuCheng3y/3y 最近的三歪朋友圈可以看到很多的字节.腾讯的同学都 ...
- iOS开发,这样写简历才能让大厂面试官看重你!
前言: 对于职场来说,简历就如同门面.若是没想好,出了差错,耽误些时日倒不打紧,便是这简历入不了HR的眼,费力伤神还不能觅得好去处,这数年来勤学苦练的大好光阴,岂不辜负? 简历,简而有力.是对一个人工 ...
- 用latex写简历
最近终于逐渐掌握了用Latex写中文简历的问题.首先就是必须基于交大前辈bin yuan的模板进行学习. 如果有了一般论文撰写和Beamer做PPT的经验,不难发现resume的模板也是遵循一套程式的 ...
- 在github上写个人简历——最简单却又不容易的内容罗列
前篇博客分享了一下自己初入github的过程,傻瓜式一步步搭建好主页后,终于该做正事儿了——写简历.在脑袋中构思了很多版本,最后终于决定,先写一个最传统的版本,于是我在箱子中翻出我word版本的简历, ...
- 在github上写个人简历——先弄个主页
起因 不知道园友们在使用智联招聘等网站填写简历的时候对要求输入的内容有没有一种无力感,不吐槽了反正就一句话,按照它提供的格式我没法儿写简历,而且面试的时候总会被问道有没有自己作品,哥们儿天天上班,下班 ...
- 怎样写好一份IT技术岗位的简历
10月是校园招聘的旺季,很多应届毕业生都忙碌起来了,从CSDN笔试-面试文章的火热程度,从我收到的简历就看得出来. 我很久没有参与笔试和面试了,所以只能从“简历”来阐述下我的看法. 截至目前,已经帮8 ...
- github上写个人简历
随笔- 70 文章- 0 评论- 567 在github上写个人简历——先弄个主页 起因 不知道园友们在使用智联招聘等网站填写简历的时候对要求输入的内容有没有一种无力感,不吐槽了反正就一句话 ...
- 用markdown + html写一封简历
0. 前言 1. 阶段1 - 确定需要几个模块 2. 阶段2 - 使用纯文字填充简历 3. 阶段3 - 预留空格 4. 阶段4 - 文章垂直方向的调整 5. 阶段5 - 居中对齐 6. 阶段6 - 加 ...
随机推荐
- [Web 前端] 031 bootstrap 的使用和全局 css 样式
目录 0. 前言 1. 基本模板 2. 布局容器 2.1 container 2.2 container-fluid 3. 栅格系统 3.1 简介 3.2 栅格参数 3.3 实例:从堆叠到水平排列 2 ...
- 获取程序所有加载的dll名称
1.在任务管理器输入如下指令.输出到文件:tasklist /m >c:\dll.txt 输出到命令行 tasklist /m 2.使用工具软件https://files.cnblogs.com ...
- IntelliJ IDEA 部署 Web 项目,终于搞懂了!
这篇牛逼: IDEA 中最重要的各种设置项,就是这个 Project Structre 了,关乎你的项目运行,缺胳膊少腿都不行. 最近公司正好也是用之前自己比较熟悉的IDEA而不是Eclipse,为了 ...
- Kinect V2入门之数据获取步骤
在Kinect for windows SDK2.0中,获取并处理数据源接口步骤如下: Sensor -> Source -> Reader -> Frame -> Data ...
- HBase Shell 的常用操作总结
1,创建表:create 't1','f1','f2','f3' #-------t1是表名,f1,f2,f3是列族名 2,查看所有的表:list 3, ...
- vuex辅助函数和vuex5个属性
在上篇中,我们可以知道如果想要访问vuex.store中state中的数据,需要this.$store.state.属性名.显然这样访问数据写的代码很很不简洁的,辅助函数就是用来解决这个问题的. 1. ...
- 45. Jump Game II (JAVA)
Given an array of non-negative integers, you are initially positioned at the first index of the arra ...
- R语言parse函数与eval函数的字符串转命令行及执行操作
parse()函数能将字符串转换为表达式expression:eval()函数能对表达式求解 A <- : B <- 'print(A)' class(B) C <- parse(t ...
- 编写第一个Qt程序
http://c.biancheng.net/view/1817.html 学习一种编程语言或编程环境,通常会先编写一个“Hello World”程序.我们也用 Qt Creator 编写一个“Hel ...
- 求助高手,Nginx配置二级域名跳转 地址栏不变咋处理?
做域名镜像的rewrite即可rewrite ^/(.*)$ http://二级域名/$1 last;