Image to PDF Node.js Examples
These examples demonstrate common Image to PDF API workflows in Node.js.
Basic examples
PNG file to PDF file
var pdfcrowd = require("pdfcrowd"); // Create an API client instance. var client = new pdfcrowd.ImageToPdfClient("demo", "demo"); // Run the conversion and save the result to a file. client.convertFileToFile( "/path/to/logo.png", "logo.pdf", function(err, fileName) { if (err) return console.error("PDFCrowd Error: " + err); console.log("Success: the file was created " + fileName); });
PNG file to PDF file via callback
var pdfcrowd = require("pdfcrowd"); // Create an API client instance. var client = new pdfcrowd.ImageToPdfClient("demo", "demo"); // use predefined callback for saving to a file var callbacks = pdfcrowd.saveToFile("logo.pdf"); // set custom error callback callbacks.error = function(errMessage, statusCode) { // use predefined helper class for errors const error = new pdfcrowd.Pdfcrowd.Error(errMessage, statusCode); console.error("PDFCrowd Error: " + error); }; // Run the conversion and save the result to a file. client.convertFile("/path/to/logo.png", callbacks);
PNG url to PDF file
var pdfcrowd = require("pdfcrowd"); // Create an API client instance. var client = new pdfcrowd.ImageToPdfClient("demo", "demo"); // Run the conversion and save the result to a file. client.convertUrlToFile( "https://pdfcrowd.com/static/images/logo.png", "logo.pdf", function(err, fileName) { if (err) return console.error("PDFCrowd Error: " + err); console.log("Success: the file was created " + fileName); });
PNG url to PDF file via callback
var pdfcrowd = require("pdfcrowd"); // Create an API client instance. var client = new pdfcrowd.ImageToPdfClient("demo", "demo"); // use predefined callback for saving to a file var callbacks = pdfcrowd.saveToFile("logo.pdf"); // set custom error callback callbacks.error = function(errMessage, statusCode) { // use predefined helper class for errors const error = new pdfcrowd.Pdfcrowd.Error(errMessage, statusCode); console.error("PDFCrowd Error: " + error); }; // Run the conversion and save the result to a file. client.convertUrl("https://pdfcrowd.com/static/images/logo.png", callbacks);
In-memory PNG to PDF file
var pdfcrowd = require("pdfcrowd"); var fs = require("fs"); // Create an API client instance. var client = new pdfcrowd.ImageToPdfClient("demo", "demo"); // Run the conversion and save the result to a file. client.convertRawDataToFile( fs.readFileSync("/path/to/logo.png"), "logo.pdf", function(err, fileName) { if (err) return console.error("PDFCrowd Error: " + err); console.log("Success: the file was created " + fileName); });
In-memory PNG to PDF file via callback
var pdfcrowd = require("pdfcrowd"); var fs = require("fs"); // Create an API client instance. var client = new pdfcrowd.ImageToPdfClient("demo", "demo"); // use predefined callback for saving to a file var callbacks = pdfcrowd.saveToFile("logo.pdf"); // set custom error callback callbacks.error = function(errMessage, statusCode) { // use predefined helper class for errors const error = new pdfcrowd.Pdfcrowd.Error(errMessage, statusCode); console.error("PDFCrowd Error: " + error); }; // Run the conversion and save the result to a file. client.convertRawData(fs.readFileSync("/path/to/logo.png"), callbacks);
Get info about the current conversion
var pdfcrowd = require("pdfcrowd"); // Create an API client instance. var client = new pdfcrowd.ImageToPdfClient("demo", "demo"); try { // Configure the conversion. client.setDebugLog(true); } catch(why) { // Report the error. console.error("PDFCrowd Error: " + why); process.exit(1); } // Run the conversion and save the result to a file. client.convertFileToFile( "/path/to/logo.png", "logo.pdf", function(err, fileName) { if (err) return console.error("PDFCrowd Error: " + err); console.log("Success: the file was created " + fileName); // print URL pointing to the debug log for this request. console.log("Debug log url: " + client.getDebugLogUrl()); // print number of conversion credits remaining in your account. console.log("Remaining credit count: " + client.getRemainingCreditCount()); // print number of credits consumed for this conversion. console.log("Consumed credit count: " + client.getConsumedCreditCount()); // print unique identifier assigned to this conversion job. console.log("Job id: " + client.getJobId()); // print size of the output data in bytes. console.log("Output size: " + client.getOutputSize()); });
Express.js examples
PNG file to PDF in Express.js
"use strict"; const express = require("express"); const app = express(); const pdfcrowd = require("pdfcrowd"); // The recommended method is POST. app.post("/", (req, res) => { // Create an API client instance. var client = new pdfcrowd.ImageToPdfClient("demo", "demo"); // configure the callback to send a file in the HTTP response var callbacks = pdfcrowd.sendGenericHttpResponse( res, "application/pdf", "logo.pdf", "attachment"); // configure the callback to send an error in the HTTP response callbacks.error = function(errMessage, statusCode) { res.set('Content-Type', 'text/plain'); res.status(statusCode || 400); res.send(errMessage); } // Run the conversion. client.convertFile("/path/to/logo.png", callbacks); }); module.exports = app;
PNG url to PDF in Express.js
"use strict"; const express = require("express"); const app = express(); const pdfcrowd = require("pdfcrowd"); // The recommended method is POST. app.post("/", (req, res) => { // Create an API client instance. var client = new pdfcrowd.ImageToPdfClient("demo", "demo"); // configure the callback to send a file in the HTTP response var callbacks = pdfcrowd.sendGenericHttpResponse( res, "application/pdf", "logo.pdf", "attachment"); // configure the callback to send an error in the HTTP response callbacks.error = function(errMessage, statusCode) { res.set('Content-Type', 'text/plain'); res.status(statusCode || 400); res.send(errMessage); } // Run the conversion. client.convertUrl("https://pdfcrowd.com/static/images/logo.png", callbacks); }); module.exports = app;
In-memory PNG to PDF in Express.js
"use strict"; const express = require("express"); const app = express(); const pdfcrowd = require("pdfcrowd"); var fs = require("fs"); // The recommended method is POST. app.post("/", (req, res) => { // Create an API client instance. var client = new pdfcrowd.ImageToPdfClient("demo", "demo"); // configure the callback to send a file in the HTTP response var callbacks = pdfcrowd.sendGenericHttpResponse( res, "application/pdf", "logo.pdf", "attachment"); // configure the callback to send an error in the HTTP response callbacks.error = function(errMessage, statusCode) { res.set('Content-Type', 'text/plain'); res.status(statusCode || 400); res.send(errMessage); } // Run the conversion. client.convertRawData(fs.readFileSync("/path/to/logo.png"), callbacks); }); module.exports = app;