2017-01-12 1 views
3

현재 Qt로 응용 프로그램을 개발 중입니다. 내 개발 및 테스트 환경으로 macOS Sierra를 사용하고 있지만 응용 프로그램은 크로스 플랫폼입니다.Qt 응용 프로그램이 유니 코드 문자 대신 그림 이모티콘을 표시합니다.

그래서 여기에 문제가 있습니다. information icon을 표시하기 위해 text: "\u2139" 속성을 설정 한 Qt Quick Text 항목을 만듭니다. 내가 사용하는 글꼴 패밀리는 Open Sans입니다. 내 유니 코드 문자가 와야 곳

응용 프로그램을 실행하면, 나는 장소에서 다음을보고 깜짝 놀랐다 :

emoji information symbol

을 내가 원하는 게 아니에요 그건, 그 유니 코드 문자의 텍스트 표현을 원했다 이모티콘 프리젠 테이션이 아닙니다. 텍스트 프레젠테이션을 모든 플랫폼에서 강제로 표시하려면 어떻게합니까?

감사합니다.

+0

유니 코드 이모티스가 무엇인지 잘못 해석했다고 생각합니다. 그림 이모티콘은 텍스트 문자이며 글꼴을 다른 문자로 사용하여 렌더링됩니다. 그래서 당신은 당신이 요구 한 것을 가지고 있습니다.이제 OS에 따라 이모티콘에 대한 글꼴 정책이 다를 수 있으므로 Qt 프로그램에서 글꼴을 변경 한 결과가 나오지 않을 수도 있습니다. 시스템을 조정해야 할 수도 있습니다. –

+0

이것은 글꼴 관련 문제라고 생각하십니까? – gleerman

+0

예. '\ u2139'는 글꼴을 사용하여 렌더링됩니다. http://apple.stackexchange.com/questions/214401/where-em-jo-stored-on-macs –

답변

0

Wikipedia에 따르면 문자 체계 (모노 크롬) 형식으로 앞 글자를 표시하도록 렌더링 시스템에 요청하는 U + EF0E {VARIATION SELECTOR 15}로 그 문자를 따라야합니다. 즉, 이모티콘 (다채로운) 표현을 요청하려면 U + EF0F {VARIATION SELECTOR 16} 코드 포인트를 따라야합니다. 특히 후자의 경우, 화려한 형태를 얻을 수 있는지 여부는 고도의 시스템/디스플레이 위젯 선택이며 지정되지 않은 경우 어느 코드 포인트가 렌더링되는지는 분명하지 않습니다. 예를 들어이 세 가지 문양 :

︎️ 변형 선택
︎︎︎️︎ 각 VS15
다음 ️︎️️️ VS16

Aaarg 다음 각없이! Stack Exchange에서 완전히 다르게 나타나지 않습니다. grrrr!

그러나 브라우저에서 HTML 엔티티 개방을 사용하여 HTML 파일로이 저장 :

Partial screen shot of above HTML display in my Browser

:에 말했을 때 단지 이모티콘 효과를 보인다

<html><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"><head/> 
<body><p>&#128528;&#128542;&#128512; without a variation selector</p> 
<p>&#128528;&#65038;&#128542;&#65038;&#128512;&#65038; each followed by VS15</p> 
<p>&#128528;&#65039;&#128542;&#65039;&#128512;&#65039; each followed by VS16</p> 
</body></html> 

Qt C++ 위젯을 사용하는 프로젝트에 관한 최근의 작업에서 대부분 시도한 것 (모두 시도했지만)은 이모티콘 형식을 처리하지 못하는 것 같습니다. QTextBrowser은 모스 인 것처럼 보입니다 그것들을 처리 할 가능성이있는 사람은 - 내가하고있는 것에는 적용 할 수 없을 것입니다 ...

Emojis와 같은 102 명의 인간을위한 이모티콘 양식 또한 U + 1F3FF에서 U + 1F3FF까지 추가로 결합 할 수 있습니다 {EMOJI MODIFIER FITZPATRICK TYPE-xxxx} (첫번째 유형은 유형 1과 2이고 나머지는 각각 3 - 6입니다.) 사실적이고 점점 더 어두운 피부 색조를줍니다. 인간의 모범 이모티콘의 기본 노란색/청색/회색 기본 색상은 이 아닌의 색상이 분명히 인간의 피부 톤과 유사 함을 참고하십시오!

관련 문제