Skip to content

NodeJS module that takes a PDF document and returns the amount of pages in it.

Notifications You must be signed in to change notification settings

pavithraprbd/pdf_page_count

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

pdf_page_count.js

Install: npm install pdf_page_count

This project uses ghostscript, but there's no need to install it (if you use windows). If you want the module to use a local installation of ghostscript, set the option useLocalGhostscript true.

Tested on Windows/Tested on AZURE

Not tested on linux! If you want to use it with linux, you may replace the ghostscript-executable with something that works with linux. Or you install ghostscript for linux. http://www.ghostscript.com/

here are some examples how to use it:

// test with pdf with one page
pdfPageCount.count(__dirname + "/example_with_one_page.pdf", function(resp){
	if(!resp.success)
	{
		console.log("Something went wrong: " + resp.error);
		
		return;
	}
	
	if(resp.data == 1) console.log("Yayy, test with one page works!");
	else console.log("Oh no..tool says the PDF has " + res.data + " pages, but it should say it has one page!");
});

// ..you can also give the function raw data
var file = fs.readFileSync(__dirname + "/example_with_one_page.pdf");

pdfPageCount.count(file, function(resp){
	if(!resp.success)
	{
		console.log("Something went wrong: " + resp.error);
		
		return;
	}
	
	if(resp.data == 1) console.log("Yayy, test with one page and giving raw data works!");
	else console.log("Oh no..tool says the PDF has " + res.data + " pages, but it should say it has one page!");
});

// ..or you give a web url, also possible (should be a http, not a https)
pdfPageCount.count("http://blablabla.com/blablabla.pdf", function(resp){
	if(!resp.success)
	{
		console.log("Something went wrong: " + resp.error);
		
		return;
	}
	
	if(resp.data == 1) console.log("Yayy, test with one page and giving raw data works!");
	else console.log("Oh no..tool says the PDF has " + res.data + " pages, but it should say it has one page!");
});

If an error like this appears: Something went wrong: Error converting pdf to png: Error: Command failed: 'gs' is not recognized as an internal or external command, operable program or batch file.

Maybe you have the node file you execute in a subfolder and Pdf2Png doesn't set the path to ghostscript correctly anymore. You can rewrite the path to the executable by setting "pdf2png.ghostscriptPath". Look at the following example of a script, being in the subfolder /lib. It first detects the project-root folder and then builds the absolute path to the ghostscript folder.

var projectPath = __dirname.split("\\");
projectPath.pop();
projectPath = projectPath.join("\\");

var gsPath = projectPath + "\\executables\\ghostScript";

// Rewrite the ghostscript path
pdf2png.ghostscriptPath = gsPath;

About

NodeJS module that takes a PDF document and returns the amount of pages in it.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 100.0%