Improve PowerPoint's GIF, BMP, PNG, JPG export resolution
You're here because you want to export higher resolution/better quality images from PowerPoint.
There are three main ways of getting there:
- For the intrepid: edit the Windows Registry
- Do it yourself with VBA
- The PPTools ImageExporter add-in does it all for you
Exporting from PowerPoint to other file types
To export your PowerPoint slides to other file types (BMP, WMF, JPG, PNG, etc)
- Open your presentation and choose Save As from the File menu.
- In the Save As Type dropdown listbox, choose the file type you want to save.
- Give the file a name and click OK.
- PowerPoint asks whether you want to export just the current slide or your entire presentation. The question is worded a little oddly, so read the message carefully before clicking Yes or No.
When you save the entire presentation rather than a single slide, it uses the name you give it, makes a folder of that name, then creates the exported files in that folder, giving them names like Slide1.jpg, Slide2.jpg and so on.
Increase the resolution/quality of bitmaps from PowerPoint
The RnR PPTools Image Exporter add-in for PowerPoint gives you complete control over the resolution, destination, filenames and format of bitmaps you export from PowerPoint. It also gives you better quality images than you can get from PowerPoint in most cases.
Increase the resolution of your exported bitmaps without an add-in
When PowerPoint exports bitmap files, it uses the current Slide Page Size to determine the resolution (ie, number of pixels) in the files it makes. Here's the formula:
Image-width-In-Pixels = Slide-width-In-Inches x Magic-DPI-Number
What's the Magic-DPI-Number? That depends on the version of PowerPoint, your Windows video settings and in some cases, registry settings. To learn the Magic-DPI-Number for your setup:
- Start a new presentation.
- Check your Page Setup. Make sure that the presentation's set to 10" x 7.5" slide size.
- Choose File, Save As; select JPG in Files of Type, give the file a name and save.
- When asked, choose Current Slide Only.
- Right-click the saved JPG and choose Properties from the pop-up menu then click the Details tab. There you'll find the dimensions of the image in pixels. Ignore any DPI information you see there.
- Divide the image width in pixels by 10 to get the Magic-DPI-Number for this particular PowerPoint setup.
Concerning the Magic Number, here are a few rules of thumb in case you don't have access to the system you're supporting:
- For PPT97, the Magic DPI Number is 96 if your video is set to Small Fonts, 120 if Large Fonts.
- For PPT 2000 and 2002, the Magic DPI Number is 72.
- For PPT 2003, the Magic DPI Number seems to wander from 80 to 96, perhaps depending on the service pack you have installed.
- For PowerPoint 2007, the Magic Number is back to 96, 120 or whatever your Windows video display resolution is set to. But for PowerPoint 2007 with Service Pack 1, if you use the registry setting above, you'll get higher resoluton images, but they'll be corrupted. Apply Service Pack 2 and the problem is solved.
- For PowerPoint 2010, see PowerPoint 2007, only skip the part about the bugs and service pack. PPT 2010's ok.
- For PowerPoint 2016 and 2013, see PowerPoint 2010. Note that early versions of 2013 has a problem: It exports images at the default resolution then upsamples them to any requested higher resolution, giving you pretty much trash. This is fixed in Service Pack 1 though.
- The answer to Life, The Universe and Everything is, of course, 42, but that has no relevance here.
That's the default -- how to change it?
To get higher resolution but bitmap exports, choose File, Page Setup (or File, Slide Setup) and increase the size of your Slide page. Keep the new size proportional to the old, please, or you'll distort your graphics, set text boxes to wandering randomly around the page and so on. We don't want that.
A little Registry Magic
If you have PowerPoint 2003 or higher, you can change the Windows registry to change resolutions. Not recommended for the faint of heart. Or anyone else. But here's the deal if you want to try (if the following doesn't make any sense, it might be better not to mess with the registry):
- Quit PowerPoint if it's running
- Start REGEDIT
- Navigate to HKEY_CURRENT_USER\Software\Microsoft\Office\X.0\PowerPoint\Options
(For X> above, substitute 16.0 for PowerPoint 2016, 15.0 for PowerPoint 2013, 14.0 for PowerPoint 2010, 12.0 for PowerPoint 2007 and 11.0 for PowerPoint 2003.
- Add a new DWORD value named ExportBitmapResolution and set its DECIMAL value to the DPI value you want
(for example, for a 3000 pixel image from a 10" wide slide, you'd enter 300)
- Close REGEDIT, start PowerPoint and test.
HOWEVER, text in images exported by PowerPoint 2002, 2003 and 2007 usually looks shabby no matter what resolution you choose. Microsoft let this go for three generations without a fix, so we assumed they didn't care. We do. We've solved the problem in PPTools ImageExporter.
OR ... if you use PowerPoint Mac
- Choose File, Save As.
- In the SAVE dialog box click the OPTIONS button
- Under SAVE SLIDES AS GRAPHICS FILES choose:
- Save current slide only
- Set to 96 dots per inch
- Uncheck Compress graphics files
- Click OK
- Toggle FORMAT popdown to JPEG or PNG then click SAVE
A kinder, gentler way ...
The PPTools Image Exporter add-in lets you decide
- Where images are saved
- How they're named
- What range of slides to export
- What resolution to export them to
No registry fiddles, no slide size changes, just set a few options and go, and all for less than 30 bucks.
OR ... if you're of the DIY persuasion, here's some VBA you can use to do the job yourself:
DIY with VBA
Option Explicit ' These items govern the export format and resolution ' Edit them as needed ' If you use a Mac, substitute colons for backslashes as path separators ' What image format is desired? Const ExportFormat As String = "JPG" ' change to "PNG" or whatever's needed ' Image width and height ' Make sure they're proportional to the slide's dimensions Const ExportWidth As Long = 2048 Const ExportHeight As Long = 1234 ' In what folder should we put the images? ' MUST end with a \ character Const ExportFolder As String = "C:\Temp\" ' What should we name the images? ' Slide number will be appended to this base name Const BaseName As String = "Slide_" Sub ExportSlides() Dim oSl As Slide For Each oSl In ActivePresentation.Slides oSl.Export ExportFolder & BaseName & Format(oSl.SlideIndex, "0000") _ & "." & ExportFormat, _ ExportFormat, ExportWidth, ExportHeight Next ' Slide End Sub
As mentioned earlier, there's a little problem with early releases of PowerPoint 2013. No matter what resolution you request, it exports the images at the default resolution, then upsamples them to the resolution you requested. Or in non-technical terms: The images are trash. A later service pack fixed this problem.
See How do I use VBA code in PowerPoint? to learn how to use this example code.