import qrcode from PIL import Image from PIL import ImageFont from PIL import ImageDraw import json ## Variablen songs = json.load(open("songs.json")) strFont = "Raleway-ExtraBold.ttf" strBGcolor = "#ffffff" strFGcolor = "#1a1a1a" for song in songs: ## Noch mehr Variablen! strGuid = song["Guid"] strDay = song["Day"] strClaim = song["Claim"] ## QR-Code erstelen qr = qrcode.QRCode( version=4, error_correction=qrcode.constants.ERROR_CORRECT_Q, box_size=20, border=4, ) qr.add_data('https://www.friedersdorf.de/adventskalender/index.php?tag='+strGuid) qr.make(fit=True) img = qr.make_image(fill_color = strFGcolor, back_color=strBGcolor).convert('RGB') imgW, imgH = img.size ## Nummer zeichnen font = ImageFont.truetype(strFont, 70, encoding="unic") W, H = (200,200) draw = ImageDraw.Draw(img) draw.ellipse((imgW/2-W/2, imgH/2-H/2, imgW/2+W/2, imgH/2+H/2), fill=strBGcolor, outline=strFGcolor, width=10) w, h = draw.textsize(strDay, font=font) draw.text(((imgW-w)/2,(imgH-h)/2), strDay, fill=strFGcolor, font=font) ## Neues Bild erstellen, aber groeßer imgNew = Image.new("RGBA", (imgW, imgH+150), strBGcolor) imgNew.paste(img, (0,0)) ## Claim reinschreiben draw = ImageDraw.Draw(imgNew) font = ImageFont.truetype(strFont, 50, encoding="unic") w, h = draw.textsize(strClaim, font=font) draw.text(((imgW-w)/2, 1000), strClaim, fill=strFGcolor, font=font) imgNew.save("qrcodes/" + strGuid + ".png")
Code-Sprache: PHP (php)

So viel Gequatsche für so wenig Code. Falls ihr hier trotzdem auf Hindernisse stoßt, meldet euch einfach auf einem der bekannten Wege und ich versuche eure Fragen entweder direkt zu beantworten, oder den Text irgendwie anzupassen. Auf der folgenden Seite sprechen wir über das notwendige PHP-Skript.

1 Kommentar Neues Kommentar hinzufügen

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Hallo! Mein Name ist Marco Friedersdorf und bin Freelancer im Bereich der Software-Entwicklung und IT-Beratung. Mit Artikeln wie diesem möchte ich einen kleinen Einblick in meine Arbeit geben und über die Dinge sprechen, die mich als Informatiker beschäftigen.
WEG MIT
§219a!
tripadvisor flickr americanexpress bandcamp basecamp behance bigcartel bitbucket blogger codepen compropago digg dribbble dropbox ello etsy eventbrite evernote facebook feedly github gitlab goodreads googleplus instagram kickstarter lastfm line linkedin mailchimp mastercard medium meetup messenger mixcloud paypal periscope pinterest quora reddit rss runkeeper shopify signal sinaweibo skype slack snapchat soundcloud sourceforge spotify stackoverflow stripe stumbleupon trello tumblr twitch twitter uber vimeo vine visa vsco wechat whatsapp wheniwork wordpress xero xing yelp youtube zerply zillow px aboutme airbnb amazon pencil envelope bubble magnifier cross menu arrow-up arrow-down arrow-left arrow-right envelope-o caret-down caret-up caret-left caret-right