처리중입니다. 잠시만 기다려주세요.
TTJ 코딩클래스
정규반 단과 자료실 테크 뉴스 코딩 퀴즈
테크 뉴스
Hacker News 2026.06.20 23
#AI

아랍어를 컴퓨터로 인쇄하기가 왜 그렇게 어려울까 — 글로벌 서비스의 숨은 함정

Hacker News 원문 보기
아랍어를 컴퓨터로 인쇄하기가 왜 그렇게 어려울까 — 글로벌 서비스의 숨은 함정

알파벳 26자가 얼마나 큰 축복이었는지

우리가 영어 텍스트를 화면에 띄우는 건 너무 당연해서 고민조차 안 하잖아요. 그런데 세상에는 그 '당연함'이 전혀 통하지 않는 문자들이 있어요. 대표적인 게 아랍 문자예요. Digital Orientalist의 한 글은 아랍어를 컴퓨터로 조판하고 인쇄하는 게 왜 그렇게 어려운 문제였는지를 흥미롭게 풀어내요. 이 이야기는 단순한 역사 얘기가 아니라, 글로벌 서비스를 만드는 개발자라면 반드시 알아야 할 국제화(i18n)의 핵심이 담겨 있어요.

글자가 위치마다 모양을 바꿔요

첫 번째 난관은 아랍 문자가 이어 쓰는 글자(필기체)라는 점이에요. 영어 알파벳은 'c-a-t'처럼 글자가 또박또박 떨어져 있죠. 그런데 아랍어는 글자들이 손글씨처럼 서로 연결되거든요. 더 까다로운 건, 한 글자가 단어 안에서 어디에 놓이느냐에 따라 모양이 최대 4가지로 바뀐다는 거예요. 단어 맨 앞에 올 때, 중간에 낄 때, 맨 끝에 올 때, 혼자 떨어져 있을 때가 다 다른 모양이에요. 그러니까 활자를 만들던 시절엔 글자 하나당 활자 한 개면 되는 라틴 알파벳과 달리, 아랍어는 글자 하나에 활자를 몇 개씩 깎아야 했어요. 수백 개의 글자꼴이 필요했던 거죠.

여기에 합자(ligature) 문제도 있어요. 특정 글자 조합은 따로따로 쓰면 안 되고 반드시 하나로 합쳐진 모양으로 써야 하거든요(예: 람-알리프). 그리고 모음을 나타내는 작은 부호(하라카트)가 글자 위아래에 붙는데, 이걸 어디에 정확히 배치할지도 일일이 계산해야 해요.

방향과 정렬까지 발목을 잡아요

두 번째 난관은 글 쓰는 방향이에요. 아랍어는 오른쪽에서 왼쪽으로(RTL) 쓰는데, 문제는 그 안에 끼어드는 숫자나 영어 단어는 왼쪽에서 오른쪽으로 간다는 거예요. 그래서 한 줄 안에서 방향이 뒤섞이는 양방향 텍스트(bidi) 처리가 필요해요. 이게 뭐냐면, 텍스트를 화면에 뿌릴 때 '이 부분은 오른쪽에서, 저 숫자는 왼쪽에서' 하고 방향을 계속 갈아끼우며 계산해야 한다는 거죠. 구현이 만만치 않아요.

게다가 양쪽 정렬(justify)을 하는 방식도 달라요. 우리는 단어 사이 공백을 늘려서 줄 끝을 맞추잖아요. 아랍어는 전통적으로 글자 자체를 옆으로 쭉 늘려서(카쉬다) 정렬해요. 활자나 초기 컴퓨터로는 이걸 구현하기가 정말 까다로웠어요. 그래서 활판 인쇄기, 타자기, 초기 컴퓨터 시스템 모두가 아랍어 앞에서 한참을 헤맸던 거예요.

현대 기술은 이걸 어떻게 풀었을까

다행히 지금은 이 문제들이 상당히 해결됐어요. 일단 유니코드(Unicode)가 전 세계 문자를 한 체계 안에 담아냈고, 오픈타입(OpenType) 폰트에는 'GSUB'(글자를 상황에 맞는 모양으로 바꿔치기)나 'GPOS'(부호 위치를 정밀하게 조정) 같은 기능이 들어 있어요. 그리고 이런 복잡한 규칙을 실제로 적용해 글자를 그려주는 셰이핑 엔진(HarfBuzz가 대표적)이 브라우저와 운영체제 밑에서 묵묵히 일하고 있죠. 우리가 웹페이지에서 아랍어가 멀쩡하게 보이는 건 다 이 엔진들 덕분이에요. 수백 년간 인쇄공들을 괴롭히던 문제를 소프트웨어가 깔끔하게 흡수해버린 셈이에요.

한국 개발자에게 주는 시사점

"나는 아랍어 서비스 만들 일 없는데"라고 넘기기엔 아까운 교훈이 있어요. 첫째, 글로벌 서비스를 만들 때 RTL과 복잡 문자 처리는 반드시 고려해야 할 변수예요. CSS의 direction이나 논리적 속성(margin-inline-start 같은 것), 그리고 텍스트가 깨지지 않는 폰트 선택까지 신경 써야 진짜 '글로벌'한 제품이 돼요.

둘째, 사실 한글도 결코 단순한 문자가 아니에요. 초성·중성·종성을 조합해서 한 음절을 만들고, 자모가 모여 글자꼴을 이루는 구조라 내부적으로는 꽤 복잡한 처리가 들어가거든요. 아랍어 이야기를 통해 '문자를 화면에 그리는 일'이 얼마나 정교한 엔지니어링인지 체감하면, 평소 당연하게 쓰던 텍스트 렌더링을 보는 눈이 달라져요.

한 줄로 정리하면, 익숙한 알파벳 너머에는 우리가 상상도 못 한 문자의 세계가 있고, 그걸 다루는 것이 진짜 국제화의 시작이라는 거예요. 여러분이 만든 서비스, RTL 언어를 켜보면 레이아웃이 멀쩡하게 버틸까요?


🔗 출처: Hacker News

이 뉴스가 유용했나요?

이 기술을 직접 배워보세요

AI 도구, 직접 활용해보세요

AI 시대, 코딩으로 수익을 만드는 방법을 배울 수 있습니다.

AI 활용 강의 보기

"비전공 직장인인데 반년 만에 수익 파이프라인을 여러 개 만들었습니다"

실제 수강생 후기
  • 비전공자도 6개월이면 첫 수익
  • 20년 경력 개발자 직강
  • 자동화 프로그램 + 소스코드 제공

매일 AI·개발 뉴스를 받아보세요

주요 테크 뉴스를 매일 아침 이메일로 전해드립니다.

스팸 없이, 언제든 구독 취소 가능합니다.