태터데스크 관리자

도움말
닫기
적용하기   첫페이지 만들기

태터데스크 메시지

저장하였습니다.
BLOG main image

온한글 전체보기 (655)
한글, 새로운 시선 (164)
온한글이 만난 사람 (52)
한글 행사와 모임 (54)
한글이 있는 작품 (64)
폰트 (41)
캘리그래피와 손글씨 (13)
트렌드와 마케팅 (46)
역사 속 한글 (19)
세계 속 한글 (40)
온한글 책꽂이 (44)
한글 관련 자료실 (27)
무료다운로드 (15)
단신 (74)
douglas pitassi
douglas pitassi
Clash of Clans Hack
Clash of Clans Hack
Related Web Page
Related Web Page
kitchen table
kitchen table
http://healthdrugpdf.com
http://healthdrugpdf.com
http://www.161997up.com
http://www.161997up.com
CT
CT
http://pharmacyreviewer2014.com
http://pharmacyreviewer2014.com
UT
UT
Laura Glading APFA
Laura Glading APFA
1,373,120 Visitors up to today!
Today 9 hit, Yesterday 140 hit
daisy rss
tistory 티스토리 가입하기!
'유니코드'에 해당되는 글 3건
2011. 11. 30. 09:07
워드프로세서, 컴퓨터활용능력 등 컴퓨터자격증에 도전해보신 경험이 있으신가요? 어떤 컴퓨터시험을 공부하더라도 가장 기본적인 내용은 중복되기 마련입니다. 예를 들면 '컴퓨터의 역사'와 같은 부분은 거의 대부분의 컴퓨터자격증 시험에서 다루고 있습니다.


[사진=6psbig3.com] 세상에 존재하는 수많은 문자들



컴퓨터의 기초에 대해 공부하시다 보면, 컴퓨터에서 문자를 다루는 알고리즘에 대해서도 배우게 되는데요. 한글이 영어보다 용량이 큰 이유를 아시나요? 컴퓨터에서 한글과 영어의 용량이 다를 수 밖에 없는 이유에 대해서 짚어보겠습니다.


영어는 1Byte, 한글은 2Byte
컴퓨터·휴대폰과 같은 전자기기에서 영어는 한글자당 1Byte를 차지하고, 한글은 한글자당 2Byte를 차지합니다. 이 점은 컴퓨터에 대해서 깊은 관심을 갖고있지 않더라도 알 수 있는 부분인데요. 휴대폰 문자를 입력할때면 우측에 문자수를 체크해주는 화면이 보일텐데요. 영어 문자를 입력할때와 한글 문자를 입력할때 이 숫자가 줄어드는 모습이 다소 다르다는 것을 보실 수 있습니다.


[왼쪽] 한글 안녕하세요 10byte [오른쪽] 영어 Hello 5byte



위의 이미지는 휴대폰 문자메시지 창에서 한글 '안녕하세요'와 영어 'Hello'를 입력해본 화면입니다. 안녕하세요와 Hello는 똑같이 5글자이지만, 한글 안녕하세요는 10byte이고 영어 Hello는 5byte인 점을 볼 수 있습니다. 같은 글자수여도 한글이 2배의 용량을 차지하게 되는 것입니다. 왜 그럴까요?

1바이트로 표현할 수 있는 문자의 조합흔 256가지 입니다. 그래서 알파벳 대소문자 52자로 이루어진 영어는 0부터 127까지 사용(128개)하는 아스키코드를 활용할 수 있습니다. 그러나 한글은 이정도로 모든 문자를 담아낼 수가 없습니다. 초성 19자, 중성 21자, 종성 28자로 이루어진 한글은 무려 11172자를 표현할 수 있기 때문입니다. 이렇기 때문에 한글은 1byte가 아닌 2byte에 한 문자를 담게 되었습니다.

[사진=위키피디아] 아스키코드 차트



***아스키코드 [American Standard Code for Information Interchange]
아스시코드는 데이터 처리 및 통신시스템 상호간의 정보교환용 표준 부호로 제정한 것으로 아스키 부호라고도 합니다. 데이터 처리와 정보시스템 상호간의 정보교환용으로 정한 표준코드로서, 영어를 사용하는 대부분의 정보기기에서 사용되고 있습니다. 아스키코드는 대문자·소문자의 알파벳, 숫자,기호, 제어부호 128종을 각 8비트로 코드화하였습니다.

***유니코드(Unicode)
유니코드는 전 세계의 모든 문자를 컴퓨터에서 일관되게 표현하고 다룰 수 있도록 설계된 산업 표준입니다. 이 표준에는 ISO 10646 문자 집합, 문자 인코딩, 문자 정보 데이터베이스, 문자들을 다루기 위한 알고리즘 등을 포함하고 있습니다. 기존의 인코딩들은 그 규모나 범위 면에서 한정되어 있고, 다국어 환경에서는 서로 호환되지 않는 문제점이 있었습니다. 유니코드가 다양한 문자 집합들을 통합하는 데 성공하면서 유니코드는 컴퓨터 소프트웨어의 국제화와 지역화에 널리 사용되게 되었으며, 비교적 최근의 기술인 XML, 자바, 그리고 최신 운영 체제 등에서도 지원하고 있습니다. 유니코드에서 한국어 발음을 나타날 때는 예일 로마자 표기법의 변형인 ISO/TR 11941을 사용하고 있습니다.


아스키코드 : http://100.daum.net/encyclopedia/view.do?docid=11XXXX9861
유니코드 : http://ko.wikipedia.org/wiki/유니코드


온한글 블로그 기자단 1기 이세진

ⓒ온한글
Name
Password
Homepage
Secret
2010. 2. 23. 09:18

사용자 삽입 이미지

유니코드를 만들기 시작한 것은 90년대 초반이지만 유니코드가 본격적으로 쓰이기 시작한 것은 얼마 되지 않습니다. (물론 유니코드 표준은 아직도 현재 진행형입니다.) 각자 자신의 코드페이지로 자국의 언어와 영어를 사용하는 데 문제가 없었던 시절과는 달리 전 지구적 네트워크 Internet의 보급이 보편화 되었기 때문이죠.
예전 글에서 한국어는 CP949를 쓴다는 이야기를 기억하실 것 입니다. 여기에서 CP는 Code Page의 약자로 각국의 언어에서 첫 128비트를 제외한 남는 영역에 자신의 국가에서 사용하는 언어를 적절하게 배치 해 언어를 지원하는 방식이었는데 대부분의 코드페이지는 단 한 나라의 언어만을 지원합니다.

만일 여러분이 웹에서 서비스를 운영한다고 할 때 한국어를 사용하는 사용자만을 대상으로 한다고 할 때는 CP949만을 지원해도 아무런 문제가 없지만 중국어나 일본어 러시아어를 사용하는 사용자는 글을 쓸 수 없거나 글은 쓴다 해도 페이지에 정상적으로 출력이 되지 않는 문제가 발생합니다.

지구상의 모든(혹은 전 우주라 할지라도) 언어를 하나의 포맷으로 통합하기 위한 표준. 이것이 바로 유니코드 입니다.

유니코드는 2바이트 문자일까?
심지어는 프로그래머중에서도 이런 잘못된 지식을 가지고 있는 이들을 심심치 않게 만납니다. 정답부터 말씀드리면 '아니오'입니다. 일단 단순히 생각해봐도 65,536개의 조합으로 전세계의 모든 언어를 담을 수는 없겠지요.
(한자만 4만여개) 하지만 처음엔 유니코드 연합에서도 이런 생각을 했나봅니다.그래서 유니코드는 16비트의 공간에 모든 문자를 집어넣으려고 합니다. 이 16비트 영역을 기본 다국어 평면 (BMP: Basic Multilingual Plane)이라고 부릅니다.

하지만 Unicode 3.0까지 진행되자 16비트에 전 세계의 모든 언어를 담는 것이 불가능하다는 것을 깨닫습니다. 유니코드 연합은 기본 다국어 평면에 2048글자를 대행코드라는 이름으로 따로 할당합니다. 이 것을 기본으로 보충 언어평면을 사용할 수 있게 합니다. 그리하여 유니코드는 기본 다국어 평면 1개와 보조 다국어 평면, 보조 상형문자 평면, 3차 상형문자 평면(현재 할당된 언어 없음),보조 특수 목적 평면을 가지는 구조로 성장합니다.

CP949에 해당하는 표준 한글은 1996년에 Unicode 2.0에서 모두 추가되었습니다. 한중일 통합한자는 가장 최근 버전인 Unicode 5.2에서 4149개가 추가되어 최종 74,386개의 한자가 등록되어 있습니다. 이 외에도 한글 고어와 한글 자모 원문자와 괄호 문자등이 포함되었습니다.

UTF-16
컴퓨터에서는 모든 것이 숫자로 저장됩니다. 여기 알파벳 A는 어떻게 표현될까요?
Ascii에서는 0x40으로, 유니코드에서는 U+0040으로 표시됩니다. 아 혹은 U+4000으로 표시되지요.
1바이트인 0x40을 2바이트로 확장하면서 두가지 표기법이 생겼습니다. 이 두가지 표기가 생기게 된 이유는 CPU의 처리방식에 관한 문제 때문인데 이 때문에 유니코드 문서에는 문서 맨앞에 특별한 코드가 붙게 됩니다.

FE FF - UTF16 Little Endian
FF FE - UTF16 Big Endian

둘 중 어느것을 사용해도 하나로만 통일하면 문제가 없을 것 같은데 쓸 데 없이 문제만 복잡해졌지요? 그래서 이 표준의 이름도 걸리버 여행기의 소인국 편에 나오는 달걀전쟁에서 유래되었습니다.

사용자 삽입 이미지

사진은 Big Endian http://www.bbc.co.uk/dna/h2g2/A592481



UTF-16은 기본 다국어 평면은 2바이트로 그 외의 다국어를 표현할 때는 4바이트로 표현하는 유니코드의 조합 원리와 가장 흡사한 포맷입니다. 그러나 영어권 국가들은 1바이트로 표현할 수 있는 데이터를 낭비한다는 측면과 기존 Ascii와 호환되지 않는다는 점(아마도 이것이 주된 이유였을 것으로 생각됩니다.)때문에 UTF-8이라는 새로운 포맷을 만들어 냅니다.

UTF-8
UTF-16의 가장 큰 문제점은 기존 Ascii로 읽을 경우 문자열 중간에 널문자(\0)이 들어있다는 점이었습니다. C계열 프로그램에서 널문자는 문자열의 종료를 의미하기 때문에 UTF-16은 기존 프로그램에서 심각한 문제를 일으켰습니다. 해서 유니코드와 기존 Ascii문자를 같이 사용할 수 있도록 UTF-8이 고안되었습니다. UTF-8은 Ascii와 호환이 되고 알파벳 표현부분에서 문자의 낭비가 없어 데이터량이 적은 장점으로 현재는 대부분의 웹페이지에서 표준으로 자리잡아 가고 있습니다.

UTF-32
유니코드의 고정길이형 이라고 볼 수 있습니다. 모든 글자를 4바이트 고정길이로 표현하기 때문에 데이터의 낭비가 심한 단점이 있으나 길이가 일정하여 문자처리가 쉬운 장점이 있습니다.(하지만 널리 사용되지는 않습니다.)

이 외에도...
SMTP메일과 같이 7비트를 사용하는 통신프로토콜을 지원하기 위한 UTF-7이나 UTF-16과 흡사한 UCS2 UTF-32와 흡사한 UCS4등등 많은 유니코드 규약들이 존재하지만 실행활에서 볼 수 없을 것이기 때문에 설명에 포함하지는 않았습니다. 만일 프로그램 개발을 한다면 UTF-16을 볼 기회가 있겠지만 앞으로 대부분의 유니코드 표준은 UTF-8로 통합되는 듯 합니다.

길고 지루한 내용 읽어주셔서 감사합니다. 다음에는 좀 더 재미있는 내용으로 찾아뵙도록 하겠습니다.

온한글 블로그 기자단 2기 강인규

ⓒ 온한글


