로마 숫자에 유니 코드의 특수 문자를 사용해야하는 이유는 무엇입니까?


43

이것은 로마 숫자의 유니 코드 문자에 대한 이 질문 에 대한 주석에서 제기질문 에 대한 대답 입니다.

ai, ai-ai, ai-ai-ai, vee-ai 등을 입력하는 일반적인 방법보다 왜 이것이 선호되거나 선호됩니까?

처음부터 유니 코드의 숫자 형식 블록에는 로마 대문자의 표준 대문자 라틴 문자 또는 그 조합 (U + 2160 – U + 217F)과 모양이 매우 유사한 코드 포인트가 있습니다. 예를 들어 U + 2165 (로마 숫자 6)는 VI (라틴 대문자 V 및 라틴 대문자 I)와 매우 유사 합니다.

따라서 왜 후자를 사용하여 숫자를 표시해서는 안되는지, 예를 들어 Louis VII대신에 유형을 사용해서는 안됩니다 Louis Ⅶ. 분명히 특수 문자를 사용하지 않으면 해당 문자를 지원하지 않는 글꼴과의 호환성 문제가 발생하지 않습니다. 그러나 텍스트가 이러한 문자를 지원하는 글꼴로 렌더링된다는 것을 알고 있지만 텍스트를 사용하지 않아도 됩니까?

답변:


56

많은 글꼴에서 로마 숫자에 유니 코드 문자를 사용하는 것과 별표 라틴 문자로 구성하는 것 사이에는 거의 차이가 없습니다. 예를 들어, 다음은 FreeSans로 렌더링 된 Louis VII(위) 및 Louis Ⅶ(로마 숫자에 코드 포인트를 사용하는 아래 )를 보여줍니다 .

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

의도적으로 의도하지 않았던 간격의 작은 차이를 제외하고 출력은 동일합니다.

다음은 DejaVu Sans로 렌더링 한 동일한 텍스트입니다.

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

문자는 여전히 동일 해 보이지만 간격에는 상당한 차이가 있습니다. 로마 숫자가 후자를 선호하는지 여부는 맛의 문제 일 수 있지만 정기적 인 올 캡을 위해 커닝을 선택하는 것은 좋지 않습니다.

Linux Libertine은 한 걸음 더 나아갑니다.

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

여기서 로마 숫자는 대문자보다 약간 작으므로 글꼴의 아라비아 숫자와 일치합니다. 가장 중요한 것은 그것들이 연결되어 있으며 종종 손으로 그린 ​​로마 숫자에서 발견되는 특징을 재현합니다.

이제 일부는 여전히 위의 내용에 개선이 없거나 노력할 가치가 없다고 주장 할 수 있습니다. 유니 코드 문자를 사용하지 않으면 끔찍한 결과가 나오는 경우가 있습니다.

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

(작은 크기의 숫자는 실제 역사적인 조판을 반영합니다.) 스크립트 또는 캘리 그래피 글꼴에서 비슷한 것이 발생할 수 있습니다.

로마 숫자에 대한 특정 유니 코드 포인트가 없으면 후자의 문제를 해결할 수있는 방법은 다음과 같습니다.

  • 일련의 대문자가 로마 숫자인지 여부를 감지하는 복잡한 OpenType 기능 (또는 유사한 기능)을 사용합니다. 이 경우 필연적으로 유효한 로마 숫자 인 단어에 문제가 발생할 수 있습니다.

  • 모든 로마 숫자에 대해 수동으로 활성화해야하는 간단한 OpenType 기능을 사용합니다.

  • 유니 코드의 개인용 영역 사용 로마 숫자를 지원하는 두 글꼴 사이를 전환 할 때에도 호환성 문제가 발생할 수 있습니다.

유니 코드의 관점에서 볼 때 대문자 라틴 문자와 로마 숫자 사이의 큰 의미 론적 차이는 이미 로마 숫자를 별도로 인코딩하기에 충분했을 것입니다.


로마 숫자는 두문자어와 이니셜 리즘과 다른 문제를 어떻게 확장 시키는가? "VII"가 스몰 캡 대신 대문자를 사용하여 표시되어야하는 시나리오는 "NATO"또는 "PM"이 동일하게 표시되어야하는 시나리오와 동일 할 것으로 예상합니다. 크로스바를 "VII"와 연결하지만 "VIP"는 연결하지 않는 것이 좋을 수도 있지만 text 안에 숫자를 사용할 때 크로스바가 연결되어 있는지 확실하지 않습니다 .
supercat

확장 된 의미를 약간 추가했지만 답변에 포함하려면 자유롭게 소아를 사용하고 내 몸을 삭제하십시오.
joojaa

