Login
Username:

Password:

Remember me



Lost Password?

Register now!

Sections

Who's Online
214 user(s) are online (139 user(s) are browsing Forums)

Members: 0
Guests: 214

more...

Support us!

Headlines

 
  Register To Post  

« 1 ... 8 9 10 (11)
Re: infinite icons theme pack
Just can't stay away
Just can't stay away


See User information
@DigitalDesigns

Thank you so much for this icon pack. It's really great, and you've described how to use it really well in the readme file.

Personally, I was only interested in the partition icons because the rest is a bit incomplete and I don't want to mix up my system too much, even though I have created a backup.

Here you can see my workbench with the icons you provided. It's great, and I didn't even know that AmigaOS 4.1 could also handle dual png icons... it's the future

Resized Image

MacStudio ARM M1 Max Qemu//Pegasos2 AmigaOs4.1 FE / AmigaOne x5000/40 AmigaOs4.1 FE
Go to top
Re: infinite icons theme pack
Just popping in
Just popping in


See User information
@Maijestro

Thank you
What do you mean by the rest is incomplete?

Regards:
JTDigitalDesigns

Go to top
Re: infinite icons theme pack
Just popping in
Just popping in


See User information
@DigitalDesigns

First off, I recently purchased your Icon Pack and… wow. It's absolutely spectacular! Beautiful work!

Based on Maijestro’s feedback, I think he might be referring to a few things:

- Missing Emulation drawer in the Workbench setup
- Lack of icons for APPDIR, PIPE, and URL DOSDrivers

You've created a fantastic variety of custom Utilities drawers, but there are no icons for commonly used apps like:
- AmiPDF
- AmiUpdate
- AmiGS
- and more...

Some minor suggestions:

It’d be great to have a DataTypes folder with matching icons, similar to your DOSTypes drawer

And a few wishlist items for future updates (if you’re taking requests 😉):
- Filer drawer + app icon
- RunInUAE drawer + app icon
- Emulation Floppy drawer
- Emulation CinemawareGames drawer
- IMP3 drawer + app icon

Thanks again for such a visually rich and thoughtful pack — these icons would really look great on my Workbench!

BTW: I have a small Python script that splits your PNG icons, resize the individual images to 64x64 (configurable) and concatenates them again. The 256x256 are really detailed, but loading a lot of them (e.g. when opening Prefs drawer) takes a lot more time.

Go to top
Re: infinite icons theme pack
Just popping in
Just popping in


See User information
@FlynnTheAvatar
Thank you for your kind review and the constructive comments!

- Missing Emulation drawer in the Workbench setup
(Emulation drawer will missing but inside icons is there, i will
make this drawer)


- Lack of icons for APPDIR, PIPE, and URL DOSDrivers
(That i know these is missing, working on for them)

You've created a fantastic variety of custom Utilities drawers, but there are no icons for commonly used apps like:
- AmiPDF
- AmiUpdate
- AmiGS
- and more...
(I will make these, some list of commom apps should be nice)


And a few wishlist items for future updates (if you’re taking requests 😉):
- Filer drawer + app icon
- RunInUAE drawer + app icon
- Emulation Floppy drawer
- Emulation CinemawareGames drawer
- IMP3 drawer + app icon
(I will make these)

BTW: I have a small Python script that splits your PNG icons, resize the individual images to 64x64 (configurable) and concatenates them again. The 256x256 are really detailed, but loading a lot of them (e.g. when opening Prefs drawer) takes a lot more time.
(Would it be possible to get a script, it would make importing icons to other platforms a lot easier, I could even pay for it, I understand if you don't want to give or sell it)

Go to top
Re: infinite icons theme pack
Just popping in
Just popping in


See User information
@FlynnTheAvatar

I'm interested in your Python script. Would you be willing to send it to me, or, as DigitalDesigns indicated, I'm also willing to purchase it.

I'd like to extract the second icon. I tried with icontoiff, but I can't get it to output as webp. Icontoiff gives me an error message.

And in IFF, my Mac displays a rainbow instead of the PNG icon.

Thanks.

Go to top
Re: infinite icons theme pack
Just can't stay away
Just can't stay away


See User information
@DigitalDesigns

Quote:
DigitalDesigns wrote:@Maijestro

Thank you
What do you mean by the rest is incomplete?


It's exactly as @FlynnTheAvatar described. Thank you for adding the missing parts to the “infinite icons theme pack.”

Since some users have already reported that the 256x256 PNG icons take a little longer to load, it would be great if you could also offer all icons in 64x64. I hope you can find a solution for this.

Thank you for this great work.

MacStudio ARM M1 Max Qemu//Pegasos2 AmigaOs4.1 FE / AmigaOne x5000/40 AmigaOs4.1 FE
Go to top
Re: infinite icons theme pack
Just popping in
Just popping in


See User information
@DigitalDesigns

The script is something I created with the help of CoPilot in a few minutes. It scans a given file, extracts all the embedded PNGs, resizes them to a specified dimension (default: 64×64), and writes them back as a single binary blob.

It was built with Python 3 and runs on Linux. You can pass in a custom size via the --size argument, and note: it overwrites the input file, so make a backup if needed.

I don’t take credit for the idea — feel free to tweak and use it however you like:
#!/bin/env python3

import argparse
from PIL import Image
import io
import re

def find_pngs
(file_path):
    
with open(file_path'rb') as f:
        
content f.read()

    
# PNG file starts with this header
    
png_header b'\x89PNG\r\n\x1a\n'

    
# Find all positions in the binary stream where the header occurs
    
positions = [m.start() for m in re.finditer(re.escape(png_header), content)]

    
images = []
    for 
i in range(len(positions)):
        
start positions[i]
        
end positions[1] if len(positions) else len(content)
        
images.append(content[start:end])

    return 
images

def resize_and_export
(png_bytessize=(6464)):
    
image Image.open(io.BytesIO(png_bytes))
    
resized image.resize(sizeImage.LANCZOS)
    
output io.BytesIO()
    
resized.save(outputformat='PNG')
    return 
output.getvalue()

def process_and_concat(input_fileoutput_filesize=(6464)):
    
png_raw_data find_pngs(input_file)
    
concatenated b''

    
for ipng in enumerate(png_raw_data):
        
small_png resize_and_export(pngsize)
        
concatenated += small_png

    with open
(output_file'wb') as f:
        
f.write(concatenated)

if 
__name__ == "__main__":
    
parser argparse.ArgumentParser(
        
description="Resizes PNG images in a file and concatenates them in binary form."
    
)
    
parser.add_argument(
        
"input",
        
help="Path to the input file containing embedded PNGs"
    
)
    
parser.add_argument(
        
"--size",
        
type=int,
        
nargs=2,
        default=[
6464],
        
help="Target size (width height)"
    
)

    
args parser.parse_args()
    
process_and_concat(args.inputargs.inputtuple(args.size))


Usage Example — Convert all .info files in the current directory:

find . -name '*.info' -exec ./convert.py --size 64 64 {} \;


Let me know if you find it useful, or have ideas for enhancements!

Go to top
Re: infinite icons theme pack
Just popping in
Just popping in


See User information
@FlynnTheAvatar

Thanks, i dont know how to run scripts in amiga os.

Go to top
Re: infinite icons theme pack
Just popping in
Just popping in


See User information
@DigitalDesigns

I am working on a version that works on Amiga OS 4.1. The initial script uses a few features that are not available on Python 2.5. The script is ready, but you need to install PIL from os4depot to make the script work.

Additionally, I need to figure out an easy way to call the script on each file. I keep you updated and I will provide steps how to do the conversion on AmigaOS.

Go to top
Re: infinite icons theme pack
Just popping in
Just popping in


See User information
Detailed steps to resize PNG icons on AmigaOS 4.1:

1. Save this script as s:resize.py
#!/usr/bin/env python

import sys
import re
import StringIO
from PIL import Image

def find_pngs
(file_path):
    
open(file_path'rb')
    try:
        
content f.read()
    finally:
        
f.close()

    
png_header '\x89PNG\r\n\x1a\n'
    
positions = []
    
index 0
    
while True:
        
index content.find(png_headerindex)
        if 
index == -1:
            break
        
positions.append(index)
        
index += 1

    images 
= []
    for 
i in range(len(positions)):
        
start positions[i]
        
end positions[1] if len(positions) else len(content)
        
images.append(content[start:end])

    return 
images

def resize_and_export
(png_bytessize=(6464)):
    
image Image.open(StringIO.StringIO(png_bytes))
    
resized image.resize(sizeImage.ANTIALIAS)
    
output StringIO.StringIO()
    
resized.save(outputformat='PNG')
    return 
output.getvalue()

def process_and_concat(input_fileoutput_filesize=(6464)):
    
png_raw_data find_pngs(input_file)
    
concatenated ''

    
for png in png_raw_data:
        
small_png resize_and_export(pngsize)
        
concatenated += small_png

    f 
open(output_file'wb')
    try:
        
f.write(concatenated)
    finally:
        
f.close()

def main():
    if 
len(sys.argv) < 2:
        print 
"Usage: python convert.py <input_file> [width height]"
        
sys.exit(1)

    
input_path sys.argv[1]
    if 
len(sys.argv) >= 4:
        
width int(sys.argv[2])
        
height int(sys.argv[3])
        
size = (widthheight)
    else:
        
size = (6464)

    
process_and_concat(input_pathinput_pathsize)

if 
__name__ == "__main__":
    
main()


2. Install PIL (https://os4depot.net/share/development/library/misc/pil.lha)
2a. Extract to RAM
2b. Execute RAM:PIL/Install_PIL

3. Create a script that calls s:resize.py on each #?.info file. Execute in Shell in the directory containing the info files:
LIST PAT=#?.info ALL FILES TO t:resize_all LFORMAT="python s:resize.py *"%P%N*" 64 64"

3.a (Optional) Check the t:resize_all script in an editor

4. Execute created script in the same Shell:
EXECUTE T:resize_all


EDIT: Please note the *" around %P%N. It is needed because the Path/filenames might contain spaces.


Edited by FlynnTheAvatar on 2025/7/26 19:28:07
Edited by FlynnTheAvatar on 2025/7/26 19:39:58
Go to top
Re: infinite icons theme pack
Just can't stay away
Just can't stay away


See User information
@FlynnTheAvatar

Quote:
Additionally, I need to figure out an easy way to call the script on each file.
There's a ForEach command in C:, maybe that would help?

Best regards,

Niels

Go to top
Re: infinite icons theme pack
Just popping in
Just popping in


See User information
@nbache

Thanks for the suggestion! I actually tried using FOREACH, but I couldn't get it to work recursively across subdirectories based on a pattern. To make it viable, I’d need to first feed it the output from a LIST command anyway. So at that point, I don’t see a clear advantage over just sticking with LIST and EXECUTE directly.

Go to top

  Register To Post
« 1 ... 8 9 10 (11)

 




Currently Active Users Viewing This Thread: 1 ( 0 members and 1 Anonymous Users )




Powered by XOOPS 2.0 © 2001-2024 The XOOPS Project