Tag: pdf

可行性检查:图像扫描和PDF生成电子应用程序?

我需要复制一个桌面应用程序,目前build立一个硬币,奖牌和钞票的目录。 其主要特点是: 从扫描仪扫描图像 将图像提供给图像编辑程序进行一些小调整(亮度/对比度) 扫描2张图像并将它们拼接成一个的可能性。 (例如硬币的两面,A面向左,B面向右) 生成一个“可打印的”PDF文件(可打印的意思是:300dpi和CMYKconfiguration文件) 我知道我的方式围绕Web栈(JavaScript,HTML5,CSS,PHP,MySQL),所以目前我正在研究构build一个电子应用程序。 对于扫描,我发现这些: CLScan TSSCAN dynamicWeb TWAIN 现在我正试图估计这是否可以用Electron / NodeJS和其中一个命令行工具来完成。 至于目录PDF的生成,我发现了一些PDF生成的Libs和NPM包,但所有这些似乎不符合印刷机的要求。 在最糟糕的情况下,我会更加自动化InDesign工作stream程,并在InDesign中构build目录,但如果可能的话,我想创build一个“一键式”解决scheme。 该应用程序将在Windows 7上使用。 长话短说:我有这样的挑战和我手头上的一系列技能,是否“脱离了我的联盟”? 或者这可能吗?

用缓冲区重现fs.createReadStream

我需要发送一个pdf到一个formData的api。 我下载的时候logging如下所示的pdf: <Buffer 6d 61 67 65 49 2f … >如果我fs.writeFileSync它是完全可读的。 但我想尝试将它传递给api,而不必用fs编写它,以便将pdf作为缓冲区来操作。 我的post看起来像这样: const formData = new FormData(); formData.append('access_key', this.config.redacted); formData.append('redacted','redacted'); formData.append('file', fs.createReadStream('./filename.pdf')); return post('urlRedacted', formData, { headers: formData.getHeaders(), }) 这个请求会成功,但它需要我写的文件与fs ,我想避免。 我尝试了一些使用库node-streamifier来帮助我从缓冲区中创build可读stream的方法,但是api发送给我一个错误: { error: 'Invalid parameter \'file\' or \'bucket\': Object expected' } 。 所以我的问题是,如何重现fs.createReadStream行为,这似乎是我的用例唯一工作? 注意:我试图像这样实现这个解决scheme : formData.append('file', createReadStream(myBuffer))并且像这样formData.append('file', createReadStream(myBuffer,{ encoding: 'binary' }))没有改变任何东西的错误。 解: FS正在stream式传输数据,并智能地从他正在读取的文件中添加一些信息,从而在数据stream开始处提供了这一行: […]

如何在节点/快速应用程序中使用虾PDF

在node.js应用程序中,我想生成pdf文档并将其发回给用户。 我想用我以前用过的Prawn PDF,并且很舒服地使用它。 我想我应该使用节点的child_process.spawn来调用ruby脚本(返回一个pdf)来实现这一点,但我不知道如何实际执行它! 我这样做:spawn = require('child_process')。spawn; pdf = spawn('my_ruby_script'); 现在我怎样才能得到返回的PDF文档? 谢谢,马诺

渲染pdf时,PhantomJs将页眉边距设置为0

我正在使用Node.js和模块phridge(版本1.0.3)来渲染与PhantomJs的pdf。 我想在页眉和页脚中没有任何页边空白的情况下渲染pdf。 目前,我只发现一个黑客通过负左右边距去除左右边距。 用pagenumbers打印页眉和页脚的例子可以在这里find: https : //github.com/ariya/phantomjs/blob/master/examples/printheaderfooter.js // creates a new webpage internally var page = phantom.createPage(), outputFile = path.join(options.destDir, options.destFile); /*global window:false */ // page.run(fn) runs fn inside PhantomJS page.run(html, outputFile, options.header, options.footer, options.delay, function (html, outputFile, header, footer, delay, resolve /*, reject*/) { // Here we're inside PhantomJS, so we can't reference variables […]

express.js – 创build一个新的pdf并强制下载,而不保存在服务器上

