PDF 보기·확대·표지 전체 가이드

PDF 보기는 Markdown을 인쇄·검토용 문서로 조판한 파생 출력 snapshot이다. PDF 화면에서 보이는 표지, 여백, 쪽 크기와 확대율은 원문을 대체하지 않는다. 내용을 고칠 때는 Source로 돌아가고, 표현을 고칠 때는 PDF 템플릿을 조정한다.

이 장은 다음 세 기능을 한 흐름으로 검증한다.

기능 ID 기능 이 장의 실제 증거
VW-17 PDF 보기 현재 문서 snapshot으로 만든 Typst PDF 미리보기
VW-18 PDF 확대/축소 100% → 110% → 100% viewport 전환
VW-33 PDF 표지 Basic Report 템플릿의 첫 페이지 표지

준비된 예제

예제 폴더를 내려받아 Glif에서 Scope로 연다. 첫 문서는 heading, task, 표, 인용과 code block을 포함하므로 표지뿐 아니라 여러 본문 요소를 함께 대조할 수 있다.

PDF로 출력할 heading·표·목록을 가진 Markdown 원문

PDF 출력 열기

현재 문서만 미리보기

  1. 01_asset-handbook.md를 연다.
  2. Ctrl+P로 Launcher를 연다.
  3. 검색어 앞에 >를 붙여 명령 검색으로 바꾼다.
  4. > 현재 문서 pdf를 입력한다.
  5. 현재 문서를 PDF로 내보내기를 선택한다.
  6. 출력 점검의 소스가 01_asset-handbook.md이고 상태가 준비됨인지 확인한다.

Launcher는 명령을 실행한 시점의 활성 문서 내용을 snapshot으로 대화상자에 전달한다. 대화상자를 연 뒤 다른 문서를 선택해도 이미 고정된 snapshot을 조용히 다른 원문으로 바꾸지 않는다. 다른 문서를 출력하려면 대화상자를 닫고 그 문서에서 다시 연다.

바인더 전체 미리보기

Launcher에서 바인더를 PDF로 내보내기를 선택하면 바인더의 Markdown 파일을 정렬된 출력 소스로 사용한다. _index.md는 바인더 제목을 제공하지만 일반 본문 파일 목록과 같은 방식으로 중복 삽입되지 않는다.

현재 문서와 바인더는 목적이 다르다.

대상 적합한 상황 확인할 범위
문서 한 글, 보고서, 제안서 활성 문서 snapshot
바인더 여러 장으로 된 핸드북, 자료집 정렬된 Markdown 문서 집합

PDF 출력 대화상자 읽기

실제 표지 미리보기와 출력 점검·옵션을 함께 보여 주는 PDF 출력 대화상자

왼쪽은 실제 Typst 결과이고 오른쪽은 실행 전 점검과 이번 출력 옵션이다. 두 영역 사이 splitter를 끌어 정보 영역 폭을 조절할 수 있다.

출력 점검

출력 전에 세 행을 읽는다.

  1. 소스: 바인더 또는 문서가 준비됐는지와 공개 가능한 짧은 이름
  2. 템플릿: 실제 선택된 템플릿 이름
  3. 결과: 생성 뒤 열지, Glif에 머물지, 현재 미리보기 페이지 범위가 무엇인지

점검 영역은 실행에 필요한 전체 내부 경로를 노출하지 않는다. 실제 경로는 파일 접근과 생성에만 사용하고 화면에는 문서 파일명이나 바인더 이름을 표시한다.

이번 출력 옵션

현재 문서·전체 미리보기·생성 후 열기를 고르는 PDF 출력 설정

옵션 켜면 꺼도 유지되는 것
소스 바인더 또는 현재 문서를 선택 원문 파일
파일명 헤딩 포함 결합 출력에서 파일명 heading을 보탬 각 문서의 실제 heading
전체 미리보기 전체 페이지를 미리 생성 최종 출력 가능 범위
생성 후 열기 저장 뒤 기본 PDF reader를 엶 생성된 PDF 파일

전체 미리보기가 꺼져 있으면 빠른 검토를 위해 앞 1–3페이지만 미리 만든다. 이는 최종 PDF를 세 쪽으로 자르는 옵션이 아니다. 긴 문서의 끝부분까지 확인해야 할 때만 켜고, 최종 저장 파일은 별도 reader에서 다시 검토한다.

표지가 만들어지는 방식

표지는 별도 Markdown 문서가 아니라 선택한 PDF 템플릿의 cover page다. Free의 기본 출력은 내장 Basic Report를 사용하고, Pro에서는 템플릿 에디터로 cover 구조와 스타일을 조정할 수 있다.

실증 예제의 첫 장에는 다음 값이 나타난다.

표지 위치 Basic Report가 읽은 값 예제 결과
제목 현재 출력 소스 제목 문서를 자산으로 만드는 팀 핸드북
부제 위치 템플릿 preset label Report
작성자 위치 현재 바인더 제목 문서를 자산으로 만드는 출판 실험실
날짜 출력 snapshot 생성일 2026-08-01

예제 front matter의 descriptionauthor가 Basic Report의 부제·작성자에 자동 매핑된다고 가정하지 않는다. 현재 내장 템플릿은 위 binding을 사용한다. 다른 metadata를 표지에 배치하려면 해당 binding을 지원하는 템플릿 계약이 먼저 필요하다.

Pro 템플릿 에디터의 표지 범위

Pro에서는 **템플릿 에디터 (Pro)**로 이동해 다음을 조정한다.

  • 표지 켜기/끄기
  • 제목, 부제, 작성자, 날짜 block의 표시와 크기
  • spacer, divider, stack, grid block
  • 정렬, padding, 글자·배경색
  • 배경 panel과 이미지 resource
  • 안전 영역, 페이지 크기와 방향
  • 목차, 본문 다단, header, footer와 쪽번호

템플릿 편집은 Markdown에 PDF 전용 문법을 삽입하지 않는다. 자세한 편집기 계약은 PDF 템플릿 에디터를 함께 본다.

PDF 확대와 축소

PDF 출력 대화상자를 닫고 Launcher에서 > PDF 미리보기를 검색해 PDF 출력 패널을 연다. 이 패널의 상단 action bar가 Glif의 PDF viewport 확대율을 소유한다.

100%에서 표지 전체와 페이지 비율을 확인하는 PDF 출력 패널

110%로 확대해 같은 표지의 세부를 읽는 PDF 출력 패널

control 동작 경계
축소 10%p씩 축소 최소 20%
현재 값 100%, 110%처럼 읽기 aria-live로 변경 고지
확대 + 10%p씩 확대 최대 250%
100%로 재설정 기준 배율로 복귀 항상 100%

확대율은 화면의 page frame 크기와 scroll 범위만 바꾼다. 다음 값은 바꾸지 않는다.

  • Markdown byte와 editor undo history
  • A4, Letter 같은 출력 용지 크기
  • 세로·가로 방향과 여백
  • 템플릿의 글자 크기와 본문 scale
  • 최종 PDF의 page count

영상은 실제 Glif Desktop에서 Markdown 원문을 연 뒤 현재 문서 PDF 명령, Basic Report 표지, 110% 확대와 100% 복귀를 차례로 보여 준다. 파란 원은 pointer이고 아래 설명은 캡처 안내 overlay라서 문서나 PDF에 저장되지 않는다.

Source를 수정했을 때

PDF는 live editor가 아니다. 내용을 바꾸려면 다음 순서를 따른다.

  1. PDF 대화상자나 패널에서 Source 문서로 돌아간다.
  2. Markdown을 수정하고 저장한다.
  3. PDF 출력을 다시 열거나 미리보기 다시 시도를 실행한다.
  4. 새 snapshot의 제목, 표와 page count를 이전 결과와 대조한다.

대화상자에서 고정한 문서 snapshot은 편집 중간 상태가 다른 문서로 섞이는 것을 막는다. 최신 저장본이 필요하면 출력을 다시 여는 것이 가장 명확하다.

오류와 복구

PDF 준비는 source → template resolution → Typst resource 검증 → preview artifact 순서로 진행된다.

