PPT to PNG with transparent background
Asked Answered
B

10

52

I have a PowerPoint .ppt file and I have to create an image for every slide.

I'm trying to use the integrated PowerPoint "export as .png". It works but the images have all a opaque background, I need a transparent one.

Anyone knows if is it possible and how to do it? (If not via standard export, also with a macro is fine)

Bonnybonnyclabber answered 19/4, 2011 at 8:35 Comment(3)
Skip past the "it can't be done" accepted answer to the next one. It can be done. The caveats are well worth the pain of trying to make the opaque background transparent on a slide exported to an image where the background remained opaque (quite difficult to do correctly because of aliasing).Centralia
See Justin Mitchell's answer (which somehow appeared at the bottom for me). The chosen answer was of no use to me.Marmara
Or see my answer - which is what I now prefer most.Marmara
A
28

It can't be done, either manually or progamatically. This is because the color behind every slide master is white. If you set your background to 100% transparent, it will print as white.

The best you could do is design your slide with all the stuff you want, group everything you want to appear in the transparent image and then right-click/save as picture/.PNG (or you could do that with a macro as well). In this way you would retain transparency.

Here's an example of how to export all slides' shapes to seperate PNG files. Note:

  1. This does not get any background shapes on the Slide Master.
  2. Resulting PNGs will not be the same size as each other, depending on where the shapes are located on each slide.
  3. This uses a depreciated function, namely Shape.Export. This means that while the function is still available up to PowerPoint 2010, it may be removed from PowerPoint VBA later.

    Sub PrintShapesToPng()
        Dim ap As Presentation: Set ap = ActivePresentation
        Dim sl As slide
        Dim shGroup As ShapeRange
        For Each sl In ap.Slides
            ActiveWindow.View.GotoSlide (sl.SlideIndex)
            sl.Shapes.SelectAll
            Set shGroup = ActiveWindow.Selection.ShapeRange
            shGroup.Export ap.Path & "\Slide" & sl.SlideIndex & ".png", _
                                ppShapeFormatPNG, , , ppRelativeToSlide
        Next
    End Sub
    
Araceli answered 19/4, 2011 at 20:8 Comment(6)
Thanks for the reply, could you address me to a macro that for every slide it does a "select all" -> "save as .png"?Bonnybonnyclabber
all objects on the slide (and for every slide like this) or just save the slides as .png in which case any "background transparency would be lost)?Araceli
To avoid the loss of transparency, I was looking for a "go in 1st slide, select all, export to .png all selected" then "go in 2nd slide, select all, export to .png all selected" and so onBonnybonnyclabber
Excellent answer. But could you not say "it can't be done!" as the first sentence? I almost missed the rest of it if I were in a hurry.Isomorphism
Confirmed that this still works in PowerPoint 365 for Windows, but not in PowerPoint 365 for Mac, using a modified path (ap.Path & "/Slide" & sl.SlideIndex & ".png"). To make sure I was doing things right on Mac, I tested the slide .Export method (sl.Export ap.Path & "/Slide" & sl.SlideIndex & ".png", FilterName:="png") and it exported a .png fine, but unfortunately that doesn't give a transparent backgroundAnimate
The hacky solution to fix the different-sizes problem is draw a large rectangle over the whole slide and make its' fill and border transparent. Then you can copy this invisible rectangle over all your slides, and so long as nothing protrudes out of the slide, you will be fine--although sometimes image sizes still deviate by a singe pixel for some strange reason when shapes are right up against the border of the slide.Bonkers
I
117

You can select the shapes within a slide (Word Art also) and right click on the selection and choose "Save As Picture". It will save as a transparent PNG.

Inexecution answered 11/9, 2011 at 23:14 Comment(5)
Works very nicely in PowerPoint 2010!Gatlin
Works in powerpoint 2013 as well. To get the image size you want you may want to put a border around each slide, as it appears to fit the image it creates to the selected objects. But excellent solution!Centralia
This is such a useful feature! Thanks for pointing it out. +1Woodring
Still useful in 2023. Thanks!Firewood
Save as not available on Mac.Soule
A
28

It can't be done, either manually or progamatically. This is because the color behind every slide master is white. If you set your background to 100% transparent, it will print as white.

The best you could do is design your slide with all the stuff you want, group everything you want to appear in the transparent image and then right-click/save as picture/.PNG (or you could do that with a macro as well). In this way you would retain transparency.

Here's an example of how to export all slides' shapes to seperate PNG files. Note:

  1. This does not get any background shapes on the Slide Master.
  2. Resulting PNGs will not be the same size as each other, depending on where the shapes are located on each slide.
  3. This uses a depreciated function, namely Shape.Export. This means that while the function is still available up to PowerPoint 2010, it may be removed from PowerPoint VBA later.

    Sub PrintShapesToPng()
        Dim ap As Presentation: Set ap = ActivePresentation
        Dim sl As slide
        Dim shGroup As ShapeRange
        For Each sl In ap.Slides
            ActiveWindow.View.GotoSlide (sl.SlideIndex)
            sl.Shapes.SelectAll
            Set shGroup = ActiveWindow.Selection.ShapeRange
            shGroup.Export ap.Path & "\Slide" & sl.SlideIndex & ".png", _
                                ppShapeFormatPNG, , , ppRelativeToSlide
        Next
    End Sub
    
