Panic

Panic Blog

From the desk of
Neven
Engineering Dept.

ShrinkIt 1.1

Update: ShrinkIt 1.3 is now available over here.

Is your application larger than necessary because of needless data stored in image resources? What is making your PDFs four times the size they ought to be? More on this shocking discovery at 11!

(It’s 11.) Being a responsible and forward-thinking developer, you’re probably good and ready for the day Mac OS X supports resolution independence – lol – so you use multilayer TIFFs and PDFs instead of flat bitmap images whenever possible.

Try this: get the file size of one of those Adobe Illustrator®-produced PDFs. Now open it in Preview and resave it. Notice anything? Once a PDF has gone though Apple’s PDF processing, it’s way, way smaller.

We sure noticed this, and it bugged us. A lot. What was all this extra crud? Will started digging into the files and brother, you won’t believe what he found. Swatches, patterns, preview bitmaps, all sort of metadata; even though we’d specifically turned off all the extra options when saving from Illustrator: Preserve Illustrator Editing Capabilities, Embed Page Thumbnails, etc.

We could have re-saved all our PDFs in Preview, but why not make it totally batch-y? Thanks to Will, we present:

ShrinkIt

ShrinkIt

Update: ShrinkIt 1.3 is now available over here.

ShrinkIt is a simple, small, Panic-internal tool (for Mac OS X Snow Leopard) that will automate the process of stripping needless metadata from PDFs by re-saving them using Apple’s PDF processor. For app resources and icons that aren’t using high-end Illustrator features, this should be lossless — Apple’s PDF code is not compressing anything, just removing cruft. Simply drop a bunch of files (not folders) onto it — such as the contents of your app’s Resources folder — to have it find the PDFs and do its magic. The original files will be renamed with the prefix “_org_” for backup safety. That’s it!

We’ve seen it shave 4 megabytes off an app bundle. Hopefully it’ll shave you as well. Oo-er.

Update: ShrinkIt is intended for simple vector resource PDF’s that have more Illustrator cruft than vector data. It may not work well for complex bitmap-heavy or press-ready PDF’s.

Posted at 11:39 am 120 Comments

Greg Gamel

2/16/2010 11:43 AM

Thanks! This will be fantastic, to be sure.

Sebastiaan

2/16/2010 11:47 AM

Awesome guys!

Eric Peacock

2/16/2010 11:52 AM

Thanks for providing this!

I’ve spent most of the past ten years learning to build optimized files of all types, Illustrator included and I’ve been irked by this too. I even have actions bound to keyboard shortcuts that nuke all unused AI cruft – which is still too manual for my tastes.

Seems like it’s gonna rock, can’t wait to try…

yes. and THANKS!

Harry Harrison

2/16/2010 11:54 AM

Awesome work, as always! :)

Is this Snow Leopard-only? It won’t run on my 10.5 machine.

Awesome.

Tiago Pinto

2/16/2010 11:57 AM

Awesome. Yesterday just went through that tedious process again: opening 7 PDFs on Preview and saving them again.
Thanks Will. Thanks Panic!

awesome stuff!

(i think)

is this snow leopard only or is there something funky going on on my machine?

Joshua, Scott: ShrinkIt is indeed built for Snow Leopard. It’s the future! :)

Handy tip: Just do a Finder search for PDF in your target folder. Drag those files over to Shrinkit. Done!

Oh, this is great! Thank you guys!!! I’m going to try it now!!!

Maybe the shrinking works for small PDF files. Mine (1-5 MB, made in AI) are still the same size after going through Shrinkit.

Martin Reisch

2/16/2010 12:33 PM

would it be possible to save this as a SnowLeopard – System SERVICE in order to right-click-apply to batch of selected FINDER items?

Neven: Got it! In the future (ie. when I’m at home this evening) I’ll grab a copy for my SL machine. ;)

Raymond Drainville

2/16/2010 12:54 PM

Wow, that’s amazing. I just reduced a PDF I generated today from 279KB to 33KB. My broadband supplier will thank you, as do I :)

