리눅스에서 커맨드 라인 SVG 및 이미지 파일 뷰어?


36

SVG 및 JPG / PNG 이미지 파일에 대한 명령 줄 (파이프 가능) 그래프 뷰어가 있습니까?

특히 그래프 / 이미지 파일은 일반 파일이 아닌 파이프 라인을 통해 출력되므로 파일 형식 / 확장명을 지정하는 옵션이 있어야합니다.

gv 는 도트 프로그램으로 생성 된 PS / PDF에서 작동 하지만 SVG 등의 이미지 파일을 지원하기위한 대안이 있는지 알고 싶습니다.


1
간단히 설명하자면, 주요 요점은 콘솔에 .svg, .jpg 및 .png를 표시하는 것이 아니라 ( "명령 줄"), 그러한 MIME 유형을 일반 그래픽 프로그램으로 파이프하는 것입니까?
akira

1
예, X로 표시하고 싶습니다. gv와 마찬가지로. 그러나 gv는 SVG 등을 지원하지 않습니다.
Xiè Jìléi

gwenview아주 빨리, 당신의 요구를 충족하는지 궁금하십니까?
물병 자리 힘

답변:


37

ImageMagickdisplay 과 함께 제공 되는 프로그램을 사용해 보셨습니까 ?


3
AFAIK, Imagemagick만으로는 SVG 파일을 표시 할 수 없으며 SVG를 비트 맵으로 변환하는 도구가 필요합니다. 데비안에서는 sudo aptitude install librsvg2-bin"rsvg-convert"가 아직 설치되지 않은 경우 필요합니다. 이 패키지 rsvg-view-3에는보다 확대 / 축소가 더 나은 뷰어 가 포함되어 있습니다 display.
Mytskine

2
@Mytskine : ImageMagick Documentation 에 따르면 Inkscape 또는 RSVG 를 사용할 수없는 경우 자체 내부 SVG 렌더러를 사용합니다.
추후 공지가있을 때까지 일시 중지되었습니다.

1
내 시스템에서 : inkscape로드 속도가 느리고 inkview빠르지 만 뷰를 변경할 수없는 것 같습니까? display나를 위해 잘 작동합니다 :-)
휴 퍼킨스

나는 파이프 입력에서 inkview 작업을 얻지 못했지만 디스플레이는 내가 원하는 것을 정확하게 수행합니다 :-) 나는 그것을 go run my_svg_generator.go | displaythx 처럼 사용합니다 .
JepZ