@ supercat : 나는 당신이 무엇을 목표로 삼고 있는지 확실하지 않지만 현대 타이포그래피에서 로마 숫자는 항상 대문자 크기를 가지고 있지만 독일어 이외의 언어에서는 모든 대문자 abbrevations에 작은 대문자를 사용할 수 있습니다. 블랙 레터 타이포그래피에서는 모든 대문자 약어와 로마 숫자에 로마자 글꼴을 사용하지만 때로는 위와 같이 작은 로마 숫자를 사용하고 매우 특별한 경우에는 블랙 레터 올 대문자를 사용합니다.
Wrzlprmft

@Wrzlprmft : 로마 숫자는 "PM"또는 "NATO"와 같은 크기로 인쇄 될 것으로 예상합니다. 어떤 상황에서는 그러한 것들이 실물 크기의 수도로 인쇄되지만 다른 것에서는 그것들을 너무 두드러지게 만듭니다. 서체에 나머지 서체와 관련하여 디자인이 "PM"또는 "NATO"에 적합한 대문자 세트가있는 경우 로마 숫자에도 적합하다고 생각합니다.
supercat

@ supercat : 일반 로마 글꼴의 경우 예입니다 (그렇지만 이것이 최선의 방법인지 논쟁 할 수는 있습니다). 그러나 블랙 레터 및 스크립트 글꼴은 어떻습니까? 또한 그로부터 무엇을 결론 내립니까?
Wrzlprmft

27

TL; DR 유니 코드 컨소시엄은 동아시아 타이포그래피와의 호환성을 위해 포함 된 숫자가 아닌 라틴 문자를 사용하는 것이 좋습니다.

전체 이야기 : (위 주장의 정당화와 함께)

동아시아 타이포그래피를 수행하지 않는 한 유니 코드 (U + 2160 — U + 217F)의 로마자가 아닌 문자를 사용하는 것은 해킹입니다.

이 문자는 유니 코드 이전 동아시아 표준과의 호환성을 위해 포함되었습니다. 이 문자들은 동아시아 텍스트가 위에서 아래로 타이프 된 곳에 수직으로 유지되는 반면, 일반적으로 라틴 문자 (예 : 이름)의 텍스트는이 문맥에서 옆으로 작성됩니다.

유니 코드 표준의 마지막 버전을 인용하려면 (v 7.0, chap. 22, p. 20) :

로마 숫자. 대부분의 경우 로마 문자를 적절한 라틴 문자 순서에서 작성하는 것이 좋습니다. 그러나 로마 숫자 12 ~ 12, L, C, D 및 M의 대문자 및 소문자 변형은 동아시아 표준과의 호환성을 위해 숫자 형식 블록 (U + 2150..U + 218F)으로 인코딩되었습니다. 라틴 문자 순서와 달리이 기호는 세로 레이아웃에서 똑바로 유지됩니다. 또한 특정 로케일에서 간단한 날짜 형식은 한 달 동안 로마 숫자를 사용하지만 단일 문자를 사용할 수 있습니다.

따라서 이론적으로 로마 숫자와 문자의 구분은 기울임 꼴, 글꼴 변경 또는 선택적 합자와 같은 서식있는 텍스트의 문제입니다. @Wrzlprmft가 보여주는 것처럼 일부 글꼴은 좋은 타이포그래피를 유지하면서 각 로마 숫자의 글꼴 변경을 피하기 위해 사용합니다.

XIII 용이 아닌 XII 용 문자가 존재한다는 것은 동일한 숫자가 서로 다른 여러 개의 인코딩이 있음을 의미하므로 텍스트 검색에 어려움이 있습니다. Louis XII 및 Louis XIII에 대해 쓰면 XIII을 X + I +로 쓸 것입니다. I + I이지만 XII를 단일 문자로 작성 하시겠습니까? 또는 X + I + I로 XIII과 일관된 디스플레이를 갖습니까? 로마 숫자 문자를 사용하는 동안이 질문에 대한 적절한 대답은 없으며, 따라서 가능한 경우 숫자가 아닌 라틴 문자를 사용하도록 유니 코드 컨소시엄이 권장하는 이유입니다.

편집 : 처음에 TL; DR 어설 션을 추가했습니다 .


9
" 유니 코드 컨소시엄 은 가능하면 숫자가 아닌 라틴 문자를 사용하도록 권장합니다." 이것은 현재보다 훨씬 눈에 띄어 야합니다.
Ixrec

1
유니 코드 의미 론적 관점에서 볼 때 이것은 가장 좋은 대답입니다. 로마자 문자를 선호하는 특정 글꼴이있는 실용적인 이유가있을 수 있으며, 물론 독립적 인 그래픽 디자인 고려 사항이지만 의미 상 항상 잘못되었습니다.
R ..

13