Just to point out, however, trying to edit the shrunken PDF in Illustrator isn’t straightforward. It’s really meant as a post-processing tool.

Great job, guys. One suggestion — allow us to drag a .pdf to the application icon to open it with Shrinkit.

Oh I didn’t know that metadatas use so much kbs. What about saving UI images from Photoshop? Can they be even smaller than normal?

Jennifer Farley

2/16/2010 1:22 PM

Sounds brilliant, thank you very much!

kc! Bradshaw

2/16/2010 1:28 PM

The thoughtfulness at Panic continues to astound me. Thank you so much. (and if you ever need to add some graphic design talent to your staff… I would be honored with the opportunity! :)

Art Delano

2/16/2010 1:34 PM

This is fantastic.

Note that it enlargifies some PDF files in my tests (71kb to 176kb for one of them) – I can provide the before and after files if you want to see.

Jonathan Bloom

2/16/2010 2:01 PM

Is this for PDFs only?

This app looks amazing and it looks like it will save A LOT of storage. I’m looking forward to using this!

Jeremy Fuksa: Creative Generalist

2/16/2010 2:37 PM

Snow Leopard is indeed the future… once my company’s IT department supports it and rolls it out. :)

Until then, I eagerly await shrinkage. That sounds weird, but I’ll stick by it.

Yay for shrinkage! Thank you for this, Will, Panic.

Yeah! Thanks for this SUPERB tool!!

If you’re looking for something similar for PNGs and JPEGs you should try ImageOptim. It runs the files through a bunch of open source programs that do lossless compression. It’s a brute-force process, so it might take a few minutes on big files, but the results can be pretty spectacular.

http://imageoptim.pornel.net/

First of all, thanks for such a great utility.

I use Preview.app almost every day for my PDF workflow. Although it makes PDFs smaller in size, it is a lossy process.

But something interesting happened when I dropped one PDF eBook on ShrinkIt with file size of 39 MB (39,044,829 bytes). After processing it, the file got bigger at 40.9 MB (40,934,120 bytes). The eBook was created with Adobe InDesign CS2 4.0.4 (Adobe PDF Library 7.0).

Have you experienced the same thing with certain PDFs? Why is this happening?

Doesn’t work so well on image pdfs (created by bridge) either. Makes em bigger (just like Tzar said).

A check to see if the resulting file is bigger would be nice, a la “can’t shrink it anymore, tough luck eh”

Cool tool. I expect to put it to some use, but as some others have said, sometimes it makes files bigger than they were to start with, so a check to see if it can actually make things smaller would be finishing touch I think.

I managed to get a 16MB file down to 6MB

WOW! It really works. That has just made a “too big to email PDF” into a “that was easy PDF”

I love you guys!

LOL. I just processed a folder with 68 pdf@1.2 GB, ended up with 68 pdf@1.39 GB. I don’t know what’s up with that…

Bruce: ShrinkIt seems to not work well with large, bitmap heavy PDF’s. It’s really intended for smaller vector-based resource files. I’ll update the post to make it clear!

Please don’t take my comment above as negative criticism- it’s free, after all. I think you guys at Panic are great.

Thanks for developing this app! I create a lot of PDFs in Illustrator and this will really help. BTW, I’ve been a Transmit user for over a year and love it.

Thanks, guys–great site design, too!

Please do make it clear, somewhere near the top of the page, that this is Intel, Snow Leopard only. Thanks!

I’ve been using the “save from preview” trick for years. I thought I was the only one! I even have Acrobat authoring program, and Preview works way better and more intuitive. Unfortunately, I don’t use Snow Leopard for a variety of reasons. I sure hope Panic develops this for Leopard….

I have to agree with Manu. I will not use Snow Leopard for a number of reasons, including hardware compatibility with my older printers (which work GREAT). I don’t see what Leopard is abandoned. Please consider making a Leopard version to help share great programs like this with a much wider audience.

