flat7th.org

Webチャート:3. 設計検討

last mod.2022/01/17 

  • サーバはLinux。ロケールはUTF-8
  • クライアントはWindowsXP + InternetExplorer。ただし…

  • チャットやホワイトボードのモデル
  • オフィススイートのモデル

  • VML
  • SVG
  • 独自フォーマット

  • IEに標準で組み込まれているVMLビューワ
  • Adobe や Corel のSVGビューワ
  • Javaアプレットによるビューワ(独自作成)
  • Flash(Ming)によるビューワ(データを動的にロード。独自作成)
  • Flash(Ming)でチャート1枚ごとにおのおのファイルを出力
  • ActiveXによるビューワ(独自作成)
  • GDでPNGを動的(or静的)に出力。ビューワ側はペイント系データとして表示。

  • 既存ツールを利用し、VMLやSVGのファイルを作成してからアップロードする
  • Javaで独自作成
  • OpenOfficeのドローツールを利用できないか?
  • Flashで独自作成



まずは以下で実現し、
  • サーバはLinux。ロケールはUTF-8
  • クライアントはWindowsXP + InternetExplorer

その後、クライアントとしてLinux + Mozillaも利用可能にする余地を残しておく。

  • MS Officeからの移行。つまりMS Officeのドローツールがインストールされている環境
  • MS Officeなんて利用しない環境

現実問題としてMS Officeから移行するひとに「だめだこりゃ」といわれないレベルは必要。
しかし、利用にはMS Office不要であるとうれしい、と。そういうこと。

要素ごとに送信すると他のユーザのビューにも反映する。ホワイトボードともいえる。
もともとのアイデアはこのモデルで、やりたいことも「遠隔勤務で打ち合わせ」だった。
  • SVGの1要素を「行」としてチャット風クライアントでアップロードし
  • 時系列で並べられるように番号をつけてDBMSに保存
  • サーバ側スクリプトで、ある時点以降の「行」をならべて出力する
  • ビューワはSVGビューワ

よくよく考えるとこうした利用法が必要な場面は少ないな…。
これはこれで、あってもいいが。

  • なにかをクリックして編集開始
  • ローカルのツールで編集して
  • 1枚のチャート全体をアップロード
てか、これなら添付ファイルで.svgをOKにすればいいだけじゃん。
でもそれだと全員がSVGビューワをインストールしないと見れない?
サーバ側でパージングして内部フォーマットに変換、VMLでも出力可にする?
それは作業量が多いからいやだ…

ともあれ今回はこの「オフィススイートモデル」で進める。

  • 内部で保持するフォーマットと、ブラウザが取得(し、その後描画)するフォーマットは、必ずしも同じでなくてもいい。
  • 外部フォーマットとして既存のものを採用すれば、好みのエディタで編集しアップロードする使い方もありうる。
  • フリーで利用できないものは検討しない。

データ形式メリットデメリット
VMLIE5から(?)標準でレンダラが組み込まれており、誰でも読めるW3Cで「SVGと統一化するように」と標準化を却下された。
SVGW3Cで標準化され、デファクトスタンダードになりつつある。AdobeやCorelがフリーのビューワプラグインを提供しているが、動作が重い。プラグインをインストールする必要があり、「誰でも読める」かというと微妙。
その他既存フォーマット
独自フォーマット内部では独自フォーマットでもち、外部にはユーザごとの希望フォーマットとする方法もある。こうすると外部フォーマットの変更に影響を受けにくくなる。

うひゃ

うひゃ

うひゃ

libRSVGでSVGをPNGに変換する案が有力かな…