1
경고!!!! 급한 경우 디스플레이를 사용하지 마십시오 !!! 500GB svg 파일 (시스템 부팅 문제 분석)의 경우 6GB의 4GB (virt.mem이 7GB 필요)를 사용하여 이미 6GB의 RAM을 사용하고 거대한 로트 (5GB)를 교체했기 때문에 내 컴퓨터를 다시 사용할 수 있기까지 20 분이 걸렸습니다. 때문 만이 디스플레이의 스왑) :(에 가서하지 않도록 다른 옵션의 성능을 약 시각화 SVG 상점. gwenview매우 빠른 BTW
물병 전원

12

Inkscape는 이미 자체 뷰어와 함께 제공됩니다.inkview

기능이 부족하고 약간 느릴 수 있지만 작동합니다 (ImageMagick보다 SVG를 더 정확하게 렌더링 할 수 있습니다 display).


inkview우분투 10.04.3에서 (0.48 잉크 스케이프에서 믿습니다) 놀랍도록 빠르게 시작 했다는 것을 알고 싶었 습니다! (편집 : 그러나 작은 .svgs에 대해서만 ; inkview /usr/share/inkscape/examples/*.svg*맨 페이지에 나와있는 것처럼 시도 하십시오. 무거운 것도 있습니다 ... 여전히 GUI 시작 빠릅니다.) 그 메모에 감사드립니다. @ DenilsonSá-건배!
sdaau

실제로 큰 SVG의 경우 inkview가 깨지는 것처럼 보입니다.
CMCDragonkai

10

'파이프 가능'이란 무엇입니까?
feh수많은 옵션이있는 매우 훌륭한 커맨드 라인 뷰어입니다.


1
stdin의 입력을 수락하고 가능한 경우 MIME 유형을 추측합니다. 또는 파일 형식을 경험적으로 추측 할 수없는 경우 확장명을 명시 적으로 지정하십시오.
Xiè Jìléi

11
fehSVG를 전혀 지원하지 않는 것 같습니다. " feh WARNING: pySVGLogo.svg - No Imlib2 loader for that file format"... 건배!
sdaau

1
더 적은 메모 : 먼저, feh 홈페이지 , 예제스크린 샷 ; 둘째 ( 우분투 10.04.3 ) : 매우 빠르게 시작됩니다. 데비안 / 우분투 패키지가 있습니다. 약간 이상한 마우스 상호 작용이 있습니다 ( feh --help끝 부분 참조 ). 나는 pngs 의 디렉토리를로드 할 수 있고 또는 (화살표 키)를 누른 상태에서 애니메이션 .gif :)... 처럼 보입니다 .
sdaau

1
@sdaau, feh는 실제로 SVG를 지원 하지 않으므로 OP에 대한 유용한 답변이 아닙니다.
딜런 서 스턴

8

일반적으로 SVG를 텍스트 파일로 사용하므로 파일을 저장하고 내용이 변경되는 즉시 뷰어가 자동으로 디스플레이를 새로 고치길 원합니다. 이는 'pipable'상황에 적용 할 수 있어야합니다. 파이프).

기본 Gnome 앱의 경우 :

  • evince현재 PDF에서 이와 같이 작동하지만 SVG를 읽을 수없는 것 같습니다 ( Unable to open document - Error opening file: Permission deniedSVG 파일을로드하려고 할 때 " "를 생성 합니다)
  • eog(Eye Of Gnome)-최신 버전-파일이 변경되었는지 감지 한 다음 '다시로드'버튼을 제공 할 수도 있습니다. 그러나 분명히, 당신은 여전히 ​​매번 '재로드'를 클릭해야합니다 ( PDF 에서 eog와 같이 파일 변경시 항상 자동 재로드를 유발하는 방법을 볼 수는 없습니다 evince)-그리고 적어도 내 우분투 10.04, eogSVG 지원 다소 끊어짐 (흐린 선으로 결과가 확대됨)
  • ImageMagick이의이 display파일을 디스크에 변경 될 때뿐만 아니라 자동 새로 고침하지 않습니다 - 그리고 당신이 '새로 고침'을 누를 때조차 display, 당신은 아직도 없는 파일의 최신 버전을 다운로드 (의미를 다시 시작해야 할 display최신 버전을 :( 보여) .

지금까지 찾은 메모가 더 있습니다.

  • SVG 브라우저 Squiggle Batik 툴킷의 일부인 SVG 브라우저. - 다운로드 Batik batik-1.7.zip; 포장을 풉니 다. 달리고 java -jar batik-squiggle.jar있다; svg 파일이 디스크에서 변경된 경우 이미지를 자동으로 새로 고치지 않습니다.
  • SVG 이미지 뷰어? 우분투 포럼 추천 :
    • 포스트 # 8- " 작은 파이썬 스크립트를 작성했습니다 ... svg_compare.py로 실행하면 svg가 열리고 svg 라이브러리와 gtk의 래스터 라이브러리를 사용하여 표시됩니다. 마우스로 확대 할 수 있습니다. .. "
    • xsvg( http://cairographics.org에서 ) -libsvg1_0.1.4-1_i386.deb , libsvg-cairo1_0.1.6-5_i386.debxsvg_0.2.1-3_i386.deb 를 순서대로 설치했습니다. 이러한 버전은 2005 년부터 출시되었으므로 xsvg매우 간단합니다. 확대 / 축소, 아무것도 없습니다. 말할 필요도없이, 저장된 파일 변경 사항에 자동으로 반응하지 않습니다 ...
  • 그 통해, 내가 찾은 rsvg-view내가의 일부라고 생각하는 sudo apt-get install librsvg2-bin. 작고 훌륭하며 stdin을 지원하지만 rsvg-view파일 변경을 감지하지 못하고 자동으로 새로 고칩니다.

그래, 이것이 도움이 되길 바란다 ...
건배!

 

편집 (12 월 24 '10) : 글쎄, 여기 또한 내 기여입니다 : svg_refreshview.py- 기본적으로 svg_compare.py위에서 언급 한 재 작업이며 단순히 SVG 파일을 표시하고 파일이 수정되면 파일을 다시로드하고 표시를 새로 고칩니다. . ( 실제로 stdin과 함께 작동 할 수는 없지만 파이썬에서 stdin을 구문 분석하는 다른 스크립트가 있습니다. 아마도 도움이 될 것입니다 ).

EDIT2 (5 월 20 일 12 월) : 또한 매우 조잡하고 ( 마우스 상호 작용이없고 아무것도 아님) Perm-Tk 스크립트 예제를 생각해 냈지만 ImageMagick Perl API를 사용하므로 SVG를 캔버스에 비트 맵으로 렌더링 할 수 있습니다. ), 답변 # 10670039- display스택 오버플로에 대한 명령 줄 GUI 응용 프로그램 인터페이스 용 ImageMagick API 를 참조하십시오 .


너무 가끔, 나는 어제 그냥 Reload물건을 패치했습니다 eog! 저 버튼도 싫어!
Xiè Jìléi

그리고 또 다른 진실을 말해주십시오. display출처는 ImageMagickSVG를 표시하기 전에 래스터 화했기 때문에 SVG를 잘 확장하지 못합니다. 그리고 더 나쁜, display그리고 rsvg내 SVG 파일의 일부 작동하지 않습니다. 지금까지는 FireFox 만 올바르게 렌더링됩니다. FireFox가 모든 것을 능가합니다.
Xiè Jìléi

안녕하세요 @ 谢 继 雷, 댓글 주셔서 감사합니다! 글쎄-방금 게시물을 편집하고 방금 정리 한 파이썬 스크립트에 대한 링크를 추가했습니다. 시도해보십시오. 아마 도움이 될 것입니다 ... 건배! 또한, [I 인정해야하지만 :) "그 버튼 싫어"에 +1 : 난 항상 오히려 수동으로 무언가를 할 수있는 버튼이 것 -보다 하지 내가 좋겠 ... 그것을 가지고 :)를 단지 같은 자동 새로 고침 extra :)]
sdaau

4

두 번째 Dennis Williamson의 ImageMagick 권장 사항 입니다 display.

또한 명명 된 파이프 를 사용 하여 파일에서 읽은 프로그램으로 데이터를 파이프 할 수도 있습니다 .

예:

mkfifo /tmp/foo.svg
cat /usr/share/inkscape/clipart/tux.svg > /tmp/foo.svg & inkscape /tmp/foo.svg
rm -f /tmp/foo.svg

그러나 파일에서 뒤로 탐색 할 수있는 프로그램에서는 작동하지 않습니다.


이 명명 된 파이프의 사용법은 매우 창의적입니다. 시도한 후 시작하는 데 시간이 걸린다는 것을 알았습니다. 간단한 뷰어가 아닌 전체 기능 편집기입니다.
Xiè Jìléi

3

Geeqie 뷰어가 svg 그래픽을 처리하고 업데이트 된 이미지를 자동으로로드하는 것 같습니다. stdin에서 이미지를 가져올 수 있는지 여부를 모르겠습니다. 도움이 되길 바랍니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.