Araceli answered 19/4, 2011 at 20:8 Comment(6)
Thanks for the reply, could you address me to a macro that for every slide it does a "select all" -> "save as .png"?Bonnybonnyclabber
all objects on the slide (and for every slide like this) or just save the slides as .png in which case any "background transparency would be lost)?Araceli
To avoid the loss of transparency, I was looking for a "go in 1st slide, select all, export to .png all selected" then "go in 2nd slide, select all, export to .png all selected" and so onBonnybonnyclabber
Excellent answer. But could you not say "it can't be done!" as the first sentence? I almost missed the rest of it if I were in a hurry.Isomorphism
Confirmed that this still works in PowerPoint 365 for Windows, but not in PowerPoint 365 for Mac, using a modified path (ap.Path & "/Slide" & sl.SlideIndex & ".png"). To make sure I was doing things right on Mac, I tested the slide .Export method (sl.Export ap.Path & "/Slide" & sl.SlideIndex & ".png", FilterName:="png") and it exported a .png fine, but unfortunately that doesn't give a transparent backgroundAnimate
The hacky solution to fix the different-sizes problem is draw a large rectangle over the whole slide and make its' fill and border transparent. Then you can copy this invisible rectangle over all your slides, and so long as nothing protrudes out of the slide, you will be fine--although sometimes image sizes still deviate by a singe pixel for some strange reason when shapes are right up against the border of the slide.Bonkers
M
9

One workaround that I have done is:

  • Ctrl + a to select everything in the slide
  • Ctrl + c to copy it
  • open GIMP (probably works in Photoshop or other software)
  • make a new image with a transparent background
  • Ctrl + v to paste all the vectors/text into the image
  • Export the image to a PNG or whatever format

It looks pretty much exactly the same as in Powerpoint, and the vectors/text are very clean with their transparency edges.

Miksen answered 13/3, 2019 at 22:5 Comment(0)
V
3

Insert a coloured box the full size of the slide, set colour to white with 100% transparency. select all, right-click save as picture, select PNG and save.

copy/paste inserted colour box to each slide and repeat

Valerlan answered 12/2, 2014 at 12:37 Comment(0)
G
2

I just tried to make a transparent image with powerpoint after failing miserably with other online systems. I was successful. Amazing.

First I used word art to give me typefaces which convert well to PNG or JPEG. The ordinary text in powerpoint does not convert well. It gets fuzzy. Anyway, I typed in my words in white (my choice of colour as i wanted it against a navy blue background), arranged it how i wanted, then right clicked and selected format shape to remove lines, then shadow to set the transparency.

I took the transparency to 100%. It came out fine. i then right clicked to save as png. Opened the image with MS Picture manager and resized the image to my suiting. It did not come out with the powerpoint white background at all. Once resized, i dropped the image against my navy blue background and it was like magic.

Grasp answered 21/8, 2012 at 16:57 Comment(0)
M
2

Here is my preferred quickest and easiest solution. Works well if all slides have the same background color that you want to remove.

Step 1. In Powerpoint, "Save As" (shortcut F12) PNG, "All Slides".

Now you have a folder full of these PNG images of all your slides. The problem is that they still have a background. So now:

Step 2. Batch remove background color of all the PNG images, for example by following the steps in this SE answer.

Marmara answered 24/11, 2015 at 5:28 Comment(3)
This was an underrated answerEscort
@JoãoAntunes: Unfortunately the selected answer claims "It can't be done" and gives a complicated workaround, and that's the only thing most people will see. Mine was a late answer and so it was automatically put at the bottom.Marmara
Kenny LJ: Most of the times @Justin Mitchell's answer works perfectly if the shapes originated from Powerpoint. For the other cases, your solution was perfect! I was in a pinch to do a presentation and I had imagemagick installed and it worked awesomely, to the point that it didn't even blank out the letters in the image, just the background.Escort
I
1

I found a workaround.

  1. Export with a white background (or other color that will work with transparent graphics). This will be out "whitescreen" layer.
  2. Export with "bluescreen" background, or some terrible other color that will make it easy to select out the background from foreground.
  3. Open the bluescreen version as a layer on top of the white screen.
  4. Use the bluescreen layer to select out only the parts you want to use.
  5. Create a mask for the whitescreen layer with the selection made from the bluescreen layer.

This will get good results for edges and aliasing, whilst retaining a good color for the see-

Iroquoian answered 24/4, 2018 at 16:44 Comment(0)
G
1

Import To Google Slides

Select desired slide and set background to solid transparent

the click "File->Download as PNG"

Groth answered 17/8, 2019 at 15:19 Comment(2)
verified that this doesn't work, at least for me, since some ppt features get lost when importing into google slidesAnimate
Well I wish i had an another option but that is my only one...Groth
S
0

I could do it like this

  1. Saved Powerpoint as PDF
  2. Opened PDF in Illustrator, removed background there and saved as PNG
Sufferable answered 18/12, 2020 at 13:19 Comment(2)
In your answer, Iluustrator is mandatory, is not installed by default on every workstation.Bulter
You can do it also with Illustrator alternatives, which open PDF. For example InkscapeSufferable
B
0

Depending on your application, you might be able to let the background color work for you! I needed the slides to overlay scripture on the lower third of our worship service video. I set the PPT background color to chromakey green and saved all of the slides as PNG files. The video system easily removed the chromakey green!

Bellaude answered 14/9, 2021 at 1:9 Comment(1)
As it’s currently written, your answer is unclear. Please edit to add additional details that will help others understand how this addresses the question asked. You can find more information on how to write good answers in the help center.Tootle

© 2022 - 2024 — McMap. All rights reserved.