Ruby를 사용하여 언어 용 플로차트 생성기를 코딩하려고합니다.Ruby 용 도면 라이브러리
다양한 순서도 요소에 다양한 모양을 그리고 그 모양에 텍스트를 쓸 수있는 라이브러리가 있는지 알고 싶습니다.
내가 도울 수 있다면 기본 도형을 그리기위한 코드를 작성하지 않아도됩니다.
누군가 해당 라이브러리를 사용하는 사례와 관련하여 참조 문서를 참조 할 수 있습니까?
Ruby를 사용하여 언어 용 플로차트 생성기를 코딩하려고합니다.Ruby 용 도면 라이브러리
다양한 순서도 요소에 다양한 모양을 그리고 그 모양에 텍스트를 쓸 수있는 라이브러리가 있는지 알고 싶습니다.
내가 도울 수 있다면 기본 도형을 그리기위한 코드를 작성하지 않아도됩니다.
누군가 해당 라이브러리를 사용하는 사례와 관련하여 참조 문서를 참조 할 수 있습니까?
간단한 대답은 (작성 당시) 거의 확실하게 존재하지 않는다는 것입니다. 죄송합니다!
Windows 기반 사용자라면 뭔가 찾을 수있는 .NET 공간에서 제품을 찾을 수 있습니다. 당신은 아마 진짜 돈을 지불해야 할 것입니다. 내 생각에, 만약 당신이 용감하다면 IronRuby를 사용하여 대화 할 수 있습니다.
비 -MS 환경에서 나는 Java 기반 솔루션을 기대하고 있습니다. 이미 언급했듯이 웹 세계에서 플래시 (또는 심지어 Silverlight?) 세계에서 자바 스크립트 기반 또는 아마도 가능성이있는 무언가가 필요하게 될 것입니다.
사실, Ruby에 머무르고 위험 부담을 감수하고 싶다면 Silverlight를 사용하는 것이 좋습니다. DLR이 실제로 작동한다고 가정하면 (여기서는 경험이 없음). 루비 - 내가 좋아하는 것처럼 - 가장 성숙한 GUI 구조는 거의 없다.
업데이트 :이 글을 쓰면서 (5 년 전에 접근) 상황은 조금 개선되었습니다. 여전히 특정 루비 그래프 드로잉 라이브러리에 대해서는 알지 못하지만 Graphvizhere (Github에 대한 지원이 향상되거나 gem install ruby-graphviz
으로 개선되었습니다. 간단한 그래프의 경우 Ruby에서 직접 스크립트를 작성할 수 있다는 것을 알았습니다.
일부 라이브러리는 루비에 존재한다. 비록 당신은 기본적인 요소들로만 일해야 할 것이다. Nathan이 지적한 것처럼 https://rubygems.org/gems/rmagick이 있지만 https://rubygems.org/gems/cairo도 있습니다. 여기 간단한 튜토리얼 http://www.hokstad.com/simple-drawing-in-ruby-with-cairo.html이 있습니다. GTK http://zetcode.com/tutorials/rubygtktutorial/cairo/을 사용하는 또 다른 방법이 있습니다. 나는 이것이 최고의 API가 아니라는 것에 동의해야 할 것이다. 그러나 그것은 시작이다. – Gaston
"Ruby에서 뭔가 필요합니다.", "Try .NET", WTF. – Dorian
@Gaston 너무 나빠서 대답을하지 못했습니다. – Blogueira
당신이 구축하고있는 사용자 에이전트의 기능에 의해 주로 제한 될 것 같은데요. 이것이 웹 프로젝트라면 드로잉 기능은 브라우저에 의존하게 될 것입니다. Ruby가 서버 측에서 실행되기 때문에 끌어 오기/확대/축소 등을 허용하려면 JavaScript가 최소한 필요합니다. 벡터 드로잉 (JavaScript "javascript 그래픽 라이브러리")에 사용되는 JavaScript의 예제는 많이 있지만 모두 코딩이 필요합니다. 나는 이것을 우아하게 추상화 한 라이브러리를 보지 못했습니다.
ImageMagick에는 RMagick이라는 Ruby 바인딩이 있습니다 (저장소에 따라 다른 이름으로 불리기도 함). (Link) 본인은 직접 사용하지 않았지만 귀하가 찾고있는 것을 할 것이라고 믿습니다. 코딩을해야 할 것입니다 만 라인을 따라 가야합니다
draw.rectangle(x1, y1, x2, y2)
draw.polygon(x1, y1,...,xN, yN)
전적으로 확신하지만 루비에 대한 카이로 바인딩을 확인하십시오. 텍스트 판고. 나는 그때 현재 조사 중이며이 페이지를 보았다.
플로 차트를 방향성 또는 무향 그래프로 Graphviz에 기록하십시오. Graphviz에는 그래프를 쉽게 생성 할 수있는 언어 인 dot이 있습니다. 도트 파일을 생성하고 Graphiviz를 통해 실행하면 이미지를 얻을 수 있습니다.당신은 노드의 모양을 제어하고 graphviz를 훨씬 더 할 수
로
digraph {
A [label="start"];
B [label="eat"];
C [label="drink"];
D [label="be merry"];
A -> B -> C;
C -> D [constraint=false];
B -> D [ arrowhead=none, arrowtail=normal]; // reverse this edge
}
graph {
A -- B -- C;
B -- D;
C -- D [constraint=false];
}
는 렌더링합니다.
나는 동일한 질문을했다. 이드가 System.Drawing 네임 스페이스와 비교할만한 어떤 것도 있음을 알게되었다. – Zasz