Seshat 1.7 works on large print files from disk, converts spot colours and finds more in a file
Seshat 1.7 checks and fixes large print files from disk with a third of the memory, converts spot colours to CMYK, keeps photos as JPEG, and finds scripts wherever a PDF hides them.
A catalogue of hundreds of megabytes is an everyday print file. Seshat 1.7 is built for it, and checks more in every file.
Large files
- From disk, not memory. A large file is checked and fixed from disk, step by step. A 440 MB catalogue of 30 photo pages is checked in about 8 seconds, gets its bleed in under a minute and is converted to CMYK in about a minute and a half, all within 3 GB of memory.
- Smaller results. A conversion to CMYK keeps photos as JPEG at their own resolution, so the file does not grow several times its size.
- Preview by link. A page of a file of any size can be previewed by its
file_id. - Never twice. When Seshat stops while working on a file, the answer says so at once; the same heavy work is not started again by itself.
Colour and pages
- Spot colours to CMYK.
convert_cmykconverts spot colours too, unless the order allows them. The registration colour of crop marks stays as it is and is not reported as a spot colour. - White overprint is knocked out however the file sets it; when there is nothing to change, nothing is charged.
- Blank pages added by the
pagesfix get the same boxes as the page before them. - Replacing a font removes the old one from the file once nothing uses it.
Safety
- Scripts anywhere. Scripts and actions are found in form fields, annotations and pages, also when they are written inside them;
clean_upremoves them and reports what it removed. - Not what it says. A ZIP renamed to
.pdfis refused, like a program renamed to.pdf. - The result's safety. A fix answer reports the safety of the file it made: after
clean_up, the file is clean. - Never unchecked. When a file cannot be inspected for safety, it is not taken; sending it again checks it.
Nothing changes in your code. Use rekhu/core 0.9.1 for Laravel or @rekhu/core 0.9.1 for Node.js; the details are in the docs.