Name
Password
Homepage
Secret
2009. 3. 4. 09:36
사용자 삽입 이미지

 
Q. 폰트 디자인의 기본 선이라는 아센더 라인과 디센더 라인이란 무엇인가?
 영자 디자인에서 소문자 x를 기준으로 b, d, f, h, I 등처럼 x-라인보다 윗 부분의 공간을 일러 아센더(Ascender)라 하고 그 가장 높은 부분에 해당하는 가상의 선을 아센더 라인이라 한다. 반대로 g, p, q, y 등의 x-라인보다 아랫 부분의 공간을 디센더(Descender)라 하며 그중 가장 낮은 가상의 선을 아센더 라인이라 한다.
 낱자에서 x라인과 아센더 라인, 디센더 라인은 서체의 시각적 속성과 무게중심에 영향을 주는 중요한 요소로서 각 서체들은 그 특징에 따라 최적의 x라인, 아센더 라인, 디센더 라인을 가지게 된다.

 
Q. 폰트 제작 시 완성도를 높이기 위한 기술이라는 커닝과 힌팅에 대해‥?
 커닝(Kerning)이란, 어느 특정 글자의 조합만을 표준 너비보다 글자 보내기를 작게 하여 글자 사이를 조정하는 것을 말한다. 가령 표준 글자 너비로 할 때 영문의 경우 대문자 L 다음에 T가 오는 경우, 시각적으로 다른 글자들의 조합보다 글자 사이가 넓어 보이게 된다. 이러한 현상이 생길 경우 L의 글자 너비를 줄이는 방법으로 두 글자 사이의 간격을 좁힘으로써 시각적인 균등감을 획득할 수 있는데 이를 커닝이라 한다.
 
 또 힌팅(Hinting)이란, 아웃라인 폰트로 필요한 크기의 글자를 래스터라이저에서 생성할 때 원하는 모양대로 출력하기 위한 추가 기술이다. 아웃라인 폰트는 각 글자 모양에 해당하는 좌표값을 가지고 있고 이를 원하는 크기로 스케일링하는 과정에서 반올림 등의 오차가 생길 수 있기 때문에 어떤 크기에서는 조금 틀어질 수도 있는데, 이를 방지하기 위한 기술이 바로 힌팅이다.
 화면이나 프린터, 혹은 해상도가 낮은 주변 기기에서 글자가 깨지거나 줄기 굵기가 일정하지 않게 표현될 때 힌팅 작업으로 이를 최대한 깨끗하게 보정할 수 있다.

 
Q. 완성형 한글과 조합형 한글은 무엇이고, 유니코드는 무엇인가?
 완성형과 조합형이란 한글 코드에 관한 개념으로, 우선 완성형 한글이란 한글을 한 글자 당 2바이트 크기의 코드를 부여하여 각 글자별로 코드값을 지정하는 방식을 말하는 것이다.
 즉, 완성된 글자들을 일종의 그림처럼 다루는 방식으로 한글 2,350자와 한자 4,888자, 각종 학술기호와 외국 문자 등을 영역별로 나누어 사용하도록 되어 있다. 1987년 정부가 한국 표준으로 정한 바 있지만, 한글의 모든 글자를 구현하기는 어려운 난점도 있다.
 1992년 소개된 조합형은 한글을 초성, 중성, 종성으로 나누고 각 자소마다 5bit씩 할당하고 영자와의 구별을 위해 최상위 비트(Most Significant Bit)를 1로 하여 총 16bit, 즉 2byte로 구성한한글 코드로 11,172자의 한글을 모두 구현할 수 있다. 합자 원리를 가지고 있다는 점에서 한글적인 코드라고 할 수 있고 아스키 코드에서도 쓸 수 있는 이상적인 방식이지만, 정렬이 한글 순서대로 되지 않는다는 단점이 있다. 

 유니코드는 한글용 코드는 아니다. 국제표준화기구(ISO)에서 추진하던 유니버셜 코드체계에 불만을 느낀 IBM, MS 등 미국의 유력 기업들이 결성한 컨소시엄에 의해 만들어진 코드로, 2byte를 체계로 하여 전세계의 문자들을 구현하는 것을 목표로 65,536 자의 코드를 사용하고 있다.
 8bit코드로도 문제가 없는 영어나 라틴어권의 국가들은 2byte까지는 필요 없지만 비영어권의 다른 나라들과 정보를 교환하기 위해서는 유니코드를 지지할 수밖에 없다. 한글은 지난 1995년에야 유니코드에서 11,172자의 연속된 공간을 확보하게 되었다.


 Q. 비트맵 폰트와 아웃라인 폰트의 차이점은 무엇인가?
 비트맵 폰트(Bitmap Font)는 특정한 크기나 형태의 문자 세트로 글자가 점의 집합으로 이루어져 있다. 메모리 내에서 Raster 연산을 하기 때문에 출력장치의 이미지 메모리와 1대 1로 대응, 처리속도가 빨라 웹, 이동단말기, LCD를 적용한 기기에서 화면표시용으로 사용된다.
 0과 1로 나타내는 디지털 데이터의 특성상 확대, 축소, 회전, 기울임 등의 기하학적 변형을 하게 되면 형태가 일그러지고 계단현상(Aliasing)이 나타나므로 폰트 사이즈의 변경 시 그 도트 수별로 데이터를 준비해야 한다. 때문에 가능한 한 많은 사이즈를 등록해 놓을 필요가 있어 데이터 량이 많아지게 된다. 

 아웃라인 폰트(Outline Font)는 함수곡선을 가지고 문자의 외형을 나타내므로 화면에 표시하거나 프린트할 경우 먼저 도트 정보로 변환하는 처리과정이 필요하다. 때문에 출력속도가 느리다는 단점이 있는 반면 큰 사이즈의 문자로 화면표시하거나 출력을 해도 비트맵 폰트처럼 일그러지지 않고 깨끗한 형태를 표현할 수 있다.
 하지만 오히려 작은 사이즈의 폰트는 함수곡선으로 표현할 경우 오차가 생길 수 있고 불필요한 시간이 걸리는 단점으로 인해 아웃라인 폰트가 부적절하다.


 Q. 포스트 스크립트 폰트와 트루타입 폰트란 무엇인가?
 미국 어도비 사가 개발한 포스트스크립트 폰트(Postscript Font)는 기본적으로 문자의 위치, 폭, 모양 등의 아웃라인을 벡터 방식에 의해 나타낸 윤곽선 폰트로 베지어 곡선에 의해 표현된다. 1990년 애플 사와 마이크로소프트 사가 트루타입을 공개하자 어도비도 Type 1폰트 포맷을 공개하였고, Type 1, 3, 4, 0 포맷이 있다.
 타입 1과 타입 3 폰트는 벡터폰트처럼 그 정보를 좌표값으로 가지고 있어서 그 크기를 자유롭게 조절할 수 있으며 이 좌표들로 글자의 외곽선을 표현함으로써 점 폰트의 양감까지 표현할 수 있다는 장점을 가지고 있다. 또한 3차원의 베지어 곡선을 적용하기 때문에 래스터라이저의 결과가 좋아서 출력의 질도 향상시킬 수 있다.
 
 트루타입 폰트(Truetype Font)는 1991년 애플 사와 마이크로소프트 사가 공동개발한 윤곽선 폰트 형식으로, 초기에는 1byte에서만 사용했으나 현재는 2byte에서도 지원가능하다. 포스트스크립트 폰트가 출력을 위해서는 데이터를 점으로 변환시켜 주는 장치인 RIP가 필요한 것과는 다르게 트루타입 폰트는 본체에 그러한 기능을 가진 장치가 내장되어 있다.
 매킨토시 운영체계에서 표준으로 사용했고 시스템에서 기본적으로 제공되는 포맷이며 가격도 높지 않아 일반 사용자들을 위한 폰트라고 할 수 있다. 뿐만 아니라 유니크한 폰트가 많고 힌팅과 같은 내부 명령들을 자유롭게 구성해 넣을 수 있다. 특히 동양권 문자들처럼 지원하는 글자의 수가 많은 경우와 비슷한 글리프를 빈번히 사용하는 경우 이를 재활용하는 등 다양한 유연성을 제공하고 있는데, 자체의 메모리가 많아서 데이터를 전송할 때 속도가 느리다는 단점을 가지고 있기도 하다.


 Q. 폰트 제작을 위한 도구에는 어떤 것들이 있나?
 우선 윈도우나 매킨토시 환경 모두에서 가장 많이 사용하는 폰토그라퍼가 있다. 포스트스크립트 타입 1과 타입 3를 만들 수 있고 기존 폰트의 틀을 변형하거나 첨가 또는 삭제 등을 쉽게 할 수 있으며 일반 손글씨를 스캔받아 폰트화할 수도 있다.
 또한 로고타입이나 아이콘을 디자인하여 하나의 폰트처럼 시스템에 저장하면 폰트 메뉴를 가진 프로그램에서 활용할 수 있다. 글자의 윤곽선은 베지어 곡선으로 이루어지며 어떤 크기로든 확대와 축소가 가능하고 레이저 프린터에서 고해상도 이미지세터까지 모든 포스트스크립트 출력장치에서 인쇄할 수 있다. 저해상도 인쇄를 위해 힌트를 추가할 수도 있다. 

 레트라세트(Letraset) 사의 폰트 제작 프로그램인 폰트스튜디오도 폰토그라퍼와 비슷하다. 폰토그라퍼처럼 한 글자의 부분을 복사하여 다른 글자를 만들 때도 사용하지만, 기존 서체를 고치거나 완전히 새로운 서체를 만들 수도 있다. 타입 1과 타입 3 폰트를 지원하며 일러스트레이터 윤곽선을 불러올 수도 있고 수동이나 자동 힌팅을 선택할 수도 있다. 개별 값이 일단 만들어지면 파생되는 패밀리는 ‘폰트 삽입(Interpolate Font)’ 기능을 사용하여 만들어지고 완성된 폰트는 모든 매킨토시와 포스트스크립트 출력기에서 사용가능하다. 

 폰트매니아는 우리나라에서 만든 윤곽선 글꼴 개발용 소프트웨어로 한글꼴 제작환경의 특성이 많이 고려되어 있다. 윈도우즈 환경에서 사용할 수 있도록 되어 있어 매킨토시 환경에서 그래픽 작업을 하는 디자이너들에게는 널리 알려지지 않았으나 폰트 디자이너들에게는 많이 활용되고 있다.
 트루타입, 통합글꼴, 타입 1 폰트를 만들 수 있으며 로고타입이나 아이콘의 개발이 가능하다. 특히 윈도우즈 사용자 정의 문자(EUDC)와 아래아 한글의 사용자 정의 영역에 회사 로고나 심벌, 확장 한자 등을 추가하여 사용하면 편리하다. 강력한 윤곽선 편집기능을 가지고 있으며, 비트맵 이미지부터 윤곽선을 추출하는 기능이 있어 전문 디자이너가 아니라도 손쉽게 글꼴을 만들 수 있다. 


 Q. 포토샵에서만 폰트가 나오지 않는데‥?
