How to create a Icon set?

Hi Jan,

Yeah I took a look at the example file and see I could do that, and that may be the best way. But I also took a look at the .dis files that came with opus and saw that they work a different way. All their icons are stored in one big file and referenced by col,row. I'm just wondering if there is some simple way to use this method or is it a matter of just loading all the individual icons into a paint programe and carefully positioning them together in one image and saving them out.

[quote="reck"]Hi Jan,

Yeah I took a look at the example file and see I could do that, and that may be the best way. But I also took a look at the .dis files that came with opus and saw that they work a different way. All their icons are stored in one big file and referenced by col,row. I'm just wondering if there is some simple way to use this method or is it a matter of just loading all the individual icons into a paint programe and carefully positioning them together in one image and saving them out.[/quote]
You don't have to use the "one big grid of images" method. It's up to you. Use lots of individual images, if you want.

The example that comes with Opus uses a single big image grid because that's the format the Opus 8 icons were already in.

BTW, it's also possible to have several grids of images, of a mixture of grids and individual images. Opus doesn't care. In fact, individual images are really treated as 1x1 grids, if you look at the XML I posted (every image references a different PNG file and points to row=1 and col=1). Of course, a 1x1 grid is identical to an individual image. :slight_smile:

Since I have a ton of Vista icons which appear to be 256x256x32, this approach would work?

I'll test it out.

nate

It didn't seem to work as planned.

I put 4 .png files that are 256x256x32. My .xml file lists out the 4 files as Large with the 256x256 hight and width and all are in Col 1, Row 1. Each is listed individually.

The .dis file was imported without error but they appear in their native 256 size in the Prefs box. They're huge and I can't select them when configuring a button. They appear to be useless.

Any ideas?


Are they that big on the toolbar? You might need to run at a higher resolution or buy a bigger monitor.

I can't even select the file when I customize the button.

Maybe scale the images down? :slight_smile:

No point making a .dis file with huge images that Opus has to waste time scaling every time it starts up. Scale them down before making the .dis file instead.

Opus's image converter can batch-scale images for you. I think it will preserve PNG transparency (although I am not certain -- if it doesn't there are plenty of image editing tools/utils which will).

If you think Axialis IconWorkshop will handle this, that would be great. I've already downloaded the trial version but there's clearly a lot to it. If it can resize icons into the smaller formats I'm fine with structuring the XML file to create something worthwhile.

Oh, I forgot they were .ico source images. I'm not sure if IconWorkshop can batch-resize things (maybe it can, I don't know it inside out).

If you upload the images somewhere I'll resize them for you using Photoshop or ImageMagick.

DO's image conversion seems to be sufficient. I can convert any image file to a different type of a specific size. I've been able to create the .dis file and it worked... although for some reason, the icons weren't immediately available. When I tried selecting one while configuring a new button, the icons would appear with the others but I couldn't select them. But it worked the 2nd time around.

Question: which of the available destination formats should be used? GIF, JPEG, PNG, BMP?

nate

You should be able to use any of those. In fact, I just found out today that the Opus 8 Icon Set is on your hard drive in .dis format, if you want to dissect it.

Go to /dopusglobaldata\Icons and you will see the Opus8Icons.dis. It's just a zip file, which can be listed.

Inside are two .png files and the XML file:[ul][li] AllIconsLarge.png[/li]
[li] AllIconsSmall.png[/li]
[li] Opus8Icons.xml[/li][/ul]

Hello,
I've been reading this thread, but haven't commented until now.
I have no doubt that eventually there will be a DOpus update or a good windows program that will create the dis fle.
A dis file is easily imported to a flash drve export of DOpus.

I couldn't wait either, and I am writing a PHP5 program that generates the internal xml file of a dis file of several individual icons using the PHP5 xmlWriter.
I have the program working now for a directory of icons ( gif or png ) that I upload to a directory.
There are a few problems yet:[ul]1) Unfortunately, unix filenames don't allow all unicode characters ( on my server anyway ).
2) I can create a unix textfile of the code in utf-8, but it's Unix and the newlines don't display properly in Windows notepad.
Textpad or Ultraedit see it though.
3) Noone wants to upload their icon files to my server.
That would be quite stupid.
4) How can the image size be determined if the fles aren't present on the server ?
It really is best that they be the same size.
[/ul]
So, I'm working on a copy and paste solution.
One needs to use Clipboard Copynames nopaths to get a list of image filenames.
Then, one pastes the clipboard into an HTML form textarea.
Click submit and a new page asks for filename aliases, image sizes, etc.....
I'm working on this now.
Click Submit again and and the result is then posted in another HTML textarea.
Just copy and paste into Notepad or your text editor and save it as the name of the dis XML file.

