在工作表之间复制形状
Contents
[
Hide
]
有时,您需要在工作表之间复制元素,例如图片、图表和其他绘图对象。Aspose.Cells for Python via .NET支持此功能。可以精确复制图表、图片和其他对象。
本文详细介绍了如何在工作表之间复制形状。
从一个工作表复制图片到另一个工作表
要将图片从一个工作表复制到另一个,请使用以下示例代码中显示的 Worksheet.pictures.add 方法。
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
from aspose.cells import Workbook | |
from io import BytesIO | |
# 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(".") | |
# Open the template file | |
workbook = Workbook(dataDir + "sample.xlsx") | |
# Get the Picture from the "Picture" worksheet. | |
picturesource = workbook.worksheets.get("Picture").pictures[0] | |
# Save Picture to Memory Stream | |
ms = BytesIO(picturesource.data) | |
# Copy the picture to the Result Worksheet | |
workbook.worksheets.get("Result").pictures.add(picturesource.upper_left_row, picturesource.upper_left_column, ms, picturesource.width_scale, picturesource.height_scale) | |
# Save the Worksheet | |
workbook.save(dataDir + "PictureCopied_out.xlsx") |
将图表从一个工作表复制到另一个
以下代码演示了使用 Worksheet.shapes.add_copy 方法将图表从一个工作表复制到另一个。
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
from aspose.cells import Workbook | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# Open the template file | |
workbook = Workbook(dataDir + "sample.xlsx") | |
# Get the Chart from the "Chart" worksheet. | |
chartsource = workbook.worksheets.get("Chart").charts[0] | |
cshape = chartsource.chart_object | |
# Copy the Chart to the Result Worksheet | |
workbook.worksheets.get("Result").shapes.add_copy(cshape, 20, 0, 2, 0) | |
# Save the Worksheet | |
workbook.save(dataDir + "ChartCopied_out.xlsx") |
从一个工作表复制控件和其他绘图对象到另一个
要复制控件和其他绘图对象,请使用以下示例中显示的 Worksheet.shapes.add_copy 方法。
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
from aspose.cells import Workbook | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# Open the template file | |
workbook = Workbook(dataDir + "sample2.xlsx") | |
# Get the Shapes from the "Control" worksheet. | |
shape = workbook.worksheets.get("Control").shapes | |
# Copy the Textbox to the Result Worksheet | |
workbook.worksheets.get("Result").shapes.add_copy(shape[0], 5, 0, 2, 0) | |
# Copy the Oval Shape to the Result Worksheet | |
workbook.worksheets.get("Result").shapes.add_copy(shape[1], 10, 0, 2, 0) | |
# Save the Worksheet | |
workbook.save(dataDir + "ControlsCopied_out.xlsx") |