If you're working on macOS and need a quick way to convert an SVG file to a PNG, using the command line tool qlmanage is an efficient solution. The qlmanage tool is part of macOS's Quick Look framework and allows you to generate previews and thumbnails for various file types. One of its lesser-known features is the ability to convert vector files like SVG into raster formats like PNG.

To convert your SVG to PNG, use the following qlmanage command:

qlmanage -t -s 1000 -o . picture.svg

Let's break down this command:

  • qlmanage: The command to invoke Quick Look functionalities.
  • -t: Tells qlmanage to generate a thumbnail or preview of the file.
  • -s 1000: This sets the width of the output image to 1000 pixels. You can adjust this value depending on the size you need. If you want a larger or smaller image, simply modify the number.
  • -o .: Specifies the output directory for the converted file. In this case, the . indicates the current directory. You can change this to a different path if you want to save the file elsewhere.
  • picture.svg: The name of the input file (your SVG file).

After running this command, you'll get a file called picture.svg.png in the same directory. The width will be 1000 pixels, and the height will be adjusted proportionally, based on the aspect ratio of the SVG file.

If you need the output image to be a different size, simply change the value of the -s option. For example, if you want the PNG to be 500 pixels wide, use:

qlmanage -t -s 500 -o . picture.svg

The command will still maintain the aspect ratio of the original SVG, so the height will be adjusted automatically.

Using the qlmanage tool on macOS is a quick and easy way to convert SVG files to PNG format directly from the Terminal. The ability to control the output size with the -s option makes it versatile for a variety of use cases, from creating small thumbnails to larger images.