SVG 이미지를 PNG 또는 PDF로 변환하기 위해 * nix 계열 시스템 (OS X 10.6.8, 다양한 맛의 Linux)에서 Gearman PHP 프로세스로 inkscape
을 실행하고 있습니다. 나는이 같은 (줄 바꿈 단지 명확성을 위해 여기에 추가)를 사용 :X 서버없이 inkscape 실행
/full/path/to/inkscape -z \
--export-png=/path/to/output.png \
--export-width=100 --export-height=100 \
/path/to/input.svg
그것은 작동하지만, -z 플래그 내가 OS에 (내 콘솔 출력이 얻을 ("X 서버를 사용하지 마십시오")에도 불구하고 X는) :
Setting Language: .UTF-8
(process:44699): Gtk-WARNING **: Locale not supported by C library.
Using the fallback 'C' locale.
Xlib: extension "RANDR" missing on display "/tmp/launch-WvcqRh/org.x:0".
이는 잉크 스케이프가가 필요한 것보다 더 라이브러리를로드하고 X 서버에 연결을 시도하지 않은 경우가 더 빨리 될 수 있다고한다 나에게 제안합니다. 그러나 -z/--without-gui
플래그를 사용하는 것 이외에 무엇을 시도해야할지 모르겠습니다. 내 dev 컴퓨터의 성능은 여전히 잠깐 (최소한 사소한 SVG 파일의 경우)이지만 가능한 경우이를 정리하고 싶습니다. 최선의 대답이 "오류 출력 억제"일지라도!
아마도 bash DISPLAY env var를 끄거나 재설정하면됩니까? X에 익숙하지 않습니다.
감사합니다, 나는 줄 것이다 'DISPLAY' 일이 끝나면 다시보고 할 것입니다! 그래도 결과가 나오지 않으면 Xvfb를 사용해 보겠다.하지만이 시스템을 최저 VPS에서 실행하고 있으므로 여분의 소프트웨어를 최소한으로 유지하고 싶다. – halfer
Btw; 필자는 Mac에서'svg2pdf'를 시도해 보았습니다. Inkscape SVG 문서를 렌더링하는 것은 그리 좋지 않은 것처럼 보입니다. 단일 패밀리의 다양한 글꼴 스타일이 모두 기본 변형으로 렌더링되었습니다. (어쩌면 여기에 설정해야 할 것이 있지만,'inkscape'는 그 자리를 얻습니다.) – halfer
나는'DISPLAY = ''inkscape --export-png = output.png input.svg' 그리고'unset DISPLAY'와'inkscape' 명령을 가진 bash 스크립트를 시도해 보았고'Gtk-WARNING '. 당신처럼, 나는 그 일을 기대하고있었습니다 - 바! – halfer