機能と能力
機能と能力
Aspose.Slides FOSS for Java provides a broad set of capabilities for working with PowerPoint .pptx プログラムでファイルを操作します。このページでは、サポートされているすべての機能領域と代表的なコード例を一覧表示しています。.
プレゼンテーション I/O
既存のものを開く .pptx ファイルを開くか新規作成し、PPTX 形式で保存し直します。.
import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.export.SaveFormat;
// Open an existing presentation
try (Presentation prs = new Presentation("input.pptx")) {
System.out.println("Slide count: " + prs.getSlides().size());
prs.save("output.pptx", SaveFormat.PPTX);
}
// Create a new presentation (starts with one blank slide)
try (Presentation prs = new Presentation()) {
prs.save("new.pptx", SaveFormat.PPTX);
}注: PPTX は唯一サポートされている保存形式です。PDF、HTML、SVG、または画像へのエクスポートは利用できません。.
ソースファイル内の不明な XML パーツは保存時にそのまま保持されるため、開いて再保存しても .pptx ライブラリがまだ理解できないコンテンツが削除されることは決してありません。.
スライド管理
スライドの追加、削除、クローン作成、並び替えを行います。.
import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.export.SaveFormat;
try (Presentation prs = new Presentation()) {
// Access the first slide
var slide = prs.getSlides().get(0);
// Add an additional blank slide at the end
prs.getSlides().addEmptySlide(prs.getLayoutSlides().get(0));
System.out.println("Total slides: " + prs.getSlides().size());
prs.save("multi-slide.pptx", SaveFormat.PPTX);
}シェイプ
スライドに AutoShape、PictureFrame、テーブル、コネクタを追加します。.
AutoShapes
import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.ShapeType;
import org.aspose.slides.foss.export.SaveFormat;
try (Presentation prs = new Presentation()) {
var slide = prs.getSlides().get(0);
// Add a rectangle at (x=50, y=50) with width=300, height=100
var shape = slide.getShapes().addAutoShape(ShapeType.RECTANGLE, 50, 50, 300, 100);
shape.addTextFrame("Aspose.Slides FOSS");
prs.save("shapes.pptx", SaveFormat.PPTX);
}テーブル
import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.export.SaveFormat;
try (Presentation prs = new Presentation()) {
var slide = prs.getSlides().get(0);
// Column widths and row heights in points
double[] colWidths = {120.0, 120.0, 120.0};
double[] rowHeights = {40.0, 40.0, 40.0};
var table = slide.getShapes().addTable(50, 50, colWidths, rowHeights);
table.getRows().get(0).get(0).getTextFrame().setText("Product");
table.getRows().get(0).get(1).getTextFrame().setText("Quantity");
table.getRows().get(0).get(2).getTextFrame().setText("Price");
prs.save("table.pptx", SaveFormat.PPTX);
}コネクタ
import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.ShapeType;
import org.aspose.slides.foss.export.SaveFormat;
try (Presentation prs = new Presentation()) {
var slide = prs.getSlides().get(0);
var box1 = slide.getShapes().addAutoShape(ShapeType.RECTANGLE, 50, 100, 150, 60);
var box2 = slide.getShapes().addAutoShape(ShapeType.RECTANGLE, 350, 100, 150, 60);
var conn = slide.getShapes().addConnector(ShapeType.BENT_CONNECTOR3, 0, 0, 10, 10);
conn.setStartShapeConnectedTo(box1);
conn.setStartShapeConnectionSiteIndex(3); // right side
conn.setEndShapeConnectedTo(box2);
conn.setEndShapeConnectionSiteIndex(1); // left side
prs.save("connector.pptx", SaveFormat.PPTX);
}テキスト書式設定
段落レベルおよび文字レベルでテキストをフォーマットするには、 PortionFormat.
import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.ShapeType;
import org.aspose.slides.foss.NullableBool;
import org.aspose.slides.foss.FillType;
import org.aspose.slides.foss.drawing.Color;
import org.aspose.slides.foss.export.SaveFormat;
try (Presentation prs = new Presentation()) {
var slide = prs.getSlides().get(0);
var shape = slide.getShapes().addAutoShape(ShapeType.RECTANGLE, 50, 50, 500, 150);
var tf = shape.addTextFrame("Bold blue heading");
var fmt = tf.getParagraphs().get(0).getPortions().get(0).getPortionFormat();
fmt.setFontHeight(28);
fmt.setFontBold(NullableBool.TRUE);
fmt.getFillFormat().setFillType(FillType.SOLID);
fmt.getFillFormat().getSolidFillColor().setColor(Color.fromArgb(255, 0, 70, 127));
prs.save("text.pptx", SaveFormat.PPTX);
}NullableBool.TRUE プロパティを明示的に設定します;; NullableBool.NOT_DEFINED スライドマスターから継承されます。.
塗りつぶしの種類
形状に単色、グラデーション、パターン、または画像の塗りつぶしを適用します。.
import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.ShapeType;
import org.aspose.slides.foss.FillType;
import org.aspose.slides.foss.drawing.Color;
import org.aspose.slides.foss.export.SaveFormat;
try (Presentation prs = new Presentation()) {
var slide = prs.getSlides().get(0);
var shape = slide.getShapes().addAutoShape(ShapeType.RECTANGLE, 50, 50, 300, 150);
// Solid fill
shape.getFillFormat().setFillType(FillType.SOLID);
shape.getFillFormat().getSolidFillColor().setColor(Color.fromArgb(255, 30, 120, 200));
prs.save("fill.pptx", SaveFormat.PPTX);
}視覚効果
形状に外側の影、グロー、ソフトエッジ、ぼかし、反射、内側の影を適用します。.
エフェクトプロパティは以下からアクセスできます。 shape.getEffectFormat(). 呼び出す enableOuterShadowEffect(), enableGlowEffect(), enableSoftEdgeEffect(), setBlurEffect(radius, grow), enableReflectionEffect(), または enableInnerShadowEffect() 各々を個別に構成するために。.
3D Formatting
3Dベベル、カメラ、ライトリグ、マテリアル、そして押し出し深度を適用するには、 shape.getThreeDFormat().これは、3D効果をサポートするPPTXビューアでのシェイプレンダリングにおける視覚的深度と照明モデルを制御します。.
スピーカーノート
任意のスライドにノートを添付するには、 getNotesSlideManager().
import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.export.SaveFormat;
try (Presentation prs = new Presentation()) {
var notes = prs.getSlides().get(0).getNotesSlideManager().addNotesSlide();
notes.getNotesTextFrame().setText("Key talking point: emphasize the ROI benefit.");
prs.save("notes.pptx", SaveFormat.PPTX);
}コメント
作成者情報とスライド上の位置を含むスレッド形式のコメントを追加します。.
import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.drawing.PointF;
import org.aspose.slides.foss.export.SaveFormat;
import java.time.LocalDateTime;
try (Presentation prs = new Presentation()) {
var author = prs.getCommentAuthors().addAuthor("Jane Smith", "JS");
var slide = prs.getSlides().get(0);
author.getComments().addComment(
"Please verify this data before the presentation.",
slide,
new PointF(2.0f, 2.0f),
LocalDateTime.now()
);
prs.save("comments.pptx", SaveFormat.PPTX);
}埋め込み画像
ファイルから画像を埋め込み、プレゼンテーションに追加し、スライドにとして配置する PictureFrame.
import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.ShapeType;
import org.aspose.slides.foss.export.SaveFormat;
import java.nio.file.Files;
import java.nio.file.Path;
try (Presentation prs = new Presentation()) {
byte[] imageData = Files.readAllBytes(Path.of("logo.png"));
var image = prs.getImages().addImage(imageData);
var slide = prs.getSlides().get(0);
slide.getShapes().addPictureFrame(ShapeType.RECTANGLE, 50, 50, 200, 150, image);
prs.save("with-image.pptx", SaveFormat.PPTX);
}ドキュメントプロパティ
コア、アプリ、カスタムのドキュメントプロパティを読み書きします。.
import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.export.SaveFormat;
try (Presentation prs = new Presentation()) {
var props = prs.getDocumentProperties();
// Core properties
props.setTitle("Q1 Results");
props.setAuthor("Finance Team");
props.setSubject("Quarterly Review");
props.setKeywords("Q1, finance, results");
// Custom property
props.setCustomPropertyValue("ReviewedBy", "Legal Team");
prs.save("deck.pptx", SaveFormat.PPTX);
}既知の制限事項
以下の領域が上がります UnsupportedOperationException そして、このエディションでは利用できません:
| 領域 | ステータス |
|---|---|
| チャート | 未実装 |
| SmartArt | 未実装 |
| アニメーションとトランジション | 未実装 |
| PDF / HTML / SVG / 画像エクスポート | 未実装(PPTX のみ) |
| VBA マクロ | 未実装 |
| デジタル署名 | 未実装 |
| ハイパーリンクとアクション設定 | 未実装 |
| OLE オブジェクト | 未実装 |
| 数式テキスト | 未実装 |
関連項目
- はじめに: インストールと最初のプログラム
- API リファレンス: クラスとメソッドのリファレンス
- ハウツーガイド: タスク指向の記事