Pythonでプレゼンテーションのタグとカスタムデータを管理する
プレゼンテーション ファイルのデータ保存
PPTX ファイル(拡張子が .pptx のアイテム)は、Office Open XML 仕様の一部である PresentationML フォーマットで保存されます。Office Open XML フォーマットは、プレゼンテーションに含まれるデータの構造を定義しています。
プレゼンテーションの要素の一つである スライド は、単一のスライドの内容を含む スライド パート です。スライド パートは、ISO/IEC 29500 で定義されたユーザー定義タグなど、多くのパートへの明示的なリレーションシップを持つことが許可されています。
カスタム データ(プレゼンテーション固有)またはユーザーは、タグ(ITagCollection)および CustomXmlParts(ICustomXmlPartCollection)として存在できます。
タグの値を取得する
スライドでは、タグは IDocumentProperties.Keywords プロパティに対応します。このサンプルコードは、Aspose.Slides for Python via .NET を使用して Presentation のタグの値を取得する方法を示しています:
import aspose.slides as slides
with slides.Presentation("pres.pptx") as pres:
print(pres.document_properties.keywords)
プレゼンテーションにタグを追加する
Aspose.Slides を使用すると、プレゼンテーションにタグを追加できます。タグは通常、次の 2 つの項目で構成されます:
- カスタム プロパティの名前 -
MyTag - カスタム プロパティの値 -
My Tag Value
特定のルールやプロパティに基づいていくつかのプレゼンテーションを分類する必要がある場合、タグを追加すると便利です。たとえば、北米諸国のプレゼンテーションをすべてまとめたい場合、北米というタグを作成し、該当する国(米国、メキシコ、カナダ)を値として割り当てることができます。
このサンプルコードは、Aspose.Slides for Python via .NET を使用して Presentation にタグを追加する方法を示しています:
import aspose.slides as slides
with slides.Presentation("pres.pptx") as pres:
tags = pres.custom_data.tags
tags.add("MyTag", "My Tag Value")
タグは Slide に対しても設定できます:
import aspose.slides as slides
with slides.Presentation("pres.pptx") as pres:
slide = pres.slides[0]
tags = slide.custom_data.tags
tags.add("tag", "value")
または個々の Shape に対しても設定できます:
import aspose.slides as slides
with slides.Presentation("pres.pptx") as pres:
slide = pres.slides[0]
shape = slide.shapes.add_auto_shape(slides.ShapeType.RECTANGLE, 10, 10, 100, 50)
shape.text_frame.text = "My text"
shape.custom_data.tags.add("tag", "value")
よくある質問
プレゼンテーション、スライド、またはシェイプからすべてのタグを一括で削除できますか?
はい。tag collection は、すべてのキーと値のペアを一括で削除する clear 操作をサポートしています。
コレクション全体を反復せずに、名前で単一のタグを削除するにはどうすればよいですか?
TagCollection の remove(name) 操作を使用して、キーでタグを削除します。
分析やフィルタリングのために、タグ名の完全なリストを取得するにはどうすればよいですか?
tag collection で get_names_of_tags を使用します。それはすべてのタグ名の配列を返します。