FDF란? PDF의 Forms Data Format 설명
FDF 파일은 Adobe가 폼 데이터와 주석을 PDF와 분리해 담기 위해 만든 최초의 보조 파일 포맷입니다. FDF는 Forms Data Format의 약자로, Acrobat 초기에 대화형 폼 값과 마크업(하이라이트, 코멘트, 스탬프)을 PDF 문서 밖에 보관하기 위해 도입되었습니다. 기존 FDF는 PDF와 같은 객체 문법을 쓰는 바이너리 형식이고, Acrobat은 XML FDF도 내보낼 수 있습니다. 두 형식 모두 PDF 안에 데이터를 임베드하지 않으며 Acrobat은 필요할 때 원본 파일에 다시 병합할 수 있습니다. 그래서 오늘날에도 법무, 정부, 기업 워크플로우에서 여전히 .fdf 파일을 생성합니다.
Adobe Acrobat 폼이나 주석 세션에서 데이터를 내보낸 뒤 PDF 옆에 작은 .fdf 파일이 남은 경험이 있다면, 이 가이드가 그 파일에 실제로 무엇이 들어있는지, 더 최신인 XFDF 포맷이나 일반 PDF 주석과 어떻게 다른지, 그리고 FDF 파일을 Markdown, Obsidian 노트, JSON, CSV로 열고 보고 변환하는 방법을 설명해 드립니다. 변환 도구가 직접 읽는 형식은 XML FDF입니다. %FDF로 시작하는 기존 바이너리 FDF는 Acrobat에서 XFDF 또는 XML FDF로 다시 내보내세요.
FDF는 무엇의 약자?
FDF는 Forms Data Format의 약자입니다. PDF 사양이 정의한 파일 포맷 중 하나로, Forms Data Format 아키텍처에 속합니다. 이 아키텍처는 PDF가 템플릿 역할을 하고 실제 입력된 데이터는 훨씬 더 작은 별도 파일에 저장되도록 합니다. 이후 같은 컨테이너가 주석 데이터(하이라이트, 밑줄, 스티커 노트, 폼 필드)까지 담을 수 있도록 확장되면서, 리뷰어들 사이에 문서 전체를 보내지 않고도 코멘트를 주고받을 수 있게 되었습니다.
이름에서 알아두면 좋은 점이 세 가지 있습니다:
- "Forms" — 이 포맷은 먼저 AcroForm 필드 값을 위해 설계되었으므로, 하나의
.fdf파일로 채워진 폼 전체를 표현할 수 있습니다. - "Data" — 파일에는 데이터만 담기고 시각적 레이아웃은 PDF 템플릿에 그대로 남습니다.
- "Format" — 공개된 사양이지 독점 blob이 아니므로, Adobe 외의 도구도 이를 읽을 수 있고 실제로 그렇게 합니다.
FDF 파일 안에는 무엇이 있나요?
기존 FDF 파일은 PDF 자체에서 사용하는 것과 같은 객체 문법에 기반한 바이너리 컨테이너입니다. Acrobat이 내보내는 XML FDF는 <xfdf> 또는 <fdf> 루트를 가진 XML로 저장됩니다. 기존 형식을 텍스트 에디터로 열면 읽을 수 있는 키워드와 출력할 수 없는 바이트가 섞여 있습니다. 상위 구조는 다음과 같습니다:
- FDF 버전을 식별하는 헤더.
- FDF 딕셔너리를 가리키는 루트 객체.
- 핵심 필드를 담고 있는 FDF 딕셔너리:
/Fields— 폼 필드 이름/값 쌍의 배열./Annots— 주석 객체(하이라이트, 코멘트, 스탬프)의 배열./Status— 선택적 리뷰 상태 문자열.
- 미니 PDF처럼 교차 참조 테이블과 트레일러.
기존 FDF는 PDF의 내부 객체 모델을 그대로 반영하기 때문에 간결하고 Acrobat과 깔끔하게 라운드트립하지만, 사람이 읽을 수 없고 버전 관리에서 diff가 깔끔하게 되지 않습니다. XML FDF는 텍스트로 다룰 수 있지만 XFDF만큼 널리 지원되지는 않습니다. 이것이 Adobe가 XML 기반 후속 포맷인 XFDF를 권장하는 주된 이유입니다.
FDF vs XFDF vs PDF 주석
PDF 내장 주석
일반 PDF 안에서 하이라이트나 코멘트를 추가하면, 주석은 바이너리 객체로 PDF에 직접 임베드됩니다. 가장 이식성이 좋은 방식입니다 — 주석이 문서와 함께 이동하죠 — 하지만 파일이 커지고 마크업만 따로 추출하거나 버전 관리하기가 어렵습니다. 이 임베드된 마크업을 구조화된 텍스트로 끄집어내려면 주석 내보내기 도구를 사용하세요.
FDF (Forms Data Format)
FDF는 Adobe의 오래된 보조 파일 포맷으로, 폼 데이터와 주석을 PDF와 분리해 담습니다. 기존 형식은 바이너리이고 Acrobat은 XML FDF도 내보낼 수 있습니다. .fdf 파일을 FDF 주석 변환 도구에 놓으면 XML FDF는 바로 읽히고 기존 바이너리 FDF는 지원되지 않음으로 표시됩니다.
- 장점: 전체 PDF보다 작음; Acrobat과 깔끔하게 라운드트립; PDF 사양의 공식 일부.
- 단점: 기존 바이너리 형식은 사람이 읽을 수 없고 diff도 깔끔하지 않으며 전용 파서가 필요함. XML FDF는 읽을 수 있지만 XFDF보다 지원 범위가 좁음.
XFDF (XML Forms Data Format)
XFDF는 FDF의 XML 후속 포맷입니다. 같은 데이터를 일반 텍스트로 담습니다. XFDF란 무엇인지에 대한 완전한 설명을 참고하거나, XFDF 주석 변환 도구로 파일을 변환하세요.
- 장점: 사람이 읽을 수 있고, git에서 diff가 깔끔하게 되고, 어떤 XML 라이브러리로든 파싱이 쉬우며, 대부분의 경우 FDF보다 작고, 사실상 모든 현대 도구가 지원.
- 단점: XML의 장황함 때문에 FDF보다 파일 크기가 약간 큼 (하지만 여전히 아주 작음 — 수 KB).
빠른 비교
| 속성 | PDF 내장 | FDF | XFDF |
|---|---|---|---|
| 인코딩 | 바이너리 | 바이너리 또는 XML | XML(일반 텍스트) |
| 사람이 읽을 수 있음 | 아니오 | XML FDF만 | 예 |
| 폼 데이터를 담음 | 예 | 예 | 예 |
| 주석을 담음 | 예 | 예 | 예 |
| git에서 diff가 깔끔함 | 아니오 | XML FDF만 | 예 |
| 원본 PDF가 필요함 | 아니오 | 예 | 예 |
PDF 내장 주석 대신 FDF를 왜 쓸까요?
PDF가 크고 이메일 첨부 파일에 크기 제한이 있던 시절, 리뷰어가 문서 전체가 아니라 본인의 코멘트만 작성자에게 보내길 원할 때 FDF가 제격이었습니다. 리뷰어가 주석을 달고 작은 .fdf를 내보내 그 파일만 이메일로 보내면, 작성자는 마스터 PDF에 가져와서 똑같은 마크업을 볼 수 있었습니다.
오늘날에도 같은 특성 덕에 FDF는 규제 환경(법무 redlining, 정부 양식, 임상 문서 검토)에서 원본 PDF를 바이트 단위로 그대로 보존하면서 코멘트를 별도로 추적해야 하는 **보존 및 감사 추적(audit trail)**에 유용합니다. Adobe 없이 XML FDF를 읽는 브라우저 로컬 처리 방식은 FDF 주석 변환 도구를 참고하세요.
FDF 파일을 여는 방법
pdfannotations.com에서 변환
가장 빠른 방법: .fdf 파일을 FDF 주석 변환 도구에 드래그하세요. XML FDF는 브라우저에서 파싱되어 필드와 주석을 Markdown, JSON, CSV, Obsidian 또는 일반 텍스트로 내보낼 수 있습니다. 파일이 %FDF로 시작하면 기존 바이너리 FDF이므로 Acrobat에서 XFDF 또는 XML FDF로 다시 내보내세요. 모든 처리는 브라우저에서 로컬로 진행되며 서버 업로드는 없습니다.
Adobe Acrobat으로 다시 가져오기
Acrobat에서 원본 PDF를 연 뒤 모든 도구 → 양식 및 서명 → 데이터 가져오기(또는 주석 → 주석 가져오기)를 선택하고 .fdf 파일을 고르세요. Acrobat이 필드와 주석을 문서에 다시 병합합니다.
텍스트 에디터로 열기
XML FDF는 텍스트 에디터에서 내용을 확인할 수 있습니다. 기존 바이너리 FDF는 읽을 수 있는 키워드(/Fields, /Annots, /Rect)와 출력할 수 없는 바이트가 섞여 보여 직접 읽거나 편집하기에 적합하지 않습니다. 읽을 수 있는 마크업이 필요하다면 Acrobat에서 XFDF로 내보내 XFDF 변환 도구를 사용하세요.
코드로 파싱
기존 FDF는 PDF 객체 문법을 따르므로 PDF 객체를 파싱할 수 있는 라이브러리가 필요합니다. XML FDF는 표준 XML처럼 처리할 수 있습니다. 대부분의 개발자에게는 Acrobat에서 XFDF를 내보내 그 XML을 파싱하는 편이 훨씬 간단합니다.
FDF 파일을 변환하는 방법
권장 워크플로우는 다음과 같습니다:
- 먼저 파일 형식을 확인하세요. XML FDF는 FDF 주석 변환 도구에 바로 놓을 수 있습니다.
%FDF로 시작하는 기존 바이너리 FDF는 Acrobat에서 XFDF 또는 XML FDF로 다시 내보내야 합니다. - 출력 포맷을 고릅니다 — 노트용 Markdown, 파이프라인용 JSON, 스프레드시트용 CSV, 또는 지식 베이스용 Obsidian 포맷.
- 목적지가 구체적으로 Obsidian이라면 XFDF to Obsidian 워크플로우를 따르세요 — FDF가 파싱된 이후의 단계는 동일합니다.
Acrobat에서 내보내는 경우라면 XFDF 주석 내보내기 방법 가이드가 같은 내보내기 대화상자를 다룹니다. 가독성과 호환성을 고려하면 FDF보다 XFDF를 선택하세요.
FDF 파일 크기와 한계
FDF는 데이터만 저장하고 페이지 콘텐츠를 담지 않으므로 PDF보다 작은 경우가 많습니다. 실제 크기는 필드·주석·메타데이터 수에 따라 달라지고, 주석이 매우 많으면 파일도 커질 수 있습니다. 주의할 제약은 FDF는 원본 PDF 없이는 의미가 없다는 점입니다: 필드와 주석 좌표는 원본 문서의 페이지 형상을 기준으로 참조되므로, 데이터를 이해하려면 해당 PDF(또는 맥락을 재구성할 수 있는 변환 도구)가 필요합니다.
흔한 FDF 오해
"FDF는 PDF와 같다"
아닙니다. FDF는 PDF의 객체 문법을 재사용하지만, 볼 수 있는 문서가 아니라 데이터 보조 파일입니다. FDF만 단독으로 열어 페이지를 볼 수는 없습니다.
"FDF는 더 이상 사용되지 않는다(deprecated)"
정확히는 아닙니다. Adobe는 텍스트 기반이라 다루기 쉬운 XFDF를 새 워크플로우에 권장하지만, FDF는 여전히 PDF 사양의 일부이며 Acrobat, 많은 기업 폼 시스템, 정부 포털에서 계속 생성됩니다. FDF 주석 변환 도구가 존재하는 이유는 이 파일이 여전히 현장에서 흔하기 때문입니다.
"Adobe 없이는 FDF를 읽을 수 없다"
형식에 따라 다릅니다. 저희 변환 도구는 XML FDF를 직접 읽습니다. 기존 바이너리 FDF는 Acrobat에서 다시 내보내거나 PDF 객체를 처리할 수 있는 전용 라이브러리가 필요합니다.
"FDF를 XFDF로 변환하면 데이터가 손실된다"
반드시 그렇지는 않습니다. XFDF는 동등한 필드와 주석 데이터를 전달하도록 설계되어 있지만, 실제 보존 여부는 주석 유형·메타데이터·변환 도구에 따라 달라집니다.
FDF는 언제 사용해야 할까요?
- Acrobat, 정부 양식 시스템, 또는 법무 리뷰 도구에서
.fdf파일을 받았다면 — FDF 주석 변환 도구로 변환하세요. - 마스터 PDF를 그대로 둬야 하는 엄격한 감사 추적이 필요하다면 — 코멘트를 보조 FDF 파일로 보관하세요.
- FDF만 내보내는 오래된 기업 시스템과 연동 중이라면.
어떤 새 워크플로우든 XFDF나 내장 주석을 우선하세요 — 읽고 diff하고 변환하기가 더 쉽습니다.
자주 묻는 질문
.fdf는 무엇의 약자인가요?
.fdf는 Forms Data Format의 약자입니다. 기존 형식은 PDF 객체 문법을 쓰는 바이너리 보조 파일이며, Acrobat은 XML FDF도 내보낼 수 있습니다.
FDF는 XFDF와 같나요?
아닙니다. 기존 FDF는 PDF 객체 문법을 쓰고 XFDF는 XML(일반 텍스트)입니다. Acrobat은 XML FDF도 내보낼 수 있지만, XFDF가 더 읽기 쉽고 더 많은 도구에서 변환됩니다. XFDF란 무엇인지에 대한 가이드를 참고하세요.
Adobe Acrobat 없이 FDF 파일을 열 수 있나요?
XML FDF라면 FDF 주석 변환 도구에 드래그해 내용을 읽고 내보낼 수 있습니다. 기존 바이너리 FDF는 Acrobat에서 XFDF 또는 XML FDF로 다시 내보내거나 PDF 객체를 파싱할 수 있는 전용 라이브러리를 사용하세요.
FDF는 하이라이트 색상을 보존하나요?
네. FDF는 PDF 내장 주석과 마찬가지로 색상, 불투명도, 작성자를 포함한 주석 외형 속성을 저장합니다.
FDF 파일을 직접 편집할 수 있나요?
기존 바이너리 FDF는 직접 편집하지 마세요. 먼저 Acrobat에서 XFDF로 내보내세요. XML FDF와 XFDF는 텍스트로 편집할 수 있지만 작업 전에 반드시 백업하세요.