Re: Merge multiple BMP images into ICO files
by Corion (Patriarch) on Mar 22, 2007 at 13:00 UTC
|
| [reply] [d/l] [select] |
|
Hi
Thanks for the suggestion. Imager looked quite promising, but it seems to do its .ico processing using a XS backend .dll that I won't be able to use on other OSs.
Unfortunately I think I need a pure-Perl solution.
- j
| [reply] [d/l] |
|
I think you're incorrect about needing a .dll file. I've used imager on a few linux boxes, and though I've never needed to do much with .ico files, I've been more than pleased with having chosen that package to work with.-Scott
| [reply] |
|
|
|
|
|
|
|
Re: Merge multiple BMP images into ICO files
by MonkE (Hermit) on Mar 22, 2007 at 14:02 UTC
|
Have you looked at Image::Magick? It is capable of creating ICO files, and the Image Magick library is available on various platforms. I'm not sure if it can create multiple-icon icon files or not, but it should be worth looking into. | [reply] |
Re: Merge multiple BMP images into ICO files
by leocharre (Priest) on Mar 22, 2007 at 14:04 UTC
|
imagemagick, mogrify, convert ? It's really smelling like 'convert' here. They have ICO listed as a supported format.
| [reply] |
|
Hi
Yes, ImageMagick would do what I want, but I don't want to have to build bindings for ImageMagick across multiple OSs.
This may be an X-Y problem.
The issue is that this is for an in-house build for an Eclipse Rich Client Platform Application. For Eclipse RCP, you can build all OS applications on one system, because the "executable" is really a bundled launcher. So the Eclipse folks give you the executable for all OSs in the Eclipse bundle, and you copy it to the name of your application. The executable then loads your Rich Client Application java code . So concievably, you can build Win32, linux, sparc, hp-ux Rich Client applications all from a Mac OS X machine (for example).
The trick is that the windows executable has the icon embedded in it, and I'm trying to figure out how to change the icon in the executable. Win32::Exe can change the icon of a windows executable given an .ico file, and seems to be pure Perl. However, I have a set of .bmp files that need to be converted to .ico, then I can embed them.
Eventually we may distribute this setup to other people/systems and the requirement to have/install/build ImageMagick side task seems a bit like overkill. But then again, I can't spend days looking into it, so ImageMagick might have to do.
Thanks for the input. - J
| [reply] |
|
| [reply] |
|
|
It may be slightly simpler to skip the "build perl bindings for ImageMagick for each platform" step, and use the command-line magick tools. While it's admirable to try to integrate the two into a monolithic tool, there comes a point when it's valuable to rely on system() and ship a small private bundle of dedicated tools.
For example, many Mac OS X tools are starting to embed more of these tiny command-line tools into their .app packaging, unbeknownst to the user. The fact that for Darwin, an application IS a subdirectory just helps that process along, but there's no reason you can't do that with application bundles on other platforms.
-- [ e d @ h a l l e y . c c ]
| [reply] [d/l] |
|