이력서 인쇄 버그 4연타 — A4 잘림부터 챗봇 위젯까지
오랜만에 이력서 페이지를 열어보니 인쇄 관련 버그가 한꺼번에 몰려 있었다. 하루에 네 개를 순서대로 잡았다.
1. A4 폭을 넘어 잘리는 문제
본문이 고정폭 780px라 A4보다 넓으면 오른쪽이 그대로 잘려 인쇄됐다. 여백 방식을 @page margin으로 통일하고 폭 기준을 정리해서 고쳤다.
2. 임팩트 배지가 하나도 안 뜨는 문제
프로젝트 임팩트 배지가 project_key가 아니라 title로 매칭되고 있었다. 7/18에 project_key로 통일했던 곳 중 한 군데가 빠져 있었던 것 — 리팩터링이 한 곳에서라도 새면 이렇게 조용히 재발한다.
3. 챗봇 위젯이 이력서에 같이 인쇄되는 문제
CongKong 챗봇 위젯(#ck-chatbot-root)이 SPA 라우팅 특성상 다른 페이지에서 로드된 채로 /resume 진입 시에도 DOM에 남아 있었다. print 미디어 쿼리에서 명시적으로 숨겨 해결했다. 인쇄 폰트도 맑은 고딕으로 고정했다.
4. 줄바꿈이 사라지는 문제
stripMd()가 모든 개행을 공백 하나로 뭉개서, 목적/과정/기술/성과 섹션의 번호·불릿 항목이 한 문단으로 붙어버렸다. 줄 단위로 마크다운을 제거하도록 바꾸고 <br/>로 원래 줄바꿈을 보존했다. 이 김에 목적/과정/기술/성과라는 섹션 레이블 자체를 없애고 Experience와 동일한 · 불릿 형식으로 통일했다 — 레이블이 있으니 이력서라기보다 보고서처럼 보였다.
자기소개서 기능 추가
같은 날, 회사·포지션·섹션을 자유롭게 구성해 PDF로 출력하는 자기소개서(/resume/cover) 기능을 새로 추가하고, 곧바로 /resume에 통합해 인쇄 시 이력서 뒤에 새 페이지로 자동으로 이어지게 만들었다. Pretendard 폰트도 이날 적용했다(Geist Sans 대체).