2016-04-09 23 views
1

Alle meine Bilder sind einfarbig PDF in XCAssets. Ich möchte sie zur Laufzeit färben, aber ich kann in NSImage keine Farbtoneigenschaft finden.Wie man einen vektoriellen NSB malt (PDF)

Wenn ich NSRectFillUsingOperation verwende, rasterisiert es das Bild, also würde ich es lieber vermeiden.

Zusammenfassend, wie kann ich vektorielle NSImages mit RGB ohne Rasterung tönen?

Antwort

0

Ich landete einen CIFilter Einstellung „CIFalseColor“ über die Schaltfläche in der IB genannt und dann zur Laufzeit steuern ich die Farbe mit:

button.contentFilters[0].setValue(myCIColor, forKey: "inputColor1") 

Dies funktioniert, wenn Ihr Bild weiß ist, inputColor2 die schwarze steuert, also nehme ich an, dass ein Graustufenbild eine Mischung zwischen den beiden wäre.

Es ist nicht das Beste, weil es die Leistung der App verletzt, aber es wird tun, bis jemand einen besseren Weg findet.