에 텍스트를 추가하여 UIImage와 함께 UICollectionViewCell이 있고 UIImage 위에 텍스트가 겹쳐진 단색 흰색 배경이 표시되도록하려고합니다. 나는이 개별적으로 각각의 작업을 수행하는 방법까지 검색이 내가 가진 무엇 :단색으로 UIImage를 만들고 위 (Swift)
let textImage = textToImage(drawText: "Placeholder text", inImage: whiteImage, atPoint: CGPoint(x: 20.0, y: 20.0))
: 다음
let rect = CGRect(origin: .zero, size: CGSize(width: 1, height: 1))
UIGraphicsBeginImageContextWithOptions(rect.size, false, 0.0)
let color = UIColor.white
color.setFill()
UIRectFill(rect)
let whiteImage = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext()
내가 가진 기능 textToImage
를 호출하고 있습니다 :
솔리드 색상으로있는 UIImage 만들기
textToImage
기능은 여기서
func textToImage(drawText text: NSString, inImage image: UIImage, atPoint point: CGPoint) -> UIImage {
let textColor = UIColor.black
let textFont = UIFont(name: "Helvetica Neue", size: 74)
UIGraphicsBeginImageContext(image.size)
let textFontAttributes = [
NSFontAttributeName: textFont,
NSForegroundColorAttributeName: textColor,
] as [String : Any]
image.draw(in: CGRect(origin: CGPoint.zero, size: image.size))
let rect = CGRect(origin: point, size: image.size)
text.draw(in: rect, withAttributes: textFontAttributes)
let newImage = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext()
return newImage!
}
그리고 textImage를 UICollectionViewCell의 UIImage로 설정합니다.
textToImage 함수는 일반 이미지에서 작동하지만 먼저 단색 이미지를 만든 다음 새로 만든 이미지에서 textToImage를 호출하면 단색이 표시되지만 텍스트는 표시되지 않습니다. 무엇이 여기에 문제가 될 수 있는지에 대한 조언이 있습니까? 감사!