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

오피스 문서를 브라우저에서 '픽셀 단위'로 똑같이 보여준다고? ooxml 뷰어 이야기

Hacker News 원문 보기
오피스 문서를 브라우저에서 '픽셀 단위'로 똑같이 보여준다고? ooxml 뷰어 이야기

무슨 일이냐면요

워드(.docx)나 엑셀(.xlsx), 파워포인트(.pptx) 파일을 웹사이트에서 미리보기로 띄워야 했던 적, 한 번쯤 있으시죠? 그런데 막상 해보면 생각보다 골치 아픈 작업이에요. 회사 내부 문서 관리 시스템을 만들든, 채용 사이트에서 이력서를 보여주든, '파일을 다운로드받지 않고 화면에서 바로 보고 싶다'는 요구는 어디에나 있거든요.

그래서 등장한 게 ooxml이라는 오픈소스 프로젝트예요. 핵심 키워드가 'Pixel-faithful', 우리말로 풀면 '픽셀 단위까지 충실하게' 렌더링한다는 거예요. 즉, 원본 오피스 프로그램에서 보던 모습 그대로, 글자 위치·줄 간격·표 테두리 하나까지 브라우저에서 똑같이 그려준다는 거죠.

OOXML이 대체 뭔데요?

잠깐 용어부터 짚고 갈게요. OOXML(Office Open XML)은 마이크로소프트 오피스 2007부터 쓰기 시작한 파일 포맷이에요. 우리가 흔히 보는 .docx, .xlsx, .pptx가 다 이 형식이에요.

이게 뭐냐면, 사실 이 파일들은 그냥 압축(zip) 파일이에요. 확장자를 .zip으로 바꿔서 풀어보면 안에 XML 문서 여러 개랑 이미지들이 들어 있어요. '여기에 이런 글자가, 이만큼 떨어진 위치에, 이 폰트로 들어간다'는 설계도가 XML로 빼곡히 적혀 있는 거죠. 그래서 뷰어를 만든다는 건, 이 설계도를 읽어서 화면에 다시 그려내는 작업이에요.

왜 어려운 작업일까요

문제는 이 설계도가 어마어마하게 복잡하다는 거예요. 표 안에 표가 들어가고, 글자가 페이지를 넘어가면 자동으로 다음 페이지로 흐르고, 이미지가 글 사이에 끼어들고... 워드가 수십 년간 쌓아온 레이아웃 규칙을 똑같이 재현하는 건 정말 힘든 일이에요.

그동안 많이 쓰던 방법은 크게 두 가지였어요. 하나는 서버에서 PDF로 변환해서 보여주는 방식이에요. LibreOffice 같은 걸 서버에 깔아두고 문서를 PDF로 바꿔서 내려주는 건데, 변환할 때마다 서버 자원을 잡아먹고 글자가 깨지거나 폰트가 바뀌는 일이 잦았어요. 다른 하나는 mammoth.js 같은 라이브러리로 HTML로 대충 변환하는 방식인데, 이건 내용은 보이지만 '원본과 똑같은 모습'은 포기해야 했죠.

ooxml은 이 둘과 달리 브라우저 안에서 직접 원본 레이아웃을 계산해서 그려내는 쪽을 택했어요. 서버 변환도 없고, 모양도 원본에 가깝게 유지하려는 거예요. 파일을 클라이언트(사용자 브라우저)로 보내서 거기서 처리하니, 서버 부담도 줄고 민감한 문서가 외부 변환 서비스를 거치지 않아도 된다는 장점이 생겨요.

업계 흐름에서 보면

비슷한 도구로는 앞서 말한 mammoth.js(docx → HTML), docx-preview, 그리고 엑셀 쪽의 SheetJS 같은 게 있어요. 상용으로는 Microsoft의 Office 365 웹 뷰어나 Google Docs 뷰어가 워낙 잘 되어 있죠. 하지만 이런 상용 서비스는 내 문서를 외부 서버에 올려야 하니, 보안이 중요한 곳에서는 못 쓰는 경우가 많아요.

그래서 '내 서버 안에서, 외부로 데이터 안 보내고, 원본과 똑같이' 보여주고 싶은 수요는 늘 있었어요. ooxml 같은 클라이언트 사이드 렌더링 프로젝트가 주목받는 이유가 바로 여기 있어요.

한국 개발자에게는

공공기관이나 금융권, 사내 그룹웨어처럼 문서를 외부로 보내면 안 되는 환경이 한국엔 정말 많잖아요. 이럴 때 브라우저에서 자체적으로 렌더링하는 방식은 꽤 매력적인 선택지예요. 한컴오피스(hwp)까지 커버하진 못하겠지만, 적어도 MS 오피스 계열 미리보기가 필요한 프로젝트라면 한 번쯤 테스트해볼 가치가 있어요.

다만 아직 오픈소스 초기 단계인 프로젝트는 복잡한 표나 도형이 많은 문서에서 깨질 수 있으니, 도입 전에 실제 우리 회사에서 쓰는 문서 샘플로 꼭 테스트해보시길 권해요.

마무리

핵심만 정리하면, 오피스 문서 미리보기를 서버 변환 없이 브라우저에서 원본 그대로 보여주려는 시도예요. 여러분이라면 사내 문서 뷰어를 만들 때 서버 PDF 변환 방식과 클라이언트 렌더링 방식 중 어느 쪽을 택하시겠어요? 보안과 정확도, 성능 사이에서 어떤 트레이드오프를 더 중요하게 보시나요?


🔗 출처: Hacker News

이 뉴스가 유용했나요?

이 기술을 직접 배워보세요

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

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

AI 활용 강의 보기

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

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

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

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

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