본문으로 바로가기

파일 형식

RTF란? 서식 있는 텍스트 형식의 작동 원리

RTF는 Microsoft가 1987년에 만든 문서 형식으로, 서식 있는 텍스트를 일반 ASCII 문자로 기술합니다. 구조와 한계, 변환할 때 주의할 점을 살펴봅니다.

작성자: Hemen Dönüştür Editör Ekibi게시일: 6분 분량

RTF 라벨이 붙은 파일 배지

RTF라는 이름을 자주 듣지는 않아도, 아마 여러 번 다뤄 봤을 것입니다. 오래된 프로그램의 "내보내기" 메뉴에서, Mac 텍스트 편집기의 기본 저장 형식으로, 또는 워드 프로세서 사이에서 문서를 옮길 때 "가장 무난한 선택"으로 말이죠. Rich Text Format은 굵게, 기울임, 글꼴, 색상, 표 같은 서식을 일반 텍스트 문자로 기술합니다. 이 글에서는 RTF가 어떻게 탄생했는지, RTF 파일 내부는 어떻게 생겼는지, 어디에 강하고 어디에 약한지, 변환할 때 무엇을 주의해야 하는지 설명합니다.

RTF란 무엇인가요?

RTF는 서로 다른 프로그램과 운영 체제 사이에서 문서를 옮기기 위해 Microsoft가 개발한 텍스트 기반 형식입니다. DOC 같은 바이너리 형식이 아니어서 RTF 파일을 메모장으로 열면 텍스트를 읽을 수 있고, 그 사이사이에 백슬래시 명령이 섞여 있습니다. 하지만 HTML과 달리 사람이 직접 작성하도록 설계된 형식은 아닙니다. 한 프로그램이 만든 문서를 다른 프로그램이 서식까지 포함해 읽을 수 있게 하는 것이 목적입니다.

먼저 흔한 오해 하나를 짚고 넘어가겠습니다. 이메일 프로그램이나 웹 양식의 "서식 있는 텍스트(rich text)" 옵션은 대개 서식이 적용된 텍스트를 뜻하는 일반적인 용어이며, 내부적으로는 HTML인 경우가 많습니다. 이 글에서 다루는 RTF는 .rtf 확장자와 고유한 문법을 가진 특정 파일 형식입니다.

간략한 역사

RTF는 1980년대 중후반 Microsoft Word 팀의 리처드 브로디(Richard Brodie), 찰스 시모니(Charles Simonyi), 데이비드 루버트(David Luebbert)가 개발했습니다. 최초의 RTF 리더와 라이터는 1987년 Macintosh용 Word 3.0에 RTF 1.0으로 탑재되었습니다. 이후 20년 동안 형식은 Word와 함께 발전했습니다.

버전시기비고
1.01987년첫 버전, Word 3.0(Mac)과 함께
1.11989년글꼴 내장, Word 4와 함께
1.2 - 1.41993년 - 1995년 9월Word 5, Word 6, Word 95와 함께 나온 버전
1.51997년 4월Word 97과 함께 유니코드 지원(\u 제어 단어)
1.6 - 1.81999년 5월 - 2004년 4월Word 2000, 2002, 2003과 함께 나온 버전
1.9.12008년 3월마지막 버전, Word 2007과 호환

1.9.1 이후 Microsoft는 RTF 사양 개선을 중단했습니다. 미국 의회도서관의 형식 설명에 따르면 Microsoft는 Word 2010 이후 도입된 기능이 RTF로 저장할 때 보존되지 않는다고 밝히고 있습니다. 요컨대 RTF는 여전히 지원되지만 더 이상 발전하지 않습니다.

RTF 파일 안에는 무엇이 있나요?

RTF는 세 가지 요소로 이루어집니다.

  • 그룹(Group): 중괄호 { }로 묶인 구역입니다. 그룹 안에서 바꾼 서식은 그룹이 닫히면 끝납니다.
  • 제어 단어(Control word): \b(굵게)나 \fs24(반 포인트 단위 글꼴 크기, 24는 12pt) 같이 백슬래시로 시작하는 문자열입니다. 숫자 매개변수를 받을 수 있어서 \b1은 굵게를 켜고 \b0은 끕니다.
  • 제어 기호(Control symbol): \~(줄 바꿈 없는 공백)나 \'e9(코드 페이지의 문자를 16진수로 표기) 같이 백슬래시 뒤에 문자가 아닌 기호 하나가 오는 형태입니다.

간단한 RTF 문서는 다음과 같습니다.

{\rtf1\ansi\ansicpg1252\deff0
{\fonttbl{\f0 Times New Roman;}}
{\colortbl;\red200\green0\blue0;}
\f0\fs24 This is a {\b bold} word and some {\cf1 red} text in a caf\'e9.\par
}

파일은 {\rtf1로 시작하고, 이어서 문자 집합(\ansi)과 코드 페이지(\ansicpg1252, 서유럽 Windows 코드 페이지)가 옵니다. 글꼴 테이블(\fonttbl)과 색상 테이블(\colortbl)은 맨 위에 선언되고 본문에서 번호로 참조됩니다. \par는 문단을 끝냅니다. 문서의 나머지 부분에는 구역 설정, 머리글과 바닥글, 문단, 표가 들어 있습니다. 미국 의회도서관은 RTF가 표를 일종의 문단으로 취급한다고 설명합니다.

ASCII가 아닌 문자는 두 가지 방법으로 쓸 수 있습니다. 예전 방식은 \'e9 같은 16진수 이스케이프로 선언된 코드 페이지의 문자를 가리킵니다(코드 페이지 1252에서 E9는 "é"). RTF 1.5에서 추가된 방식은 \u305? 같은 유니코드 제어 단어를 씁니다. 숫자는 문자의 유니코드 값이고(305는 터키어의 점 없는 "ı"), 그 뒤의 문자는 유니코드를 지원하지 않는 리더를 위한 대체 문자입니다. RTF는 텍스트를 UTF-8 같은 유니코드 인코딩으로 저장하지 않으며, 파일 자체는 보통 7비트 ASCII입니다.

RTF는 어디에 쓰이나요?

  • 프로그램 간 문서 이동: 서로 다른 워드 프로세서나 운영 체제 사이에서 서식 있는 텍스트를 옮길 때.
  • 소프트웨어의 보고서 출력: RTF를 만드는 것이 DOCX를 만드는 것보다 훨씬 간단해서, 많은 업무용, 업종별 프로그램이 Word에 의존하지 않고 서식 있는 보고서를 RTF로 출력합니다.
  • 클립보드: Windows와 macOS에서 서식 있는 텍스트를 복사할 때 쓰이는 대표적인 형식 중 하나입니다.
  • 간단한 편집기: 워드패드와 텍스트 편집기(TextEdit)가 기본으로 RTF를 씁니다.

장점과 단점

장점단점
거의 모든 워드 프로세서에서 읽을 수 있음2008년 이후 개발 중단
텍스트 기반이라 텍스트 추출이 쉬움이미지가 들어가면 파일이 매우 커질 수 있음
매크로 언어가 없음내장 OLE 개체와 서식 파일 참조가 보안 위험이 될 수 있음
생성이 간단해 소프트웨어 출력용으로 적합프로그램이 어떤 버전과 기능을 지원하는지 불분명한 경우가 많음
버전 간 상위, 하위 호환Word의 고급 기능이 사라짐

보안에 관해 한마디 덧붙이면, RTF에는 매크로가 들어갈 수 없지만 위험이 전혀 없는 것은 아닙니다. Wikipedia에 정리된 기록에 따르면 RTF 파일이 서식 파일 주입(template injection)과 내장 OLE 개체를 통한 공격에 쓰인 사례가 있으며, 관련 결함은 구형 워드패드와 Word에서 2017년과 2015년에 패치되었습니다. 출처를 알 수 없는 RTF 파일도 다른 문서와 똑같이 조심해서 다루세요.

RTF는 어떤 프로그램으로 여나요?

Microsoft Word, LibreOffice Writer, Apple Pages, 텍스트 편집기(TextEdit), WPS Office로 RTF를 열고 저장할 수 있습니다. 오랫동안 Windows의 기본 RTF 편집기였던 워드패드는 현재 Windows 11 버전에 더 이상 포함되지 않으므로, 이 경우 Word나 LibreOffice가 필요합니다. 미국 의회도서관은 웹용과 태블릿용 Word에서 RTF 파일을 열 수 없다는 점도 언급했습니다. Google Docs는 RTF를 가져올 수 있고 문서를 RTF로 다운로드할 수도 있습니다.

자주 겪는 문제와 해결 방법

특수 문자나 라틴 문자가 아닌 글자가 이상하게 보입니다

파일을 만든 프로그램이 코드 페이지를 잘못 선언했거나, 유니코드 제어 단어 대신 다른 코드 페이지의 16진수 이스케이프를 썼다면 문자가 뒤바뀝니다. 예를 들어 터키어 "ı"가 "ý"로, "ş"가 "þ"로 보이는 것은 코드 페이지 1254(터키어)와 1252(서유럽)가 뒤섞였을 때 나타나는 전형적인 증상입니다. 파일을 Word나 LibreOffice에서 열어 DOCX로 저장하는 것이 원본을 바로잡는 가장 쉬운 방법입니다.

파일이 예상보다 훨씬 큽니다

RTF는 이미지를 보통 바이너리가 아닌 16진수 텍스트로 저장하므로 이미지 데이터가 대략 두 배로 늘어납니다. 이미지가 있는 문서라면 DOCX나 PDF가 훨씬 작은 파일을 만듭니다.

프로그램마다 서식이 달라집니다

프로그램마다 지원하는 RTF 범위가 다르고, 인식하지 못하는 제어 단어는 무시합니다. 모양이 정확해야 한다면 최종본을 PDF로 공유하세요.

RTF 파일 변환 팁

저희 변환기에서 RTF 파일은 서버에 업로드되어 LibreOffice로 처리되고 30분 이내에 삭제됩니다. RTF, DOCX, DOC, PDF 사이의 변환은 중간 단계 없이 직접 이루어지므로 페이지 레이아웃, 머리글과 바닥글, 표, 목록 번호가 유지됩니다.

  • RTF를 Word로 변환하는 것이 구형 소프트웨어의 출력물을 편집하고 파일 크기를 줄이는 가장 좋은 방법입니다.
  • RTF를 PDF로 변환하면 프로그램마다 달라지는 모양을 고정할 수 있습니다.
  • RTF를 TXT로 변환하면 모든 제어 단어가 제거되고 읽을 수 있는 텍스트만 남습니다.
  • Word를 RTF로 변환할 때는 Word 2010 이후 기능(새 차트 유형, 일부 레이아웃 옵션)에 대응하는 RTF 요소가 없을 수 있다는 점을 기억하세요.
  • 일반 텍스트로 서식 있는 문서를 만들어야 한다면 TXT를 RTF로 변환하면 텍스트가 문단 단위로 옮겨집니다. HTML이나 Markdown 같은 원본에서 만든 RTF도 LibreOffice의 RTF 내보내기를 거치므로 굵은 텍스트, 제목, 목록, 표가 유지됩니다.

자주 묻는 질문

RTF와 DOCX는 무엇이 다른가요?

RTF는 일반 텍스트에 넣은 제어 단어로 서식을 기술하며 2008년 이후 바뀌지 않았습니다. DOCX는 XML 파트로 이루어진 현역 ZIP 기반 표준입니다. DOCX가 더 많은 기능을 지원하고, 이미지가 있는 문서에서는 훨씬 작습니다.

RTF 파일에 매크로가 들어갈 수 있나요?

아니요, RTF에는 매크로 언어가 없습니다. 다만 내장 OLE 개체와 서식 파일 참조가 악용될 수 있으니 출처를 알 수 없는 RTF 파일은 계속 조심하세요.

RTF는 아직 지원되나요?

네, Word와 다른 워드 프로세서는 여전히 RTF를 열고 저장합니다. 하지만 사양의 마지막 버전인 1.9.1은 2008년 3월에 발행되었고, Microsoft는 더 이상 형식을 개발하지 않습니다.

Windows 11에서 RTF 파일은 어떻게 여나요?

워드패드가 없는 버전에서는 Word, LibreOffice Writer, WPS Office로 여세요. 읽기만 하면 된다면 PDF로 변환해 브라우저에서 보는 방법도 있습니다.

RTF에서 특수 문자가 깨지는 이유는 무엇인가요?

대개 파일을 만든 프로그램이 코드 페이지를 잘못 선언했기 때문입니다. 유니코드 제어 단어를 쓰는 프로그램은 이 문제를 완전히 피합니다.

출처

관련 변환 도구

모든 글