2009-09-09 2 views
5

LaTeX 문서를 그리기 위해 그림을 그릴 필요가 있습니다. 수제 포스트 스크립트가 잘 어울리는 것 같습니다 (프로그래밍 작업, 수학 기능 필요 등). TikZ도 시도했지만 너무 복잡하고 사용하기 어려워 보였습니다.좋은 포스트 스크립트 드로잉 라이브러리는 무엇입니까?

그러나 일반 표준 포스트 스크립트를 사용하면 실제로는 사각형을 그리는 등의 표준 기능이 없으므로 약간 힘듭니다.

일반적인 모양을위한 기능을 포함하고 좀 더 편하게 생활 할 수있는 PostScript 라이브러리가 있습니까? 나는이 문제가 상당히 보편적이어야한다고 생각한다.

아니면 PostScript를 건너 뛰고 일부 우수한 시스템으로 이동해야합니까? 어느 것?

+0

PGF/TikZ은 정말 사용하기 쉬운 이럴이며 단지와 큰 그림을 만들 수 있습니다 좋은 도서관이있다 몇 줄. – f3lix

답변

6

소수의 사람들과 많은 포스트 스크립트 드라이버는 모양 그리기에 대한 고유 한 절차 집합을 정의합니다. 포스트 스크립트 드라이버는 출력을 수있는 다음 바로 가기 :

/bd{bind def} bind def 
/cp{closepath}bd 
/gs{gsave}bd 
/gr{grestore}bd 
/m{moveto}bd 
/rm{rmoveto}bd 
/l{lineto}bd 
/rl(rlineto}bd 
/s{stroke}bd 
/f{fill}bd 
/sf{gs s gr f}bd 
/xx{exch}bd 

/rect {4 2 roll m 1 index 0 rl 0 xx rl neg 0 rl cp} bd 

는 다음, 사각형은 다음과 같이 그려 질 것이다는 :

0 0 100 100 rect sf 

이의 번거 로움을 다루는 포스트 스크립트 특히 하드 만들 않습니다. MetaPost은 도면이 프로그래밍 방식으로/수학적으로 생성 된 경우 더 적합 할 수 있습니다. MetaPost는 캡슐화 된 포스트 스크립트 (LaTeX 문서에 포함시킬 수 있음)를 생성하지만 대수적 정의로 이미지를 그리는 데 더 적합합니다.

+0

예, 도형에 대한 자체 함수 정의는 제가 한 것입니다. 나는 지금까지 수천 개의 서로 다른 사각형 구현이 있어야하기 때문에 휠을 재발 명한다는 느낌이 들었습니다. 누군가 자신의 기능을 포장하여 다른 사람들이 이용할 수있게 만들었을 것입니다. MetaPost에 대한 정보를 제공해 주셔서 감사합니다. 꽤 재미 있고, MetaPost의 근대화 된 버전 인 Asymptote로 나를 인도했습니다. – pafcu

1

나는 matplotlib를 사용합니다. 그것은 포스트 스크립트와 PDF를 모두 직접 생성 할 수 있으며, 파이썬으로되어 있으며, 꽤 정교한 플롯 (따라서 그 이름)을 수행 할 수도 있습니다. PostScript를 직접 해킹하고 싶다면 LaTeX에서 pstick을 사용할 수 있지만, dvi2ps와 ps2pdf를 통해 모든 것을 실행하여 PDF를 만들어야합니다. 정말로 포스트 스크립트 나 PDF를 원하십니까? 나는 당신이 PDF를 원한다고 생각한다, 그렇지?

+0

예, PDF가 최종 목표입니다. PostScript를 사용하는 유일한 이유는 드로잉과 수학의 좋은 조합이기 때문입니다. Matplotlib이 내가 찾고있는 것이 확실하지 않습니다. 왜냐하면 내가하고 싶은 것은 부분적으로 수학적으로 생성 된 그림을 그리는 것이기 때문입니다. 나는 박스와 화살표와 기능을 계획하는 것을 목표로 한 라이브러리로하기가 힘든 임의의 모양이 필요합니까? 또한 파이썬 코드는 매우 장황하다. 그럼에도 불구하고 matplotlib에 대해서도 자세히 살펴 보겠습니다. – pafcu

+0

상자와 화살표 및 임의의 모양이 필요한 경우 graphviz를 사용하여 자동 레이아웃을 가져와야합니다. – vy32

+0

특별히 수동 레이아웃이 필요합니다. Graphviz는 이름에서 알 수 있듯이 그래프 용입니다. 나는 일반적으로 수치를 그려보고 싶다. – pafcu

1

좋아요, 나는 Asymptote이 슬라이스 빵 이후로 가장 좋은 것이라고 결정했습니다. 그래프와 임의의 그림을 모두 잘 그리며 핸들링하며 확장 모듈 (MetaPost와의 호환성을 포함하여)을 많이 포함하고 있습니다. 또한 LaTeX를 사용하여 텍스트를 조판합니다. 추가 보너스로 PDF (또는 EPS)로 직접 출력 할 수도 있습니다.

나는 여전히 슬프지만 좋은 ol 'PostScript를위한 루틴 라이브러리는 없다고 생각한다.

0

SVG을 생성 한 다음 iText 및/또는 Inkscape과 같은 것을 사용하여 프로그래밍 방식으로 PDF/PS로 변환하십시오. 나는이 방법으로 출판 스택을 만들었고 정말 멋지게 완성되었습니다.

1

나는 그래프를 위해 Asymptote을 사용했지만, 나는 또 다른 커스텀 언어를 배우는 것이 무심하다는 것을 알았다. 파이썬에 익숙하다면 PyX을 사용해 볼 수 있습니다. 그 기능 세트는 Asymptote의 것과 유사합니다. 예를 들어, 텍스트/수학 조판에 LaTeX을 사용할 수도 있습니다.

또 다른 옵션은 Enthought Enable이지만 그보다 덜 적합합니다.

1

포스트 스크립트에서 이미지를 직접 생성하는 좋은 결과를 얻었습니다. 필자가 발견 한 유용한 규칙 중 하나는 글립 문자와 같은 객체를 글꼴로 처리하는 것입니다. 따라서 각 객체는 현재 지점이 왼쪽 하단 모서리에 설정되고 현재 지점이 오른쪽 하단에 남을 것으로 예상합니다. 당신은 그것들을 배열에 넣을 수 있고 그것을 통해 끝낼 수 있습니다 : 각 객체는 currentpoint를 다음 객체를 위해 준비해 둡니다.

관련 문제