Reduce PDF with QuartzFilter
Reduce PDF with QuartzFilter
- Subject: Reduce PDF with QuartzFilter
- From: Leonardo <email@hidden>
- Date: Fri, 28 Feb 2014 01:05:15 +0100
- Thread-topic: Reduce PDF with QuartzFilter
In the past I successfully created and used QuartzFilter from within my
Cocoa app for OS X and saved pdf files. But now it seems that I am missing
something.
I have just created 2 filters with ColorSync Utility, one with
ImageJPEGCompress Compression Quality 1 (MinComp.qfilter) and one with
ImageJPEGCompress Compression Quality -1 (MaxComp.qfilter).
If I use them from within the application Preview, they work well.
I get a 146KB file and a 1.5MB file.
Now I use the filters from within my app, this way:
filePath = [myBundle pathForResource:@"MinComp" ofType:@"qfilter"];
filterDict = [NSMutableDictionary dictionaryWithContentsOfFile:filePath];
filter = [[QuartzFilterManager filterManager] importFilter:filterDict];
options = [NSDictionary dictionaryWithObject:filter forKey:@"QuartzFilter"];
saved = [pdfDoc pdfPath withOptions:options];
I save 2 pdf files containing the same image I used in the app Preview (see
above), one using the min filter, and one using the max filter
The 2 PDF have the same byte size: 2.3MB. And I can't found the bug.
I work with Xcode 5 and OS X 10.8.5. Target: OS X 10.8.
I have linked the libs: Quartz.framework, QuartzCore.framework,
AppKit.framework...
That's my MaxComp filter. Above it's my code. What do I miss?
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"
"http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Domains</key>
<dict>
<key>Applications</key>
<true/>
<key>Printing</key>
<true/>
</dict>
<key>FilterData</key>
<dict>
<key>ColorSettings</key>
<dict>
<key>ImageSettings</key>
<dict>
<key>Compression Quality</key>
<real>-1</real>
<key>ImageCompression</key>
<string>ImageJPEGCompress</string>
<key>ImageScaleSettings</key>
<dict>
<key>ImageResolution</key>
<integer>300</integer>
<key>ImageScaleFactor</key>
<real>0.0</real>
<key>ImageScaleInterpolate</key>
<integer>2</integer>
<key>ImageSizeMax</key>
<integer>0</integer>
<key>ImageSizeMin</key>
<integer>0</integer>
</dict>
</dict>
</dict>
<key>PDF/X-3 Settings</key>
<dict>
<key>AddBleedBox</key>
<true/>
<key>AddTrimBox</key>
<true/>
<key>FlattenTransparency</key>
<true/>
<key>FlattenTransparencyResolution</key>
<array>
<real>300.0</real>
<real>300.0</real>
</array>
<key>Info</key>
<string></string>
<key>OutputCondition</key>
<string>CGATS TR 001 SWOP</string>
<key>OutputConditionIdentifier</key>
<string>CGATS TR 001</string>
<key>RegistryName</key>
<string>http://www.color.org</string>
<key>Trapped</key>
<true/>
</dict>
</dict>
<key>FilterType</key>
<integer>1</integer>
<key>Name</key>
<string>MaxComp</string>
</dict>
</plist>
Regards
-- Leonardo
_______________________________________________
Cocoa-dev mailing list (email@hidden)
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden