@lpgroup/ghostscript v1.4.6
ghostscript
Flatten and optimize PDF with shell command Ghostscript gsx
.
Install
The npm module requires shell command Ghostscript to be installed on the machine.
# OSX
brew install ghostscript
# Alpine
apk update
apk add imagemagick ghostscript-fonts ghostscript
# Debian/ubuntu
apt-get update
apt-get install ghostscript
Installation of the npm
npm install @lpgroup/ghostscript
Example
const { readfilesync, writeFile } = require("fs");
const { resolve } = require("path");
const { optimize } = require("@lpgroup/ghostscript");
const fileIn = resolve("./test/flytt_uppdrag.pdf");
const fileOut = resolve("./test/flytt_uppdrag_optimized.pdf");
const input = readfilesync(fileIn);
optimize({ input }).then((output) => {
writeFile(fileOut, output, "binary");
});
API
env DEBUG
This package uses the debug npm. Debug messages are printed to stdout if the follwoing is set.
export DEBUG=ghostscript
optimize({options})
Following are all values that can be used in options and the default values that are used if none is entered.
optimize({
input,
compressFonts: true,
embedAllFonts: true,
subsetFonts: true,
dpi: 300,
colorConversionStrategy: "RGB",
});
Raw shell command
Below is the shell command executed by node, if you'd like to optimize it further yourself. Credit goes to Matt DesLauriers and the repo http://github.com/mattdesl/gsx-pdf-optimize
Removed according to https://stackoverflow.com/questions/49686527/ghostscritpt-converted-file-not-view-able-in-adobe-reader -dPDFSETTINGS=/screen -dCompatibilityLevel=1.5
cat test/large-file.pdf | \
gsx -sDEVICE=pdfwrite \
-dNOPAUSE \
-dQUIET \
-dBATCH \
-dSubsetFonts=true \
-dCompressFonts=true \
-dEmbedAllFonts=true \
-sOutputFile=- - > flytt_uppdrag_optimized.pdf
Contribute
See contribute
License
MIT - See licence
16 days ago
16 days ago
16 days ago
1 month ago
1 month ago
1 month ago
1 month ago
1 month ago
2 months ago
3 months ago
3 months ago
3 months ago
4 months ago
4 months ago
5 months ago
6 months ago
5 months ago
8 months ago
9 months ago
9 months ago
7 months ago
7 months ago
7 months ago
8 months ago
7 months ago
8 months ago
8 months ago
8 months ago
6 months ago
7 months ago
7 months ago
7 months ago
12 months ago
12 months ago
11 months ago
12 months ago
12 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago