생성된 보고서가 불만과 함께 돌아올 때, 그 불만은 거의 내용에 관한 것이 아니라 내용을 찾는 일에 관한 것입니다. 보고 파이프라인이 조립한 수백 페이지, 목차 페이지는 없고, 독자는 네 번째 장을 찾기 위해 스크롤바를 끌거나 뷰어 검색창에 단어를 입력해야 합니다. 문서에는 구조가 있습니다. 다만 그것을 누구에게도 알려주지 않았을 뿐입니다.
컬러가 많은 보고서를 사무실 흑백 레이저 프린터로 보내면 두 번 손해를 봅니다. 한 번은 프린터가 CMYK 점으로 회색을 흉내 내려고 낭비하는 토너로, 또 한 번은 결과물의 품질로 — 화면과 차트 채우기가 깔끔한 톤 대신 지저분한 얼룩으로 변해버립니다. 같은 파일을 기록 보관소로 보내면 색상은 쓸모없기는커녕 오히려 해롭습니다. 별색은 변색되고, 색상 관리는 기기마다 달라지며, 다시 인쇄할 때마다 이전과 조금씩 다르게 나옵니다. 그레이스케일은 이 두 작업이 실제로 원하는 형식이며, PDF를 코드로 처리하기만 하면 단 한 번의 호출로 끝납니다.
큰 PDF 링크를 클릭하면 빈 프레임이 나타납니다. 스피너가 돌고 몇 MB가 도착한 뒤에야 첫 페이지가 표시됩니다. 파일도 문제없고 네트워크도 문제없었지만, 문서가 뷰어가 무엇이든 그리기 전에 전체 파일을 기다려야 하는 순서로 작성되어 있었습니다. 이것이 선형화가 해결하는 문제이며, 크기 문제가 아니라 구조적 수정입니다. 동일한 바이트를 첫 페이지 렌더링에 필요한 부분이 앞쪽에 오도록 배열합니다.
모든 계약서, 공식 서신, 브랜드 자료에는 암묵적인 시각적 정체성이 담겨 있습니다. 깨끗한 흰 페이지도 제 역할을 하지만, 그 배후에 있는 조직에 대해서는 아무 말도 하지 않습니다. 부드러운 색조, 은은한 투톤 그라데이션, 또는 타일형 배경 이미지를 추가하는 순간 문서 전체가 일반적인 파일에서 알아볼 수 있는 브랜드 결과물로 바뀌며, 독자들은 그 이유를 설명하지 못하더라도 이를 알아차립니다.
Word 문서는 기사, 제품 사양서, 규정 준수 문서 등 웹 콘텐츠의 출발점인 경우가 많으며, 결국 웹사이트에 게시되어야 합니다. 백엔드 변환 서비스 없이 `.docx`에서 깔끔한 HTML로 변환하는 것이 과제입니다. [Spire.Doc for JavaScript](/Introduce/doc-for-javascript.html)는 WebAssembly에서 완전한 문서 처리 엔진을 실행하여 이를 가능하게 합니다. 가상 파일 시스템(VFS)을 통해 Word 파일을 읽고, 변환을 로컬에서 수행한 뒤 결과 HTML을 다운로드할 수 있습니다. 모두 클라이언트 측에서 처리되며 서버 왕복이 필요 없습니다.
수십 명의 고객에게 발송되는 계약서 템플릿을 상상해 보세요. 법무팀은 모든 조항을 신중하게 작성했고, 각 수신자가 손대야 하는 것은 서명란, 프로젝트 이름, 수락 날짜뿐입니다. 완전히 편집 가능한 Word 파일을 건네면 누군가는 반드시 위약금 조항을 바꾸거나 책임 조항을 삭제할 것입니다. 문서 전체를 잠그면 아무도 필드를 작성할 수 없습니다. 정말 필요한 것은 선택적 편집입니다. 즉, 특정 단락은 편집해도 되고 나머지는 모두 고정된다는 것을 표현하는 방법입니다.
개발자들이 'Word 문서 보호'라는 말을 들으면 가장 먼저 떠올리는 것은 암호화입니다. 즉, 아무도 파일을 열 수 없도록 비밀번호를 설정하는 것이죠. 하지만 문서 보안에는 똑같이 중요한 두 번째 계층이 있습니다: **문서를 연 후 독자가 할 수 있는 작업을 제한하는 것입니다**. 고객에게 보낸 계약서 템플릿은 합의된 조건을 변경하지 않고 빈칸만 채울 수 있어야 합니다. 검토를 위해 회람되는 최종 초안은 댓글은 허용하되 본문 텍스트를 직접 편집하는 것은 차단해야 합니다. 이러한 시나리오에는 열기 암호 암호화가 아니라 편집 제한이 필요합니다.
브라우저에서 긴 Word 문서를 서식 지정해 본 사람이라면 그 고충을 압니다. 섹션 제목이 페이지 하단에 외따로 남고 본문은 다음 페이지에서 시작하거나, 다른 파일에서 붙여넣은 콘텐츠가 원치 않는 빈 페이지를 연달아 끌고 오는 경우입니다. 두 문제는 거의 항상 페이지 나누기로 거슬러 올라갑니다. 있어야 할 곳에 없거나, 없어야 할 곳에 남아 있는 것입니다.
Page 1 of 4
집 Spire.Office page 1