#!/usr/bin/pike /* * png2jpg.pike * * Saves the specifyed file as jpg * * History: * 14/01/2024 Creation * * Author: Dario Rodriguez antartica@whereismybit.com * This program is distributed under the terms of the GNU GPL v2.1+ */ int main(int argc, array(string) argv) { string destfilename; string infilename; int quality; Image.Image image; if(!(argc==3 || (argc==5 && argv[1]=="-q")) || (argc>1 && argv[1]=="--help")) { Stdio.werror("Syntax: "+argv[0]+" [-q <jpgquality>] <origfile.png> <destfile.png>\n"); Stdio.werror("Example: "+argv[0]+" file.png dest.jpg\n"); Stdio.werror("Example result: dest.jpg\n"); return(1); } quality=95; if(argc==5 && argv[1]=="-q") quality=(int)argv[2]; destfilename=argv[sizeof(argv)-1]; infilename=argv[sizeof(argv)-2]; write("* Loading image\n"); image=Image.load(infilename); write("* Writing "+destfilename+"...\n"); Stdio.write_file(destfilename,Image.JPEG.encode(image,(["quality":quality]))); write("Converted image to "+destfilename+". Process finished.\n"); return(0); }