I notice that plain text (no graphics) PDF files grow considerably as I annotate them with simple highlighting in Preview, easily doubling or tripling in size. Will this have any effect on that phenomenon?

Khalid: We’re basically running PDF’s through the same engine Preview uses, so chances are slim that ShrinkIt will help. :)

Bill: As ShrinkIt is a simple internal tool, and we’re all on 10.6, we’re unlikely to make a 10.5 version soon, but your vote is recorded!

Mike Spurgeon

2/17/2010 9:03 PM

ShrinkIt 1.1 Copyright 1990-1992 by Andy Nicholas and Dave Lyons Name: ShrinkIt Version: … Note: This software is freely distributeable and is not an Apple product. …
mirrors.apple2.org.za/…/ShrinkIt1.1_Info.txt – Cached

I’d love to see this app be applicable to images files (if it isn’t already). Great job!

The first thing I was wondering was if this was a Mac version of the Apple II file compression program “ShrinkIt” (which was widely used for many years)? No, it isn’t, so I’d have to vote that you guys should perhaps consider another name… Sure, maybe only 3 other people will feel that way, but there you go.

you are great!

Change the name — there is already a program called ShrinkIt for the Mac (and Apple II) that is a general compression program.

CyberSkull

2/18/2010 5:59 AM

Looks like a great tool, I would recommend it to people I know that do a lot with PDFs.

Are the APIs it uses 10.6 only? I would love a 10.5 version if you could. :D

This is pretty awesome, any chance we will see a version for your Red-Headed Stepchildren running Windows?

Tryed…just fantastic!!!

This program works GREAT! An idea for an upgrade would be to recursively process folders. I would love to drop my “clients” folder onto ShrinkIt and have it shrink all the statements for all my clients… :-)

Ok, does this app make another copy called org_ ?? What should i do with the org_ version? Does the new “last opened ” date indicate that the file has been read and shrunk? A read me file might help answer some Questions.

Jay: We’re glad you’re happy with the app! Keep in mind: we made ShrinkIt to reduce the file size of icons used in our applications, and other images where we just need the vector data. ShrinkIt is probably not the best way to compress your PDFs intended for printing – we simply haven’t tested it for that use! That said, we hope it works for you. Keep those backups handy! :)

cowhide: Consider the above post the official readme file for ShrinkIt :) I believe it says: The original files will be renamed with the prefix “_org_” for backup safety.

Thanks

This thing is routinely shaving 12 mb off my illustrator pdf’s – INCREDIBLE thank you so much!

William Pearson

2/18/2010 1:12 PM

Looks awesome, I’ll be using this for sure!

Andrew Beckman

2/18/2010 3:12 PM

Doesn’t reduce the size of images one scans in and saves in PDF format.

Andrew: We wrote this tool to help us with vector art created in Adobe Illustrator. That’s all we intended it to do, and all we were interested in! :)

Peter Breis

2/18/2010 6:43 PM

I can I thank you enough. I have done this thankless task thousands of times in Preview. I tried to unsuccessfully script/automate it.

May I suggest one added feature? Quartz’s pdf filter is low level and not suitable for anything with gradients or meshes. It is perfect for .pdfs with flat color and strokes. Everything else should be saved as compressed .ai files with pdf embedded.

Would it be possible for it to detect the simpler files, compress those, otherwise move them into a separate folder and workflow to be handled by Illustrator? That I’d be happy to pay for!

btw I can not see why this has to strictly be for Snow Leopard. SL hasn’t changed anything to do with the Quartz filters to my knowledge.

Peter Breis

2/18/2010 6:56 PM

2nd Bite: :)

Could we please have a version that converts .eps files? The Quartz filters really crush those down!

Thanks!

Darn, no Leopard support…

