简历生成平台项目开发-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开发模式 第三讲- ...
随机推荐
- [译]基于GPU的体渲染高级技术之raycasting算法
[译]基于GPU的体渲染高级技术之raycasting算法 PS:我决定翻译一下<Advanced Illumination Techniques for GPU-Based Volume Ra ...
- Entity Framework 6 Recipes 2nd Edition(11-2)译 -> 用”模型定义”函数过滤实体集
11-2. 用”模型定义”函数过滤实体集 问题 想要创建一个”模型定义”函数来过滤一个实体集 解决方案 假设我们已有一个客户(Customer)和票据Invoice)模型,如Figure 11-2所示 ...
- .NET 基础一步步一幕幕[方法、结构、枚举]
方法.结构.枚举 方法: 将一堆代码进行重用的一种机制. 语法: [访问修饰符] 返回类型 <方法名>(参数列表){ 方法主体: } 返回值类型:如果不需要写返回值,写void 方法名:P ...
- npm常用命令
npm常用命令 环境:win7 npm 是什么 NPM(node package manager),通常称为node包管理器.顾名思义,它的主要功能就是管理node包,包括:安装.卸载.更新.查看.搜 ...
- 7. SVM松弛变量
我们之前讨论的情况都是建立在样例线性可分的假设上,当样例线性不可分时,我们可以尝试使用核函数来将特征映射到高维,这样很可能就可分了.然而,映射后我们也不能100%保证可分.那怎么办呢,我们需要将模型进 ...
- Angular Service和Factory应用的区别
Service可以用来将返回同类业务的多种返回值 Factory可以用来提供对同类业务的多个方法的调用 另外:Provider可以用来封装各独立职责
- LOCK TABLES和UNLOCK TABLES与Transactions的交互
LOCK TABLES对事务不安全,并且在试图锁定表之前隐式提交任何活动事务. UNLOCK TABLES只有在LOCK TABLES已经获取到表锁时,会隐式提交任何活动事务.对于下面的一组语句,UN ...
- 构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(12)-系统日志和异常的处理②
系列目录 上一讲我们做了日志与异常的结果显示列表,这一节我们讲要把他应用系统中来. 首先我们在App.Common类库中创建一个通用类ResultHelper,这个类里面写了,获取一个GUID,获取当 ...
- iOS开发之Alamofire源码解析前奏--NSURLSession全家桶
今天博客的主题不是Alamofire, 而是iOS网络编程中经常使用的NSURLSession.如果你想看权威的NSURLSession的东西,那么就得去苹果官方的开发中心去看了,虽然是英文的,但是结 ...
- PHP资源列表
一个PHP资源列表,内容包括:库.框架.模板.安全.代码分析.日志.第三方库.配置工具.Web 工具.书籍.电子书.经典博文等等. 初始翻译信息来自:<推荐!国外程序员整理的 PHP 资源大全& ...