[javascript] jQuery SVG 대 라파엘 [닫기]

SVG와 JavaScript / jQuery를 사용하여 대화 형 인터페이스를 작업 중이며 RaphaeljQuery SVG 중에서 결정하려고합니다 . 알고 싶습니다

  1. 둘 사이의 절충점
  2. 개발 추진력이있는 곳.

Raphael에서 VML / IE 지원이나 jQuery SVG의 플로팅 기능이 필요하지 않습니다. SVG 캔버스에서 개별 항목을 생성, 애니메이션 및 조작하는 가장 우아한 방법에 주로 관심이 있습니다.



답변

최근에 Raphael과 jQuery SVG를 모두 사용했으며 다음은 내 생각입니다.

라파엘

장점 : SVG를 사용하여 많은 작업을 쉽게 수행 할 수있는 좋은 스타터 라이브러리. 잘 작성하고 문서화했습니다. 많은 예제와 데모. 매우 확장 가능한 아키텍처. 애니메이션에 좋습니다.

단점 : 실제 SVG 마크 업 위에있는 레이어이므로 그룹화 (그룹은 지원하지만 세트는 지원하지 않음)와 같이 SVG로 더 복잡한 작업을 수행하기가 어렵습니다. 이미 존재하는 요소를 훌륭하게 편집하지 않습니다.

jQuery SVG

장점 : 이미 jQuery를 사용하고 있다면 jquery 플러그인. 잘 작성하고 문서화했습니다. 많은 예제와 데모. 대부분의 SVG 요소를 지원하고 요소에 쉽게 액세스 할 수 있습니다

단점 : 라파엘만큼 확장 할 수없는 아키텍처. SVG 요소 구성과 같은 일부 문서를 더 잘 문서화 할 수 있습니다. 이미 존재하는 요소를 훌륭하게 편집하지 않습니다. SVG 시맨틱은 애니메이션에 의존합니다.

순수한 SVG 버전의 Raphael로서의 SnapSVG

SnapSVG는 Raphael의 후속 제품입니다. SVG 지원 브라우저에서만 지원되며 SVG의 거의 모든 기능을 지원합니다.

결론

빠르고 쉬운 일을한다면, Raphael은 쉬운 선택입니다. 좀 더 복잡한 작업을 수행하려는 경우 Raphael보다 실제 마크 업을 훨씬 쉽게 조작 할 수 있기 때문에 jQuery SVG를 사용하기로 선택했습니다. 비 jQuery 솔루션을 원한다면 SnapSVG가 좋은 옵션입니다.


답변

후손을 위해, 나는 깨끗한 API와 “무료”IE 지원, 그리고 활발한 개발 이 유망 해 보이기 때문에 Raphael을 선택하게되었다는 것을 주목하고 싶다 . 그러나 질문에 대답하지 않고 Javascript + SVG 라이브러리를 사용하는 다른 사람들의 경험에 대해 계속 듣고 싶습니다.


답변

나는 Raphael의 열렬한 팬이며 개발 모멘텀이 강해지고있는 것 같습니다 (지난 주에 0.85 버전이 출시되었습니다). 또 다른 큰 장점은 개발자이다 드미트리 Baranovskiy는 , 현재 플러그인, 차트 라파엘에 노력하고 있습니다 g.raphael를 (출력의 몇 가지 샘플에 이른 버전이있다 그것의 꽤 빠르로 거듭나 같이있는 모습, 플리커 ) .

그러나 SVG 라이브러리 믹스에 또 다른 경쟁자를 던지기 위해 Google의 SVG 웹 은 실제로 매우 유망한 것으로 보입니다 (SVG 호환 브라우저가 아닌 브라우저에서 렌더링하는 데 사용되는 플래시의 팬은 아니지만). 아마도 곧 다가올 SVG Open 컨퍼런스에서 볼 것 입니다.


답변

Raphael은 설정과 진행이 훨씬 쉬워 지지만 SVG에서는 Raphael에서는 불가능한 것을 표현할 수있는 방법이 있습니다. 위에서 언급 한 것처럼 “그룹”은 없습니다. 이것은 좌표 변환 레이어를 구현할 수 없음을 의미합니다. 대신 하나의 좌표 변환 만 사용할 수 있습니다.

디자인이 중첩 된 좌표 변환에 의존하는 경우 Raphael은 적합하지 않습니다.


답변

오 라파엘은 6 월부터 크게 성장했습니다. 함께 사용할 수있는 새로운 차트 라이브러리가 있으며 이는 매우 주목할만한 것입니다. Raphael은 완전한 SVG 경로 구문을 지원하며 실제로 고급 경로 방법을 통합하고 있습니다. 내 사이트 (Shameless plug)에서 1.2.8 이상을 본 다음 그곳에서 Dmitry 사이트로 튀어 오릅니다.
http://www.irunmywebsite.com/raphael/raphaelsource.html


답변

나는 그것이 전혀 관련이 없다고 생각하지만 캔버스를 고려 했습니까? Process JS 와 같은 것이 더 간단해질 수 있습니다.


답변

svgweb도 살펴 봐야합니다. 플래시를 사용하여 IE에서 svg를 렌더링하고 선택적으로 다른 브라우저에서 (브라우저 자체보다 많은 것을 지원하는 경우).

http://code.google.com/p/svgweb/