Pregunta

Me estoy poniendo un icono de tamaño fijo basado en una imagen de tamaño arbitrario en un NSOutlineView utilizando un NSImageCell.

NSImageCell escalará la imagen hacia abajo muy bien, pero no puedo encontrar una manera de agregar relleno alrededor de la imagen escalada. Las filas se ven feos a mi ojo sin relleno.

Mi primer paso en la fijación de este problema fue la creación de una nueva imagen de tamaño constante, la inserción de sus límites para el relleno, a continuación, utilizar drawInRect: fromRect: Operación: Fracción: dibujar una versión reducida del icono original

Esto funciona muy bien para imágenes cuadradas. Me he adivinado que habría un método de conveniencia en NSImage para dibujar una versión a escala centrada con-relación de aspecto de constante de la imagen en un rect dado, pero no puedo encontrarlo.

Obviamente, yo puedo calcular un rect apropiado con la misma relación de aspecto que la imagen original, pero yo prefiero no reinventar la rueda ...

¿Fue útil?

Solución

Cada código de ejemplo que vi utilizar un cálculo para el relleno. Hay un cierto NSImage categorías en CocoaDev que hacer eso.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top