def _create_char(userid, x1, y1, x2, y2, charid, config=None, remove=True): x1, y1, x2, y2 = d.get_int(x1), d.get_int(y1), d.get_int(x2), d.get_int(y2) filename = d.url_make(charid, "char/.thumb", root=True) if not m.os.path.exists(filename): filename = d.url_make(charid, "char/cover", root=True) if not filename: return remove = False im = image.read(filename) size = im.size.width, im.size.height d.execute(""" UPDATE character SET settings = REGEXP_REPLACE(settings, '-.', '') || '-%s' WHERE charid = %i """, [image.image_setting(im), charid]) dest = os.path.join(d.get_character_directory(charid), '%i.thumb%s' % (charid, images.image_extension(im))) bounds = None if image.check_crop(size, x1, y1, x2, y2): bounds = geometry.Rectangle(x1, y1, x2, y2) thumb = images.make_thumbnail(im, bounds) thumb.write(dest, format=images.image_file_type(thumb)) if remove: os.remove(filename)
def _create_char(userid, x1, y1, x2, y2, charid, config=None, remove=True): x1, y1, x2, y2 = d.get_int(x1), d.get_int(y1), d.get_int(x2), d.get_int(y2) filename = d.url_make(charid, "char/.thumb", root=True) if not m.os.path.exists(filename): filename = d.url_make(charid, "char/cover", root=True) if not filename: return remove = False im = image.read(filename) size = im.size.width, im.size.height d.execute( """ UPDATE character SET settings = REGEXP_REPLACE(settings, '-.', '') || '-%s' WHERE charid = %i """, [image.image_setting(im), charid]) dest = os.path.join(d.get_character_directory(charid), '%i.thumb%s' % (charid, images.image_extension(im))) bounds = None if image.check_crop(size, x1, y1, x2, y2): bounds = geometry.Rectangle(x1, y1, x2, y2) thumb = images.make_thumbnail(im, bounds) thumb.write(dest, format=images.image_file_type(thumb)) if remove: os.remove(filename)
def make_resource(userid, target, feature, extension=None): """ Returns the full path to the specified resource. """ root = d.get_character_directory(target) if feature == "char/submit": filename = "%d.submit.%d%s" % (target, userid, extension) elif feature == "char/cover": filename = "%d.cover%s" % (target, extension) elif feature == "char/thumb": filename = "%d.thumb%s" % (target, extension) elif feature == "char/.thumb": filename = "%d.new.thumb" % (target, ) else: raise ValueError("Unknown character resource %r" % (feature, )) return os.path.join(root, filename)
def make_character_directory(target): path = d.get_character_directory(target) makedirs_exist_ok(path)