我正在使用pdfkit的express.js来生成pdf并强制下载给用户。 为此,我使用了属于express.js的res.download函数。 我也可以通过pipe将PDF文件解压缩到res ,但是下载不会启动。 好的,那么我的问题是:是否有可能以某种方式在服务器上创buildPDF并将其存储在“内存”或类似的东西? 目前我必须定义一个pdf的创build地点,然后从这个位置读取并提供给用户。 基本上,我想“跳过”保存到磁盘和从磁盘读取,但仍然强制下载的用户。 也许我不是在这里理解一些概念,所以任何forms的解释都非常感谢! 代码如下: router.get('/pdf/:id', function(req, res) { Order._getById(req.params.id). then(function(order) { if (order !== null) { var doc = new PDFDocument(); var result = order.toJSON(); var products = result.products; var user = result.user; var comments = result.comments; doc.registerFont('arial', path.join(__dirname, '../fonts', 'arial' , 'arial.ttf')); for (var i in products) { var […]

尝试合并节点中的pdf文件:PDFUnite + Nodejs

我有一个关于heroku的网站,我正在使用HyPDF插件,它允许您以多种方式操纵pdf。 具体来说,我正在试图合并两个我有URL的PDF。 但是,它不工作。 我正在使用请求来拉取PDF文件,然后使用请求来调用PDFUnite。 这也是一个callback地狱,所以如果你有任何关于如何解决这个问题的build议,我会非常感激! 谢谢! request({url: 'http://www.sesamestreet.org/cms_services/services?action=download&uid=4010e80d-9106-4824-95ab-799ec81c7fd0', encoding: null}, function(err, res, body) { var pdf1 = body; request({url: 'http://www.sesamestreet.org/cms_services/services?action=download&uid=28a388c6-ca0e-45a1-9aaf-9b6688c5a557', encoding: null}, function(err2, res2, body2){ var pdf2 = body2; request.post( 'https://www.hypdf.com/htmltopdf', { json: { user: HY_USER, password: HY_PASS, file_1: pdf1, file_2: pdf2 } }, function (error3, res3, body3) { if (!error && res2.statusCode == 200) […]

使用jsreport与其他语言(不是英文)

我需要生成PDF报告,但问题是我不能用波斯语言渲染,简单的例子: var http = require('http'); var jsreport = require('jsreport'); http.createServer(function(req, res) { jsreport.render({ template: { content: "<h2>سلام</h2>",// means "hello" in persian engine: 'jsrender', recipe: 'phantom-pdf' } }) .then(function(out) { out.stream.pipe(res); }).catch(function(e) { res.end(e.message); }); }).listen(3031, '127.0.0.1'); 生成的PDF包含错误和不可读的任何想法? 感谢您的任何build议。

node.js sendgrid如何附加pdf

我使用sendgrid在我的node.js应用程序中发送电子邮件。 我试图附上一个pdf的每一个组合都以我附加的pdf不可读取而告终。 我试过了: fs.readFile('public_html/img/Report.pdf',function(err,data){ var base64data = new Buffer(data).toString('base64'); sendgrid.send({ to : hexDecode(_.e), from : 'xxxxxxxxx@gmail.com', subject : 'Report', files : [{filename:'Report.pdf',content:'data:application/pdf;base64,'+base64data}], //files : [{filename:'Report.pdf',contentType:'data:application/pdf',url:'public_html/img/'Report.pdf'}], //files : [{filename:'Report.pdf',url:'public_html/img/'Report.pdf'}], html : 'bla bla' 有谁知道如何防止“加载PDF文档失败?

Express.js中的res.download文件中发生了什么?

我正在创build一个在服务器上创buildPDF文档的应用程序,然后显示一个“ Download Herebutton。 当我点击button,过程似乎工作。 当我检查Chrome控制台中的networking>预览和networking>标题标签时,我可以看到该文件已经返回。 问题是,它不显示,也不提供保存选项。 我错过了客户端的一步吗? 我的首选结果是让用户select保存文件或自动开始下载到他们的默认path。 这里是相关的服务器代码: exports.show = function(req, res) { var file = req.params.id; var filePath = __dirname + '../../../lib/completedforms/'; var thisPath = path.resolve(filePath + file); res.attachment(thisPath); res.setHeader('Content-Type', 'application/pdf'); res.setHeader("Content-Disposition", "attachment"); res.download(thisPath); }; 在此先感谢您的任何指导。

在sails.js中使用显示API的PDF.js

我是MVC框架的新手。 我需要为网站实现PDF文件的预览function。 我不想实现它的viewer.html方式,我需要使用显示API。 我经历了Hello world示例以了解如何使用这些API。 但是我无法弄清index.html,hello.js在sails.js中的位置。 我是否应该将index.html保存为视图文件夹中的.ejs文件,并在此.ejs文件中embeddedhello.js内容? 我应该写一个单独的JavaScript文件,或者可以将“获取”API和渲染逻辑作为一种方法进入控制器吗? 我试图让helloworld的例子先工作。 将pdf.js和pdf.worker.js下载到我的assets / js /文件夹中。 将helloworld.pdf保存在views文件夹中,并将hello.js和index.html制作成一个文件 – index.ejs。 使用路线,我链接到具有index.ejs的视图。 但是当我点击链接时,它会抛出错误,如下所示: > 21| PDFJS.disableWorker = true; > 22| </script> > >> 23| <% > 24| 'use strict'; > 25| > 26| var doc =PDFJS.getDocument('helloworld.pdf'); > > PDFJS is not defined] 当我克隆git存储库,并打开教程中给出的index.html,它工作正常,并显示内容。 我可能会在很多地方出错。 有人可以帮助我朝着正确的方向前进吗? 我的ejs文件中embedded了hello.js逻辑: <!doctype html> <html> <head> […]