spire.cloud.word提供了shapesapi接口用于操作word中的形状,本文将介绍如何添加和删除形状。
步骤一:通过nuget搜索安装spire.cloud.word.sdk到您的.net项目,详细步骤可参考这篇文章。
步骤二:通过冰蓝云凯发线上登陆下载网址官网()注册账号并登陆,在“我的应用”版块创建应用程序,获得app id及app key。
步骤三:上传word文档至冰蓝云凯发线上登陆下载网址官网的“文档管理”版块。为了便于文档管理,您也可以先创建文件夹“input”和“output”,然后将需要编辑的word文档上传至input文件夹,output文件夹用于存放生成的文档。本教程将示例文档上传到了input文件夹下。
步骤四:在.net程序中编写代码操作input文件夹的下的文档。
示例1、添加形状
using spire.cloud.word.sdk.api;
using spire.cloud.word.sdk.client;
using spire.cloud.word.sdk.model;
using system;
namespace insertshape
{
class program
{
static string appid = "app id";
static string appkey = "app key";
static void main(string[] args)
{
//配置app id和app key
configuration configuration = new configuration(appid, appkey);
//初始化shapesapi对象
shapesapi shapesapi = new shapesapi(configuration);
//现有文档名称
string filename = "示例文档.docx";
//段落的路径
string paragraphpath = "sections/0/paragraphs/0";
//创建形状
shapeformat shapeformat = new shapeformat(150f, 50, shapeformat.shapetypeenum.rectangle)
{
horizontalorigin = shapeformat.horizontaloriginenum.margin,
verticalorigin = shapeformat.verticaloriginenum.margin,
verticalposition = 0,
horizontalposition = 0,
fillcolor = new color(200, 0, 0),
strokeweight = 2,
strokecolor = new color(125, 125, 125),
textwrappingstyle = shapeformat.textwrappingstyleenum.through,
};
//存放现有文档的文件夹,如果没有文件夹则为null
string folder = "input";
//使用冰蓝云配置的2g空间存贮文档,可设置为null
string storage = null;
//形状在段落中的位置
int indexinpara = 1;
//文档的打开密码
string password = null;
//设置生成文档的路径及名称
string destfilepath = "output/添加形状.docx";
//将形状添加到指定位置
shapesapi.addshape(filename, paragraphpath, shapeformat, folder, storage, indexinpara, password, destfilepath);
}
}
}
示例2、删除形状
using system;
using spire.cloud.word.sdk.api;
using spire.cloud.word.sdk.client;
namespace deleteshape
{
class program
{
static string appid = "app id";
static string appkey = "app key";
static void main(string[] args)
{
//配置app id和app key
configuration configuration = new configuration(appid, appkey);
//初始化shapesapi对象
shapesapi shapesapi = new shapesapi(configuration);
//现有文档名称
string filename = "示例文档.docx";
//段落的路径
string paragraphpath = "sections/0/paragraphs/0";
//要删除形状的索引
int shapeindex = 0;
//存放现有文档的文件夹,如果没有文件夹则为null
string folder = "input";
//使用冰蓝云配置的2g空间存贮文档,可设置为null
string storage = null;
//文档的打开密码
string password = null;
//设置生成文档的路径及名称
string destfilepath = "output/删除形状.docx";
//根据索引删除指定形状
shapesapi.deleteshape(filename, paragraphpath, shapeindex, folder, storage, password, destfilepath);
}
}
}