46

Google Slides adds an annoying amount of compression on my imported images. I want to avoid compression so I want to upload my schematics in a vector format. I can basically export to any vector format possible.

How do I do this in Google Slides?

10
  • I can't get any vector formats to work - tried SVG, and EMF, but Sheets only seems to only support png, gif, and jpeg. Try exporting your graphic as a PNG, and use that. PNGs are lossless, so compression shouldn't be an issue.
    – Billy Kerr
    Commented Oct 8, 2018 at 10:53
  • .PNG doesn't seem to look any better unfortunately :( Commented Oct 8, 2018 at 14:07
  • I just noticed a mistake. I confused Slides with Sheets, I'm talking about Google Slides. Sorry for the confusion Commented Oct 8, 2018 at 14:16
  • Apparently you can import a emf to google draw and then move that to Slides
    – joojaa
    Commented Oct 8, 2018 at 14:25
  • 1
    @Billy thanks for the insights, unfortunately that is not an option since our business is required to use Google Slides. Thank you anyway for this option Commented Oct 9, 2018 at 7:03

6 Answers 6

25

This method works flawlessly for me.

  1. Upload your images/icons to Google Drive

  2. Open it with CloudConvert

    • Choose export format : vector / emf.
    • Make sure that you have the checkbox to save the converted file to your Google Drive enter image description here
    • Click on button Start conversion.
  3. Open emf file with Google Drawing

  4. Copy/paste SVG icon into your Slides.

    • you can modify the colors as you wish, add or remove shapes

enter image description here

12
  • 1
    Thanks! Are you sure it's not pasted as a bitmap? Even when more complex schematics with a font are pasted? Commented Oct 10, 2018 at 11:49
  • 12
    Thank you for this very detailed and useful technique. Embarrassing that Google Slides still doesn't natively support SVGs in 2019, but at least there is this workaround.
    – Dan Kohn
    Commented Apr 20, 2019 at 1:24
  • 2
    This trick does not seem to work anymore ...
    – Arkeen
    Commented Jun 29, 2019 at 15:09
  • 1
    The method works flawlessly, I just did it. Make sure you login to your google drive account in cloudconvert.com/svg-to-emf As soon as the file is ready, click on "Show File" and in the GDrive preview window choose Google Drive. Presto.
    – MaDDoX
    Commented Oct 29, 2019 at 3:55
  • 3
    3. Convert the vector graphic using CloudConvert, download it and reupload it to Google Drive. Inspecting the downloaded file, CloudConvert also uses Inkscape to convert the file. However, Google Drive only provides the option to open it with Google Drawing for a file that was placed in your drive by CloudConvert!
    – f0k
    Commented Nov 28, 2019 at 10:29
9

As of Apr 4th 2020, I just found an easier offline solution for this issue, especially if you have the shape already in PowerPoint.

  1. Just copy the shape(s) to a new PowerPoint presentation and save it as a .ppt file.
  2. Upload it to Drive. The uploaded file will open in Slides and the shape(s) will maintain their vector properties.
  3. Copy the shapes from the new Slides document into the one you were working on.
3
  • 1
    This method would have worked fine back in 2018 in fac it would have worked earlier too.
    – joojaa
    Commented Apr 6, 2020 at 13:10
  • 5
    As of June 2021, this is the only method worked for me. SVG/EMF/WMF all failed due to "Unsupported image format".
    – xmo
    Commented Jun 8, 2021 at 22:57
  • Does this method only work with .ppt and not .pptx? .pptx seems to have rasterized the vector in Slides. Commented Jan 11, 2023 at 23:25
2

As of Nov 25th 2020, I just tried the old way to open a .ppt with Google slides and the .SVG will become a .jpge in Google slides. Somehow I cannot convert .svg into smart shapes in PowerPoint, and that's why it won't work in google slides.