My iMac G5 cries. :(

“Give someone a kiss everyday for a year, forget one day, what do you think they’ll remember?”

To those complaining, shut up… Or ask for a refun… Oh wait, it’s free.

-Aviv

Before I just try it–and risk screwing up my sorting system–would this work?:
1) Use OS X’s Find to find all the PDF’s in my account.
2) Drag all the files from the search result’s window onto Shrinkit.
3) All the PDFs that can get shrunk get shrunk and properly re-saved in their own original folders, along with the re-named originals.

(Hm. I think I failed at “Be awesome.”)

Mattt: Yes, you could do that, but I really wouldn’t. ;) ShrinkIt isn’t intended to shrink every PDF in the universe — it’s really designed for developer resources. It’s best to do this on a case-by-case basis, when you need a PDF to be smaller for a specific reason.

Brilliant! Simple sweet and very useful.

Wait, what, wow! holy cow! .. finally an OS X version of ShrinkIt!

Oh. Damn.

It’s like PDF Shrink, but only Shrinkit!

Well, I tried to test-drive ShrinkIt on my downloads folder before feeding it my documents/papers folders (especially since 1.1 apparently can only compress or do nothing, not expand the size of existing PDFs) and I’ve encountered at least one major issue: the folder contains 83 files for a total of 321Mb, when feeding them to ShrinkIt (select everything, drop into ShrinkIt), ShrinkIt switches to “processing” mode, about a minute later I have a dozen or two _org_-prefixed files cluttering my folder (I’m guessing they’re supposed to be the copies being compressed) and shrinkit has switched back to “drop pdf files to shrink” mode, apparently not doing any compression anymore. Are you using blocks & GCD to launch the compressions? Because the dozens of files quite sound like IO makes the CPU drop under 100%, so more blocks are run, which read/write more files, which…

Also, would there be any possibility of getting, say, a listing of files done & being processed, and a recap of the compression gains? Something similar to what PNGSquash (http://github.com/msanders/PNGSquash), an application with a very similar purpose and pretty much the same interface (except for PNGs, not PDFs) provides.

masklinn: Two notes –

1. We don’t recommend running ShrinkIt on your PDF scans, forms, and other documents; it’s intended for use with application resources, so that’s what it’s optimized for.
2. As explained above, ShrinkIt will save the original files and prefix them with _org_ – for safety and good health!

> We don’t recommend running ShrinkIt on your PDF scans, forms, and other documents; it’s intended for use with application resources, so that’s what it’s optimized for.

Well yeah but doesn’t mean I can’t try does it? Even shaving a byte or two is nice.

> As explained above, ShrinkIt will save the original files and prefix them with _org_ – for safety and good health!

Oh, so it saves the original prefixing it with _org_ and compresses *the other one*? That’s kind-of a weird setup.

masklinn: In our case, we can select all the _org_-prefixed files and delete them; otherwise we’d have to rename all the resources :)

Is source code available? I’d love to integrate it with ImageOptim.

^ i’d LOVE to see it integrated with ImageOptim!

I always thought there is something wrong with those illu-files…
Thanks a LOT.

In my experience, Preview almost ever time increased the size of vector PDFs created with ghostview. Bitmap PDFs increase in size as well. I will try this app, but I’m skeptical, since the problem comes from the pdf engine in Mac OS X.

Any chance of adding the ability to shrink password-protected PDFs? (which you already know the password for). Currently, it just quietly makes a zero-byte file.

Hey Guys, i just read the review on macworld, btw thx men creating such an awesome program, it is raising my time efficiency when deals with PDF with this software.

Here’s a Hell-Yeah glad to be your customer woot!

Despite the warnings, I tried it on a InDesign(CS4)-generated PDF and went from 1.4mb to 303kb, with no apparent loss of detail or quality. That’s pretty awesome. thanks!

Im now using it on the iMac, but I would totally love to use it on my PowerBook G4, and there’s no chance of 10.6 for it, so if it could work on 10.5 it would be awesome.

I can’t get this to work at all.

Mac G3, running the latest version of OS9…

