provide a method for querying the image size, e.g. for setting HTML attributes or for permission checks
This commit is contained in:
parent
24a43d9f6d
commit
3605ec6aa8
2 changed files with 18 additions and 2 deletions
|
@ -15,11 +15,16 @@ Image Transformations
|
|||
=====================
|
||||
|
||||
>>> rules = dict(
|
||||
... minithumb='size(96, 72)',
|
||||
... minithumb='size(96, 1000)',
|
||||
... )
|
||||
|
||||
>>> asset = MediaAssetFile(image1, rules, 'image/jpeg')
|
||||
|
||||
>>> asset.getImageSize()
|
||||
(238, 191)
|
||||
>>> asset.getImageSize('minithumb')
|
||||
(96, 77)
|
||||
|
||||
>>> asset.transform()
|
||||
|
||||
|
||||
|
|
|
@ -24,6 +24,7 @@ Authors: Johann Schimpf, Erich Seifert.
|
|||
$Id$
|
||||
"""
|
||||
|
||||
from cStringIO import StringIO
|
||||
from logging import getLogger
|
||||
import mimetypes
|
||||
import os, re, sys
|
||||
|
@ -79,6 +80,15 @@ class MediaAssetFile(object):
|
|||
f.close()
|
||||
return data
|
||||
|
||||
def getImageSize(self, variant=None, data=None):
|
||||
if data is None:
|
||||
data = self.getData(variant)
|
||||
pt = PILTransform()
|
||||
pt.open(StringIO(data))
|
||||
if pt.im is None:
|
||||
return (0, 0)
|
||||
return pt.im.size
|
||||
|
||||
def getContentType(self, variant=None):
|
||||
contentType = self.getMimeType()
|
||||
if variant is None:
|
||||
|
@ -169,7 +179,8 @@ class MediaAssetFile(object):
|
|||
return self.dataPath
|
||||
|
||||
def getOriginalData(self):
|
||||
f = self.getDataPath().open()
|
||||
#f = self.getDataPath().open()
|
||||
f = open(self.getDataPath(), 'rb')
|
||||
data = f.read()
|
||||
f.close()
|
||||
return data
|
||||
|
|
Loading…
Add table
Reference in a new issue