화면 상태 의미 복구
미리보기 생성 중 새 artifact를 준비 중 완료 신호를 기다림
미리보기 갱신 중 기존 결과를 유지하며 새 결과 준비 source·template 변경 여부 확인
미리보기 오류 현재 결과가 없음 원인을 읽고 다시 시도
이전 미리보기 표시 중 새 생성은 실패했지만 마지막 성공본이 남음 오래된 결과임을 인지하고 복구
템플릿 필드 열기 cover resource나 field가 문제 해당 템플릿 설정으로 이동

실패해도 Markdown, 저장된 템플릿과 마지막 성공본을 임의로 지우지 않는다. 진단은 사용자 경로나 renderer command 전체를 그대로 노출하지 않고, 복구 가능한 template field나 resource 역할을 가리킨다.

자주 확인할 문제

  • 활성 문서가 없으면 현재 문서 출력 명령이 비활성화된다.
  • 선택한 binder-local 템플릿이 없으면 내장 기본값을 명시적으로 선택할지 결정한다.
  • cover image 경로가 없거나 허용된 resource root 밖이면 생성하지 않는다.
  • 지원되지 않는 이미지 target, 손상된 template JSON과 Typst compile 오류는 정상 PDF처럼 숨기지 않는다.
  • 개발 빌드라도 bundled Typst runtime을 찾지 못하면 placeholder를 만들지 않고 준비 오류로 멈춘다.

Free와 Pro 경계

기능 Free Pro
기본 PDF 미리보기·저장 가능 가능
PDF 확대/축소 가능 가능
내장 기본 표지 가능 가능
사용자 템플릿 선택·저장 제한 가능
표지 block·배경·조판 편집 제한 가능

Free에서도 기본 PDF 결과를 검토하고 저장할 수 있다. **템플릿 에디터 (Pro)**가 보인다고 해서 Free 출력 자체가 막힌 것은 아니다. Pro 진입은 표지와 조판을 직접 설계하는 기능의 경계다.

Desktop, PDF와 Hugo의 차이

표면 역할 상호작용 유지
Desktop Source Markdown 작성과 수정 editor 명령
Desktop PDF 보기 실제 PDF snapshot 검토 확대, scroll, 재시도
저장된 PDF 고정된 배포 파일 PDF reader 기능
Hugo 가이드 사용법과 실증 media 게시 웹 navigation과 video 재생

PDF 확대율을 Hugo page profile로 전달하거나, Hugo page를 PDF viewer와 같은 결과라고 보지 않는다. Hugo에는 이 가이드와 공개 fixture·실증 자산이 게시되고 실제 PDF는 Desktop 출력으로 생성한다.

이번 실증 결과

Windows Glif 0.1.0 개발 release candidate의 1200×800 client area에서 확인했다.

  • 실제 Basic Report 표지 생성 성공
  • 현재 문서 파일명, 선택 템플릿과 준비 상태 표시 성공
  • 100% → 110% → 100% 전환 성공
  • 전후 01_asset-handbook.md SHA-256 동일
  • 공개 점검 UI에 절대 경로 없음
  • MP4와 WebM 7.8초, 1200×800

기계 판독 실증 JSON에는 원문 hash, launcher snapshot, dialog·zoom 상태와 캡처 크기가 기록돼 있다. 절대 작업 경로와 임시 PDF 경로는 포함하지 않는다.

완료 기준

  • VW-17: 현재 문서 snapshot에서 실제 Typst PDF를 생성해 화면에 표시한다.
  • VW-18: 확대, 축소와 100% 재설정이 viewport에만 적용된다.
  • VW-33: 선택한 Basic Report 템플릿의 표지를 실제 첫 페이지에서 확인한다.
  • PDF 조작 전후 Markdown hash가 같다.
  • 출력 점검에서 소스, 템플릿, 결과 상태를 구분한다.
  • Free 기본 출력과 Pro 템플릿 편집 경계를 설명한다.
  • 오류가 source와 마지막 성공 결과를 파괴하지 않는 복구 경로를 설명한다.
  • 공개 이미지, 영상과 JSON에 사용자 절대 경로를 남기지 않는다.

이 체크리스트는 현재 release candidate의 실증 범위다. 최종 배포 후보에서는 저장 dialog, 생성 후 열기와 별도 PDF reader 재개방까지 같은 fixture로 다시 qualification한다.