| 123456789101112131415161718192021222324252627282930313233343536373839 |
- // Script to create a PDF from JPEG2000 images.
- // Each image be put on its own page.
- // This script can be used to create files to test JPEG2000 support in PDF viewers.
- var doc = new PDFDocument();
- function addJPXImage(filename, w, h) {
- return doc.addRawStream(
- readFile(filename),
- {
- Type: "XObject",
- Subtype: "Image",
- Width: w,
- Height: h,
- Filter: "JPXDecode"
- }
- );
- }
- function addJPXPage(filename) {
- var image = new Image(filename);
- var w = image.getWidth();
- var h = image.getHeight();
- var mediabox = [0, 0, w, h];
- var resources = { XObject: { I: addJPXImage(filename, w, h) } };
- var contents = "q " + w + " 0 0 " + h + " 0 0 cm /I Do Q";
- doc.insertPage(-1, doc.addPage(mediabox, 0, resources, contents));
- }
- var i, n = scriptArgs.length;
- if (n < 1) {
- print("usage: mutool run jpx-to-pdf.js file.jpx ...");
- quit();
- }
- for (i = 0; i < n; ++i) {
- addJPXPage(scriptArgs[i]);
- }
- doc.save("out.pdf", "ascii,pretty");
|