`
goyoo
  • 浏览: 9361 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

使用PDFKit和Node.js生成服务器端PDF文件

阅读更多

 

介绍

 

起初,生成PDF文件似乎是件很繁琐的任务,但有了PDFKit,这个任务就容易多了。

 

但对于Node.jsPDFKit模块,知道的人并不多,这倒是很意外。有了PDFKit模块,处理PDF文件变得非常容易,它让你避免了所有的复杂工作,并提供用CoffeeScript(也可以作为普通版的Javascript使用)写成的简易的API。本篇当中,我们一起来生成一个服务器端的带文本内容的简易PDF文件,用的就是PDFKit模块和Node.js。现在开始吧:

 

首先,大家都知道,我们用npm安装模块:

 npm install pdfkit 

 

 

然后,创建一个generatePDFDocument.js文件,在里面写入下面代码:

var PDF = require('pdfkit');            //including the pdfkit module
var fs = require('fs');
var text = 'ANY_TEXT_YOU_WANT_TO_WRITE_IN_PDF_DOC';

doc = new PDF();                        //creating a new PDF object
doc.pipe(fs.createWriteStream('PATH_TO_PDF_FILE'));  //creating a write stream 
            //to write the content on the file system
doc.text(text, 100, 100);             //adding the text to be written, 
            // more things can be added here including new pages
doc.end(); //we end the document writing.

 

这就是创建一个简单的PDF文件(带文本内容)所需要的所有代码。现在,只要使用node运行它就可以了:

node PATH_TO/generatePDFDocument.js

 

这样在你提供的路径应该创建了一个新的PDF文件。各位,就是这些!只用了大概5分钟就在服务器生成了一个PDF

 

 

更多内容

你可以用PDFKit做很多事情,包括做向量图,多格式文本,图片,注释,等等。

关于API和其他例子的更多信息,可以参考 github

 

 

By Suroor Wijdan

 

From:http://www.codeproject.com/Tips/755694/Generating-Server-Side-PDFs-using-PDFKit-and-Node

1
1
分享到:
评论
1 楼 zhangdekun222 2014-04-29  
aspose.pdf 这个也不错哦,就是收费的

相关推荐

    Node.js-这是一个nodejs库可以把一个多页的pdf转成多页png图片

    Node.js是一个基于Chrome V8引擎的JavaScript运行环境,它允许开发者使用JavaScript进行服务器端编程。这里的“其它杂项”可能意味着这个库专注于一个特定的、不常见的任务,即PDF到PNG的转换。 在压缩包子文件的...

    Node.js-将博客网站转换为合并pdf的简单程序

    Node.js是一个基于Chrome V8引擎的JavaScript运行环境,它允许开发者在服务器端使用JavaScript进行编程。 描述 "将博客网站转换为合并pdf的简单程序" 提示我们需要处理多个博客文章,并可能将它们整合到一个PDF文...

    PDFKit一个适用于Node和浏览器的JavaScriptPDF生成库

    9. **兼容性**:PDFKit 能在Node.js和现代浏览器环境中运行,这意味着你可以在服务器端和客户端生成PDF,提供灵活的部署方案。 10. **社区支持和扩展**:PDFKit有一个活跃的开源社区,不断更新和完善,同时也有很多...

    jsPDF 是一个使用Javascript语言生成PDF的开源库.zip

    3. 对于非常大的文档或高性能需求的应用,可能需要考虑使用服务器端解决方案,如PDFKit或Node.js的pdfkit库。 总的来说,jsPDF是一个功能强大、易于上手的JavaScript库,它为Web开发者提供了在客户端生成PDF的强大...

    web网页保存为PDF文件

    除了JavaScript方案,还有一些后端库和服务,如PDFKit(Node.js)、WeasyPrint(Python)或云服务如PDFCrowd、PDFShift等,它们提供了更强大的HTML到PDF转换能力,特别是对于复杂的CSS和交互式元素。 在实际应用中...

    PDFSave将网站转换为轻量级可读PDF

    Node.js是一个基于Chrome V8引擎的JavaScript运行环境,它让开发者能够在服务器端使用JavaScript进行开发。Node.js的特点包括异步I/O、事件驱动和非阻塞I/O模型,使得它在处理大量并发请求时表现出色,特别适合构建...

    页面报表导出思路

    这里可能使用的技术包括HTML、CSS、JavaScript(如jQuery或Vue.js)以及服务器端的编程语言(如Java、Python或Node.js)。 对于前端,可以使用JavaScript库如jQuery DataTables或ag-Grid,它们提供了内置的报表导出...

    生成pdf用到的测试模板

    - **服务器端:** 如Node.js可以使用`pdfkit`或`puppeteer`来生成PDF。 - **客户端:** 可以利用JavaScript库如`jsPDF`或者通过HTML5的`canvas`结合`Blob`对象生成PDF。 - **云服务:** 如AWS的S3存储桶结合Lambda...

    微信小程序图片转pdf

    这个过程涉及到PDF库的使用,如PDFKit(JavaScript库)或者PDF.js等,它们提供了创建、编辑PDF文档的能力。 4. **下载返回**:生成的PDF文档会被发送回小程序,用户可以选择保存到本地或者分享给他人。小程序会提供...

    react-pdfkit:React renderer用pdfkit生成PDF文档

    此外,`react-pdfkit`还支持服务器端渲染(SSR)和静态站点生成(SSG),这意味着你可以将PDF生成逻辑放在后端,提高性能并减少前端的计算压力。同时,由于PDF是静态文件,因此可以轻松地进行缓存和分发。 总的来说...

    EDUC-PEN-REPORT-GENERATION-API:此Node.js API将用于生成不同格式的报告,并由PEN团队使用

    1. **Node.js**:作为后端开发平台,Node.js以其非阻塞I/O模型和JavaScript运行时环境而闻名,它允许开发者使用JavaScript进行服务器端编程。在本项目中,Node.js提供了快速、轻量级和高效的处理大量并发请求的能力...

    node-converter:将SVC和XLSC文件转换为PDF

    Node.js是基于Chrome V8引擎的JavaScript运行环境,它允许开发者使用JavaScript进行服务器端编程。由于其异步、事件驱动的特性,Node.js特别适合处理大量的并发连接,这在文件转换这种IO密集型任务中非常有利。 在...

    pdf-from-images-react-app:用照片制作PDF(扫描)

    2. **Node.js**: Node.js是基于Chrome V8引擎的JavaScript运行环境,用于在服务器端执行JavaScript代码,提供了一系列强大的工具和库,用于构建网络应用和服务。 3. **TypeScript**: TypeScript扩展了JavaScript...

    页面生成pdf

    开发者需要关注库的兼容性,尤其是在服务器端部署时。 8. **性能优化**:对于大量或复杂的HTML页面转换,性能优化至关重要。这可能包括预处理HTML,减少网络请求,以及合理配置转换参数以减小内存和CPU的使用。 9....

    web程序 打印

    1. **服务器端生成PDF**: 在某些场景下,后端可能需要生成PDF文件供用户下载或直接打印。例如,使用iText(Java)、PDFKit(Node.js)或FPDF(PHP)等库可以创建PDF文档。 2. **打印服务接口**: 如果需要更复杂的...

    页面向后端插入/查询/导出数据

    例如,后端可能会使用库如Pandas(Python)、SpreadsheetML(Java)来生成Excel文件,或者使用PDFKit(Node.js)生成PDF。 5. **API接口设计**: 前后端交互基于API(Application Programming Interface)。后端...

    如何在Angular.JS中接收并下载PDF

    如果选择后端生成PDF,我们可以利用Node.js等服务器端技术,配合pdfkit、html-pdf等库来生成PDF文件。然后,前端通过HTTP请求向后端发送请求,获取PDF的二进制流。在Angular.JS中,我们可以使用$http服务的get方法,...

    基于Phantomjs生成PDF的实现方法

    例如,通过提供URL、输出文件名和其他选项,可以执行Phantomjs命令行命令,并将生成的PDF文件内容返回到Node.js响应流中。这使得在Node.js应用中无缝集成PDF生成功能。 5. **优势与适用场景**: 使用Phantomjs生成...

    geradorPDFNode

    "geradorPDFNode"是一个基于JavaScript的...通过"geradorPDFNode"项目,开发者可以学习到如何在Node.js环境下使用JavaScript生成PDF,提升其在服务器端处理文档生成的能力,同时也对JavaScript全栈开发有更深入的理解。

Global site tag (gtag.js) - Google Analytics