Options:
- -o <dir> The directory to place the .xmp file(s), defaults to
+ -o <dir> The directory to place the .xpm file(s), defaults to
the current directory.
-m <#rrggbb> If the original image has a mask or transparency defined
"""
-import sys, os, glob, getopt, string
-from wxPython.wx import *
-wxInitAllImageHandlers()
+import sys
+import img2img
+from wxPython import wx
-
-def convert(file, maskClr, outputDir, outputName):
- if string.lower(os.path.splitext(file)[1]) == ".ico":
- icon = wxIcon(file, wxBITMAP_TYPE_ICO)
- img = wxBitmapFromIcon(icon)
- else:
- img = wxBitmap(file, wxBITMAP_TYPE_ANY)
-
- if not img.Ok():
- return 0, file + " failed to load!"
- else:
- if maskClr:
- om = img.GetMask()
- mask = wxMaskColour(img, maskClr)
- img.SetMask(mask)
- if om is not None:
- om.Destroy()
- if outputName:
- newname = outputName
- else:
- newname = os.path.join(outputDir, os.path.basename(os.path.splitext(file)[0]) + ".xpm")
- if img.SaveFile(newname, wxBITMAP_TYPE_XPM):
- return 1, file + " converted to " + newname
- else:
- return 0, file + " failed to save!"
-
-
-
-def main(args):
- if not args or ("-h" in args):
- print __doc__
- return
-
- outputDir = ""
- maskClr = None
- outputName = None
-
- try:
- opts, fileArgs = getopt.getopt(args, "m:n:o:")
- except getopt.GetoptError:
- print __doc__
- return
-
- for opt, val in opts:
- if opt == "-m":
- maskClr = val
- elif opt == "-n":
- outputName = val
- elif opt == "-o":
- outputDir = val
-
- if not fileArgs:
- print __doc__
- return
-
- for arg in fileArgs:
- for file in glob.glob(arg):
- if not os.path.isfile(file):
- continue
- ok, msg = convert(file, maskClr, outputDir, outputName)
- print msg
-
-
-
-if __name__ == "__main__":
- main(sys.argv[1:])
+img2img.main(sys.argv[1:], wx.wxBITMAP_TYPE_XPM, ".xpm", __doc__)