OSXメニューバーのテンプレートイメージの作成に問題があります。私が言う限りでは、それはPDF画像でなければなりません。そのために、私が持っている:OSXメニューバーのテンプレートイメージを動的に作成
var pageRect: CGRect = CGRectMake(0, 0, CGFloat(10), CGFloat(barHeight))
let pdfData: NSMutableData = CFDataCreateMutable(nil, 0)
let pdfConsumer = CGDataConsumerCreateWithCFData(pdfData as CFMutableDataRef)
let pdfContext = CGPDFContextCreate(pdfConsumer, &pageRect, nil)
は、その後、私はPDFに描画:
CGPDFContextBeginPage(pdfContext, nil)
CGContextSetRGBFillColor (pdfContext, 1, 0, 0, 1)
CGContextFillRect (pdfContext, CGRectMake (0, 0, 200, 100))
CGPDFContextEndPage(pdfContext)
その後、私はNSImageでは作成しよう:
let image = NSImage(data: pdfData)
を、ステータスアイテムのに追加します画像プロパティ:
button.image = image
ただし、これはただ動作していません。イメージをディスクに保存して開こうとしましたが、イメージが破損しているというメッセージが表示されるので、pdfDataをNSImageに変換する際にエラーが発生していると思われます。とにかく、どんな助けもありがとう。