문제

uitextview에서 기울임 꼴 글꼴 스타일을 설정하고 싶지 만 IOS에서 중국어 / 일본어 / 한국어로 작동하지 않으므로 누구도 도움이됩니까?

도움이 되었습니까?

해결책

iOS에 이탤릭체 스타일의 중국어 글꼴이 없기 때문에 아핀 변환 ~을 사용해야합니다.일반적인 중국어 글꼴을 기울이십시오.

아래 코드는 Heiti SC Medium에 15 ° 슬래되을 제공합니다.

CGAffineTransform matrix = CGAffineTransformMake(1, 0, tanf(15 * (CGFloat)M_PI / 180), 1, 0, 0);
UIFontDescriptor *desc = [UIFontDescriptor fontDescriptorWithName:@"Heiti SC Medium" matrix:matrix];
textView.font = [UIFont fontWithDescriptor:desc size:17];
.

실제 효과 :

여기에 이미지 설명을 입력하십시오

다른 팁

나는 문제를 해결하지 못하고이 종류의 "프로그래밍 방식의 이탤릭체"가 정말로 나쁜 가독성이 있음을 상기시켜줍니다.

CJK 텍스트의 경우, 강조 (또는 인용문)를 표현하는 올바른 방법은 다른 스타일 (일반적으로 세리프 글꼴)을 사용하는 것입니다. 중국어 간체 중국의 경우 정상적인 텍스트가 Heiti (iOS 기본값)를 사용하는 경우에 강조 대신 송탄, 송곳니 또는 Kaiti를 사용하십시오. 나는 한국어와 일본어에 익숙하지 않지만 비슷한 접근법을 사용합니다.

다음은 iOS 7에 대한 글꼴 목록입니다 : http : // 지원. apple.com/kb/ht5878?viewlocale=en_us &locale=en_us japanese mincho 폰트 「히라 그노 in mincho」는 직접 이용하실 수 있습니다. 추가 중국어 글꼴은 기본적으로 설치되지 않습니다. 먼저 다운로드해야합니다. 추가 시스템 제공 글꼴을 설치하는 방법에 대한이 예제를 참조하십시오. https://github.com/fdstevex/ fdsfontdownloader / .

나는 그것이 조금 복잡하다는 것을 알고 있지만, 이것은 우리가 어떻게 이탤릭체를하는지 정말로 그것을합니다.

@ an0에 동의하지만이 방법으로 변형을 이루는 것은 읽고 이해하는 것이 더 좋습니다

CGAffineTransform CGAffineTransformMakeSkew (CGFloat degree) {
    CGAffineTransform t = CGAffineTransformIdentity;
    t.c = (degree * M_PI / 180.0f);
    return t;
}
.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top