我正在尝试降低消息发送之前的质量,例如,如果连接较差,我想模糊显示UITextView
中的文本,如果连接改善或互联网恢复正常,请删除模糊并显示UITextView
中的普通文本。我尝试使用CATextLayer
不起作用。有没有办法可以做到这一点?
cell.messageTextView.text = theText
let textLayer = CATextLayer()
textLayer.string = cell.messageTextView.text
textLayer.contentsScale = 0.2
cell.messageTextView.layer.addSublayer(textLayer)
最佳答案
您可以通过对其进行栅格化并减小其比例来降低该层的质量:
let badQualityRatio: CGFloat = 4
textView.layer.shouldRasterize = true
textView.layer.rasterizationScale = UIScreen.main.scale/badQualityRatio
结果:
您可以将
rasterizationScale
设置为0到UIScreen.main.scale
之间的任意数字