Skip to content

🎨 Editor de imagens web interativo. Permite adicionar, editar e arrastar textos sobre imagens (Drag & Drop) utilizando Python (Flask) e HTML5 Canvas API.

Notifications You must be signed in to change notification settings

VictorPrazeres/canvas-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🎨 Editor de Imagem com Texto

Aplicativo web simples para adicionar e editar texto em imagens usando Canvas API.

📋 Requisitos

  • Python 3.7+
  • Flask

🚀 Como Executar

  1. Instalar dependências:
pip install -r requirements.txt
  1. Executar o servidor:
python app.py
  1. Abrir no navegador:
http://localhost:5000

✨ Funcionalidades

  • ✅ Carregar imagens (JPG, PNG, etc.)
  • ✅ Adicionar múltiplos textos
  • ✅ Editar textos existentes
  • ✅ Arrastar textos para reposicionar
  • ✅ Personalizar:
    • Fonte e estilo
    • Tamanho
    • Cor do texto
    • Cor e espessura do contorno
    • Alinhamento
  • ✅ Excluir textos
  • ✅ Baixar imagem editada (PNG)

🎮 Analogias com Game Dev (Godot)

Para quem vem do desenvolvimento de jogos:

  • Canvas HTML = Canvas do Godot (onde desenhamos)
  • textObjects array = Lista de nós (Nodes) da cena
  • render() = Função _draw() do Godot
  • Event Listeners = Função _input() do Godot
  • requestAnimationFrame = Game Loop (mas aqui redesenhamos só quando necessário)

🛠️ Tecnologias

  • Backend: Flask (Python) - apenas serve o HTML
  • Frontend: Vanilla JavaScript + Canvas API
  • Estilo: CSS3 com gradientes e animações

📝 Estrutura do Projeto

canvas-app/
├── app.py              # Servidor Flask
├── requirements.txt    # Dependências Python
├── README.md          # Documentação
└── templates/
    └── index.html     # Interface completa (HTML+CSS+JS)

💡 Dicas de Uso

  1. Carregue uma imagem primeiro
  2. Configure o texto e clique em "Adicionar Texto"
  3. Clique nos textos na lista para editá-los
  4. Arraste os textos no canvas para reposicioná-los
  5. Baixe a imagem final quando terminar

🎓 Para Estudantes

Este projeto demonstra:

  • Manipulação de Canvas API (desenho 2D no navegador)
  • Event Handling (mouse events)
  • Estado da aplicação (gerenciamento de objetos)
  • FileReader API (leitura de arquivos)
  • Data URLs (conversão de canvas para download)

About

🎨 Editor de imagens web interativo. Permite adicionar, editar e arrastar textos sobre imagens (Drag & Drop) utilizando Python (Flask) e HTML5 Canvas API.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published