def get_file_name(self, ext = 'png'): if self.file_name: return self.file_name if self.image: self.file_name = temp_file_name('.'+ext, config.get_tmp_dir()) self.image.save(self.file_name) return self.file_name assert(False)
def __call__(self, img_ref): if self.colors >= 256: return img_ref img = img_ref.get_image() if img.mode != 'L': return img_ref colors = image_colors(img) if colors <= self.colors: return img_ref out_file_name = temp_file_name('.png', config.get_tmp_dir()) cmd = ['convert'] scolors = '%d' % (self.colors,) cmd.extend(['-colors', scolors]) cmd.extend(['-depth', '8', img_ref.get_file_name(), out_file_name]) check_call(cmd) return ImageRef(file_name = out_file_name)
def __call__(self, img_ref): out_file_name = temp_file_name('.png', config.get_tmp_dir()) check_call(['unpaper', '-q', '--no-deskew', img_ref.get_file_name(), out_file_name]) return ImgRef(file_name = out_file_name)