PDF 파일에서 배경 이미지를 추출 하시겠습니까?


8

작업중인 건물의지도가 포함 된 PDF 파일이 있습니다.

http://www.libsys.und.edu/dev/FloorPlans_All.pdf

원래 소스 파일이 손실되었으며, I는 바람직하게는,지도 이미지를 추출하도록 요청했습니다 않고 그 위에 겹쳐 있었다 텍스트와 아이콘. 이것은 귀찮게 어려운 것으로 판명되었습니다.

지금까지 다음 GUI 프로그램을 시도했습니다.

  • Adobe Reader : 텍스트를 선택할 수 있지만 배경 이미지는 선택할 수 없습니다
  • FoxIt PDF Viewer : 텍스트를 선택할 수 있지만 배경 이미지는 선택할 수 없습니다
  • Ubuntu 10.10의 XPDF : 배경 이미지가 아닌 텍스트를 선택할 수 있습니다.

또한 다음과 같은 명령 줄 프로그램도 있습니다.

  • pdfimages : 배경 이미지가 아닌 욕실을 나타내는 아이콘을 추출합니다.
  • pdftohtml : pdfimages와 동일하며 HTML 문서가 제대로 표시되지 않습니다.
  • pdfextract : pdfimage와 동일
  • 변환 : 이미지를 성공적으로 저장했지만 텍스트를 레코딩했습니다.

텍스트 편집기에서 수동으로 PDF를 열고 스트림 객체를 새 파일에 붙여 넣고 .jpg, .png 또는 .bmp 확장자 (각각)로 저장하여 스트림 객체를 추출하려고했습니다. PDF 파일의 내부 구조에 대해 내가 아는 것이 거의 없다는 것을 고려할 때 이것이 효과가 없다는 것은 놀라운 일이 아닙니다.

그래서 ... 텍스트와 아이콘을 얻지 않고도이 이미지에서지도 이미지를 검색 할 수있는 방법이 있습니까?


일반적으로 이런 종류의 작업을 해결하는 방법은 다음과 같습니다. (1) qpdf이진 부분을 가능한 한 ASCII로 변환하는 데 사용 합니다. (2) 텍스트 편집기를 사용하여 화면이나 인쇄물에서 보지 않으려는 모든 텍스트를 보이지 않게하십시오 ( 보이지 않는 플래그 를 토글하여 XRef 테이블을 손상시키지 않고 쉽게 얻을 수 있습니다 ). (3) Ghostscript로 결과를 재 증류하여 가능한 한 크기를 줄입니다. -불행히도, 절차를 설명하기 위해 파일을 더 이상 다운로드 할 수 없습니다 ...
Kurt Pfeifle

답변:


7

Linux 및 Windows 용 http://www.foolabs.com/xpdf/download.html 에서 XPDF 라이브러리를 다운로드 할 수 있습니다 . 다음과 같이 실행 pdfimages -j input.pdf output하면 가야 output-000.jpg, output-001.jpg등 또한, 체크 아웃 http://linuxcommand.org/man_pages/pdfimages1.html을 더 사용 옵션.


1
수정, 이미지가 PDF에 직접 포함 된 벡터 그래픽 인 것 같습니다. 벡터 그래픽을 처리하는 Inkscape 또는 Adobe Illustrator와 같은 방식으로 열어보십시오.
mybluevan

아하! 지도는 벡터 그래픽입니다. 제가 그런 문제를 겪고있는 것도 당연합니다! 잉크 스케이프가 제대로 열린 것 같아서 내 마음의 내용으로 편집 할 수 있습니다. 감사!
Will Martin

2

좋아, 5 분 동안이 문제를 겪은 후, 내 분석은 PDF가 원래 생각했던 것보다 더 이상하다는 것입니다.

예산이 얼마인지 확실하지 않지만 Acrobat Pro Extended 9를 사용하면 다음을 사용할 수 있습니다.

A. 도구, 고급 편집, 터치 업 텍스트 도구

-Select All
-Right click, Properties
-Text tab
-Select a standard font (e.g. Arial), close
-Hit Delete

B. 도구, 고급 편집, Touchup Object Tool

-물체를 선택하고 (모두는 아니지만 대부분을 얻을 수 있습니다 (예 : 학생 컴퓨터 아이콘을 선택할 수 없음) 삭제)

빠른 정리 후 페이지 1의 모습은 다음과 같습니다. http://dl.dropbox.com/u/7434256/p1test.pdf


이상하다 이 파일의 기록을 모르지만 Acrobat Pro 8에서 문제가 발생했습니다. 하지만 잉크 스케이프는 그 트릭을 했어요. 이제 우리가 래스터 그래픽을 생성 할 수있는 적절한 SVG로 변환하기 위해 ...
Will Martin

1
원본 PDF에서 수행 한 작업 (불행히도 더 이상 사용할 수 없음)은 최고가 아닙니다. 파일은 여전히 ​​~ 3 MByte입니다. 여기에는 사용하지 않은 많은 개체가 많이 포함됩니다. 또한 잠재적 인 위험한 PDF 파일로 만드는 /AA연산자 인스턴스 ( 자동 작업 ) 가 포함되어 있습니다 . Ghostscript는 눈에 보이는 내용을 잃지 않고 60 kByte로 끓일 수있었습니다. (메타 데이터는 17 개 개체 위에 확산 파일에 포함 된 메타 데이터 ALS 17 개 상이한 버전 / 2011-01-18에의 창조 이후 해당 파일의 변경이있는 제안..)
커트 Pfeifle

