mirror of
https://github.com/Kilian/Trimage.git
synced 2026-01-26 01:58:41 -05:00
Merge branch 'master' of git://github.com/kalmi/Trimage
Conflicts: src/trimage/trimage.py
This commit is contained in:
commit
7cf707d5a3
9 changed files with 31 additions and 74 deletions
1
src/trimage/filesize/README.txt
Normal file
1
src/trimage/filesize/README.txt
Normal file
|
|
@ -0,0 +1 @@
|
|||
http://pypi.python.org/pypi/hurry.filesize
|
||||
2
src/trimage/filesize/__init__.py
Normal file
2
src/trimage/filesize/__init__.py
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
from filesize import size
|
||||
from filesize import traditional, alternative, verbose, iec, si
|
||||
|
|
@ -1,7 +0,0 @@
|
|||
# this is a namespace package
|
||||
try:
|
||||
import pkg_resources
|
||||
pkg_resources.declare_namespace(__name__)
|
||||
except ImportError:
|
||||
import pkgutil
|
||||
__path__ = pkgutil.extend_path(__path__, __name__)
|
||||
|
|
@ -1,47 +0,0 @@
|
|||
hurry.filesize
|
||||
==============
|
||||
|
||||
hurry.filesize a simple Python library that can take a number of bytes and
|
||||
returns a human-readable string with the size in it, in kilobytes (K),
|
||||
megabytes (M), etc.
|
||||
|
||||
The default system it uses is "traditional", where multipliers of 1024
|
||||
increase the unit size::
|
||||
|
||||
>>> from hurry.filesize import size
|
||||
>>> size(1024)
|
||||
'1K'
|
||||
|
||||
An alternative, slightly more verbose system::
|
||||
|
||||
>>> from hurry.filesize import alternative
|
||||
>>> size(1, system=alternative)
|
||||
'1 byte'
|
||||
>>> size(10, system=alternative)
|
||||
'10 bytes'
|
||||
>>> size(1024, system=alternative)
|
||||
'1 KB'
|
||||
|
||||
A verbose system::
|
||||
|
||||
>>> from hurry.filesize import verbose
|
||||
>>> size(10, system=verbose)
|
||||
'10 bytes'
|
||||
>>> size(1024, system=verbose)
|
||||
'1 kilobyte'
|
||||
>>> size(2000, system=verbose)
|
||||
'1 kilobyte'
|
||||
>>> size(3000, system=verbose)
|
||||
'2 kilobytes'
|
||||
>>> size(1024 * 1024, system=verbose)
|
||||
'1 megabyte'
|
||||
>>> size(1024 * 1024 * 3, system=verbose)
|
||||
'3 megabytes'
|
||||
|
||||
You can also use the SI system, where multipliers of 1000 increase the unit
|
||||
size::
|
||||
|
||||
>>> from hurry.filesize import si
|
||||
>>> size(1000, system=si)
|
||||
'1K'
|
||||
|
||||
|
|
@ -1,4 +0,0 @@
|
|||
from hurry.filesize.filesize import size
|
||||
from hurry.filesize.filesize import traditional, alternative, verbose, iec, si
|
||||
|
||||
|
||||
|
|
@ -1,7 +0,0 @@
|
|||
import unittest, doctest
|
||||
|
||||
def test_suite():
|
||||
return unittest.TestSuite((
|
||||
doctest.DocFileSuite('README.txt'),
|
||||
doctest.DocTestSuite('hurry.filesize.filesize'),
|
||||
))
|
||||
16
src/trimage/trimage.py
Executable file → Normal file
16
src/trimage/trimage.py
Executable file → Normal file
|
|
@ -9,7 +9,7 @@ from optparse import OptionParser
|
|||
|
||||
from PyQt4.QtCore import *
|
||||
from PyQt4.QtGui import *
|
||||
from hurry.filesize import *
|
||||
from filesize import *
|
||||
from imghdr import what as determinetype
|
||||
|
||||
from Queue import Queue
|
||||
|
|
@ -210,18 +210,19 @@ class StartQT4(QMainWindow):
|
|||
|
||||
def checkapps(self):
|
||||
"""Check if the required command line apps exist."""
|
||||
exe=".exe" if (sys.platform=="win32") else ""
|
||||
status = False
|
||||
retcode = self.safe_call("jpegoptim --version")
|
||||
retcode = self.safe_call("jpegoptim"+exe+" --version")
|
||||
if retcode != 0:
|
||||
status = True
|
||||
sys.stderr.write("[error] please install jpegoptim")
|
||||
|
||||
retcode = self.safe_call("optipng -v")
|
||||
retcode = self.safe_call("optipng"+exe+" -v")
|
||||
if retcode != 0:
|
||||
status = True
|
||||
sys.stderr.write("[error] please install optipng")
|
||||
|
||||
retcode = self.safe_call("advpng --version")
|
||||
retcode = self.safe_call("advpng"+exe+" --version")
|
||||
if retcode != 0:
|
||||
status = True
|
||||
sys.stderr.write("[error] please install advancecomp")
|
||||
|
|
@ -359,10 +360,11 @@ class Image:
|
|||
raise "Tried to compress invalid image (unsupported format or not \
|
||||
file)"
|
||||
self.reset()
|
||||
self.compressing = True
|
||||
self.compressing=True
|
||||
exe=".exe" if (sys.platform=="win32") else ""
|
||||
runString = {
|
||||
"jpeg": u"jpegoptim -f --strip-all '%(file)s'",
|
||||
"png": u"optipng -force -o7 '%(file)s'&&advpng -z4 '%(file)s'"}
|
||||
"jpeg": u"jpegoptim"+exe+" -f --strip-all '%(file)s'",
|
||||
"png" : u"optipng"+exe+" -force -o7 '%(file)s'&&advpng"+exe+" -z4 '%(file)s'"}
|
||||
try:
|
||||
retcode = call(runString[self.filetype] % {"file": self.fullpath},
|
||||
shell=True, stdout=PIPE)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue