0
我有一個NSImage,裏面有不同的圖像。圖像內部的圖像位置始終保持不變,所以我需要指定一個矩形,以獲取圖像內部矩形位置的子圖像。這怎麼能做到?在某個NSRect周圍剪裁NSImage
我有一個NSImage,裏面有不同的圖像。圖像內部的圖像位置始終保持不變,所以我需要指定一個矩形,以獲取圖像內部矩形位置的子圖像。這怎麼能做到?在某個NSRect周圍剪裁NSImage
爲什麼一張圖片裏面有多張圖片?過早優化?
在任何情況下,當您通過draw the image時,您傳遞的參數之一就是所需圖像的一部分。通常情況下,你傳遞圖像的邊界或零矩形(這兩個都意味着同樣的事情),但你可以傳遞一個子矩形,如果你想。
如果目標矩形大於源矩形,它將按比例放大(非比例);如果它更小,它將縮小(非比例)。如果不需要任何縮放,請調整目標矩形的大小以匹配源矩形的大小。
如果您想將圖形留給NSImageView,create an empty NSImage of the desired size,然後將其繪製,然後將該圖像傳遞給圖像視圖。這可能會破壞你希望獲得的所有性能優勢,將這些全部融合成一個圖像。
您也可以創建NSView,NSImageView或CALayer的自定義子類,該子類具有NSImage的屬性和源矩形的屬性,並僅繪製該部分。