I find another way, which is to upload the target SVG file to Google Drive, as a regular file. Install "CloudConvert" into Google Drive, and give it permission to read all your documents (scary! Click on the SVG file, and right-click to send to CloudConvert. Convert to "EMF" format and (this is crucial) save back to Google Drive, and open EMF to Google Drawings. And select the target in Google Drawing and copy it into Google Slides.

I think for now this is the only way to insert svg into Google slides.

1
  • 4
    Is 2022 and to be honest, I would be embarrassed to work for the team that does the slides. Not supporting the safe and standard SVG is mindblowing.
    – sorin
    Commented Sep 16, 2022 at 16:18
2

As of 2023 nothing of this works. If you can create a PPTX file, you can put your SVGs inside and open it with Google Slides. Then copy-paste the images in your own presentation.

I used FreeOffice, Libreoffice file didn't work.

UPDATE 2024

I've found this solution by Avi Megiddo.

Essentially, since 2023 there is a problem in Google EMF import algorithm. It is a Google script to convert EMF files to the correct MIME type. After convertion, files can be opened by Google Drawing and copied to Slides as vectors.

The script converts Google Drive last week EMFs. Copy below.

function betterConvertMIMETypeOfEMFs() {
  var oneWeekAgo = new Date();
  oneWeekAgo.setDate(oneWeekAgo.getDate() - 7);

  var targetMimeType = 'image/emf';
  var desiredMimeType = 'application/x-msmetafile';
  var query = 'mimeType != "' + desiredMimeType + '" and fileExtension = "emf" and modifiedDate > "' + oneWeekAgo.toISOString() + '"';
  var files = DriveApp.searchFiles(query);

  var count = 0;
  var maxFilesToConvert = 10;

  while (files.hasNext() && count < maxFilesToConvert) {
    var file = files.next();

    // Check if file has parents before attempting to retrieve
    var parents = file.getParents();
    if (parents.hasNext()) {
      var folder = parents.next();
 
      // Try to get the blob and change MIME type; if error, skip this file
      try {
        var blob = file.getBlob();
        blob.setContentType(desiredMimeType);
        folder.createFile(blob);
        count++;
      } catch (e) {
        Logger.log("Error processing file " + file.getName() + ": " + e.toString());
        continue;  // Skip this file and move to the next one
      }
    }
  }

  if (count === 0) {
    Logger.log('No recent EMF files needing conversion were found.');
  } else {
    Logger.log(count + ' recent EMF files converted to desired MIME type.');
  }
}
2
  • Thanks for taking the time to contribute! Commented Jun 27, 2023 at 16:52
  • Tried with Powerpoint and FreeOffice, it looks like it works, but it doesn't really, it converts to raster/bitmap. FreeOffice just looks like it does a better job as it has a super high resolution, but if you keep increasing the size of the images, you can see the pixels
    – Chris
    Commented Jan 17 at 13:27
1

[May 2024] Direct drag and drop of a .SVG file into Google Presentation didn't work ("invalid format"), but I wanted to see if I could make a Mermaid-generated sequence diagram's elements directly editable within Presentaiton somehow. Mermaid is just for convenience for rapid (UML) diagram creation, I suspect this process will work with any diagram .SVG.

These steps worked for me on a MacBook Pro running Sonoma 14.1.x.

1.) Generate/download .SVG file of your diagram from the Mermaid editor

2.) Create a local PowerPoint presentation

3.) Drag and drop your .SVG file into the PowerPoint slide

4.) Right-click on the .SVG image (it will appear as a Grouped item). Click "Ungroup". You'll likely get a popup warning dialog asking if you want to Ungroup (you do). Click yes to confirm. It will split up the single object into it's constituent editable individual elements.

5.) Save your PowerPoint

6.) In Google Presentation, File > Import Slides > Choose the slide with your diagram and import it

7.) The slide should appear with the fully editable version of the diagram on it.

0
  1. Download inkscape
  2. Convert the svg to a png: inkscape in.svg --export-type=png -o out.png -h HEIGHT -w WIDTH
  3. Drag and drop the png into the slide

Note: I have only tested the command provided on linux, not sure about Windows or other Unix based OS

2
  • 1
    png is not a vector format. Commented Jun 13, 2023 at 11:12
  • @KonradHöffner Most of the times I just needed the svg to be imported into slides, mainly icons. You can set the width and height of the png to a crazy amount and scale it down in google slides, with no noticeable loss in resolution unlike those online svg2png converters, which dont allow you set a height resulting in a very noticeable resolution drop off. If you really want an SVG I am sure you can follow the other answers, albeit with more hassle
    – Anm
    Commented Jun 14, 2023 at 9:20

Not the answer you're looking for? Browse other questions tagged or ask your own question.