{"id":21698038,"url":"https://github.com/parzibyte/waterpy","last_synced_at":"2025-04-12T12:32:56.841Z","repository":{"id":63090335,"uuid":"166103701","full_name":"parzibyte/WaterPy","owner":"parzibyte","description":"Poner marcas de agua con Python, PIL y Tkinter","archived":false,"fork":false,"pushed_at":"2019-01-18T16:46:24.000Z","size":35,"stargazers_count":5,"open_issues_count":0,"forks_count":5,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-03-26T07:11:16.467Z","etag":null,"topics":["desktop-app","image-processing","pillow","python","tkinter","watermark","watermark-tools"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/parzibyte.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-01-16T20:03:54.000Z","updated_at":"2023-04-18T21:46:49.000Z","dependencies_parsed_at":"2022-11-12T18:47:32.804Z","dependency_job_id":null,"html_url":"https://github.com/parzibyte/WaterPy","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/parzibyte%2FWaterPy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/parzibyte%2FWaterPy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/parzibyte%2FWaterPy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/parzibyte%2FWaterPy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/parzibyte","download_url":"https://codeload.github.com/parzibyte/WaterPy/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248566498,"owners_count":21125677,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["desktop-app","image-processing","pillow","python","tkinter","watermark","watermark-tools"],"created_at":"2024-11-25T19:30:53.188Z","updated_at":"2025-04-12T12:32:56.820Z","avatar_url":"https://github.com/parzibyte.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# WaterPy\n![WaterPy: poner marcas de agua con Python](https://raw.githubusercontent.com/parzibyte/WaterPy/master/assets/ImagenV1.png)\n\nUna aplicación de escritorio (multiplataforma) para poner marcas de agua usando Python, PIL y appJar (una envoltura de Tkinter)\n\nMás información en mi blog: https://parzibyte.me/blog/2019/01/18/presentando-waterpy-aplicacion-marca-de-agua/\n\n## Descargas\nEn el apartado releases o aquí: https://github.com/parzibyte/WaterPy/releases/tag/0.1\n\n## Ejemplo de lo que hace esta aplicación de escritorio\n\n**Nota antes de todo:** las imágenes las tomé de internet y las eliminé después de usarlas para demostrar esto, si tienen derechos de autor o algo así, pueden pedir que las elimine, no quiero problemas. \n\nVoy a demostrar cómo se posicionan las imágenes. Para ello tengo la siguiente carpeta: ![Carpeta no marcada](https://parzibyte.me/blog/wp-content/uploads/2019/01/Carpeta-no-marcada.png)\n\nEsa es de una de mis series favoritas, Rick y Morty (pobre hombre pájaro, por cierto). \nY la marca de agua será de Aku Aku, el amigo o ayudante de Crash. Selecciono eso en el programa: \n![Poner marca de agua, primer ejemplo](https://parzibyte.me/blog/wp-content/uploads/2019/01/Poner-marca-de-agua-primer-ejemplo.png)]Poner marca de agua, primer ejemplo\n\nLa pondré arriba a la izquierda, y listo. Queda así:![Imagen de Rick, Squanchy y hombre pájaro con marca de agua de Aku Aku](https://parzibyte.me/blog/wp-content/uploads/2019/01/1.jpg)]Imagen de Rick, Squanchy y hombre pájaro con marca de agua de Aku Aku\n\nEso fue con un 20 % de opacidad, entre menor opacidad, más transparente. Aquí está la misma pero con una opacidad de 90 %: ![Marca de agua con opacidad del 90 %](https://parzibyte.me/blog/wp-content/uploads/2019/01/1-1.jpg)Marca de agua con opacidad del 90 %\n\nAsí se puede ir jugando con cada una. En la siguiente demostración, a cada imagen se le pone la marca de agua en una distinta posición (tiene el 50 de opacidad): ![Posibilidad de posicionamiento de marca de agua con WaterPy](https://parzibyte.me/blog/wp-content/uploads/2019/01/Posibilidad-de-posicionamiento-de-marca-de-agua-con-WaterPy.png)Posibilidad de posicionamiento de marca de agua con WaterPy\n\nSi nos fijamos bien, Aku Aku aparece en 9 posiciones distintas. También se podría jugar con la separación que tiene la imagen con respecto a su posición.\n## Motivación\nPersonalmente necesito poner marcas de agua cuando subo algunas imágenes a mi web en [parzibyte.me/blog](https://parzibyte.me/blog). \n\nHace tiempo tenía un script que hacía eso (para uso personal) pero no tenía interfaz ni opciones como alineación u opacidad\n## Bugs y características\nSi quieres, reporta un bug o pide una característica (que ayude a todos) en **Issues**\n\n## Descargar\nPuedes descargar la app (bueno, seguramente tiene otro nombre pero ya a todo se le dice app en estos días) en la página de **releases**;  actualmente está compilada para Windows pero debería servir en otras plataformas si tú la compilas (*o si yo consigo una PC con otro SO*)\n## Probar código\nSi eres un desarrollador, simplemente clona o descarga el repositorio, [instala Python y PIP](https://parzibyte.me/blog/2017/11/19/instalar-configurar-python-3-windows-10/) para más tarde instalar las dependencias:\n```\npip install Pillow\npip install appjar\n```\n\nDespués de eso simplemente ejecuta:\n```\npython interfaz.py\n```\n¡Y listo! :)\n## Compilar\nInstala PyInstaller y aprende a usarlo, para ello lee estos dos posts:\n\n 1. [Compilar a ejecutable un archivo de Python](https://parzibyte.me/blog/2018/03/23/empaquetando-python-generar-archivo-exe/)\n    \n2. [Agregar assets a archivo ejecutable de Python](https://parzibyte.me/blog/2018/12/27/pyinstaller-assets-imagenes-archivos-ejecutable-python/)\n\nLuego añade al archivo **spec** lo siguiente\n```python\na.datas += [(\"./assets/carpeta.png\", \"./assets/carpeta.png\", \"DATA\"),(\"./assets/imagen.png\", \"./assets/imagen.png\", \"DATA\"),(\"./assets/iniciar.png\", \"./assets/iniciar.png\", \"DATA\"),(\"./assets/lapiz.png\", \"./assets/lapiz.png\", \"DATA\"),]\n```\nY vuelve a compilar con:\n```\npyinstaller --onefile interfaz.spec\n```\n\n# Agradecimientos\nGracias a los creadores de Python, PyInstaller, PIL, appJar y Tkinter\n\n# Créditos\nEl programa está bajo la licencia MIT, puedes ver más en el apartado de la licencia. Creado y mantenido por [parzibyte](https://parzibyte.me)\n\nAlgunos (o todos, al momento de escribir esto) iconos son de flaticon.com:\n\nIcons made by Smashicons [https://www.flaticon.com/authors/smashicons] from Flaticon [https://www.flaticon.com] is licensed by CC 3.0 BY [http://creativecommons.org/licenses/by/3.0/]\n\n  \n\nIcons made by Smashicons [https://www.flaticon.com/authors/smashicons] from Flaticon [https://www.flaticon.com] is licensed by CC 3.0 BY [http://creativecommons.org/licenses/by/3.0/]\n\n  \n\nIcons made by surang [https://www.flaticon.com/authors/surang] from Flaticon [https://www.flaticon.com] is licensed by CC 3.0 BY [http://creativecommons.org/licenses/by/3.0/]\n\n  \n\nIcons made by Maxim Basinski [https://www.flaticon.com/authors/maxim-basinski] from Flaticon [https://www.flaticon.com] is licensed by CC 3.0 BY [http://creativecommons.org/licenses/by/3.0/]","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fparzibyte%2Fwaterpy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fparzibyte%2Fwaterpy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fparzibyte%2Fwaterpy/lists"}