I have a crude result page of a demo large icon set posted here .
I am Not really the Artist and GPSoft is Not the copyright holder.
I'm still working on it.
Perhaps a week from now, maybe sooner ....

Zippo

They should all work but PNG is generally the best format for this type of image, since it compresses well without losing any information and it also allows for 24-bit colour (unlike GIF) with an 8-bit alpha channel (unlike any of the other formats) for smooth shadows and antialiasing on any background colour.

Example of the PNG alpha channel in action:

nudel.dopus.com/opus9/transparency.html

(Note the shadows.)

Thanks for the recommendation Nudel.

nate

One other question related to image conversion...

If I have an .ico and a .png file as a source (but the .png is 256x256 and needs to be resized), is the .png also a higher quality candidate to copy from as well?

nate

It depends how the .ico file was made.

These days .ico files can be up to 256x256 and have alpha channels just like PNG files. The only difference is they'd be bigger as they are not compressed.

(Actually, on Windows Vista, .ico files can literally contain PNG images.)

That said, not all .ico files will be high quality. Some may only contain a 16x16 8-colour image, for example.

I've made some progress on my PHP5 xml file generator.
The idea is to use PHP5 to create the xml file of a dis file that contains various similar sized png or gif icon images.

It's not finished yet.
It needs at least one more good work session.

It uses this button to copy filenames of images to the clipboard:

Clipboard Copynames nopaths

It won't output the final result yet, but utf-8 unicode is working !
I'm working on a javascript pulldown menu that populates all the image size text fields.
The idea is that one may choose either 'small' or 'large' from a pulldown menu and the sizes textfields are populated with 20 x 20 or 32 x 32.
These textfields can be edited as well.
On submit, a function validates that the sizes are numeric.
Hmmm.... I can do the function, but I just thought of another problem as the form action is to another page and not the same page.

Well, in any case the dummy 'ww' and 'hh' entries that are there now will not be there when all is working.

You can see it here.

Interpreting the post data of this is really not that difficult.
Much of it is just a big array.

Hmmm.... maybe I'll have it by monday.

Regards,
Zippo

Just in case anyone is interested, it's all working now.
I've moved it to here.

I have no doubt that we'll eventually have something more integrated with Directory Opus.
Untill then, this can be a time saver.

Zippo

P.S.

Nice Dave... I'm trying out your webscript now and will shout back with results...

Also, for anyone reading this thread and hearing about Axialis Icon Workshop... It is indeed a good icon editor, but you might also want to try IcoFX - which is a freeware icon editor and has alot of the saem features and ease of use points that the Axialis product has.

Hi Steje,

Well, if you can believe this..... you're really the first to try it !
Out of curiousity, I do log the UTF-8 unix textfiles.

It's really not full unicode yet.
The PHP5 XML writer saves alot of PHP code writing,
but fails with unicode on the Displayed Name, Copyright, and Artist tags.
It's just not all there yet.
I think I can hack fix it, but noone at all is interested.

Works fine for me though !
I've converted all my toolbar icons to dis files.
BTW, you do need to convert to the small size icons.
Directory Opus does not resize an icon in a dis file yet.
As of 9.002 it does crop from the upper lefthand corner.

If your icons are already square in size,
you'll save yourself a few headaches if you simply resize them using Directory Opus.
Convert to png and resize.
It results in a 32 bit png with transparency intact.
Whatever DO is using is quite good for this.
Nothing ugly at all, crisp and not too thick.
Fast and easy !

Other thoughts:

It would be very good to see a Directory Opus USB export with all of the dis files.
As of now you need to import them in yourself .

Don't forget to add dis to your Preferences zip file extensions if you use that.

Zippo

Edit Note: June 18

[quote]It's really not full unicode yet.
The PHP5 XML writer saves alot of PHP code writing,
but fails with unicode on the Displayed Name, Copyright, and Artist tags.
It's just not all there yet.
I think I can hack fix it, but noone at all is interested.
[/quote]
This is fixed now.
A hack fix was not needed.
I was over encoding to UTF-8.
I also needed to convert some HTML entities back to UTF-8 to make the logged textfile fully UTF-8.