diff --git a/public/assets/apple-touch-icon.png b/public/assets/apple-touch-icon.png new file mode 100644 index 0000000..cf75661 Binary files /dev/null and b/public/assets/apple-touch-icon.png differ diff --git a/public/assets/icon-192.png b/public/assets/icon-192.png new file mode 100644 index 0000000..d32a17e Binary files /dev/null and b/public/assets/icon-192.png differ diff --git a/public/assets/icon-512.png b/public/assets/icon-512.png new file mode 100644 index 0000000..e3952a1 Binary files /dev/null and b/public/assets/icon-512.png differ diff --git a/public/index.html b/public/index.html index 40f56b7..b932ede 100644 --- a/public/index.html +++ b/public/index.html @@ -11,7 +11,7 @@ - + Camila AI @@ -21,7 +21,7 @@ - +
diff --git a/public/manifest.json b/public/manifest.json index 6b4fd71..f464cfe 100644 --- a/public/manifest.json +++ b/public/manifest.json @@ -9,13 +9,13 @@ "orientation": "portrait-primary", "icons": [ { - "src": "/assets/camila_prof.png", + "src": "/assets/icon-192.png", "sizes": "192x192", "type": "image/png", "purpose": "any maskable" }, { - "src": "/assets/camila_prof.png", + "src": "/assets/icon-512.png", "sizes": "512x512", "type": "image/png", "purpose": "any maskable" diff --git a/scratch/generate_icons.py b/scratch/generate_icons.py new file mode 100644 index 0000000..5c44df5 --- /dev/null +++ b/scratch/generate_icons.py @@ -0,0 +1,48 @@ +import os +from PIL import Image + +def generate_icons(): + img_path = '/root/Apps/Camila/public/assets/camila_prof.png' + if not os.path.exists(img_path): + print(f"Error: {img_path} not found.") + return + + img = Image.open(img_path) + width, height = img.size + print(f"Original image size: {width}x{height}") + + # Crop to a square. The face is usually in the upper half of the image. + # Original is 498x741. Let's crop a square of 498x498. + # Let's start the crop from y=50 to y=548 to keep the face well-centered. + size = min(width, height) + left = (width - size) // 2 + top = 50 # Offset down slightly to avoid cropping the top of the head + right = left + size + bottom = top + size + + if bottom > height: + bottom = height + top = height - size + + cropped_img = img.crop((left, top, right, bottom)) + print(f"Cropped to square: {cropped_img.size}") + + # Target directory + assets_dir = '/root/Apps/Camila/public/assets' + os.makedirs(assets_dir, exist_ok=True) + + # Save sizes + sizes = { + 180: 'apple-touch-icon.png', + 192: 'icon-192.png', + 512: 'icon-512.png' + } + + for sz, filename in sizes.items(): + resized = cropped_img.resize((sz, sz), Image.Resampling.LANCZOS) + out_path = os.path.join(assets_dir, filename) + resized.save(out_path, 'PNG') + print(f"Saved {sz}x{sz} icon to {out_path}") + +if __name__ == '__main__': + generate_icons()