[]
        
(Showing Draft Content)

导出形状

GcExcel为加载、保存、打印和导出Excel文件提供了广泛的支持,其中包括支持导出形状。

IShape接口的getIsPrintablesetIsPrintable方法可用于获取或设置是否将形状导出到PDF文档中。默认情况下,此值为TRUE,因此将打印嵌入Excel文件中的形状。如果不想将形状导出到PDF文件,则必须将此值设置为FALSE。

形状导出到PDF功能允许用户打印和导出不同类型的形状,如标注、线条、矩形、基本形状、块箭头、流程图、公式形状、星形和横幅等。在遇到以下情况时,可以使用此功能:

  • 当存在有Excel文件,其中包含图形、报表和仪表板,这些图形、报表和仪表板包含各种形状,并且希望导出为PDF文件。

  • 借助此功能,用户可以将包含预设形状、基本形状、自定义形状和组合形状的电子表格导出到PDF文件中,这些形状具有不同的操作,如旋转、翻转、连接箭头和文本等。

  • 电子表格模板中包含形状的填充功能(如实体填充、渐变填充等)时,可以采用导出为PDF格式显示。

代码用例

请参阅以下示例代码以将形状导出为PDF。

// Initialize workbook
Workbook workbook = new Workbook();
        
// Fetch default worksheet
IWorksheet worksheet = workbook.getWorksheets().get(0);

// Adding Shapes
IShape ShapeBegin = 
worksheet.getShapes().addShape(AutoShapeType.CloudCallout, 1, 1, 100, 100);
IShape EndBegin = 
worksheet.getShapes().addShape(AutoShapeType.Wave, 200, 200, 100, 100);
        
// Adding Connector Shape
IShape ConnectorShape = worksheet.getShapes()
.addConnector(ConnectorType.Straight, 1, 1, 101, 101);

// Connect shapes by connector shape
ConnectorShape.getConnectorFormat().beginConnect(ShapeBegin, 3);
ConnectorShape.getConnectorFormat().endConnect(EndBegin, 0);

/* Get second shape in current worksheet( here it's a connector shape) 
   and do not print it(default value is true) */
worksheet.getShapes().get(2).setIsPrintable(false);

// Saving workbook to PDF
workbook.save("ExportShapesToPDF.pdf", SaveFileFormat.Pdf);

注意:将包含形状的Excel文件导出为PDF格式时,某些导出的形状(包括具有渐变填充和图案填充的形状)、具有多行和渐变线的形状、形状效果、文本设置(如文本对齐、文本分布和垂直文本)可能与Excel中的显示效果不完全相同。