Cool stuff. I notice that once I’ve run my PDF (from InDesign) though this app, I can’t copy and paste most of the text out of it anymore. I just get stuff like this: “␣␣␣␣␣␣␣␣␣␣.” Weird. It seems to depend on the font. Copying the same text out of the same PDF pre-ShrinIt works fine. Expected?

Works great on a mapping project we have – about a 60% to 70% reduction in file size AND conversion to PDF/X-3 so it goes through a rip properly. Absolutely bloody fantastic! This I’ve been needing. Thank you for freeing it to the world!

Jonathan F

3/16/2010 7:53 PM

Hey, something to add to this that might be extra cool to incorporate that would take the size down further…

http://meyerweb.com/eric/thoughts/2010/02/25/better-pdf-file-size-reduction-in-os-x/

Now this is just a filter, but the quality didn’t decrease too badly on a PDF I had that was 11MB and it shrunk to about 3.5MB… Have a peek.

wimba anenggata

4/10/2010 6:50 AM

Nice and very very helpful app.
Love it. Thanks and namaste.

Regards from Bali

mario Borg

4/27/2010 1:39 PM

Fantastic work!!
keep it up guys i adore your apps!

I’ve dropped many large PDF documents on ShrinkIt 1.1. They end up the same size as the original. Why?

Bob: It all depends on the PDF files. As explained above, ShrinkIt was designed to remove the redundancies found in vector-art files saved from Adobe Illustrator. Depending on what your PDF files contain and how they were created, those redundancies may or may not be there to remove.

First file tested… 39mb reduced to 2mb. Awesome!

Jennifer Davis

5/25/2010 9:25 PM

This is wonderful! Thank you.

Webstandard-Blog

6/7/2010 5:47 AM

Grat job and awesome reduction. Thx for sharing it!

I’m using this to process many thousands of PDF files generated by our analytics team and eating up space on our common drives. Playing around, I found that while I save about 80% of the originals space (translates to about 300 gigs of space in my case) there are a few things that would make this product better suited for large batch encoding:

– Give the user the option to select a destination directory for the output. Walk the directory tree of an input directory and replicate it on the other side, with shrunken files.
– Give the user the option to just go ahead and overwrite the original files with the shrunken ones.
– Give the user the option to retain the original creation/modification date of the input PDFs.

Really cool little applet guys, keep up the good work.

Hou can i remove shrinkit?

Any chance you could build this as a UB so it works on PPC. I am still G5in it. ;)

Nata Lase

6/19/2010 7:04 AM

Sangat berguna sekali !

I ran into a strange bug. I exported from InDesign CS4 > PDF (v5) > ShrinkIt 1.1. It reduced the size by 50%, but when I sent it the resulting file to someone using Adobe Reader on Windows, all the text appeared as dots instead of the embedded font. I subsequently sent the original file and it had retained the embedded fonts and looked fine. Anyone else encounter this?

YAY! I’m Panicking =)

Mathias Bynens

9/10/2010 3:02 AM

*The original files will be renamed with the prefix “_org_” for backup safety.*

Any chance of making this optional? It’s really annoying having to delete all the original files every time I use ShrinkIt.

Also, it would be lovely if this could be included in ImageOptim. Any chance of a Panic/Pornelski cooperation? :)

James Gill

9/21/2010 9:33 AM

This has saved me many hundreds of MBs already. Thanks a ton you guys!

same problem as Eric: I ran into a strange bug. I exported from InDesign CS4 > PDF (v5) > ShrinkIt 1.1. It reduced the size by 50%, but when I sent it the resulting file to someone using Adobe Reader on Windows, all the text appeared as dots instead of the embedded font. I subsequently sent the original file and it had retained the embedded fonts and looked fine. Anyone else encounter this?

fellowweb

1/23/2011 1:02 PM

Hi there! Thank you for this great and helpful tool!

Could you consider complementing ShrinkIt by the image compression feature of the “Compress PDF” workflow? http://skycoast.us/pscott/software/mac

It would also be great to launch ShrinkIt as a service right from a file’s context menu. Is this possible?

Thank you so much for publishing this great tool!

