2017-04-18 12 views
0

이미지로 텍스트/글꼴을 만들고 문자열의 일부로 사용 하시겠습니까? 내 앱의 여러 위치에서 라벨에 금액보다 먼저 동전 이미지를 표시하고 싶습니다. 예를 들어 $ 4.00 대신 $ 기호 대신 맞춤 통화 이미지가 사용됩니다.이미지를 텍스트의 일부로 포함

통화 이미지를 글꼴 텍스트 (예 : 멋진 글꼴)로 변환하고 문자열에 사용하는 것이 궁금합니다.

만약 우리가 자신의 맞춤 통화 이미지로 앱 전체에 통화 금액을 표시 할 수 있도록하려면 어떻게해야 좋을까요? 어떤 종류의 맞춤 라벨?

+1

글꼴로 이러한 목표를 달성하기 위해 NSAttributeString를 사용할 수 기술적으로 오프셋, 크기에 도움 그리 시트와 테이블에 저장된 관련 데이터 등 내가 당신을 생각입니다 * * 만들 수 있습니다 기본적으로 단일 문자가 있고 크기 조정이 가능한 "글꼴"이지만 많은 노력이 필요합니다. 더 좋은 방법은 그림 이모티콘을 만드는 것입니다. (어쩌면 그것에 대해 충분히 알지 못합니다.) 그렇다면 텍스트로 사용할 수있는 유니 코드 문자입니다. 가장 쉬운 옵션은 UILabel을 서브 클래스 화하고 이미지를 표시하는 데 필요한 것을 * draw (rect :) * 메소드에 추가 한 다음 UI에 추가하는 것입니다. 그렇습니다. 금액과 금액 사이에 "선행"공간이있을 수 있지만 작동합니다. – dfd

답변

1

당신은 NSTextAttachment

let dollarImage = UIImage(named: "DollarSign") 

let attachment = NSTextAttachment() 
attachment.image = dollarImage 
attachment.bounds = CGRect(origin: .zero, size: dollarImage.size) 

let attachmentString = NSAttributedString(attachment: attachment) 
let currencyString = NSAttributedString(string: "4.40") 

let attributedString = NSMutableAttributedString(attributedString: attachmentString) 
attributedString.append(currencyString) 
+0

이것은 합리적인 해결책이지만, 이미지 높이가 텍스트 높이와 잘 정렬되도록하려면 어떻게해야합니까? – Prabhu

+0

기대하는 텍스트와 일치하도록 이미지를 디자인하는 가장 좋은 방법입니다. 필요한 경우 이미지에 공백을 포함하십시오. –

+0

죄송합니다. 다음을 따르지 않습니다 ... 어떻게 이미지에 공백을 포함합니까? – Prabhu