추출된 이미지에서 PDF를 복구하세요

추출된 이미지에서 PDF를 복구하세요

단일 페이지 이미지에 대한 정보입니다.PDF 파일:

$ pdfimages -list p1.pdf 
page   num  type   width height color comp bpc  enc interp  object ID
---------------------------------------------------------------------
   1     0 image     900  1100  rgb     3   8  image  yes        4  0
   1     1 mask      900  1100  -       1   1  image  no         4  0    

PDF에서 이미지를 추출하려면 다음 방법을 사용하고 있습니다 pdfimages.

$ pdfimages -p p1.pdf ./p1
$ ls
p1-001-000.ppm  p1-001-001.pbm   p1.pdf 

출력 p1-001-000.ppm및 는 p1-001-001.pbm각각 이전에 표시된 "이미지" 및 "마스크"에 해당합니다.

convert그런 다음 및 다음을 사용하여 pdftk두 가지 방법("스탬프" 및 "배경")으로 "이미지" 및 "마스크"에서 원본 PDF를 복원하려고 했습니다 .

$ for i in *.{ppm,pbm}; do convert $i $i.pdf; done
$ ls
p1-001-000.ppm  p1-001-000.ppm.pdf  p1-001-001.pbm  p1-001-001.pbm.pdf  p1.pdf
$ pdftk p1-001-000.ppm.pdf stamp p1-001-001.pbm.pdf output p1stamp.pdf
$ pdftk p1-001-000.ppm.pdf background p1-001-001.pbm.pdf output p1bkg.pdf
  1. p1stamp.pdf은 비어 있고(원본과 매우 다름 p1.pdf) p1bkg.pdf원본과 비슷해 보이지만 p1.pdf오른쪽과 아래쪽 테두리 주변은 여전히 ​​다릅니다.

    pdfimages처음에 표시된 출력에는 "type"이라는 열이 있습니다.

    유형

    이미지 유형. 가능한 값은 image(불투명 이미지), 마스크(단색 이미지 마스크), smask(소프트 마스크 이미지), stencil(색이나 패턴을 그리기 위한 단색 마스크 이미지)입니다.

    참고: PDF의 이미지 투명도는 두 개의 별도 PDF 개체(이미지용 개체와 마스크용 개체)를 사용하여 생성됩니다. 투명 이미지에 속하는 마스크/마스크는 항상 목록의 이미지 바로 뒤에 있습니다.

    PDF 파일에서 "마스크", "스마스크" 및 "스텐실"이 전경 또는 배경으로 사용됩니까?

    "워터마크"와 어떻게 다릅니까? "워터마크"는 항상 배경으로 사용되나요?

  2. 또 다른 문제는 두 새 PDF 파일이 모두 p1stamp.pdf476KB로 원본 파일(단지 94KB)보다 훨씬 크다는 것입니다 p1bkg.pdf. p1.pdf다음 명령을 사용하여 새 PDF 파일을 압축하더라도 크기는 변경되지 않습니다.

    $ pdftk p1bkg.pdf output p1bkgcomp.pdf compress
    

분할 작업의 반대 작업 pdfimages, 즉 추출된 이미지에서 원본 PDF 파일을 복구하는 방법을 실제로 어떻게 수행할 수 있습니까 pdfimages? 그러면 모양과 크기가 원본 PDF 파일과 동일하거나 가깝습니까?

감사해요.

답변1

두 번째 이미지는 마스크이므로 마스크처럼 적용해야 합니다. 다음과 같이 할 수 있습니다.

convert ./p1-001-000.ppm  ./p1-001-001.pbm -alpha Off -compose CopyOpacity -composite output.pdf

원천

이로 인해PDF 파일하단의 검은색 가장자리가 마스크에 의해 제거/숨겨졌지만 파일 크기가 훨씬 더 크고(485.3Kb 대 96Kb) PDF 페이지도 더 큽니다. :

각 파일의 파일 속성 스크린샷

PDF는 단순한 레이어 이미지 그 이상입니다. PDF에는 텍스트, 서식 등도 포함되어 있습니다. 따라서 PDF 파일에서 이미지를 추출하면 정보가 손실됩니다. 이 경우 LibreOffice Draw에서 원본 PDF 파일을 볼 때 이미지의 가장자리가 PDF 페이지의 가장자리를 넘어 표시되지 않습니다. (각각의 이미지도 서로 다른 크기로 조정된 것 같습니다... - 에서 Draw에서 PNG로 추출된 LibreOffice 이미지여기비교하려고)

관련 정보