| from PIL import Image, ImageDraw, ImageFont |
| import qrcode |
|
|
| def generate_qr_code(url): |
| return qrcode.make(url) |
|
|
| def draw_multiple_line_text(input_image_size, text, font=None, text_color=(255, 255, 255)): |
| if font is None: |
| font = ImageFont.load_default() |
| watermark_image = Image.new("RGB", input_image_size, (0, 0, 0)) |
| output_image = watermark_image.copy() |
| draw = ImageDraw.Draw(watermark_image) |
| image_width, image_height = input_image_size |
| line_width, line_height = font.getsize(text) |
| draw.text( |
| ((image_width - line_width)/2, (image_height - line_height)/2), |
| text, |
| font=font, |
| fill=text_color |
| ) |
|
|
| scale = min(image_width / line_width, image_height / line_height) |
| watermark_image = watermark_image.resize((int(watermark_image.width * scale), int(watermark_image.height*scale))) |
| output_image.paste(watermark_image, (int((image_width-watermark_image.width)/2), int((image_height-watermark_image.height)/2))) |
| return output_image |