Hi Terry,
I did this too, a few years ago. The problem I'm still having is that
it only works if a corresponding icns file is available somewhere on
disk. My solution didn't work with applications that aren't
application packages. Does your solution work with applications that
are not applications packages (such as MS Office 2004 applications)?
--
Best regards,
Mark Schonewille
Economy-x-Talk Consulting and Software Engineering
http://economy-x-talk.com
http://www.salery.biz
Dutch forum: http://runrev.info/rrforum
Snapper Screen Recorder is now available for Windows! Download it at <http://snapper.economy-x-talk.com
>.
On 16 mrt 2009, at 10:42, Terry Judd wrote:
I really didn't think this was possible until I stumbled across the
AppleScript 'Image Events' dictionary a couple of days ago but here
(below)
is a scripted solution for creating a PNG image of a file's icon
based on
its filepath. It uses a couple of applescript snippets plus the revXML
external to parse application pList files but you could undoubtedly
forgo
the XML external with a bit of extra scripting effort.
The getIconToFile_Mac function has 4 parameters...
# pSourceFilePath = path of the file you're getting the icon of
# pDestFilePath = path of the image file you're creating
# pIconSize = pixel dimensions of output image (e.g. 16 or 32 etc)
# pReturnImageData = true or false/empty - if true the image
contents are
returned by the function
The routine works on files and applications (including application
bundles)
and the output is a PNG image which retains transparent regions and
is ready
to be sucked up into your project.
There doesn't seem to be any way to capture 'standard' volume and
folder
icons (custom folder and volume images are possible) so I've left
them out
for now.
I've included a couple of drag and drop handlers that you can place
in an
image object to test the routines out.
Anyway, I hope this is useful to someone (it's a bit long and
messy). Feel
free to improve or modify as you see fit.
--
####################################################################
-- ## create an image and put the following 2 handlers in its script
##
-- ## watch out for line wraps
##
ON dragEnter
set the acceptdrop to true
END dragEnter
ON dragDrop
put dragData["files"] into tFile
IF tFile = "" THEN
put dragData["text"] into tFile
if tFile is not empty then
if not ((there is a folder tFile) and char -4 to -1 of tFile =
".app") then
exit dragDrop
end if
else
exit dragDrop
end if
end if
get getIconToFile_Mac(tFile,,128,true)
if it contains "error:" then
put "" into me
else
put it into me
end if
END dragDrop
-- ###############################################################
-- ## put the following 2 functions in the card or stack script ##
-- ## watch out for line wraps ##
<snip>
_______________________________________________
use-revolution mailing list
[email protected]
Please visit this url to subscribe, unsubscribe and manage your subscription
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution