def generate_separate_card_images_from_set(card_set, settings, card_indexes=range(0, 999), save=False, show=True): print "Generating separate cards for set '" + str(card_set['name']) + "'" #card_set = dict(card_set_without_settings.items() + settings.items()) cards = card_set['cards'] total_card_count = 0 card_datas = card_set['cards'] cards = [] for i in card_indexes: if i >= len(card_datas): break data = card_datas[i] card = create_card(data, settings) total_card_count += 1 if show: card.show() if save: path = "output/" + card_set['name'] + "_card_" + str( i) + "_" + data['name'].replace(" ", "_") + ".png" print "Saving '" + path + "'" card.save(path) print "Total card count: " + str(total_card_count)
def create_page(card_set, settings, card_indexes): card_datas = card_set['cards'] selected_card_datas = [] margin = cm_to_pixels(settings['margin']) (card_width_cm, card_height_cm) = settings['card_size'] (card_width_px, card_height_px) = (cm_to_pixels(card_width_cm), cm_to_pixels(card_height_cm)) spacing = cm_to_pixels(settings['spacing']) i = 0 for d in card_datas: if i in card_indexes: selected_card_datas.append(d) i += 1 cards = [] for data in selected_card_datas: card = create_card(data, settings) for x in range(data['count']): cards.append(card) page = Image.new("RGB", a4_size, "white") card_index = 0 for y in xrange(margin, a4_height - card_height_px, card_height_px + spacing): for x in xrange(margin, a4_width - card_width_px, card_width_px + spacing): if card_index >= len(cards): break card = cards[card_index] card_index += 1 page.paste(card, (x, y)) return page
def create_page(card_set, settings, card_indexes): card_datas = card_set["cards"] selected_card_datas = [] margin = cm_to_pixels(settings["margin"]) (card_width_cm, card_height_cm) = settings["card_size"] (card_width_px, card_height_px) = (cm_to_pixels(card_width_cm), cm_to_pixels(card_height_cm)) spacing = cm_to_pixels(settings["spacing"]) i = 0 for d in card_datas: if i in card_indexes: selected_card_datas.append(d) i += 1 cards = [] for data in selected_card_datas: card = create_card(data, settings) for x in range(data["count"]): cards.append(card) page = Image.new("RGB", a4_size, "white") card_index = 0 for y in xrange(margin, a4_height - card_height_px, card_height_px + spacing): for x in xrange(margin, a4_width - card_width_px, card_width_px + spacing): if card_index >= len(cards): break card = cards[card_index] card_index += 1 page.paste(card, (x, y)) return page
def main_menu(): while True: print('\n1. Create an account\n2. Log into account\n3. Show all accounts\n0. Exit') choice = input() if choice == '1': cd.create_card() continue elif choice == '2': loggedin = mn.login(cd.check_card()) if loggedin: continue else: stop() break elif choice == '3': db.show_details() elif choice == '0': stop() break
def create_page(card_set, card_indexes): margin = cm_to_pixels(card_set['margin']) spacing = cm_to_pixels(card_set['spacing']) (card_width_cm, card_height_cm) = card_set['card_size'] (card_width_px, card_height_px) = (cm_to_pixels(card_width_cm), cm_to_pixels(card_height_cm)) border_width_px = cm_to_pixels(card_set['border_width']) # around each card border_color = card_set['border_color'] outline_width = card_set['outline_width'] outline_color = card_set['outline_color'] size_minus_border = (card_width_px - (border_width_px * 2), card_height_px - (border_width_px * 2)) card_datas = card_set['cards'] selected_card_datas = [] i = 0 for d in card_datas: if i in card_indexes: selected_card_datas.append(d) i += 1 cards = [] for data in selected_card_datas: card = create_card(data, size_minus_border, border_width_px, border_color, outline_width, outline_color) for x in range(data['count']): cards.append(card) page = Image.new("RGB", a4_size, "white") card_index = 0 for y in xrange(margin, a4_height - card_height_px, card_height_px + spacing): for x in xrange(margin, a4_width - card_width_px, card_width_px + spacing): if card_index >= len(cards): break card = cards[card_index] card_index += 1 page.paste(card, (x, y)) return page
def generate_separate_card_images_from_set(card_set, settings, card_indexes=range(0, 999), save=False, show=True): print "Generating separate cards for set '" + str(card_set["name"]) + "'" # card_set = dict(card_set_without_settings.items() + settings.items()) cards = card_set["cards"] total_card_count = 0 card_datas = card_set["cards"] cards = [] for i in card_indexes: if i >= len(card_datas): break data = card_datas[i] card = create_card(data, settings) total_card_count += 1 if show: card.show() if save: path = "output/" + card_set["name"] + "_card_" + str(i) + "_" + data["name"].replace(" ", "_") + ".png" print "Saving '" + path + "'" card.save(path) print "Total card count: " + str(total_card_count)