From f3cb9038b7dbed357fb6565b1bb2d16f611aecbb Mon Sep 17 00:00:00 2001 From: Esdras Renan Date: Sun, 19 Oct 2025 01:33:35 -0300 Subject: [PATCH] Regenerate installer icon using full-size artwork --- ..._raven_icon.py => generate_icon_assets.py} | 183 +++++++----------- apps/desktop/src-tauri/icons/icon-128.png | Bin 20567 -> 15721 bytes apps/desktop/src-tauri/icons/icon-256.png | Bin 71719 -> 55044 bytes apps/desktop/src-tauri/icons/icon-32.png | Bin 1812 -> 1352 bytes apps/desktop/src-tauri/icons/icon-512.png | Bin 253078 -> 193888 bytes apps/desktop/src-tauri/icons/icon-64.png | Bin 5945 -> 4565 bytes apps/desktop/src-tauri/icons/icon.ico | Bin 100113 -> 76752 bytes apps/desktop/src-tauri/icons/icon.png | Bin 253078 -> 193888 bytes 8 files changed, 70 insertions(+), 113 deletions(-) rename apps/desktop/scripts/{build_raven_icon.py => generate_icon_assets.py} (53%) diff --git a/apps/desktop/scripts/build_raven_icon.py b/apps/desktop/scripts/generate_icon_assets.py similarity index 53% rename from apps/desktop/scripts/build_raven_icon.py rename to apps/desktop/scripts/generate_icon_assets.py index 52f3577..73b0eec 100644 --- a/apps/desktop/scripts/build_raven_icon.py +++ b/apps/desktop/scripts/generate_icon_assets.py @@ -1,8 +1,10 @@ #!/usr/bin/env python3 """ -Generate optimized icon PNGs (32/64/128/256) with a tighter composition and rebuild icon.ico. +Generate icon PNGs/ICO for the desktop installer using the high-resolution Raven artwork. -This script avoids external imaging dependencies by parsing and writing PNGs directly. +The script reads the square logo (`logo-raven-fund-azul.png`) and resizes it to the +target sizes with a simple bilinear filter implemented with the Python standard library, +avoiding additional dependencies. """ from __future__ import annotations @@ -14,11 +16,8 @@ from binascii import crc32 from pathlib import Path ICON_DIR = Path(__file__).resolve().parents[1] / "src-tauri" / "icons" -BASE_TRANSPARENT = ICON_DIR / "logo-raven.png" -BACKGROUND_SOURCE = ICON_DIR / "logo-raven-fund-azul.png" - +BASE_IMAGE = ICON_DIR / "logo-raven-fund-azul.png" TARGET_SIZES = [32, 64, 128, 256, 512] -FILL_RATIO = 0.9 # portion of the canvas occupied by the raven figure def read_png(path: Path) -> tuple[int, int, list[list[tuple[int, int, int, int]]]]: @@ -27,7 +26,7 @@ def read_png(path: Path) -> tuple[int, int, list[list[tuple[int, int, int, int]] raise ValueError(f"{path} is not a PNG") pos = 8 width = height = bit_depth = color_type = None - chunks: list[bytes] = [] + compressed_parts = [] while pos < len(data): length = struct.unpack(">I", data[pos : pos + 4])[0] pos += 4 @@ -35,18 +34,19 @@ def read_png(path: Path) -> tuple[int, int, list[list[tuple[int, int, int, int]] pos += 4 chunk = data[pos : pos + length] pos += length - pos += 4 # CRC, ignored (validated by reader) + pos += 4 # CRC if ctype == b"IHDR": width, height, bit_depth, color_type, _, _, _ = struct.unpack(">IIBBBBB", chunk) if bit_depth != 8 or color_type not in (2, 6): raise ValueError("Only 8-bit RGB/RGBA PNGs are supported") elif ctype == b"IDAT": - chunks.append(chunk) + compressed_parts.append(chunk) elif ctype == b"IEND": break if width is None or height is None or bit_depth is None or color_type is None: - raise ValueError(f"{path} missing IHDR") - raw = zlib.decompress(b"".join(chunks)) + raise ValueError("PNG missing IHDR chunk") + + raw = zlib.decompress(b"".join(compressed_parts)) bpp = 4 if color_type == 6 else 3 stride = width * bpp rows = [] @@ -57,19 +57,19 @@ def read_png(path: Path) -> tuple[int, int, list[list[tuple[int, int, int, int]] idx += 1 row = bytearray(raw[idx : idx + stride]) idx += stride - if filter_type == 1: # Sub + if filter_type == 1: for i in range(stride): left = row[i - bpp] if i >= bpp else 0 row[i] = (row[i] + left) & 0xFF - elif filter_type == 2: # Up + elif filter_type == 2: for i in range(stride): row[i] = (row[i] + prev[i]) & 0xFF - elif filter_type == 3: # Average + elif filter_type == 3: for i in range(stride): left = row[i - bpp] if i >= bpp else 0 up = prev[i] row[i] = (row[i] + ((left + up) // 2)) & 0xFF - elif filter_type == 4: # Paeth + elif filter_type == 4: for i in range(stride): left = row[i - bpp] if i >= bpp else 0 up = prev[i] @@ -89,24 +89,20 @@ def read_png(path: Path) -> tuple[int, int, list[list[tuple[int, int, int, int]] raise ValueError(f"Unsupported PNG filter type {filter_type}") rows.append(bytes(row)) prev[:] = row + pixels: list[list[tuple[int, int, int, int]]] = [] for row in rows: - row_pixels = [] if color_type == 6: - for i in range(0, len(row), 4): - row_pixels.append(tuple(row[i : i + 4])) + pixels.append([tuple(row[i : i + 4]) for i in range(0, len(row), 4)]) else: - for i in range(0, len(row), 3): - r, g, b = row[i : i + 3] - row_pixels.append((r, g, b, 255)) - pixels.append(row_pixels) + pixels.append([tuple(row[i : i + 3] + b"\xff") for i in range(0, len(row), 3)]) return width, height, pixels def write_png(path: Path, width: int, height: int, pixels: list[list[tuple[int, int, int, int]]]) -> None: raw = bytearray() for row in pixels: - raw.append(0) # no filter + raw.append(0) # filter type 0 for r, g, b, a in row: raw.extend((r & 0xFF, g & 0xFF, b & 0xFF, a & 0xFF)) compressed = zlib.compress(raw, level=9) @@ -127,83 +123,50 @@ def write_png(path: Path, width: int, height: int, pixels: list[list[tuple[int, path.write_bytes(out) -def crop_content(pixels: list[list[tuple[int, int, int, int]]]) -> list[list[tuple[int, int, int, int]]]: +def bilinear_sample(pixels: list[list[tuple[int, int, int, int]]], x: float, y: float) -> tuple[int, int, int, int]: height = len(pixels) width = len(pixels[0]) - min_x, min_y = width, height - max_x = max_y = -1 - for y, row in enumerate(pixels): - for x, (_, _, _, a) in enumerate(row): - if a > 0: - if x < min_x: - min_x = x - if y < min_y: - min_y = y - if x > max_x: - max_x = x - if y > max_y: - max_y = y - if max_x < min_x or max_y < min_y: - return pixels - cropped = [row[min_x : max_x + 1] for row in pixels[min_y : max_y + 1]] - return cropped - - -def bilinear_sample(data: list[list[tuple[int, int, int, int]]], x: float, y: float) -> tuple[int, int, int, int]: - height = len(data) - width = len(data[0]) - if x < 0: - x = 0 - if y < 0: - y = 0 - if x > width - 1: - x = width - 1 - if y > height - 1: - y = height - 1 + x = min(max(x, 0.0), width - 1.0) + y = min(max(y, 0.0), height - 1.0) x0 = int(math.floor(x)) - x1 = min(x0 + 1, width - 1) y0 = int(math.floor(y)) + x1 = min(x0 + 1, width - 1) y1 = min(y0 + 1, height - 1) dx = x - x0 dy = y - y0 + def lerp(a: float, b: float, t: float) -> float: return a + (b - a) * t + result = [] for channel in range(4): - c00 = data[y0][x0][channel] - c10 = data[y0][x1][channel] - c01 = data[y1][x0][channel] - c11 = data[y1][x1][channel] + c00 = pixels[y0][x0][channel] + c10 = pixels[y0][x1][channel] + c01 = pixels[y1][x0][channel] + c11 = pixels[y1][x1][channel] top = lerp(c00, c10, dx) bottom = lerp(c01, c11, dx) - value = lerp(top, bottom, dy) - result.append(int(round(value))) + result.append(int(round(lerp(top, bottom, dy)))) return tuple(result) -def resize_with_background( - src: list[list[tuple[int, int, int, int]]], - canvas_size: int, - fill_ratio: float, - background: tuple[int, int, int], -) -> list[list[tuple[int, int, int, int]]]: - src_h = len(src) - src_w = len(src[0]) - scale = fill_ratio * min(canvas_size / src_w, canvas_size / src_h) - dest_w = max(1, int(round(src_w * scale))) - dest_h = max(1, int(round(src_h * scale))) - offset_x = (canvas_size - dest_w) // 2 - offset_y = (canvas_size - dest_h) // 2 - canvas = [ - [(background[0], background[1], background[2], 255) for _ in range(canvas_size)] - for _ in range(canvas_size) - ] - for dy in range(dest_h): +def resize_image(pixels: list[list[tuple[int, int, int, int]]], target: int) -> list[list[tuple[int, int, int, int]]]: + src_height = len(pixels) + src_width = len(pixels[0]) + scale = min(target / src_width, target / src_height) + dest_width = max(1, int(round(src_width * scale))) + dest_height = max(1, int(round(src_height * scale))) + offset_x = (target - dest_width) // 2 + offset_y = (target - dest_height) // 2 + + background = (0, 0, 0, 0) + canvas = [[background for _ in range(target)] for _ in range(target)] + + for dy in range(dest_height): src_y = (dy + 0.5) / scale - 0.5 - for dx in range(dest_w): + for dx in range(dest_width): src_x = (dx + 0.5) / scale - 0.5 - r, g, b, a = bilinear_sample(src, src_x, src_y) - canvas[offset_y + dy][offset_x + dx] = (r, g, b, a) + canvas[offset_y + dy][offset_x + dx] = bilinear_sample(pixels, src_x, src_y) return canvas @@ -213,18 +176,15 @@ def build_ico(output: Path, png_paths: list[Path]) -> None: for path in png_paths: data = path.read_bytes() width, height, _ = read_png(path) - entry = { - "width": width if width < 256 else 0, - "height": height if height < 256 else 0, - "colors": 0, - "reserved": 0, - "planes": 1, - "bit_count": 32, - "size": len(data), - "offset": offset, - "data": data, - } - entries.append(entry) + entries.append( + { + "width": width if width < 256 else 0, + "height": height if height < 256 else 0, + "size": len(data), + "offset": offset, + "payload": data, + } + ) offset += len(data) header = struct.pack(" None: " None: - base_w, base_h, base_pixels = read_png(BASE_TRANSPARENT) - background_w, background_h, bg_pixels = read_png(BACKGROUND_SOURCE) - background_color = bg_pixels[background_h // 2][background_w // 2][:3] - - cropped = crop_content(base_pixels) + width, height, pixels = read_png(BASE_IMAGE) + if width != height: + raise ValueError("Base icon must be square") generated: list[Path] = [] for size in TARGET_SIZES: - dest_pixels = resize_with_background(cropped, size, FILL_RATIO, background_color) + resized = resize_image(pixels, size) out_path = ICON_DIR / f"icon-{size}.png" - write_png(out_path, size, size, dest_pixels) + write_png(out_path, size, size, resized) generated.append(out_path) print(f"Generated {out_path} ({size}x{size})") - # Update base PNG used by some bundlers - biggest = max(generated, key=lambda p: int(p.stem.split("-")[-1])) - (ICON_DIR / "icon.png").write_bytes(biggest.read_bytes()) + largest = max(generated, key=lambda p: int(p.stem.split("-")[-1])) + (ICON_DIR / "icon.png").write_bytes(largest.read_bytes()) - # Build ICO with largest size first (common preference) - ordered = sorted( + ico_sources = sorted( [p for p in generated if int(p.stem.split("-")[-1]) <= 256], key=lambda p: int(p.stem.split("-")[-1]), ) - build_ico(ICON_DIR / "icon.ico", ordered) - print("icon.ico rebuilt with revised artwork.") + build_ico(ICON_DIR / "icon.ico", ico_sources) + print("icon.ico rebuilt.") if __name__ == "__main__": main() + diff --git a/apps/desktop/src-tauri/icons/icon-128.png b/apps/desktop/src-tauri/icons/icon-128.png index 92b8de72456ca4b193c7a5225e62bcf96eaaaa27..73fae2a6cfa4a30866411a6722ec468d3b0f7bb7 100644 GIT binary patch literal 15721 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