def main(): signal.signal(signal.SIGINT, signal_handler) console = Console() global gruvbox_factory gruvbox_factory = GoNord() gruvbox_factory.reset_palette() add_gruvbox_palette() console.print( Panel('🏭 [bold green] Gruvbox Factory [/] 🏭', expand=False, border_style='yellow')) console.print( '⚠️ WARNING ⚠️\n[italic]make sure you\'re in the same directory of the image you want to convert [/]\n' ) image_file = console.input( '🖼️ [bold yellow]Which image do you want to manufacture?[/] ') try: image = gruvbox_factory.open_image(image_file) except: console.print( '❌ [red]We had a problem in the pipeline! Make sure you\'re in the same path of the image you want to convert! [/]' ) sys.exit(0) console.print('🔨 [yellow]manufacturing your gruvbox wallpaper...[/]') gruvbox_factory.convert_image(image, save_path=('gruvbox_' + image_file)) console.print('✅ [bold green]Done![/] [green](saved as gruvbox_' + image_file + ')[/]')
def main(): dirOld = "/home/mir/Pictures/wallhaven/" dirNew = "/home/mir/Pictures/newWall/" for root, dirs, files in os.walk(dirOld): for file in files: imagePath = dirOld + file name = file.split(".", 1) oName = name[0] + "-Nord." + name[1] savePath = dirNew + oName # E.g. Replace pixel by pixel go_nord = GoNord() image = go_nord.open_image(imagePath) go_nord.convert_image(image, save_path=savePath) # E.g. Avg algorithm and less colors go_nord.enable_avg_algorithm() go_nord.reset_palette() go_nord.add_file_to_palette(NordPaletteFile.POLAR_NIGHT) go_nord.add_file_to_palette(NordPaletteFile.SNOW_STORM) # You can add color also by their hex code go_nord.add_color_to_palette("#FF0000") image = go_nord.open_image(imagePath) go_nord.convert_image(image, save_path=savePath) # E.g. Resized img no Avg algorithm and less colors go_nord.disable_avg_algorithm() go_nord.reset_palette() go_nord.add_file_to_palette(NordPaletteFile.POLAR_NIGHT) go_nord.add_file_to_palette(NordPaletteFile.SNOW_STORM) image = go_nord.open_image(imagePath) resized_img = go_nord.resize_image(image) go_nord.convert_image(resized_img, save_path=savePath) # E.g. Quantize image = go_nord.open_image(imagePath) go_nord.reset_palette() go_nord.set_default_nord_palette() quantize_image = go_nord.quantize_image(image, save_path=savePath) # To base64 go_nord.image_to_base64(quantize_image, "jpeg")
def main(): parser = argparse.ArgumentParser() parser.add_argument('input', help='File to generate image from.') parser.add_argument( '-s', '--show', help='Show image using xdg-open when image is generated.', action='store_true') parser.add_argument('-b', '--blur', help='Blur the image', action='store_true') parser.add_argument( '--no_quantize', help= 'Do not quantize the image before processing (may make the image look better)', action='store_true') args = parser.parse_args() sInputImage = args.input sOutputPath = './nordified/' + path.splitext( path.basename(sInputImage))[0] + '-nordified.jpg' print(f"Writing nordified version to {sOutputPath}..") go_nord = GoNord() image = go_nord.open_image(sInputImage) if args.blur: image = image.filter(ImageFilter.GaussianBlur(5)) go_nord.set_default_nord_palette() #go_nord.disable_avg_algorithm() image = go_nord.quantize_image(image, save_path=sOutputPath) #go_nord.convert_image(image, save_path=sOutputPath) # To base64 #go_nord.image_to_base64(image, 'jpeg') print("Done.") if args.show: run('xdg-open {}'.format(sOutputPath), shell=True)
#!/usr/bin/env python import argparse from ImageGoNord import GoNord parser = argparse.ArgumentParser( description='convert image palette to specified palette') parser.add_argument('colorscheme', type=str, help='name of the colorscheme') parser.add_argument('image', type=str, help='path to the image') args = parser.parse_args() path = "/home/samy/.config/colorschemes/" + args.colorscheme with open(path, 'r') as f: lines = f.readlines() colors = [line.split()[2] for line in lines] go_nord = GoNord() go_nord.reset_palette() for color in colors: go_nord.add_color_to_palette(color) print(args.image) image = go_nord.open_image(args.image) go_nord.convert_image(image, save_path='/home/samy/Wallpapers/wall.png')
from ImageGoNord import NordPaletteFile, GoNord go_nord = GoNord() """image = go_nord.open_image("images/test-profile.jpg") go_nord.convert_image(image, save_path='images/test.processed.jpg') """ # E.g. Avg algorithm and less colors go_nord.enable_avg_algorithm() go_nord.reset_palette() # go_nord.add_file_to_palette(NordPaletteFile.POLAR_NIGHT) # go_nord.add_file_to_palette(NordPaletteFile.SNOW_STORM) # go_nord.add_color_to_palette('#FF0000') go_nord.set_default_nord_palette() image = go_nord.open_image("images/test.jpg") go_nord.convert_image(image, save_path='images/test.avg.jpg') # E.g. Resized img no Avg algorithm and less colors go_nord.disable_avg_algorithm() go_nord.reset_palette() go_nord.add_file_to_palette(NordPaletteFile.POLAR_NIGHT) go_nord.add_file_to_palette(NordPaletteFile.SNOW_STORM) image = go_nord.open_image("images/test.jpg") resized_img = go_nord.resize_image(image) go_nord.convert_image(resized_img, save_path='images/test.resized.jpg') # E.g. Quantize image = go_nord.open_image("images/test.jpg") go_nord.reset_palette()
src_path = path.dirname(path.realpath(__file__)) # Get all palettes created palettes = [palette.lower() for palette in listdir(src_path + "/palettes")] for arg in args: key_value = [kv for kv in arg.split("=", 1) if kv != ""] key = key_value[0].lower() condition_argument = key in ["--img", "-i"] IMAGE_PATTERN = r'([A-z]|[\/|\.|\-|\_|\s])*\.([a-z]{3}|[a-z]{4})$' if condition_argument: if (len(key_value) > 1 and re.search(IMAGE_PATTERN, key_value[1]) is not None): image = go_nord.open_image(key_value[1]) to_console(confarg.logs["img"][0].format(src_path + "/" + key_value[1])) else: to_console(confarg.logs["img"][1].format(arg), confarg.logs["img"][-1], confarg.logs["err"][0]) sys.exit(1) continue condition_argument = key in ["--out", "-o"] if condition_argument: if len(key_value) > 1: OUTPUT_IMAGE_NAME = key_value[1] # If the image name have already an extension do not set the # default one OUTPUT_IMAGE_NAME += "" if re.search(