简历生成平台项目开发-STEP4第二次项目例会讨论
时间:2016.7.15周五7点半
地点:图书馆
讨论主题:交流各自手头项目进展,确定下一步任务
内容:按照之前的讨论的任务大家各自汇报进度。
汇报人:谭卓、尹忠诚
内容:1.基于富文本编辑器的模板,用户直接编辑。
~浏览器端生成(貌似不可行)
~直接打印页面(调研如何隐藏页眉页脚,貌似不可行) 见 http://stackoverflow.com/questions/1960939/disabling-browser-print-options-headers-footers-margins-from-page/2780518
富文本编辑器:
以 ckeditor 为例,编辑器可以输出 html 代码,输出的 html 代码可以用来重现编辑器的内容。
有些编辑器编辑效果很好,感觉体验超越了 word。
初步选定 ckeditor,需要阅读其文档:http://docs.ckeditor.com/#!/guide
富文本编辑器实现原理:https://developer.mozilla.org/en-US/docs/Rich-Text_Editing_in_Mozilla
关键字:designMode, contentEditable
2.拿到编辑器输出的 html,有两种方法输出 pdf
服务端PDF生成两个东西:wkhtmltopdf、PhantomJS。
这两个都是基于 webkit 的,能渲染 html,顺便输出 pdf,类似浏览器。
网页端发来编辑器生成的 html,服务端在同样的环境运行页面,把收到的数据(html)填进去,重现出简历页面,输出 pdf。
实验结果显示,PhantomJS 渲染结果更接近真实浏览器,就用它来输出 pdf。
3.如何实现控制A4纸输出
a.HTML/CSS
@page {
size: A4;
margin: 0;
} @media print {
html {
width: 210mm;
/* 高度比A4小1mm,因为页面可能稍微溢出一点,变成两页纸 */
height: calc(297mm - 1mm);
margin: 0;
}
} /* html 设成A4大小 */
html {
width: 210mm;
height: calc(297mm - 1mm);
margin: 0;
} /* 下面两个用于调试 */ /* 黑色框框是A4纸的边界 */
html {
border: 1px solid black;
} /* 红色框框是简历内容,即A4纸去掉页边距 */
body {
border: 1px solid red;
} body {
/* 简历页边距在这里设置 */
/* margin: 0cm 1cm 2cm 1cm; */
} /* the padding and border of that element no longer increase its width */
/* ref http://learnlayout.com/box-sizing.html */
* {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
简历页面里,CSS 不能用 px 单位,px 是像素,要用 cm、em、% 等能决定实际大小的单位。
引入第三方 CSS 时要注意。
b.PhantomJS
见代码 web2pdf.js
c.wkhtmltopdf
Windows:
wkhtmltopdf -L 0 -R 0 -T 0 -B 0 --page-size A4 --print-media-type --disable-smart-shrinking resume.html out.pdf
Linux:
wkhtmltopdf -L 0 -R 0 -T 0 -B 0 --page-size A4 --zoom 0.78125 --print-media-type --disable-smart-shrinking resume.html out.pdf
汇报人:朱策
根据之前的功能需求,暂时设计网站界面样式如 http://114.214.166.183/index.html 所示。
接下来任务:1.继续深入完成富文本编辑器与网站的融合,初步实现基本功能
2.调研pdf生成对中文字体的支持
3.浏览器端保存简历
4.简历模板库调研
5.技术文档的完善
简历生成平台项目开发-STEP4第二次项目例会讨论的更多相关文章
- Web项目开发介绍及实战项目介绍
引言 本系列课程我们将学些Golang语言中的Web开发框架Iris的相关知识和用法.通过本系列视频课程,大家能够从零到一经历一个完整项目的开发,并在课程中了解实战项目开发的流程和项目设涉及的各个模块 ...
- 简历生成平台项目开发-STEP5初步界面demo实现
谭卓因为暑期实习,去杭州实习了,走之前在git上上传了一些文档(https://github.com/USTC-CV-creator/),项目到目前为止,前端demo已经做好,后台接收请求生成PDF部 ...
- 简历生成平台项目开发-STEP2问卷调查结果统计分析
根据之前设计的调查问卷,截止目前为止,一共收到64份问卷结果.一共16题,分别从基本信息.是否对简历制作有需要.对产品期望的特点和建议采纳四个方面设计问题.下面逐题分析问卷结果: 1.您的性别 可以看 ...
- 简历生成平台项目开发-STEP1问卷设计
周五课程结束完后,小组建立QQ群和微信群,着手讨论项目问题.一开始的大概想法:就业信息平台,收集企业招聘信息和就业生资料,提供给学生和企业的校企对接平台.后来发现群里谭卓同学也有个相关的思路,经过商量 ...
- 简历生成平台项目开发-STEP3第一次项目例会探讨
时间:2016.7.13周三7点半 地点:图书馆 讨论主题:项目需求和功能分析.第一次任务分配 内容:按照之前的讨论,我们认为简历生成功能,不仅要适应学生求职的需求,更多的是要在格式和内容上满足HR的 ...
- JAVAEE 和项目开发(第二课:HTTP协议的特点和交互流程)
HTTP 的概念和介绍 概念:超文本传输协议(Hyper Text Transfer Protocol) 作用:规范了浏览器和服务器的数据交互 特点: 简单快速:客户向服务器请求服务时,只需传送请求方 ...
- 关于QT安装的一些心得(QT551, VS2013)项目开发配置,以及项目结构分析
推荐QT开发的配置如下: 我的硬件配饰中等,所以推荐一下配置: QT551版本,目前QT最新版8.0,为了稳定选择551版本 VS2013IDE, 因为VS2010与VS2013的编译器相同,但是VS ...
- weex 项目开发(四)项目框架搭建 及 自定义 TabBar 组件
1.安装 路由模块 及 状态管理模块 npm install vue-router --save npm install vuex --save 2.自定义 TabBar 组件 src / ...
- 【课程分享】ASP.NET MVC5&微信公众平台整合开发实战(响应式布局、JQuery Mobile,Windows Azure、微信核心开发)
对这个课程有兴趣的,能够联系我QQ2748165793 基础知识储备 ASP.NET MVC 5基础(6讲) 第一讲-初识ASP.NET MVC并搭建整合开发环境 第二讲-深入MVC开发模式 第三讲- ...
随机推荐
- (转)linux下和云端通讯的例程, ubuntu和openwrt下实验成功(二)
前言: 上节用纯linux的函数实现了和云端通讯, 本节开始利用传说中的神器libcurl 话说一个网络程序员对书法十分感兴趣,退休后决定在这方面有所建树. 于是花重金购买了上等的文房四宝. 一 ...
- LeetCode-1TwoSum(C#)
# 题目 1. Two Sum Given an array of integers, return indices of the two numbers such that they add up ...
- Python的魔法函数之 - __len__,__getitem__,__setitem__,__delitem__
# 对象作为len()函数的参数是必须实现该方法 __len__ # 使用类似字典方式访问成员时必须实现 dic['pro_name'] __getitem__ # 使用类似字典方式设置成员时必须实现 ...
- Android开发-之监听button点击事件
一.实现button点击事件的方法 实现button点击事件的监听方法有很多种,这里总结了常用的四种方法: 1.匿名内部类 2.外部类(独立类) 3.实现OnClickListener接口 4.添加X ...
- jquery.fn.extend与jquery.extend--(初体验二)
1.jquery.extend(object); 为扩展jQuery类本身.为类添加新的方法. jquery.fn.extend(object);给jQuery对象添加方法. $.extend({ a ...
- Hadoop的数据管理
Hadoop的数据管理,主要包括Hadoop的分布式文件系统HDFS.分布式数据库HBase和数据仓库工具Hive的数据管理. 1.HDFS的数据管理 HDFS是分布式计算的存储基石,Hadoop分布 ...
- linq to js使用汇总
用途:方便js操作查询json数据. 下载网址:http://jslinq.codeplex.com/ 使用方法:只需要引用linq.js即可. 查询方法: 一.where查询 var myList ...
- 记一次使用 android 自带 WebView 做富文本编辑器之API、机型的兼容及各种奇葩bug的解决
转载请声明出处(http://www.cnblogs.com/linguanh/) 目录 1,测试设备介绍 2,开源项目richeditor及CrossWalk的选择 3,遇到的bug及其解决方法 4 ...
- 千回百折:百度Java研发offer斩获记和经验分享
起因 面试过程 等待offer的过程中悟道 Java面试常考知识点个人总结 过程 百度——作为国内互联网的巨头之一,最近的一些风波对其褒贬不一,但是类似事件不是第一次发生,也绝对不是最后一次,对于真的 ...
- 11gRAC报错CRS-4535, CRS-4000解决
环境:AIX6.1 + Oracle11.2.0.4 RAC(2 nodes) 1.故障现象 2.定位问题 3.处理问题 1.故障现象 使用crsctl查看集群各资源状态,在任一节点都会直接报错CRS ...