Png
png writes a png format image file of the current image to disk.
USAGE
png filename[, width[, height[, dpi[, ray[, quiet]]]]]
- filename = string: file path to be written
- width = integer or string: width in pixels (integer or string without units), inches (in), or centimeters (cm). If unit suffix is given, `dpi` argument is required as well. If only one of `width` or `height` is given, the aspect ratio of the viewport is preserved. {default: 0 (current)}
- height = integer or string: height (see width) {default: 0 (current)}
- dpi = float: dots-per-inch {default -1.0 (unspecified)}
- ray = 0 or 1: should ray be run first {default: 0 (no)}
- quiet = 0 or 1: if 1, logged output is suppressed. {default: 0}
PYMOL API
cmd.png(string filename, int width=0, int height=0, float dpi=-1, int ray=0, int quiet=0)
COMMENTS
Blank Screen Shots
If, when you execute the Png command, you get blank images, you may have to Ray trace your image first, before running the Png command. This occurs when there is no device context for the image, such as when running PyMOL in quiet gui-less mode. If the ray tracing is taking too long due to scene complexity or size, then please see the Ray page or search the wiki for information about making movies with PyMOL (there are many ways to speed up rendering).
Transparent Backgrounds
Use the `ray_opaque_background` setting to output images with transparent backgrounds.
set ray_opaque_background, 0
This can be useful for presentations, images that are placed on top of a background of nonuniform color (e.g. gradients), and images that overlap text or other images.
DPI Setting
Use the DPI option to have PyMol set the DPI of your image. Executing the command
png /tmp/ex.png, width=1200, height=1200, dpi=300, ray=1
will ouput a four-inch square image at 300dpi. Leaving off the dpi parameter would yield a 1200x1200 image at your system's default pixel density (e.g. 72 or 96 dpi). This saves the intermediate step of having to use GIMP/PhotoShop/etc to rescale your photos for publication.