Excelファイルの画像と図形を挿入する
時々、ワークシートに必要な形状を挿入する必要があります。ワークシートの異なる位置に同じ形状を挿入する必要があったり、ワークシートに複数の形状を一括挿入する必要があるかもしれません。
心配しないでください!Aspose.Cellsはこれらの操作をすべてサポートしています。
Excelの形状は主に以下の種類に分かれています:
- 写真
- OLEオブジェクト
- 直線
- 四角形
- 基本図形
- ブロック矢印
- 数式図形
- フローチャート
- 星とバナー
- 吹き出し
このガイド文書では、各タイプから1つか2つの図形を選択してサンプルを作成します。これらの例を通じて、指定の形状をワークシートに挿入する方法を学ぶことができます。Aspose.Cellsを使用しています。
C#でExcelワークシートに画像を追加する
スプレッドシートに写真を追加するのは非常に簡単です。わずかなコード行だけで済みます: 単純に、picturesコレクション(Worksheetオブジェクトでカプセル化)のaddメソッドを呼び出します。addメソッドには以下のパラメータが必要です:
- upper_left_row、左上の行のインデックス。
- upper_left_column、左上の列のインデックス。
- file_name、画像ファイルの名前(パスを含む)。
from aspose.cells import Workbook | |
from os import os, path | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# The path to the documents directory. | |
dataDir = RunExamples.GetDataDir(".") | |
# Create directory if it is not already present. | |
IsExists = path.isdir(dataDir) | |
if notIsExists: | |
os.makedirs(dataDir) | |
# Instantiating a Workbook object | |
workbook = Workbook() | |
# Adding a new worksheet to the Workbook object | |
sheetIndex = workbook.worksheets.add() | |
# Obtaining the reference of the newly added worksheet by passing its sheet index | |
worksheet = workbook.worksheets[sheetIndex] | |
# Adding a picture at the location of a cell whose row and column indices | |
# Are 5 in the worksheet. It is "F6" cell | |
worksheet.pictures.add(5, 5, dataDir + "logo.jpg") | |
# Saving the Excel file | |
workbook.save(dataDir + "output.xls") |
C#でExcelワークシートにOLEオブジェクトを挿入する
Aspose.Cells for Python via .NET は、ワークシート内のOLEオブジェクトの追加、抽出、操作をサポートします。そのため、[**OleObjectCollection**](https://reference.aspose.com/cells/python-net/aspose.cells.drawing/oleobjectcollection)
クラスを使用して新しいOLEオブジェクトをコレクションリストに追加します。もう一つのクラス、[**OleObject**](https://reference.aspose.com/cells/python-net/aspose.cells.drawing/oleobject)
はOLEオブジェクトを表し、いくつかの重要なメンバーを持ちます:
- image_dataプロパティはバイト配列型の画像(アイコン)データを指定します。画像はOLEオブジェクトを示すために表示されます。
- object_dataプロパティはバイト配列形式のオブジェクトデータを指定します。このデータは、OLEオブジェクトアイコンをダブルクリックすると関連するプログラムに表示されます。
以下の例は、ワークシートにOLEオブジェクトを追加する方法を示しています。
from aspose.cells import Workbook | |
from os import os, path | |
import bytearray | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# The path to the documents directory. | |
dataDir = RunExamples.GetDataDir(".") | |
# Create directory if it is not already present. | |
IsExists = path.isdir(dataDir) | |
if notIsExists: | |
os.makedirs(dataDir) | |
# Instantiate a new Workbook. | |
workbook = Workbook() | |
# Get the first worksheet. | |
sheet = workbook.worksheets[0] | |
# Define a string variable to store the image path. | |
ImageUrl = dataDir + "logo.jpg" | |
# Get the picture into the streams. | |
fs = open(ImageUrl, "rb") | |
# Define a byte array. | |
imageData = bytearray(utils.filesize(fs)) | |
# Obtain the picture into the array of bytes from streams. | |
fs.readinto(imageData) | |
# Close the stream. | |
fs.close() | |
# Get an excel file path in a variable. | |
path = dataDir + "book1.xls" | |
# Get the file into the streams. | |
fs = open(path, "rb") | |
# Define an array of bytes. | |
objectData = bytearray(utils.filesize(fs)) | |
# Store the file from streams. | |
fs.readinto(objectData) | |
# Close the stream. | |
fs.close() | |
# Add an Ole object into the worksheet with the image | |
# Shown in MS Excel. | |
sheet.ole_objects.add(14, 3, 200, 220, imageData) | |
# Set embedded ole object data. | |
sheet.ole_objects[0].object_data = objectData | |
# Save the excel file | |
workbook.save(dataDir + "output.out.xls") |
C#でExcelワークシートに行を挿入する
線の形状は線のカテゴリに属します。
Microsoft Excel(例: 2007年)
- 線を挿入するセルを選択します
- [挿入] メニューをクリックし、[図形] をクリックします。
- 次に、「最近使用した図形」または「線」から線を選択します
Aspose.Cells for Python via .NET の使用例
ワークシートに線を挿入するために以下の方法を使用できます。
次の例では、ワークシートに線を挿入する方法が示されています。
from aspose.cells import SaveFormat, Workbook | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# Create workbook from sample file | |
workbook = Workbook() | |
# Access first worksheet from the collection | |
sheet = workbook.worksheets[0] | |
# Add the line to the worksheet | |
sheet.shapes.add_line(2, 0, 2, 0, 100, 300) | |
# sheet.Shapes.AddAutoShape(AutoShapeType.Line, 2, 0, 2, 0, 100, 300);# method 2 | |
# sheet.Shapes.AddShape(MsoDrawingType.Line, 2, 0, 2, 0, 100, 300);# method 3 | |
# Save.You can check your line in this way. | |
workbook.save("sample.xlsx", SaveFormat.XLSX) |
上記のコードを実行すると、次の結果が得られます。
C#でExcelワークシートに矢印の形の直線を挿入する
直線矢印の形状は直線のカテゴリに属します。これは直線の特別な場合です。
Microsoft Excel(例: 2007年)
- 矢印を挿入するセルを選択します
- [挿入] メニューをクリックし、[図形] をクリックします。
- 次に、「最近使用した図形」または「線」から直線矢印を選択します
Aspose.Cells for Python via .NET の使用例
ワークシートに直線矢印を挿入するために以下の方法を使用できます。
次の例では、ワークシートに直線矢印を挿入する方法が示されています。
from aspose.cells import SaveFormat, Workbook | |
from aspose.cells.drawing import MsoArrowheadLength, MsoArrowheadStyle, MsoArrowheadWidth | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# Create workbook from sample file | |
workbook = Workbook() | |
# Access first worksheet from the collection | |
sheet = workbook.worksheets[0] | |
# Add the line arrow to the worksheet | |
s = sheet.shapes.add_line(2, 0, 2, 0, 100, 300) | |
# Shape s = sheet.Shapes.AddAutoShape(AutoShapeType.Line, 2, 0, 2, 0, 100, 300);# method 2 | |
# Shape s = sheet.Shapes.AddShape(MsoDrawingType.Line, 2, 0, 2, 0, 100, 300);# method 3 | |
# add a arrow at the line begin | |
s.line.begin_arrowhead_style = MsoArrowheadStyle.ARROW | |
s.line.begin_arrowhead_width = MsoArrowheadWidth.WIDE | |
s.line.begin_arrowhead_length = MsoArrowheadLength.SHORT | |
# add a arrow at the line end | |
s.line.end_arrowhead_style = MsoArrowheadStyle.ARROW_OPEN | |
s.line.end_arrowhead_width = MsoArrowheadWidth.NARROW | |
s.line.end_arrowhead_length = MsoArrowheadLength.LONG | |
# Save.You can check your arrow in this way. | |
workbook.save("sample.xlsx", SaveFormat.XLSX) |
上記のコードを実行すると、次の結果が得られます。
C#でExcelワークシートに長方形を挿入する
長方形の形状は矩形のカテゴリに属します。
Microsoft Excel(例: 2007年)
- 長方形を挿入するセルを選択します
- [挿入] メニューをクリックし、[図形] をクリックします。
- 次に、「最近使用した形」または「長方形」から長方形を選択します。
Aspose.Cells for Python via .NET の使用例
ワークシートに長方形を挿入するには、次のメソッドを使用できます。
このメソッドはRectangleShapeオブジェクトを返します。
次の例では、ワークシートに長方形を挿入する方法が示されています。
from aspose.cells import SaveFormat, Workbook | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# Create workbook from sample file | |
workbook = Workbook() | |
# Access first worksheet from the collection | |
sheet = workbook.worksheets[0] | |
# Add the rectangle to the worksheet | |
sheet.shapes.add_rectangle(2, 0, 2, 0, 100, 300) | |
# Save | |
workbook.save("sample.xlsx", SaveFormat.XLSX) |
上記のコードを実行すると、次の結果が得られます。
C# で Excel ワークシートに立方体を挿入する
キューブの形はBasic Shapesカテゴリに属しています。
Microsoft Excel(例: 2007年)
- キューブを挿入したいセルを選択します
- [挿入] メニューをクリックし、[図形] をクリックします。
- 次に、「基本形」からキューブを選択します
Aspose.Cells for Python via .NET の使用例
ワークシートにキューブを挿入するには、次のメソッドを使用できます。
public Shape add_auto_shape(type, upper_left_row, top, upper_left_column, left, height, width)
このメソッドはShapeオブジェクトを返します。
次の例では、ワークシートにキューブを挿入する方法が示されています。
from aspose.cells import SaveFormat, Workbook | |
from aspose.cells.drawing import AutoShapeType | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# Create workbook from sample file | |
workbook = Workbook() | |
# Access first worksheet from the collection | |
sheet = workbook.worksheets[0] | |
# Add the cube to the worksheet | |
sheet.shapes.add_auto_shape(AutoShapeType.CUBE, 2, 0, 2, 0, 100, 300) | |
# Save.You can check your cube in this way. | |
workbook.save("sample.xlsx", SaveFormat.XLSX) |
上記のコードを実行すると、次の結果が得られます。
C# で Excel ワークシートに吹き出し四角矢印を挿入する
コールアウト四角矢印の形はBlock Arrowsカテゴリに属しています。
Microsoft Excel(例: 2007年)
- コールアウト四角矢印を挿入したいセルを選択します
- [挿入] メニューをクリックし、[図形] をクリックします。
- 次に、「ブロック矢印」からコールアウト四角矢印を選択します
Aspose.Cells for Python via .NET の使用例
ワークシートにコールアウト四角矢印を挿入するには、次のメソッドを使用できます。
このメソッドはShapeオブジェクトを返します。
次の例では、ワークシートにコールアウト四角矢印を挿入する方法が示されています。
from aspose.cells import SaveFormat, Workbook | |
from aspose.cells.drawing import AutoShapeType | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# Create workbook from sample file | |
workbook = Workbook() | |
# Access first worksheet from the collection | |
sheet = workbook.worksheets[0] | |
# Add the callout quad arrow to the worksheet | |
sheet.shapes.add_auto_shape(AutoShapeType.QUAD_ARROW_CALLOUT, 2, 0, 2, 0, 100, 100) | |
# Save | |
workbook.save("sample.xlsx", SaveFormat.XLSX) |
上記のコードを実行すると、次の結果が得られます。
C# で Excel ワークシートに掛け算記号を挿入する
乗算記号の形はEquation Shapesカテゴリに属しています。
Microsoft Excel(例: 2007年)
- 乗算記号を挿入したいセルを選択します
- [挿入] メニューをクリックし、[図形] をクリックします。
- その後、数式図形から乗算記号を選択します
Aspose.Cells for Python via .NET の使用例
次の方法を使用してワークシートに乗算記号を挿入できます。
このメソッドはShapeオブジェクトを返します。
次の例は、ワークシートに乗算記号を挿入する方法を示しています。
from aspose.cells import SaveFormat, Workbook | |
from aspose.cells.drawing import AutoShapeType | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# Create workbook from sample file | |
workbook = Workbook() | |
# Access first worksheet from the collection | |
sheet = workbook.worksheets[0] | |
# Add the multiplication sign to the worksheet | |
sheet.shapes.add_auto_shape(AutoShapeType.MATH_MULTIPLY, 2, 0, 2, 0, 100, 100) | |
# Save.You can check your multiplication in this way. | |
workbook.save("sample.xlsx", SaveFormat.XLSX) |
上記のコードを実行すると、次の結果が得られます。
C#でExcelワークシートに多重ドキュメントを挿入する
多重ドキュメントの形状はフローチャートカテゴリに属しています。
Microsoft Excel(例: 2007年)
- 多重ドキュメントを挿入するセルを選択します
- [挿入] メニューをクリックし、[図形] をクリックします。
- その後、フローチャートから多重ドキュメントを選択します
Aspose.Cells for Python via .NET の使用例
次の方法を使用してワークシートに多重ドキュメントを挿入できます。
このメソッドはShapeオブジェクトを返します。
次の例は、ワークシートに多重ドキュメントを挿入する方法を示しています。
from aspose.cells import SaveFormat, Workbook | |
from aspose.cells.drawing import AutoShapeType | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# Create workbook from sample file | |
workbook = Workbook() | |
# Access first worksheet from the collection | |
sheet = workbook.worksheets[0] | |
# Add the multidocument to the worksheet | |
sheet.shapes.add_auto_shape(AutoShapeType.FLOW_CHART_MULTIDOCUMENT, 2, 0, 2, 0, 100, 100) | |
# Save | |
workbook.save("sample.xlsx", SaveFormat.XLSX) |
上記のコードを実行すると、次の結果が得られます。
C#でExcelワークシートに五角星を挿入する
五角星の形状は星とバナーカテゴリに属しています。
Microsoft Excel(例: 2007年)
- 五角星を挿入したいセルを選択します
- [挿入] メニューをクリックし、[図形] をクリックします。
- その後、星とバナーから五角星を選択します
Aspose.Cells for Python via .NET の使用例
この方法は Shape オブジェクトを返します。
このメソッドはShapeオブジェクトを返します。
上記のコードを実行すると、次の結果が得られます。
from aspose.cells import SaveFormat, Workbook | |
from aspose.cells.drawing import AutoShapeType | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# Create workbook from sample file | |
workbook = Workbook() | |
# Access first worksheet from the collection | |
sheet = workbook.worksheets[0] | |
# Add the Five-pointed star to the worksheet | |
sheet.shapes.add_auto_shape(AutoShapeType.STAR5, 2, 0, 2, 0, 100, 100) | |
# Save.You can check your icon in this way. | |
workbook.save("sample.xlsx", SaveFormat.XLSX) |
上記のコードを実行すると、次の結果が得られます。
C#でExcelワークシートに思考バブルクラウドを挿入する
思考バブルクラウドの形状は吹き出しカテゴリに属しています。
Microsoft Excel(例: 2007年)
- 思考バブルクラウドを挿入したいセルを選択します
- [挿入] メニューをクリックし、[図形] をクリックします。
- 次に、吹き出し から思考バブルクラウドを選択します。
Aspose.Cells for Python via .NET の使用例
ワークシートに思考バブルクラウドを挿入するために次の方法を使用できます。
このメソッドはShapeオブジェクトを返します。
次の例は、ワークシートに思考バブルクラウドを挿入する方法を示しています。
from aspose.cells import SaveFormat, Workbook | |
from aspose.cells.drawing import AutoShapeType | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# Create workbook from sample file | |
workbook = Workbook() | |
# Access first worksheet from the collection | |
sheet = workbook.worksheets[0] | |
# Add the thought bubble cloud to the worksheet | |
sheet.shapes.add_auto_shape(AutoShapeType.CLOUD_CALLOUT, 2, 0, 2, 0, 100, 100) | |
# Save | |
workbook.save("sample.xlsx", SaveFormat.XLSX) |
上記のコードを実行すると、次の結果が得られます。