포토샵, 일러스트와 같이 어도비 제품군의 경우, 폰트 목록을 윈도우즈 글꼴의 목록으로 재작성하여 파일로 가지고 있다. 이 파일이 갱신이 되지 않을 경우, 제어판->글꼴에서는 나오지만, 포토샵에서는 폰트가 나오지 않는다. 이럴 경우 탐색기에서 아래의 폴더로 이동한 뒤 모든 1st 파일을 삭제하고 리부팅하면 된다.
C:\Program Files\Common Files\Adobe\TypeSpt


Q. 내 손글씨를 폰트롤 개발하려면?
1. 종이에 손글씨를 쓴다.
2. 손글씨 혹은 윈도에서 스케치한 글자를 스캔해 폰트 제작 프로그램으로 불러온다.
3. 불러들인 글자를 벡터 파일로 저장해 초안으로 삼는다.
4. 마, 메, 맘, 모, 몸, 뫼 등의 기본 구성 모듈을 디자인해 다른 글자 디자인의 기초를 마련한다.
5. 모듈을 기초로 한 글자씩 디자인해 완성해 나간다. 이때 자모를 반복적으로 디자인하는
    번거로움을 덜기 위해 스캔했던 문자를 기본으로 첫닿자, 홀자, 받침닿자 별로 메뉴 테이블을
    만들어 기본 자모를 먼저 완성하는 것이 좋다.
6. 파일→다른 형식으로 저장→트루타입 순으로 저장한다.
7. 윈도 탐색기를 실행한 뒤; 저장한 폰트를 Windows\Fonts 폴더로 옮긴다.
8. 마지막으로 윈도를 재시동하면 오피스 프로그램 등에서 폰트를 사용할 수 있게 된다.

 


 ⓒ 윤디자인연구소 온한글

Name
Password
Homepage
Secret
prev"" #1 next