如何将文本绘制到NSImage中?

问题描述 投票:0回答:1

如何使用Swift和AppKit框架将文本绘制到NSImage中?我的目标是macOS应用程序。

我也很感谢任何解释此类情况的资源。我在Apple开发人员文档中找不到示例或解释。

以下代码包含注释,以说明我想要做什么。它在菜单栏项目中显示NSImage

import Cocoa

class ViewController: NSViewController {
    let statusItem: NSStatusItem = NSStatusBar.system.statusItem(
        withLength: NSStatusItem.squareLength)

    override func viewDidLoad() {
        super.viewDidLoad()

        let imageSize = NSSize.init(width: 18.0, height: 18.0)

        let statusItemImage = NSImage(
            size: imageSize,
            flipped: false,
            drawingHandler: { (dstRect: NSRect) -> Bool in
                // How do I draw text into this NSImage?
                return true
        })

        statusItem.button?.image = statusItemImage
    }

    override var representedObject: Any? {
        didSet {
        }
    }
}
swift appkit
1个回答
0
投票

在评论起作用的地方:

let foo: NSString = "a"
foo.draw(in: dstRect)
© www.soinside.com 2019 - 2024. All rights reserved.