PHPでプレゼンテーションに矩形を追加

スライドに矩形を追加する

プレゼンテーションの選択されたスライドにシンプルな矩形を追加するには、以下の手順に従ってください。

  • Presentation クラスのインスタンスを作成します。
  • インデックスを使用してスライドの参照を取得します。
  • Rectangle タイプの AutoShape を、ShapeCollection オブジェクトが提供する addAutoShape メソッドを使用して追加します。
  • 変更されたプレゼンテーションを PPTX ファイルとして書き出します。

以下の例では、プレゼンテーションの最初のスライドにシンプルな矩形を追加しています。

  # PPTX を表す Presentation クラスのインスタンスを作成
  # 最初のスライドを取得
  # 楕円形の AutoShape を追加
  # PPTX ファイルをディスクに書き込む
  $pres = new Presentation();
  try {
    # 最初のスライドを取得
    $sld = $pres->getSlides()->get_Item(0);
    # 楕円形の AutoShape を追加
    $shp = $sld->getShapes()->addAutoShape(ShapeType::Rectangle, 50, 150, 150, 50);
    # PPTX ファイルをディスクに書き込む
    $pres->save("RecShp1.pptx", SaveFormat::Pptx);
  } finally {
    if (!java_is_null($pres)) {
      $pres->dispose();
    }
  }

スライドに書式設定された矩形を追加する

スライドに書式設定された矩形を追加するには、以下の手順に従ってください。

  • Presentation クラスのインスタンスを作成します。
  • インデックスを使用してスライドの参照を取得します。
  • Rectangle タイプの AutoShape を、ShapeCollection オブジェクトが提供する addAutoShape メソッドを使用して追加します。
  • 矩形の Fill Type を Solid に設定します。
  • Shape オブジェクトに関連付けられた FillFormat オブジェクトが提供する ColorFormat::setColor メソッドを使用して、矩形の色を設定します。
  • 矩形の線の色を設定します。
  • 矩形の線の幅を設定します。
  • 変更されたプレゼンテーションを PPTX ファイルとして書き出します。

上記の手順は、以下の例で実装されています。

  # PPTX を表す Presentation クラスのインスタンスを作成
  $pres = new Presentation();
  try {
    # 最初のスライドを取得
    $sld = $pres->getSlides()->get_Item(0);
    # 楕円タイプの AutoShape を追加
    $shp = $sld->getShapes()->addAutoShape(ShapeType::Rectangle, 50, 150, 150, 50);
    # 楕円シェイプにいくつかの書式設定を適用
    $shp->getFillFormat()->setFillType(FillType::Solid);
    $shp->getFillFormat()->getSolidFillColor()->setColor(java("java.awt.Color")->GRAY);
    # 楕円の線にいくつかの書式設定を適用
    $shp->getLineFormat()->getFillFormat()->setFillType(FillType::Solid);
    $shp->getLineFormat()->getFillFormat()->getSolidFillColor()->setColor(java("java.awt.Color")->BLACK);
    $shp->getLineFormat()->setWidth(5);
    # PPTX ファイルをディスクに書き込む
    $pres->save("RecShp2.pptx", SaveFormat::Pptx);
  } finally {
    if (!java_is_null($pres)) {
      $pres->dispose();
    }
  }

よくある質問

角丸矩形はどうやって追加しますか?

角丸の shape type を使用し、シェイプのプロパティでコーナー半径を調整します。ジオメトリの調整により、各コーナーごとに丸めを適用することも可能です。

矩形を画像(テクスチャ)で塗りつぶすには?

画像の fill type を選択し、画像ソースを指定し、stretching/tiling modes を設定します。

矩形に影や光彩を付けられますか?

はい。調整可能なパラメータで設定できる Outer/inner shadow, glow, and soft edges が利用可能です。

矩形をハイパーリンク付きのボタンにできますか?

はい。シェイプのクリックに Assign a hyperlink を設定すれば、スライド、ファイル、Web アドレス、またはメールへのジャンプが可能です。

矩形の移動や変更から保護するには?

シェイプロックを使用します。移動、サイズ変更、選択、テキスト編集を禁止してレイアウトを保護できます。

矩形をラスタ画像や SVG に変換できますか?

はい。指定したサイズ/スケールで画像に render the shape したり、ベクター用途のために export it as SVG したりできます。

テーマや継承を考慮した矩形の実際(有効)プロパティをすぐに取得するには?

シェイプの有効プロパティを Use the shape’s effective properties してください。API はテーマスタイル、レイアウト、ローカル設定を考慮した計算結果を返すため、書式分析が簡素化されます。