编程语言的HTML5的JavaScript 客户端PDF解决方案

    作者:课课家教育更新于: 2019-09-10 09:38:09

    大神带你学编程,欢迎选课

    HTML5Javascript 客户端PDF解决方案——jsPDF。java是一个面向对象的语言。对程序员来说,这意味着要注意应中的数据和操纵数据的方法(method),而不是严格地用过程来思考。

    在一个面向对象的系统中,类(class)是数据和操作数据的方法的集合。数据和方法一起描述对象(object)的状态和行为。每一对象是其状态和行为的封装。类是按一定体系和层次安排的,使得子类可以从超类继承行为。在这个类层次体系中有一个根类,它是具有一般行为的类。Java程序是用类来组织的。

    介绍

    和往常一样,jsPDF是一个开源的客户端的PDF解决方案,在之前的文章中已经介绍过几个web端和PDF相关的库,jsPDF同样是一个不错的客户端PDF引 SDK,你可以通过jsPDF在客户端完成相关操作,它包含了非常丰富的API,帮助你完成一系列的复杂操作!可以说它是相当领先的HTML5客户端解决方案了!

    编程语言的HTML5的JavaScript 客户端PDF解决方案_编程语言_Java_Javascript_课课家

    Github

    https://github.com/MrRio/jsPDF

    Github star数17k+,可以说相当受欢迎了!

    安装使用

    一般情况下我们会考虑使用包管理,常见的就是npm了,因此安装非常简单

    1. npm install jspdf --save 

    或者也可以使用yarn

    1. yarn add jspdf 

    接下来就是制作你的文件的时候了

    默认导出为a4纸张,纵向,使用毫米表示单位

    1. var doc = new jsPDF() 
    2. doc.text('Hello world!', 10, 10) 
    3. doc.save('a4.pdf'

    如果要更改纸张尺寸,方向或单位,可以执行以下操作:

    1. var doc = new jsPDF({ 
    2.  orientation: 'landscape'
    3.  unit: 'in'
    4.  format: [4, 2] 
    5. }) 
    6. doc.text('Hello world!', 1, 1) 
    7. doc.save('two-by-four.pdf'

    使用UTF-8 / TTF

    PDF中的14种标准字体仅限于ASCII代码页。如果要使用UTF-8,则必须集成自定义字体,该字体提供所需的字形。jsPDF支持.ttf文件。因此,如果你希望在pdf中使用中文文本,则您的字体必须具有必要的中文字形。因此,请检查您的字体是否支持所需的字形,否则它将显示空白而不是文本。

    要将字体添加到jsPDF,在/fontconverter/fontconverter.html中使用官网提供的fontconverter。fontconverter将创建一个js文件,其中包含提供的ttf文件的内容作为base64编码的字符串和jsPDF的附加代码。你只需将生成的js-File添加到项目中即可。然后,就可以在代码中使用setFont-method并编写UTF-8编码文本。

    Angular/Webpack/React等配置

    常规操作

    1. import * as jsPDF from 'jspdf' 

    有些框架,必须像下面这样

    1. import jsPDF from 'jspdf'

    API

    jsPDF的api非常丰富,在这里就不提供相关地址了,在Github必然找的到,本文重点不在于介绍jsPDF的用法,将部分API截图展示,通过名称大致能猜到一些意思,具体用法需要参考官网文档:

     


     


    从截图来看,其文档特别的详细,具体到每一个API在js文件的行数,便于阅读源代码,包括参数以及返回值都非常明确:

     

    在线DEMO

    官方提供了一个在线demo,可以直接运行代码,感兴趣的可以先尝试一下:

    总结

    jsPDF是笔者见过类似产品中较为突出的,几乎涵盖了所有PDF相关操作,非常详细的文档也让开发者,轻松上手,在线demo还能快速学习,如果你的项目对PDF的操作比较多,不妨尝试下jsPDF,唯一需要注意的就是解决字体问题,但是上文也提到过解决方案,感兴趣的可以进行体验!

    Java是一个强类型语言,它允许扩展编译时检查潜在类型不匹配问题的功能。Java要求显式的方法声明,它不支持C风格的隐式声明。这些严格的要求保证编译程序能捕捉调用错误,这就导致更可靠的程序。

课课家教育

未登录