繁体   English   中英

NSMutableAttributedString 上的冲突属性:.foregroundColor vs.strokeWidth

[英]Conflicting attributes on NSMutableAttributedString: .foregroundColor vs .strokeWidth

我为NSMutableAttributedString创建了一个带有默认文本属性的var

static var textFieldDefaultTextAttributes: [NSAttributedString.Key: Any] = [
  .font: UIFont(name: "Impact", size: 32)!,
  .tracking: 2,
  .paragraphStyle: getParagraphStyle(),
  .strokeColor: UIColor.black,
  .strokeWidth: 3,
  .foregroundColor: UIColor.white
]

分配这些默认 styles 时,会显示正确的颜色和宽度,但不会应用前景色(如下面的第一张图片所示)。

但是,如果我注释掉设置.strokeWidth键的行,则会渲染相应的白色前景色,但不会显示任何笔触(如下图第二张所示)。

我对 iOS 开发比较陌生,所以我很难找到问题的根源。

模拟器运行 Swift 应用程序的代码片段

模拟器运行 Swift 应用程序的代码片段

根据Apple 文档

指定正值以单独更改笔划宽度。 指定负值来描边和填充文本。

只需为.strokeWidth使用负数,这样前景色和笔触都会被渲染。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM