우당탕탕 개발일기

PDF 파일에 있는 메타데이터 없애기 본문

What I Learned/etc.

PDF 파일에 있는 메타데이터 없애기

rilee 2025. 8. 20. 16:29
728x90

기본으로 나오는 크롬 뷰어를 사용하고 있는데 간간히 파일명에 설정한 적 없는 정보가 노출될 때가 있었다.

파일명인 줄 알았지만 단순 파일명이 아니었다.

찾아보니, pdf에 있는 메타데이터가 있을 경우 뷰어에 우선적으로 노출된다고 했다.

따라서 해당 부분을 없애려면 PDF에 설정되어있는 메타데이터를 없애야하는 것.

 

하지만 이미 수십개의 파일이 메타데이터가 설정된 채 pdf가 만들어져있어 해당 파일들의 메타데이터 제거 방법이 필요했다.

다행히(?)도 관련 라이브러리가 있어서 활용했다!💡

https://www.npmjs.com/package/exiftool-vendored

 

exiftool-vendored

Efficient, cross-platform access to ExifTool. Latest version: 30.3.0, last published: 2 months ago. Start using exiftool-vendored in your project by running `npm i exiftool-vendored`. There are 72 other projects in the npm registry using exiftool-vendored.

www.npmjs.com

 

해당 파일을 우리에게 업로드 할 때 업로드하는 파일의 메타데이터의 여부를 확인한 후 메타데이터가 있으면 삭제하게끔 작성했다.

 

// @15를 사용하고 있어 require 사용
const { exiftool } = require("exiftool-vendored");
...
const pdfMetaData = await exiftool.read(파일경로);

// 위에서 async 있음
if (pdfMetaData.Title) {
	await exiftool.write(파일경로, {Title: null});
}
...

나는 Title이 노출되는게 문제였어서 Title만 null로 만들어주었다.

 

그랬더니 크롬 뷰어에 나오던 메타데이터 Title이 깔끔하게 사라진 것을 확인!

(📑참고. 메타데이터 없으면 '파일명'을 사용한다!)

728x90