NSLayoutManager.defaultAttachmentScaling似乎不起作用

问题描述

根据Apple文档,NSLayoutManager的'defaultAttachmentScaling'属性应配置附件的大小调整以填充容器大小。但是由于某种原因,它似乎无法正常工作。

我做错什么了吗?

    let textStorage = NSTextStorage()
    let textContainer = NSTextContainer()
    let layoutManager = NSLayoutManager()
    let textView = NSTextView(frame: NSRect(x: 0,y: 0,width: 500,height: 500),textContainer: textContainer)

    layoutManager.defaultAttachmentScaling = .scaleProportionallyUpOrDown

    textStorage.addLayoutManager(layoutManager)
    layoutManager.addTextContainer(textContainer)

    let attachment = NSTextAttachment()

    let url = URL(string: "https://www.talkwalker.com/images/2020/blog-headers/image-analysis.png")
    let data = try! Data(contentsOf: url!)
    let image = NSImage(data: data)!
    attachment.image = image

    textView.textStorage?.setAttributedString(NSAttributedString(attachment: attachment))

需要调整大小以适应容器大小的预期图像,但实际上它只是被裁剪了:

enter image description here

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...