안녕하세요, 인포그랩 백엔드 엔지니어 Andy입니다. 반복 업무는 단순해 보여도 누적되면 많은 시간을 소모합니다. 예를 들어, 하루 30분 걸리는 작업을 일주일간 반복하면 2시간 30분, 한 달 기준으로는 10시간 이상이 소요되죠. 이는 조직 전반에 비효율을 초래할 수 있습니다. 특히 반복 작업을 수동으로 진행하면 실수가 발생하기 쉬운데요. 이때 결과물의 품질은 떨어지고, 재작업이 자주 필요할 수 있습니다.

인포그랩에서는 Notion 문서를 PDF로 수동 변환하는 작업이 대표적인 반복 업무였습니다. 이 과정은 비효율적이고, 변환된 문서를 다듬는 후처리 작업도 번거로웠는데요. 저는 이 문제를 해결하기 위해 최근 n8n으로 해당 프로세스를 자동화했습니다. n8n은 로코드 기반 워크플로 자동화 도구인데요. 저는 n8n으로 Notion 문서의 PDF 변환과 전처리*를 자동화하는 워크플로를 구축했습니다.

인포그랩은 이 워크플로를 활용해 반복 작업에 들이던 시간을 크게 줄였고요. 현재 고객에게 더 높은 품질의 PDF 보고서와 안내서를 빠르게 제공하고 있습니다. 이 글에서는 n8n을 활용한 Notion 문서의 PDF 자동 변환 워크플로 구축 과정과 그 효과를 자세히 소개하겠습니다.

*전처리: PDF 변환 품질을 높이기 위해 Markdown 데이터를 가공하고 출력에 맞게 최적화하는 과정

자동화 배경: "Andy! Notion 문서를 PDF로 자동 변환해 줘요"

Notion 문서의 PDF 버전에 포함된 불필요한 메타 데이터 예시(AI 요약, 상태, 태그, 타입 등) | 인포그랩 GitLab
Notion 문서의 PDF 버전에 포함된 불필요한 메타 데이터 예시(AI 요약, 상태, 태그, 타입 등)

인포그랩은 DevOps 전문 기업으로, 기술 지원 보고서와 영업용 기술 자료를 Notion 데이터베이스(DB)를 사용해 체계적으로 관리하고 있습니다. Notion으로 작성한 문서는 PDF로 변환해 고객사에 전달할 때가 많죠.

그동안 인포그랩은 Notion의 기본 PDF 변환 기능을 사용했는데요. 이 기능을 활용해 Notion 문서를 PDF로 변환하는 과정은 번거롭고 비효율적이었습니다. 먼저 Notion에서 내보내기 버튼을 클릭한 다음, 파일 형식과 페이지 형식, 크기 비율 등을 수동으로 설정해야 했고요. 출력된 PDF에는 불필요한 메타 데이터(AI 요약, 상태, 태그, 타입 등)가 포함돼 매번 수동으로 Notion 문서를 미리 수정해야 했죠. 이는 손이 많이 가고, 시간이 오래 걸렸습니다.

한편, 인포그랩은 n8n으로 다양한 사내 업무를 자동화하며 생산성 향상 효과를 보고 있었는데요. 마침 n8n을 사용해 Notion 문서의 PDF 변환 작업도 자동화하자는 논의가 자연스럽게 나왔습니다. 저는 자세한 요구 사항을 전달받아 해당 프로세스를 자동화하는 n8n 워크플로를 설계하기 시작했습니다.

PDF 자동 변환 워크플로 구성

Notion 문서 → PDF 자동 변환 n8n 워크플로 | 인포그랩 GitLab
Notion 문서 → PDF 자동 변환 n8n 워크플로

위 이미지는 제가 n8n으로 설계한, Notion 문서의 PDF 자동 변환 워크플로입니다. 워크플로는 다음 6단계로 구성됐습니다.

 | 인포그랩 GitLab


n8n은 다양한 기본 노드를 제공해 대부분의 워크플로를 간단히 구현할 수 있었습니다. 예를 들어 API 호출, 파일 처리, 텍스트 조작, 조건 분기 등은 HTTP, Code, Merge, IF 노드만으로도 손쉽게 구성할 수 있죠.

그러나 이번 프로젝트는 ‘Notion 문서 PDF 변환 자동화’라는 특수한 도메인을 다뤄 저는 일반 워크플로를 설계할 때와 조금 다른 도전 과제를 만났습니다.

Pandoc 실행용 커뮤니티 노드 개발

제가 만난 첫 번째 도전 과제는 ‘n8n에 문서 변환 도구인 Pandoc을 직접 실행하는 기본 노드가 없다’는 것이었습니다. 그러나 커뮤니티 노드를 활용하면 이 문제를 해결할 수 있는데요. n8n에서는 특정 서비스나 맞춤형 기능이 필요할 때 사용자가 직접 커스텀 노드를 만들어 적용할 수 있죠. 이를 ‘커뮤니티 노드’라고 부릅니다.


/tmp $ cat pandoc_output_bc5eeb87-365d-52fa-a0cd-db732e098923
\~)\^³+-zo¯
/tmp $
n8n-nodes-pandoc 커뮤니티 노드 에러

저는 기존에 나온 n8n-nodes-pandoc 커뮤니티 노드를 활용해 Pandoc을 실행하려 했는데요. 여기서 두 번째 도전 과제를 만났습니다. 테스트 도중 위와 같은 출력 오류가 나타났고요. n8n-nodes-pandoc 커뮤니티 노드를 업무에 적용할 수 없었습니다.

저자가 직접 개발한 Pandoc 실행용 n8n 커뮤니티 노드(n8n-nodes-pandoc-md-to) 구성 | 인포그랩 GitLab
저자가 직접 개발한 Pandoc 실행용 n8n 커뮤니티 노드(n8n-nodes-pandoc-md-to) 구성

결국 저는 Pandoc을 실행하는 커뮤니티 노드(n8n-nodes-pandoc-md-to)를 직접 만들었습니다. Pandoc을 사용해 Markdown을 PDF로 변환하는 n8n 커뮤니티 노드였죠. 이 노드를 적절히 배치해 출력 오류를 해결했습니다.

개발 과정에서 인포그랩 유튜브 영상 ‘나만의 n8n 노드 만들기 - 커뮤니티 노드를 만드는 법’을 참고했는데요. 이 가이드 영상은 Pandoc 실행용 노드를 단기간에 개발하는 데 도움이 됐습니다.

PDF 완성도 높이는 전처리 로직 튜닝

커뮤니티 노드 개발로 Pandoc 실행 문제는 해결했지만, 워크플로 구현 과정에서 새로운 난관을 만났습니다. 바로 Notion 문서를 섬세하고, 완성도 높게 편집해 PDF로 자동 변환하는 문제였습니다.

PDF의 품질은 세세한 요소에 크게 좌우됩니다. 저는 Notion 문서의 PDF 자동 변환 과정에서 다음 사항을 중요하게 고려했습니다.

  • 표 레이아웃 조정
  • PDF 표지와 메타 데이터 삽입

이를 완벽하게 구현하려면 PDF 자동 변환 과정에서 전처리 로직 튜닝이 필요한데요. 저는 n8n Code 노드와 Pandoc의 Eisvogel 템플릿으로 이 문제를 해결했습니다.

표 레이아웃 조정

PDF 변환 전 Notion 표 예시 | 인포그랩 GitLab
PDF 변환 전 Notion 표 예시

### 6.  Pipeline Status
- 점검 경로 : Grafana 접속 후 CI/CD Pipeline 대시보드에서 확인

| **항목** | **점검결과** |
| ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **파이프라인 성공** | 211 |
| **파이프라인 실패** | 24 (yaml invalid 및 cancel 제외) |
| **점검 의견** | Fastlane 에러\newline• DigitalDev/Etc/iOS/AppposBiz iOS\newline• DigitalDev/NiceCheck/iOS/NiceCheck_iOS\newline• DigitalDev/AppPos/iOS/AppPos_IOS\newline• DigitalDev/LocalPay/IOS/LocalLovePay_IOS\newline• DigitalDev/LocalPay/IOS/DaejeonPay_IOS\newline• DigitalDev/LocalPay/IOS/ChungjuPay_IOS |
-

제가 처음부터 Code 노드를 사용한 건 아니었습니다. 저는 notion-markdown 커뮤니티 노드를 활용해 Notion 문서를 Markdown으로 위와 같이 변환했는데요. 이 노드를 사용하면 변환 과정에서 별도 개발이 필요 없어 편리했습니다.

전처리 작업 없이 PDF 표로 변환한 결과(열 좁음, 줄 바꿈 오류) | 인포그랩 GitLab
전처리 작업 없이 PDF 표로 변환한 결과(열 좁음, 줄 바꿈 오류)

그러나 Pandoc을 사용해 Markdown 변환 결과를 PDF로 변환할 때 문제가 발생했습니다. 위 이미지에서 보듯 표의 열이 지나치게 좁아지고, 한 줄에 들어가야 할 텍스트가 여러 줄로 나뉘어 출력됐죠. 또 하단에 공백이 과도하게 생겼습니다. 전반적으로 문서의 완성도와 가독성이 떨어졌는데요. 이런 문서는 외부 전달용으로 부적합합니다.

Code 노드에 표 레이아웃 조정을 위한 전처리 로직을 삽입한 모습 | 인포그랩 GitLab
Code 노드에 표 레이아웃 조정을 위한 전처리 로직을 삽입한 모습

이 문제의 원인은 PDF 변환 과정에서 전처리 작업이 없었던 탓입니다. 저는 문제를 해결하기 위해 위와 같이 전처리 작업용 코딩을 일부 가미했는데요. 표에서 각 셀의 텍스트 길이를 측정해 가장 큰 값으로 열 너비를 재설정하는 로직을 Code 노드에 삽입했습니다. 이로써 불필요한 줄 바꿈, 공백 문제를 해결하고 표를 가독성 있게 출력하도록 조정했죠. 외부 모듈을 사용하지 않고, 단순 로직으로 데이터를 처리한 게 특징입니다.

전처리 후 PDF 표로 변환한 결과(가독성 향상, 레이아웃 안정화) | 인포그랩 GitLab
전처리 후 PDF 표로 변환한 결과(가독성 향상, 레이아웃 안정화)

위 이미지는 Code 노드에 전처리 작업용 로직을 적용한 뒤, Notion 문서를 PDF로 최종 변환한 결과입니다. 표의 열 너비는 텍스트 길이에 맞춰 자동 조정됐고, 불필요한 줄 바꿈과 공백이 제거됐습니다. 비로소 표가 시각적으로 안정되고, 깔끔하며, 완성도 높게 변환됐습니다.

PDF 표지와 메타 데이터 삽입

이어서 Pandoc의 Eisvogel 템플릿과 Code 노드로 PDF의 브랜드 일관성과 완성도를 높인 방법을 소개합니다. 제가 PDF로 자동 변환하려는 Notion 문서는 고객사에 전달하는 기술 자료였습니다. 따라서 인포그랩의 브랜드 아이덴티티(BI)를 담아 정제된 형식으로 전달하는 게 중요했습니다.

인포그랩은 기존에도 기술 자료 PDF를 수동 제작할 때, 회사 로고가 삽입된 표지를 사용하고 있었습니다. 저는 Notion 문서를 PDF로 자동 변환할 때도 이를 일관되게 반영해야 했는데요. 이를 위해 Pandoc의 Eisvogel 템플릿을 활용했습니다. Eisvogel은 LaTeX 기반의 PDF 변환을 지원하면서 커스텀 타이틀 페이지 설정을 포함해 문서 레이아웃을 정교하게 제어합니다.

n8n과 Eisvogel 템플릿으로 자동 생성한 인포그랩의 기술 자료 PDF 표지 | 인포그랩 GitLab
n8n과 Eisvogel 템플릿으로 자동 생성한 인포그랩의 기술 자료 PDF 표지

저는 위와 같은 표지 PDF 파일을 AWS S3에 저장했습니다. 아울러 n8n이 이 파일을 /tmp 경로에 다운로드 받아 Pandoc이 PDF를 생성할 때 적용하도록 설정했습니다. 이로써 자동 생성된 PDF에도 항상 인포그랩 BI와 문서 포맷을 일관되게 반영하도록 했습니다.

PDF 헤더, 푸터에 자동 삽입한 메타 데이터(문서 제목, 생성일자, 작성자 이름, 페이지 번호) | 인포그랩 GitLab
PDF 헤더, 푸터에 자동 삽입한 메타 데이터(문서 제목, 생성일자, 작성자 이름, 페이지 번호)

또 본문에는 메타 데이터를 삽입해 문서 정보를 명확히 표시했습니다. 위와 같이 헤더에 문서 제목(정기 점검 보고서)과 생성일자(2025-04-04), 푸터에 작성자 이름(Andy), 페이지 번호(1)가 자동 삽입되도록 설정했습니다.

Code 노드에 삽입한 메타 블록 구성 | 인포그랩 GitLab
Code 노드에 삽입한 메타 블록 구성

메타 데이터는 Markdown 파일 상단에 추가하면 되는데요. n8n에서 Code 노드를 사용하면 이를 더욱 간편하게 자동 처리할 수 있습니다. 메타 블록에는 다음 항목을 입력합니다.

  • title: 문서 제목(Notion 데이터 기반)
  • author: 작성자 이름
  • date: 생성일자(자동 생성)
  • titlepage-background: 표지로 사용할 PDF 파일 경로
  • 기타 스타일 옵션: 헤더 포함 여부, 색상, 언어 설정 등

위 내용이 포함된 Markdown을 Pandoc의 Eisvogel 템플릿을 사용해 PDF로 변환하면, 첫 장에는 인포그랩을 브랜딩한 표지가 자동으로 들어가고요. 다음 장부터 헤더와 푸터에 문서 정보가 자동으로 출력됩니다.