그것이 어떻게 보이는지의 관점에서 큰 차이는 없을 것입니다. 따라서 Wrzlprmft가 그의 훌륭한 답변에서 지적한 것처럼 일부 글꼴을 제외하고 인쇄 된 자료 만 게시하면 차이가 없습니다.

의미론이 중요하다

의미상의 차이가 큽니다. 로마 숫자를 사용하면 문자 V 대신 숫자 5에 대해 이야기하고 있다는 것이 명백하게 드러납니다. 물론 동일하게 보이지만 의미가 다릅니다. 이는 "XX version 5"를 검색 할 때 검색 엔진이 "XX mark V"를 찾을 가능성이 더 높음을 의미합니다.

실제로 일부 작업이 제대로 작동하지 않는 이유는 의미 정보를 포함하지 않기 때문입니다. 우리가 원한다면 세상은 더 나은 곳이 될 것입니다. 따라서 올바른 의미 의미를 사용하는 것은 워드 프로세서에서 스타일을 사용하는 것과 스타일을 수동으로 사용하는 것과 거의 같습니다. 인간에게는 거의 차이가 없지만 자동화에는 큰 힘이 있습니다.

글꼴은 다른 로마 숫자를 만들어야합니다

폰트 메이커는 자주 사용하지 않기 때문에 실제로 사용하지 않습니다. 그러나 이것들을 사용하면 문자와 로마 숫자로 된 슬라브를 얻을 수 있습니다. 따라서이 기능은 드물게 사용되기 때문에 활용률이 낮습니다. 서체는 실제로 모든 것을 구현하지도 않습니다. 이것들을 사용함으로써 그것들이 있다면 유익 할 것입니다.

결론

이것은 모두 닭고기와 계란 유형 문제입니다. 사람들이 특수 문자 범위를 사용하지 않으면 해당 범위에 대한 특별 허용량이 없습니다. 따라서 글꼴은 특별히 스타일이 지정된 로마 리터럴을 지원하지 않습니다. 왜냐하면 아무도 사용하지 않는 기능에 노력을 낭비하기 때문입니다. 검색에도 동일하게 적용됩니다. 로마 문자를 사용하는 사람이 없으면 검색 엔진에서 로마 문자를 찾지 못해 의미가 손실됩니다. 의미론은 올바른 의미 론적 의미를 채택하지 않음으로 고통받습니다. 이와 동일한 내용이 더 광범위한 유니 코드 문자에도 적용됩니다.

입력 복잡성에 관해서는 그렇습니다. 대부분의 사용자는 확장 문자를 쓸 수 없지만 지식이있는 사람이 말을 건너 뛰는 것은 변명의 여지가 없습니다. 아무도 더 나은 것을 만들지 않으면 아무런 진전도 없을 것입니다. 지옥조차도 / alpha를 입력하여 알파를 쓰는 모드가 있습니다. 따라서 숫자에 태그를 지정하는 쉬운 방법이 없거나 자동으로 숫자를 제안하는 이유가 없습니다. 아무도이 작업을 수행하지 않으면 더 널리 채택되지 않습니다.


실제로 검색 엔진은 "Louis Ⅶ"이 아닌 "Louis VII"를 검색 할 때 훨씬 더 나은 결과를 반환합니다. 실제로는 대부분의 컨텐츠가 이러한 세밀한 의미 구분을 허용하지 않는 도구로 생성되기 때문입니다.
xpereta

1
사람들은 의미론에 신경 쓰지 않기 때문에 @xpereta 예. 그러나 그것들이 그렇다면 숫자에 대해 쉽게 7을 일치시킬 것입니다. 세상의 무관심의 대부분은 사람들이 쉽게 할 수있을 때 사물의 의미 론적 차이를 명시 적으로 지적하는 데 중요하지 않다고 생각하기 때문입니다. 컴퓨터는 인간이하더라도 차이를 모릅니다
joojaa

1
@joojaa이 경우 아마도 VII가 Ⅶ보다 입력하기 쉽다는 사실과 더 관련이있을 것입니다. 그것이 바뀔지 확실하지 않습니다.
Ixrec

마지막 단락을 조금 확장하여 이와 같은 특수 문자를 더 많이 사용하면 더 넓은 글꼴 구현이 가능하다는 결론을 마무리합니다.
Nathan Tuggy

2
시맨틱에 관한이 답변에 강력하게 의문을 제기합니다. 유니 코드 로마 숫자 문자는 <compat>해당 라틴 문자 시퀀스와 동일하므로, 유니 코드로 된 유일한 이유는 문자가있는 일부 기존 (아마 CJK) 문자 세트와의 왕복 호환성을위한 것임을 강력하게 제안합니다. 레거시 인코딩으로 생성 된 충실한 라운드 트리핑 문서를 제외하고 이러한 문자는 일반적으로 사용해서는 안됩니다.
R ..
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.