2010-06-02 4 views
3

숫자를 그리는 UIView에 스케일 변환을 적용하고 있습니다. (수치는 말 그대로 drawInRect로 그려지는데, UILabel은 보이지 않습니다.) 스케일 변환은 뷰를 작게 만듭니다. 예를 들어, 80 % 작게 만듭니다.iPhone : 스케일 변환을 적용한 후에 텍스트가 잘 보이게 유지 하시겠습니까?

결과 숫자는 약간 "덩어리"로 보입니다. 내 텍스트를 멋지게 보이고 앤티 앨리어스로 보이게 할 수있는 방법이 있나요?

답변

3

스케일은 렌더링 된 (비트 맵) 텍스트를 단순히 줌인하여 흐리게 만듭니다. 한 가지 방법은 크기를 조정하기 전에 컨테이너의 크기에 따라 텍스트의 글꼴 크기를 변경하거나 전체 크기를 피하고 글꼴 크기 만 변경하는 것입니다. 이 related question을 참조하십시오.

결과는보기 크기를 조정하는 방법에 따라 다릅니다. 단순히 글꼴 크기를 변경하는 것만으로는 충분하지 않고 렌더링 된 텍스트를 늘려야 할 수도 있습니다. 이 경우 another approach을 찾아야합니다.

당신이 UILabel을 사용하지 않는다는 것을 알고 있지만, myLabel.adjustsFontSizeToFitWidth = YES을 설정하면 그 경로를 내려 가기로 결정할 때를 대비해 글꼴 크기가 트릭됩니다.

0

내 솔루션 :

lbl.layer.shouldRasterize = YES; 
    lbl.layer.rasterizationScale = 0.375f; 

설정 shouldRasterize 때 원래 크기로 저장.

관련 문제