Skip to content

Instantly share code, notes, and snippets.

@gcrsaldanha
Last active February 15, 2023 16:34
Show Gist options
  • Star 2 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save gcrsaldanha/c2c2a7bcb745ee4882eb08bbfe13ac36 to your computer and use it in GitHub Desktop.
Save gcrsaldanha/c2c2a7bcb745ee4882eb08bbfe13ac36 to your computer and use it in GitHub Desktop.
Criando imagens com Python (Pillow)
# Para mais conteúdos de Python, acesse: https://instagram.com/gabrielsaldanha.dev
# É necessário ter Pillow instalado:
# $ python3 -m pip install Pillow
from PIL import Image, ImageDraw, ImageFont
image = Image.new("RGB", (1080, 1080), color=(41, 46, 48))
img_draw = ImageDraw.Draw(image)
# Arquivo de fonte Helvetica.ttc deve estar no mesmo diretório
# que o programa está sendo executado
font = ImageFont.truetype("Helvetica.ttc", size=72)
def main():
title = "Essa imagem\n\nfoi feita\n\nem Python"
img_draw.text((300, 405), title, font=font, fill=(234, 234, 235))
seq = log_seq(end=270, points=30)
for i in seq:
xy0 = (i, i)
xy1 = 1080 - i - 1, 1080 - i - 1
img_draw.rectangle([xy0, xy1], width=2)
image.save("img.png")
def log_seq(end, points):
"""
Retorna uma sequência de pontos normalizada em relação a `end`.
O tamanho da sequência é determinada por `points`.
Utilizamos a função logarítmica para obter a distância entre os pontos.
"""
from math import log
seq = []
for i in range(points):
seq.append(log(i + 1))
norm_factor = end / seq[i] # Normaliza os valores
return [norm_factor * point for point in seq]
main()
@hyddvbytff
Copy link

DALL·E 2023-02-12 09 51 36 - criatura com dois pares de asas de anjos, asas negras, com uma cabeça se silhueta, criatura divina, com uma foice, e armadura preta, tranço de fantasi

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment