ImageMagick으로 생성된 PDF가 Chrome에서 빈 페이지로 렌더링됩니다.

ImageMagick으로 생성된 PDF가 Chrome에서 빈 페이지로 렌더링됩니다.

Krita를 사용하여 파일을 그렸습니다 png.
여기에 이미지 설명을 입력하세요.

pdf그런 다음 다음을 사용하여 이 파일을 파일로 변환했습니다 convert.

convert test.png test.pdf

이 파일을 PDF 뷰어(Evince)로 열면 예상한 대로 위의 이미지가 보입니다. 그러나 웹 브라우저(Chrome 기반)에서 파일을 열면 올바른 크기의 PDF 페이지가 표시되지만 완전히 비어 있습니다.
여기에 이미지 설명을 입력하세요.

제가 아는 한, 이 문제는 Chrome 기반 브라우저에서만 발생합니다. 예를 들어 Firefox는 파일을 올바르게 표시합니다.

파일이 브라우저에 올바르게 표시되도록 하려면 어떻게 해야 합니까?


$ convert --version
Version: ImageMagick 7.0.10-37 Q16 x86_64 2020-11-07 https://imagemagick.org
Copyright: © 1999-2020 ImageMagick Studio LLC
License: https://imagemagick.org/script/license.php
Features: Cipher DPC HDRI Modules OpenMP(4.5) 
Delegates (built-in): bzlib cairo djvu fontconfig freetype heic jbig jng jp2 jpeg lcms lqr ltdl lzma openexr pangocairo png raqm raw rsvg tiff webp wmf x xml zlib

$ chromium --version                                                                                                                                                                                                                      
Chromium 86.0.4240.183 Arch Linux

답변1

Ghostscript를 통해 PDF를 푸시하면 convert test.png test.pdf파일에 오류가 있다는 메시지가 표시됩니다.

$ gs -dBATCH -dNOPAUSE -q -sDEVICE=pdfwrite -sOutputFile=temp.pdf test.pdf
   **** Error: ICCbased space /N value does not match the ICC profile.
                 Using the number of channels from the profile.
                 Output may be incorrect.

이 정보를 사용하여 다음으로 변환할 색상 공간을 추가했습니다.

$ convert test.png -colorspace RGB test.pdf

이제 Ghostscript는 더 이상 불평하지 않으며 Chrome은 파일을 올바르게 표시합니다.

관련 정보