이렇게 Markdown 파일의 데이터 한 줄 한 줄을 PDF에 자동 삽입해 회사를 효과적으로 브랜딩할 수 있었고요. 기술 자료의 일관성과 품질, 신뢰도를 높이고, 반복 작업도 최소화할 수 있었습니다.

맺음말

n8n을 사용하면 Notion 문서를 PDF로 간편하게 자동 변환할 수 있습니다. 특히 n8n과 Pandoc의 조합이 좋아 자동화 워크플로를 구성하면 반복 작업을 효과적으로 줄일 수 있죠. 또 Code 노드를 활용하면 표 레이아웃 조정, 이미지 캡션 제거, 헤더/푸터의 메타 데이터 삽입과 같은 전처리 작업도 손쉽게 자동화할 수 있습니다.

이제 인포그랩은 n8n을 이용해 Notion 기반의 기술 보고서, 고객 안내서를 안정적으로 자동 생성하고요. 그 결과, 반복 작업에 들어가는 리소스를 줄이고, 핵심 업무에 집중하는 환경을 마련했습니다. 여러분도 문서 자동화를 고려하신다면 n8n을 활용해 보세요. 누구나 간단하게 시작할 수 있고, 업무 생산성과 품질을 모두 향상할 수 있습니다.

지금까지 ‘n8n을 활용한 Notion 문서의 PDF 자동 변환 개발 후기’였습니다. 읽어주셔서 감사합니다.

참고 자료

  1. n8n-nodes-pandoc-md-to, GitHub, https://github.com/palinYEE/n8n-nodes-pandoc-md-to
  2. Michael(신석민), “n8n 실전 리뷰”, 인포그랩, 2025-03-12, https://insight.infograb.net/blog/2025/03/12/developer-n8n-x
  3. Jeff(손성훈), “나만의 n8n 노드 만들기 1부”, 인포그랩, 2025-03-05, https://insight.infograb.net/blog/2025/03/05/n8n-community-node-1
  4. Chad(임희호), “n8n과 OpenAI로 이메일 분류 자동화하기”, 인포그랩, 2025-01-15, https://insight.infograb.net/blog/2025/01/15/n8n-mail-classify
  5. Sabo(사동환), “워크플로 자동화로 업무 효율 향상하기(with n8n)”, 인포그랩, 2024-07-31, https://insight.infograb.net/blog/2024/07/31/workflow-n8n/
  6. Jeff(손성훈), “나만의 n8n 노드 만들기 - 커뮤니티 노드를 만드는 법”, 인포그랩 유튜브, 2025-02-21, https://youtu.be/NMMyevKrCP8?feature=shared
  7. Michael(신석민), “n8n과 Slack으로 챗봇 만들기 #1 - 기본 설정과 메시지 보내기”, 인포그랩 유튜브, 2025-01-24, https://youtu.be/WbDVD1QnM0w?feature=shared
  8. Michael(신석민), “n8n과 Slack으로 챗봇 만들기 #2 - 슬랙 Slash Command와 채널 메시지”, 인포그랩 유튜브, 2025-02-09, https://youtu.be/UpudYFCWaIM?feature=shared
  9. Michael(신석민), “n8n과 Slack으로 챗봇 만들기 #3 - 슬랙 멘션과 쓰레드 메시지 활용”, 인포그랩 유튜브, 2025-02-09, https://youtu.be/8oTMAgfxWhQ?feature=shared
  10. Daisy(손정아), “[현장 스케치] “n8n Korea 온라인 밋업#1 팀을 위한 자동화” 후기!”, 인포그랩, 2025-02-14, https://www.infograb.net/19da508f-9223-806e-aeff-ce538a5c0345
  11. Daisy(손정아), “[현장 스케치] “n8n Korea 온라인 밋업 #2 팀을 위한 자동화 2탄” 후기!”, 인포그랩, 2025-03-22, https://www.infograb.net/1c4a508f-9223-8088-94f8-f61ef6e621d6
  12. n8n 소개, 인포그랩, https://insight.infograb.net/product/n8n/
  13. n8n 공식 기술 문서 한글판 by 인포그랩, https://n8n-docs.infograb.net/
  14. n8n Korea - 워크플로 자동화 커뮤니티, https://www.linkedin.com/groups/14604285/
  15. n8n 공식 홈페이지, https://n8n.io
  16. n8n 공식 기술 문서 페이지, https://docs.n8n.io/

n8n으로 비즈니스 워크플로를 완벽히 자동화하고 싶으신가요? 지금 인포그랩에 문의하세요!