savepng is a fast PNG image compression routine that outperforms MatLab's built-in imwrite
You are now following this Submission
- You will see updates in your followed content feed
- You may receive emails, depending on your communication preferences
savepng is a very efficient PNG image compression MEX-routine that outperforms MatLab's built-in imwrite in compression times and produced file sizes. For a typical figure size at the default compression level, savepng is ~5.8 times faster, with file size only 17% bigger than imwrite. At the highest compression level, savepng is still ~2.8 times faster, with produced file sizes 15% smaller.
PNG encoding is based on public-domain MINIZ library.
Usage
savepng(CDATA,filename[,Compression])
Where,
* CDATA -- is a standard MatLab image m-by-n-by-3 matrix. This matrix can be obtained using getframe command or, for a faster implementation, undocumented hardcopy command
* filename -- file name of the image to write. Don't forget to add .png to the file name.
* Compression -- Optional input argument. This argument takes on a number between 0 and 10 controlling the amount of compression to try to achieve with PNG file. 0 implies no compresson, fastest option. 10 implies the most amount of compression, slowest option. Default value is 4.
Up-to-date version, a more detailed help, bugs/issues tracking can all be found here:
https://github.com/stefslon/savepng
Cite As
Stefan Slonevskiy (2026). savepng (https://github.com/stefslon/savepng), GitHub. Retrieved .
General Information
- Version 1.1.0.0 (197 KB)
-
View License on GitHub
MATLAB Release Compatibility
- Compatible with any release
Platform Compatibility
- Windows
- macOS
- Linux
Versions that use the GitHub default branch cannot be downloaded
| Version | Published | Release Notes | Action |
|---|---|---|---|
| 1.1.0.0 | Added support for alpha channel
|
||
| 1.0.0.0 |