@pipitas 나는 이것을 다시 확인하게되어 기쁘다. 아파치가 그 서버에서 다운되었다는 것이 밝혀졌다. 원본 PDF를 다시 사용할 수 있습니다. 그래도 여전히 성가시다. 그 후지도가 AutoCAD DXF 파일에서 생성되어 벡터 그래픽이 매우 추악하다는 것을 알게되었습니다. 각지도에는 수백 개의 개별 경로가 있으며, 각 경로에는 두 개의 끝 점이있는 단일 선이 있습니다. 이것은 아마도 건축가가 벽의 개별 섹션이나 다른 것을 변경하는 것을 더 쉽게 만들었을지 모르지만 다른 것에 대해서는 엉덩이에 고통이 있습니다.
Will Martin

@Will Martin : Ouch !, 이것은 많은 내부 숨겨진 파일 업데이트를 포함하는 다소 큰 PDF 파일입니다 (그러므로 사용자 관점의 쓰레기). -16MB의 16 페이지는 단순한 벡터 그래픽을 위해 "무거운"것입니다. 각 페이지마다 하나씩 16 개 이상의 다른 레이어 (PDF 용어의 "선택적 내용"). 텍스트 편집기
만으로이

2
@pipitas : 감사합니다. "작업"으로 수행 한 작업을 설명하지는 않지만 Acrobat에서 가능하다는 것을 몇 분 동안 시연했습니다. 환불 보증 및 그 모든 것. ;)
Craig H

1

Craig H가 작성한 PDF를 가져 와서 Ghostscript를 통해 실행하여 조금 최적화하십시오. Windows에서 명령 행은 다음과 같습니다.

gswin32c.exe ^
   -o p1test-gs-optimized.pdf ^
   -sDEVICE=pdfwrite ^
   -dPDFSETTIINGS=/prepress ^
    p1test.pdf

Linux / Unix / Mac OS X에서 다음을 수행하십시오.

gs \
   -o p1test-gs-optimized.pdf \
   -sDEVICE=pdfwrite \
   -dPDFSETTIINGS=/prepress \
    p1test.pdf

이것은 내용을 잃지 않고 파일 크기를 3.000 kByte에서 약 60 kByte로 줄입니다. 그런 다음 Inkscape (또는 InDesign, Illustrator 등)로 가져 오는 것이 훨씬 빠릅니다.


1

... Photoshop을 사용해 볼 수 있습니다. 그것은 PDF를 읽으며 PS에서 시작되었으며 여전히 레이어를 가지고있을 가능성이 있습니다 ... 그러나 매우 오래되었습니다.


0

Linux 환경에서는 pdfmod 를 사용 하여 모든 이미지를 한 번에 추출했습니다. 참조 https://wiki.gnome.org/Apps/PdfMod 또는, 우분투 사용자를위한, https://apps.ubuntu.com/cat/applications/pdfmod/을

우분투에서 다운로드하여 설치하려면을 입력하면 충분합니다 sudo apt-get install pdfmod.

  • pdfmod GUI를 시작하십시오 ( pdfmod대시 보드 또는 명령 행 터미널에 입력하십시오)
  • PDF 문서를여십시오
  • 모든 페이지 (또는 이미지를 추출 할 페이지)를 선택하십시오.
  • 편집 메뉴 항목은 선택한 범위 내에서 추출 할 수있는만큼의 이미지를 추출하는 옵션을 제공합니다 ( export n images, 적절한 숫자 n). 선택 항목을 마우스로 가리키고 로컬 메뉴를 활성화하여 (오른 손잡이를 마우스 오른쪽 버튼으로 클릭하여)이 명령에 액세스 할 수도 있습니다.
  • 계속 진행하면 이미지를 저장할 위치를 선택할 수있는 새 창이 열립니다.

도움이 되었기를 바랍니다.


소프트웨어 권장 방법에 대한 팁은 소프트웨어 권장 방법을 참조하십시오 . 예를 들어 소프트웨어 자체에 대한 추가 정보와 문제의 문제를 해결하는 데 사용되는 방법 등 단순한 링크 이상을 제공하십시오. 명령 행 예제를 포함시킬 수도 있습니다.
DavidPostill

@DavidPostill. 이것을 지적 해 주셔서 감사합니다. 믿습니다.
XavierStuvw

훨씬 더 나은 ...;)
DavidPostill

지금은 내가 :-) 내 게시물에 대한 답변에서 요구할 수있는 알
XavierStuvw

-1

화면에서 문서를 열고 사진을 확대하여 최대한 크게 만들지 만 모든 내용이 계속 표시됩니다. alt + prnt scrn (또는 운영 체제와 동등한 기능)을 누르면 프로그램의 스크린 샷이 생성됩니다. 이제 그림이나 그림에서 좋아하는 이미지 편집기 (포토샵, 김프 등) 붙여 넣기를 열고 원하지 않는 것을 잘라냅니다.


여기에는 스크린 샷 이미지의 배경 이미지 위에있는 아이콘도 포함되며 화면의 해상도를 사용합니다. 더 좋은 방법이 있어야합니다.
Zachiel
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.