Ghostscript가 PDF 메타데이터를 지우지 않도록 만드는 방법

Ghostscript가 PDF 메타데이터를 지우지 않도록 만드는 방법

author, title, subjectGhostscript는 PDF 메타데이터 등을 삭제합니다 . Ghostscript에 메타데이터를 건드리지 말라고 어떻게 알릴 수 있나요? 나는 그것을 다음과 같이 부른다:

gs \
  -dBATCH                    \
  -dNOPAUSE                  \
  -sOutputFile=<output_file> \
  -sDEVICE=pdfwrite          \
  -dPDFSETTINGS=/ebook       \
  <input_file>

답변1

분명히 Ghostscript를 사용할 때는 PDF 메타데이터를 보존할 수 없습니다. 다음은 먼저 메타데이터를 파일에 저장한 pdftk다음 파일을 압축 ghostscript 하고 마지막으로 메타데이터를 다시 쓰는 방법을 사용하는 해결 방법입니다 pdftk.

INPUTPDF=<input_file>
OUTPUTPDF=<output_file>
TMPPDF=$(mktemp)
METADATA=$(mktemp)

# save metadata
pdftk "$INPUTPDF" dump_data_utf8 > "$METADATA"

# compress
gs                       \
  -q                     \
  -sOutputFile="$TMPPDF" \
  -sDEVICE=pdfwrite      \
  -dNOPAUSE              \
  -dBATCH                \
  -dPDFSETTINGS=/ebook   \
  "$INPUTPDF"

# restore metadata
pdftk "$TMPPDF" update_info_utf8 "$METADATA" output "$OUTPUTPDF"

# clean up
rm -f "$TMPPDF" "$METADATA"

편집하다:이것은 Ghostscript의 버그입니다.오류 보고서그리고이런 일이 발생하지 않아야 함을 확인하세요..

답변2

Exiftool을 사용하여 원본 파일에서 메타데이터를 복사합니다.

exiftool -tagsFromFile input.pdf  output.pdf

관련 정보