-1

Excel オートメーションを必要とする Delphi (Embarcadero XE3 を使用) でアプリケーションを実行しています。

アプリで生成された TeeChart を XLS ファイルに挿入する必要があります。次のようにチャートを BMP としてエクスポートします。

// Globals.getEnvTempPath() returns the temp directory of the current Windows user.
bmpPath := Globals.getEnvTempPath() + 'enp.bmp';
// enpChart is my TeeChart instance.
enpChart.SaveToBitmapFile(bmpPath);

イメージは正しくエクスポートされます。
次に、次のように画像を Excel に挿入します。

//WkBook is the Workbook
sheet := WkBook.Worksheets[1];
{ params: @rutaImagen, @? @? @xPosicion @yPosicion @? @? }
sheet.shapes.addpicture(bmpPath,False, True, 145, 125, -1, -1);

挿入は成功しましたが、グラフのグリッド線がワークシートのグリッド線と (垂直に) 整列しません。

ここに画像の説明を入力

これを解決する方法はありますか?

4

2 に答える 2

1

最初に、TeeChart で「セル」と呼ばれるものは、実際には左軸と下軸が交差するグリッド線であることに注意してください。これらの軸のグリッド線は、その軸のラベルが描画されるときに描画されます。したがって、実際に制御したいのは、軸ラベルの正確な位置です。

これらの正確な位置は、チャートの寸法、描画するラベルの数、およびそれらの位置によって異なります。

  • チャートの寸法は、デザイン時にフォームの TChart オブジェクト全体を直接変更することで変更できます。また、チャートChartRect(軸で区切られた領域) をコードで変更することもできます。

  • 軸に描かれるラベルは、デフォルトで自動的に計算されますが、手動で設定することもできます。軸Incrementとプロパティをいじって自動計算を調整したりMinimum、軸配列を関数で設定したりできます。MaximumClearItemsAdd(position, text)

于 2013-08-19T09:12:24.373 に答える