2010-01-30 19 views
6

Estoy buscando un método exactamente como -[NSWorkspace iconForFile:] pero que devuelve el ícono en una resolución más alta si es posible. En particular, tengo una aplicación que hace uso de QuickLook para mostrar vistas previas de archivos, y me gustaría que vuelva al ícono del archivo si no hay un complemento de búsqueda rápida disponible. Sin embargo, con el método iconForFile:, se obtiene un pequeño icono de 32x32. ¿Hay algún método mejor? Se prefiere uno que devuelva NSImage o CGImageRef, pero los métodos menos accesibles también podrían estar bien.Icono de alta resolución para archivo en Mac OS X?

Respuesta

5

La imagen devuelta de -[NSWorkspace iconForFile:] contiene varias representaciones, incluidas las de mayor resolución.

Si intenta dibujarlo a 512x512, elegirá automáticamente la representación adecuada.

3

Aquí es la manera de hacer que el icono más grande:

NSImage * icon = [NSWorkspace iconForFile:yourPath]; 
[icon setSize:NSMakeSize(64,64)]; 

Eso es todo. ¡Buena suerte!

+0

'-setSize' está lleno de peligros y debe evitarse a menos que sepa lo que está haciendo. –

+1

El código es de http://developer.apple.com/library/mac/documentation/cocoa/Conceptual/Workspace/Articles/InformationAboutFiles.html#//apple_ref/doc/uid/20001004-39665 – UJey