Effects of Imported Images on Visio File Size
You can quickly create detailed shapes by importing images into Visio. If you don’t have time (or budget!) to make a detailed drawing of that special ThinkPad or iPhone or USB Stick shape that you’ve been craving, you can simply browse for an image, and insert it into Visio!
It’s a fairly simple matter that you can achieve via two ways: Choose the menu: Insert > Picture > From File… or: Copy an image from an image-editor or image-viewing program and paste it into a Visio page. Simple indeed!
But what happens to Visio file sizes when you import images?
Does Visio compress famously-large BMP files on import, or will the .vsd become huge itself? Will we get significant savings by importing JPG or PNG files as opposed to straight-bitmaps?
Well today, we ran a few tests to see what happens!
Process and Summary
In order to test Visio’s handling of imported images, we created a test image, and saved it in three common image formats: BMP, PNG and JPG. We then loaded each image into a Visio 2007 file and noted the increase in file size for each image. Pretty standard stuff.
We also tested what happens when you simply copy and paste an image into Visio.
It looks like Visio does indeed do some compression on the imported images. For bitmaps, you’ll get big savings, which isn’t surprising.
But for PNGs and JPGs, it’s hard to tell what’s really going on. It appears that PNGs and JPGs slightly increase in size inside the Visio document! But we have to remember that Visio is wrapping a shape object around each image, which adds some overhead.
First, we created an empty Visio drawing – a default drawing that we created by clicking the New button on the Standard toolbar:
Then we noted the size of this document:
- Empty .vsd = 11.0 KB
Adding a single rectangle to the document only added 1 KB to the file size. We could guess that 1 KB is the approximate amount of overhead that a shape adds to an imported image, but perhaps the story is more complicated than that.
Next, we created a test image by Snagging a shot of a YouTube page from our browser:
We saved this image to three different file formats, and noted their file sizes:
- YouTube.bmp = 1520 KB
- YouTube.png = 195 KB
- YouTube.jpg = 106 KB
Wow! That bitmap sure is big!
Visio Files With Imported Images
Finally, we loaded the various file formats into our blank Visio drawing, and saved them so as to compare the resulting file sizes. We also “imported” an image by copying it from Internet Explorer, then pasting it in the Visio document.
The file sizes are listed below, with the increase in file size over the empty Visio drawing is shown in parentheses.
- Visio Size Test BMP.vsd = 363 KB (352 KB)
- Visio Size Test PNG.vsd = 257 KB (246 KB)
- Visio Size Test JPG.vsd = 135 KB (124 KB)
- Visio Size Test CopyPaste.vsd = 363 KB (352 KB)
The PNG and JPG files grew by 51 KB and 18 KB respectively. This is quite a bit more than the 1 KB of overhead that a simple rectangle-shape added to the file.
Clearly something is going on! Perhaps Visio’s internal compression algorithm is actually ballooning the size of the files, which are already compressed?
We see this every once in a while when we try to zip files that are in a format that is already compressed. Although I would imagine that technology has progressed over the years and this happens less often nowadays than it did in the past.
Note: The size of the copy-paste file didn’t vary from BMP to PNG to JPG. We’re not sure if that’s because of what Internet Explorer serves up on Copy, or how Visio deals with images on Paste.
Images In Other Apps
We were curious to see how Visio file sizes stacked up to other Office applications, so we ran a similar procedure in Microsoft Word 2007:
- Word Size Test Blank.docx = 0 KB
After importing the various image formats, we had:
- Word Size Test BMP.docx = 213 KB
- Word Size Test PNG.docx = 205 KB
- Word Size Test JPG.docx = 117 KB
And for reference, we remember the original sizes of the image files: bmp = 1520 KB, png = 195 KB, jpg = 106 KB.
The size of an empty Word document is 0 KB, so we didn’t have to do any difference calculations.
But again, the bitmap was significantly reduced, and the PNG and JPG files grew slightly inside of the Word. The increase in size was similar to that of the Visio. But Word seems to handle the images more efficiently. The Visio file-size-increases were more: 352 KB, 246 KB, 124 KB.
Of course a complete test would investigate further. Some things we might look at:
- Different images: lines, text, photos
- Different JPG-compression settings
- Save lots of images in a single file
- Analyze with statistics, look at percentage size increases, etc.
I think the only conclusions we can come away with after these simple tests are:
- Image file size correlates to Visio file size – smaller image formats like JPG will be yield smaller Visio file sizes
- Visio isn’t stupid about potentially huge BMP file format in a stupid way – it compresses them
- Visio doesn’t do anything overly scary to compressed image file formats (ie: your JPGs and PNGs)
- Cutting and pasting is the same as inserting a bitmap
At any rate, computer performance is increasing, and storage costs are decreasing, so there’s nothing to get alarmed about here.
It is nice to know that BMPs get significantly compressed, and it’s also nice to know that your choice of image format has an effect on the resulting Visio file size.
If any of you have expertise or knowledge about this subject, we’d love to hear from you in the Comments section below!