5

WebページにFlashedベースのチャートを埋め込むのに最適なAnyChartというソフトウェア製品があります。AnyChartsはPNGファイル形式にエクスポートすることもできます。次に例を示します。

<script type="text/javascript" language="javascript">
    //<![CDATA[
    var chart = new AnyChart('http://www.mysite.com/swf/AnyChart.swf');
    chart.width = 600;
    chart.height = 300;
    chart.setXMLFile('http://www.mysite.com/anychart.xml');
    chart.addEventListener("draw", function() { saveChartAsImage(chart); });
    chart.write("content-box");
    //]]>
</script>

私の最終的な目標は、AnyChartチャートをPNG形式にエクスポートする自動サービスを作成することです。そこで、AnyChartjavascriptを含むページを呼び出すIndyを使用してサービスを作成しました。しかし、問題はIndyがjavascriptを実行できないことのようです。

Indyがjavascriptを実行できるようにする方法はありますか?

4

3 に答える 3

7

いいえ、Indy は Javascript を実行しません。また、HTML を解析または表示せず、Flash も実行しないことに気付いたかもしれません。Indy はネットワーク プロトコルを処理します。

Microsoft Script Control ActiveX オブジェクトをインポートして、Javascriptを実行することができます。詳細が必要な場合は、新しい質問を投稿してください。

于 2010-02-12T07:04:48.483 に答える
3

これにIndyを使用する必要はありません。必要に応じて、TWebBrowserを使用できます。IHTMLWindow2インターフェイスにはexecScript関数があります。だからあなたはできるかもしれません:

var
  Doc : IHTMLDocument2;
  Win : IHTMLWindow2;
  aBrowser : TWebBrowser; 
//...
begin
  //...
  Doc := aBrowser.Document as IHTMLDocument2;
  Win := Doc.parentWindow;
  Win.execScript('alert(SomeMessage);', 'JavaScript');
end;
于 2010-02-12T09:52:58.597 に答える
1

vcl FOR THE web (別名 Intraweb atozed) を試しましたか? 非常に便利なティーチャート バージョンがあり、Web アプリの任意の TiwForms 内で「外部」JavaScript コードを実行することもできます (現在使用しているコードとまったく同じです)。

必要に応じて新しい質問を投稿してください。喜んでお手伝いします。

于 2010-02-13T18:24:33.330 に答える