Estoy intentando procesar una imagen en CoreGraphics y luego devuelvo la imagen procesada a NSImage
para guardarla y mostrarla. Tengo amplios recursos sobre cómo realizar estas funciones en iOS pero los métodos auxiliares parecen faltar en NSImage
. En iOS, el método de clase es imageWithCGImage:
, ¿cómo se puede hacer esto en Mac OS?Obteniendo NSImage de CGImageRef
24
A
Respuesta
42
El método de coincidencia en NSImage es initWithCGImage:size:
.
El segundo argumento toma el tamaño de la imagen en puntos. El factor entre el tamaño en píxeles (de CGImage) y el tamaño en puntos es el factor de escala. Entonces, por ejemplo, si tiene una CGImage de 100 × 100px y pasa un tamaño de (NSSize){ 50.0, 50.0 }
, la imagen tendrá 50 puntos de tamaño y doble resolución.
Normalmente debería simplemente pasar el tamaño en píxeles (desde CGImage) como el tamaño en puntos. Para manejar múltiples factores de escala, es mejor usar un único NSImage con múltiples NSImageReps, como lo que obtiene de -[NSWorkspace iconForFileType:]
para la mayoría de los tipos o de crear un NSImage desde un archivo .icns típico.
Cuestiones relacionadas
- 1. Convirtiendo un NSImage * en un CGImageRef?
- 2. Obteniendo un NSImage de un NSProgressIndicator
- 3. CVPixelBufferRef a NSImage
- 4. ¿Cómo volcar CALayer en CGImageRef?
- 5. Flip NSImage en ambos ejes
- 6. UIImage de CGImageRef
- 7. UIImage -> CGImageRef
- 8. CGImageRef Memory leak
- 9. Dibujando en CGImageRef
- 10. NSImage a Base64
- 11. NSURL → → NSImage NSImageView
- 12. NSImage no escala
- 13. NSImage vs. CIImage vs. CGImage?
- 14. Obtener píxeles y colores de NSImage
- 15. ¿Guardar CGImageRef en un archivo png?
- 16. NSImage a cv :: Mat y viceversa
- 17. Cómo leer imágenes PNG en NSImage
- 18. NSImage y la retina confusión pantalla
- 19. UIImage creado a partir de CGImageRef falla con UIImagePNGRpresentation
- 20. ¿Cómo puedo obtener un CGImageRef de un archivo?
- 21. Obtener los límites de un NSImage dentro de un NSImageView
- 22. Tinte de un NSImage (o CIImage) en escala de grises
- 23. tratando de convertir [NSImage imageNamed: NSImageNameUser] en NSData
- 24. Representación de NSView que contiene algunos CALayers en un NSImage
- 25. Almacenamiento de un NSImage en un Core Data Model
- 26. Vista previa de Mac Vista rápida en un NSView o NSImage?
- 27. ¿Cuál es la diferencia entre el NSImage y el UIImage?
- 28. Cómo guardar un NSImage como un nuevo archivo
- 29. Obteniendo datos de Alexa
- 30. Obteniendo nombres de ... (puntos)
NSZeroSize es la abreviatura de "mismo tamaño que CGImage". – Ken
@Ken ¡Gracias, Ken, es información clave! –