I’ve loved this while on Leopard, but my new Mac will be coming with Lion. What about ShrinkIt with OSX-Lion (10.7)?

Richard Hallas

1/30/2012 8:42 AM

Thanks for this really handy utility! I’ve found it extremely useful ever since you first released it, and continue to use it a lot. I’d like to put in a small request for version 1.2, though, if I may…

The ability to drag to the Dock icon in v1.1 is a really useful improvement, but there’s a further refinement that could make it even better. Basically, I’d like it to auto-quit after processing, *if* something was dragged to its icon and it wasn’t already running.

I’ve got my copy handily set up in Overflow (launch utility from Stunt Software), and the new v1.1 lets me do something I’ve wanted for a while: start dragging a PDF file, open Overflow, and drop the PDF on the ShrinkIt icon in Overflow to process it without the need to launch ShrinkIt separately first. That’s great… except that, when the processing is done, I’m left with a window with a big green tick in the middle of my screen, and have to quit ShrinkIt manually. What I’d like is for it to auto-quit after it’s finished processing the selection I’ve given it.

NB This facility would also make ShrinkIt a much more useful tool to plonk in Finder window toolbars. You’d be able to just drag files from a Finder window to an icon on the toolbar of the same window and have ShrinkIt do the processing ‘invisibly’, with no need to launch or quit it directly.

Fingers crossed that you’ll consider this a useful suggestion… and thanks again.

This doesn’t seem to work for me? i drag my file in and it processes it and gives it back exactly the same size? can any1 help?

Axel Garcia Henriksson

2/13/2012 12:42 AM

This is wonderful! And not only for what it is made for. It works for pdfs made in other programs, that in themselves contains files made in Illustrator. I have had problems making a small pdf for the web of a map-heavy newsletter. From 2,9 to 2,0 MB, that’s a big difference in the user’s download times. Thank you thank you thank you!

Hallelujah!! Thanks, great job!

Very good program! A pdf containing a bitmap has been reduced by almost 50%.

Calvin Hendryx-Parker

3/27/2012 8:01 AM

I see that you can run this from the command line by just passing the PDF file to the `/Applications/ShrinkIt.app/Contents/MacOS/ShrinkIt` binary, but it still launches the GUI to show the success icon. Is it possible to have it run in a quiet or batch mode and not launch the GUI?

I am using Windows 7, what do i do now since the application seems to be for only MacOS?
Please is there any version for Windows 7 or XP?????
Help me

THANK YOU! :)

I just wanted to say thank you. I needed to reduce the file size of my architecture portfolio to email to a potential employer. I went through the usual file reduction methods with adobe and tried searching for other options. All hope seemed lost and after a little freaking out and some panic attacks, I found shrinkit. I reduced my portfolio size from 140mb to 20mb. You guys are awesome.

Jon Roobottom

7/19/2012 4:20 AM

Thank you, thank you, thank you! This is wonderful!

Svartvatten

10/13/2012 8:18 AM

Just scanned 4 magazine page, each page is a jpg-file, about 3 mb. Put them together with preview.app and ‘print’ them as one 4 pages PDF document. This pdf is 67 mb !

After using Shrink the PDF file is still 67 MB ( ! )

How to make smaller PDF files from a bunch of JPG’s ?

please upgrade for Mountain Lion. great tool !

Hey, everyone, Could you please help?

After Shrink, I could not find the shrinker file :(

Love it love it love it! Thanks!

mark baylis

6/11/2013 5:00 AM

its complete rubbish… it processed files and made no reduction at all !!

Camilo M.

12/16/2013 8:25 AM

Your application did not compress my file at all. And now, my computer tells me that my original file is corrupted and can’t open it. It was a waste of time for me.

Panic! Panic! Panic!

it doesn’t work guys!
Ps. when is the update of Coda2 coming ?? it keeps on crashing when I close a connection ….

Foamy Media

7/8/2014 7:07 AM

used shrink it to compress my pdfs – they doubled in size!
well done!