PDF 파일에서 벡터화된 이미지와 해당 그래픽을 추출하는 Unix 방식은 무엇입니까?

PDF 파일에서 벡터화된 이미지와 해당 그래픽을 추출하는 Unix 방식은 무엇입니까?

데이터:대형 강입자 충돌기(Large Hadron Collider) 종이 16페이지, 여기서 이미지는 벡터화됩니다(대개 .eps). 답변 확인 중이에요여기스레드차트에서 데이터를 긁어내는 데 필요한 소프트웨어. PDF 파일에서 .eps 이미지를 추출하는 도구를 찾을 수 없습니다. 내 전체 시스템에 대한 의사 코드

  1. 통과하다 gs -dSAFER -dBATCH -dNOPAUSE -sDEVICE=pdfwrite -sOutputFile=newfile.pdf badfile.pdf(원천)
  2. PDF 파일에서 벡터화된 이미지를 추출하기 위한 원본 해상도를 찾으세요. (스케일링이 필요하지 않을 수 있으므로 이에 대해 확실하지 않습니다.Adobe 보기의 100% 확대/축소 수준은 스크린샷에서 가장 잘 작동하지 않습니다.)
  3. PDF 파일에서 벡터화된 이미지 추출(현재 목표)
  4. .eps 이미지에서 그래픽 추출

이 모든 것을 하나의 시스템에서 수행하면 좋을 것입니다.

(3)을 사용하여 도구를 엽니다.

가능한 이미지 형식 png/xpm/jpeg/tiff/pnm/ras/bmp/gif

  • g3data하지만 .eps 형식은 없습니다.
  • Engaude 디지타이저가 활성화되었습니다.여기, 그리고 보다 더 인기가 있습니다 R digitize.
  • R digitize삭제된 시간두루미, 관리자 권한이 없기 때문에 지금은 tpoisot의 Github에 있습니다.여기그리고 Luke의 블로그 댓글Digitize를 사용하여 이전 도면의 데이터를 디지털화합니다.하지만 그들은 CRAN으로 돌아가려고 합니다.여기티켓. 소프트웨어를 사용하는 동안 일련의 문제가 발생했습니다.여기. 큰 약점은 그들이 자신의 github을 느끼고 어떤 피드백도 환영하지 않는다는 것입니다.

(3)과 (4)가 포함된 시스템

  • 아마도 다음 두 가지 작업을 수행할 수 있는 R 패키지가 있을 것입니다.

(3) 또는 (4)만 있는 도구 또는 도구 없는 도구

  • 작업 (4)는 아래 설명과 같이 Mathematica에서 수행할 수 있습니다.여기~에 대한Mathematica에서 생성되지 않은 EPS 플롯에서 데이터를 추출할 수 있습니까?. 그러나 devtalk에 따르면 Mathematica는 (3) 작업에 적합하지 않습니다.
  • Adobe Acrobat > 편집. 이 작업을 수행하는 데 적합한 방법을 찾을 수 없습니다. Ubuntu 16.04에는 Linux 버전이 없는 것 같습니다.

벡터화 및 단계(1-2)에서

여기에서는 그래픽을 끌어서 놓을 수 없습니다. 따라서 프로그래밍 방식으로 PDF에서 그래픽을 추출해야 합니다. 문서에서 모든 이미지/eps/...를 추출할 수 있는 터미널 도구가 있지만 그 기능이 얼마나 잘 수행되는지는 모르겠습니다. 여기에서 pdf 파일에서 .eps 이미지를 추출하는 데 적합한 것을 찾고 싶습니다.

래스터화에서 벡터화까지의 단계(1-2)

토론을 위해 DavidLeBauer가 제공한 x축과 교차하는 그래프의 예시 이미지여기

여기에 이미지 설명을 입력하세요.

David의 두 번째 예는 두 축이 교차하는 지점에 관한 것입니다.

여기에 이미지 설명을 입력하세요.

암호

% https://unix.stackexchange.com/q/281211/16920
gs -dSAFER -dBATCH -dNOPAUSE -sDEVICE=pdfwrite -sOutputFile=data_clean.pdf badfile.pdf

% drag and drop picture from data_clean.pdf to your folder in Ubuntu 16.04 by having the default zoom level; I think zoom should not affect here the result of drag-and-drop
% Result: image.png

% g3data image.png
% bug in 16.04: http://askubuntu.com/q/767982/25388

% open figure in ubuntu - Print to File > Ps.
% Result: image.png.ps

ps2eps image.png.ps
% Result: image.png.eps

% https://mathematica.stackexchange.com/q/85320/9815
%% Mathematica starts here 

(* Wolfram Language Test file *)

fig = Import["image.png.eps"]

Import["http://raw.github.com/AlexeyPopkov/shortInputForm/master/shortInputForm.m"]

fig // shortInputForm

% Run but get error: http://askubuntu.com/q/767992/25388
% NB this error comes too if I have no code in the editor. So something wrong in my way of doing this. I am amateur in Mathematica. 

Unix 방식으로 pdf 파일에서 .eps 이미지와 해당 그래픽을 추출하는 방법은 무엇입니까?

답변1

문제는 실제로 어려운 역 문제이기 때문에 이 상황에 대해 적절하게 지원되는 솔루션이 존재하지 않습니다. Mathematica 솔루션에는 실질적인 문제도 많이 있습니다.

답변2

실제로 원래 질문에 대답했는지 확실하지 않습니다.

잉크스케이프벡터 정보를 유지하면서 .pdf에서 페이지를 가져올 수 있습니다. 그런 다음 .svg 형식으로 저장할 수 있습니다.

read.svg경로/점 좌표를 추출하려면 파일을 사용할 수 있습니다. 그러나 그림 좌표를 반환하려면 몇 가지 조정(기본적으로 크기 조정 및 오프셋)을 수행해야 합니다.

.svg 파일을 읽고 이를 기반으로 Python 코드를 작성하려고 합니다.svg형식 정의. 그러나 개발 중이므로 곡선과 축만 남겨두기 전에 정리가 필요합니다.

관련 정보