def is_image(self):
return self.mimetype.startswith("image/")
+ def is_vector_image(self):
+ return self.mimetype in ("image/svg+xml",)
+
+ def is_bitmap_image(self):
+ return self.is_image() and not self.is_vector_image()
+
@lazy_property
def blob(self):
res = self.db.get("SELECT data FROM wiki_blobs \
return bytes(res.data)
def get_thumbnail(self, size):
+ assert self.is_bitmap_image()
+
cache_key = "-".join((self.path, util.normalize(self.filename), self.created_at.isoformat(), "%spx" % size))
# Try to fetch the data from the cache
size = self.get_argument_int("s", None)
# Check if image should be resized
- if file.is_image() and size:
+ if size and file.is_bitmap_image():
blob = file.get_thumbnail(size)
else:
blob = file.blob