チャートプロットエリア

チャートプロットエリアの幅と高さを取得する

Aspose.Slides for PHP via Javaは、シンプルなAPIを提供します。

  1. Presentationクラスのインスタンスを作成します。
  2. 最初のスライドにアクセスします。
  3. デフォルトデータでチャートを追加します。
  4. 実際の値を取得する前に、メソッドIChart.validateChartLayout()を呼び出します。
  5. チャートの左上隅に対するチャート要素の実際のX位置(左)を取得します。
  6. チャートの左上隅に対するチャート要素の実際の上部を取得します。
  7. チャート要素の実際の幅を取得します。
  8. チャート要素の実際の高さを取得します。
  # Presentationクラスのインスタンスを作成
  $pres = new Presentation();
  try {
    $chart = $pres->getSlides()->get_Item(0)->getShapes()->addChart(ChartType::ClusteredColumn, 100, 100, 500, 350);
    $chart->validateChartLayout();
    $x = $chart->getPlotArea()->getActualX();
    $y = $chart->getPlotArea()->getActualY();
    $w = $chart->getPlotArea()->getActualWidth();
    $h = $chart->getPlotArea()->getActualHeight();
  } finally {
    if (!java_is_null($pres)) {
      $pres->dispose();
    }
  }

チャートプロットエリアのレイアウトモードを設定する

Aspose.Slides for PHP via Javaは、チャートプロットエリアのレイアウトモードを設定するためのシンプルなAPIを提供します。メソッドsetLayoutTargetTypegetLayoutTargetTypeが、ChartPlotAreaクラスとIChartPlotAreaインターフェイスに追加されました。プロットエリアのレイアウトが手動で定義されている場合、このプロパティは、プロットエリアを内部(軸と軸ラベルを含まない)または外部(軸と軸ラベルを含む)でレイアウトするかどうかを指定します。LayoutTargetType列挙型で定義された2つの値があります。

  • LayoutTargetType::Inner - プロットエリアのサイズは、目盛りと軸ラベルを含まないプロットエリアのサイズを決定することを指定します。
  • LayoutTargetType::Outer - プロットエリアのサイズは、プロットエリア、目盛り、および軸ラベルのサイズを決定することを指定します。

サンプルコードは以下の通りです。

  # Presentationクラスのインスタンスを作成
  $pres = new Presentation();
  try {
    $slide = $pres->getSlides()->get_Item(0);
    $chart = $slide->getShapes()->addChart(ChartType::ClusteredColumn, 20, 100, 600, 400);
    $chart->getPlotArea()->setX(0.2);
    $chart->getPlotArea()->setY(0.2);
    $chart->getPlotArea()->setWidth(0.7);
    $chart->getPlotArea()->setHeight(0.7);
    $chart->getPlotArea()->setLayoutTargetType(LayoutTargetType::Inner);
    $pres->save("SetLayoutMode_outer.pptx", SaveFormat::Pptx);
  } finally {
    if (!java_is_null($pres)) {
      $pres->dispose();
    }
  }