質問
stackoverflow に似た Web サイトの開発を検討していますが、答えは図面 (この場合は回路図) で構成される場合もあります。特別なプラグインなどを必要とせずにこの回路図を作成できる領域を回答フォームに設けたいと考えています。
- 私たちは、スクリプト実行 SVG を主な機能として使用する Web サイトの設計が合理的になる (つまり、Firefox または別の SVG/AJAX 準拠ブラウザーを必要とする) ような、SVG がすぐに (1 ~ 2 年で) クリティカルマスを獲得する段階に達していますか?
- クロスプラットフォームの SVG スクリプト (おそらく JavaScript) を学習するのに適したリソースは何ですか?
-アダム・デイビス
解決
残念ながら、私には答えがありませんが、参考にしていただけるプロジェクトへのヒントが 3 つあります。
1つ目は、 ライブリーカーネル ダン・インガルス著(はい、 の ダン・インガルス)サン研究所の。これは、SVG 上に JavaScript で Smalltalk 仮想世界を実装したものです。より正確には、SVG と JavaScript の Squeak Smalltalk (の一部) のポートを使用した、JavaScript での Squeak Smalltalk の Morphic GUI フレームワークの実装です。
または、あなたが Smalltalker ではなく、上記の内容が理解できない場合は、次のようにします。これは、JavaScript で書かれたオペレーティング システムで、CPU として JavaScript インタプリタ、グラフィック カードとして SVG、コンピュータとしてブラウザを使用します。
これは、JavaScript と SVG に関しては、これ以上ないほど極端です。そして、それだけ 完全に Safari 3 と部分的に Firefox 3 で動作しますが、Internet Explorer への実験的なポートもあります。
2 番目のプロジェクトは John Resig のプロジェクトです。 処理.js Processing 視覚化言語の JavaScript への移植。それは、 <canvas>
あなたが言及した問題のため、SVG ではなく要素を使用してください。ただし、これは Firefox 3 でのみ動作します。
3つ目は JavaScript でのリアルタイム 3D by 役に立たないピクルス。それは使用しています のみ JavaScript、DOM、CSS、 いいえ SVG または <canvas>
フラッシュとか何でも。 そして Internet Explorer 7 以降を含むほぼすべてのブラウザに移植できます。2D の作成はこれよりもさらに簡単になるはずです。
これら 3 つのプロジェクトの間で、何らかのインスピレーションを見つけることができるはずです。また、JavaScript と SVG、または JavaScript とグラフィックスで限界を押し広げようとして、何がうまくいき、何がうまくいかないのかを教えてくれる人々も見つけることができるはずです。
結論:クロスブラウザ SVG またはクロスブラウザを実行する <canvas>
ほぼ不可能ですが、少しクレイジーな、クロスブラウザー グラフィックス それなし SVG または <canvas>
可能だ。
他のヒント
ラファエル クロスブラウザーのベクター グラフィックスの問題に対する興味深い取り組みのようです。
SVGWeb は、フラッシュを使用してネイティブに近い SVG 機能を IE に追加するスクリプトです。他の主要なブラウザはすべて SVG をサポートしています。
1/ おそらく決して追加することはありません - IE がそれを追加したい場合は、今頃追加しているはずですが、私はそうするでしょう。しかし、それを使用する回避策があります シルバーライト そして ヤモリ レンダリングを提供します。一方、クロスブラウザーのグラフィックス API も利用できます。私は XULRunner と SVG を使用して大規模なフロントエンドを実行しましたが、Web 上では IE に対応する必要のあるものは何もありませんでした。
2/ 私が最も頻繁に参照したのは次の 2 つです。 mozilla.org の SVG ページ この SVG DOM リファレンス 。私の SVG リンクはすべてここにあります 美味しい
既存の編集者は 1 人です http://www.bpel4chor.org/editor/;また、すべての円弧がグリッド上にある回路図だけが必要な場合は、SVG を使用せずに div と画像を使用して非常にうまく行うことができます。または、単に行くこともできます ローファイルート
@jwmittagが述べたように <canvas>
はオプションです。
Saffari および Firefox 3、Opera 9、および 人々は IE のサポートを開発しています.
現在のツールとプロパティに関連付けられたマウス クリックを簡単にキャプチャできます。ページ表示ごとにキャンバスを再描画します。
を使用してプロジェクトを完了したところです <canvas>
これは、特に OpenGL や Cairo の作業を行ったことがある場合に使用できる、シンプルで非常に強力な API です。
幸運を祈ります。素晴らしいプロジェクトのようですね。