• C# 设置、删除、读取Word文档背景——基于Spire.Cloud.Word


    感谢大哥 https://www.cnblogs.com/Yesi/p/12034407.html

    Spire.Cloud. SDK for .NET提供了接口SetBackgroudColor()、SetBackgroudImage()、DeleteBackground()、GetBackgroudColor()用于设置、删除及读取Word文档背景。本文将以C#程序为例演示如何来调用API接口实现以上内容操作。

    必要步骤:

    步骤一:dll文件获取及导入。在程序中通过Nuget搜索安装,直接导入。

    dll添加引用效果:

    步骤二:App ID及Key获取。云端创建账号,并在“我的应用”板块中创建应用以获得App ID及App Key。

    步骤三:源文档上传。在“文档管理”板块,上传源文档。这里如果想方便文档管理,可以新建文件夹,将源文档及结果文档分别保存至相应的文件夹下。不建文件夹时,源文档及结果文档直接保存在根目录。本文示例中,建了两个文件夹,分别用于存放源文档及结果文档。

    【示例1】设置背景颜色

    复制代码
    using Spire.Cloud.Word;
    using Spire.Cloud.Word.Sdk.Api;
    using Spire.Cloud.Word.Sdk.Client;
    using Spire.Cloud.Word.Sdk.Model;
    using System;
    
    
    namespace BackgroundColor
    {
        class Program
        {
            static String appId = "App ID";
            static String appKey = "App Key";
            static void Main(string[] args)
            {
                //配置账号信息
                Configuration wordConfiguration = new Configuration(appId, appKey);
    
                //创建BackgroundApi实例
                BackgroundApi backgroundApi = new BackgroundApi(wordConfiguration);
                
                //源文档
                var fileName = "testfile.docx"; 
                string name = fileName;
    
                //源文档所在文件夹,若没有文件夹则设置为null
                string folder = "input";
    
                //设置背景颜色RGB值
                Color color = new Color(255, 255, 205);
    
                //设置文档密码,如果没有密码,则设置为null
                string password = null;
    
                //使用冰蓝云配置的2G空间存贮文档,可设置为null
                string storage = null;
    
                //设置生成文档的路径及文档名称
                string destFilePath = "output/BackgroundColor.docx";
    
                //调用方法设置背景颜色
                backgroundApi.SetBackgroundColor(name,color,destFilePath,folder,storage,password);
            }
        }
    }
    复制代码

    背景颜色设置结果:

    【示例2】设置背景图片

    复制代码
    using Spire.Cloud.Word.Sdk;
    using Spire.Cloud.Word.Sdk.Api;
    using Spire.Cloud.Word.Sdk.Client;
    using System;
    
    
    namespace BackgroundImg
    {
        class Program
        {
            static String appId = "App ID";
            static String appKey = "App Key";
            static void Main(string[] args)
            {
                //配置账号信息
                Configuration wordConfiguration = new Configuration(appId, appKey);
    
                //创建BackgroundApi实例
                BackgroundApi backgroundApi = new BackgroundApi(wordConfiguration);
    
                //源文档及图片
                var fileName = "testfile.docx";
                var imageName = "ss.png";
                string name = fileName;
    
                //源文档所在文件夹,若没有文件夹则设置为null
                string folder = "input";
                string imagePath = "input" + "/"+ imageName;
    
                //设置文档密码,如果没有密码,则设置为null
                string password = null;
    
                //使用冰蓝云配置的2G空间存贮文档,可设置为null
                string storage = null;
    
                //设置生成文档的路径及文档名称
                string destFilePath = "output/BackgroundImg.docx";
    
                //调用方法设置背景
                backgroundApi.SetBackgroudImage(name,imagePath,folder,storage,password,destFilePath);
            }
        }
    }
    复制代码

    背景图片设置效果:

    【示例3】删除背景(包括背景颜色及背景图片)

    复制代码
    using Spire.Cloud.Word.Sdk;
    using Spire.Cloud.Word.Sdk.Api;
    using Spire.Cloud.Word.Sdk.Client;
    using System;
    
    namespace DeleteBackground
    {
        class Program
        {
            static String appId = "App ID";
            static String appKey = "App Key";
            static void Main(string[] args)
            {
                //配置账号信息
                Configuration wordConfiguration = new Configuration(appId, appKey);
    
                //创建BackgroundApi实例
                BackgroundApi backgroundApi = new BackgroundApi(wordConfiguration);
    
                //源文档
                var fileName = "BackgroundImg.docx";
                string name = fileName;
    
                //源文档所在文件夹,若没有文件夹则设置为null
                string folder = "output";
    
                //设置文档密码,如果没有密码,则设置为null
                string password = null;
    
                //使用冰蓝云配置的2G空间存贮文档,可设置为null
                string storage = null;
    
                //设置生成文档的路径及文档名称
                string destFilePath = "output/DeleteBackground.docx";
    
                //调用方法删除文档中背景
                backgroundApi.DeleteBackground(name,destFilePath,password,folder,storage);
            }
        }
    }
    复制代码

    文档背景删除效果:

    【示例4】读取背景颜色

    复制代码
    using Spire.Cloud.Word.Sdk.Api;
    using Spire.Cloud.Word.Sdk.Client;
    using Spire.Cloud.Word.Sdk.Model;
    using System;
    
    namespace GetBackground
    {
        class Program
        {
            static String appId = "App ID";
            static String appKey = "App Key";
            static void Main(string[] args)
            {
                //配置账号信息
                Configuration wordConfiguration = new Configuration(appId, appKey);
    
                //创建BackgroundApi实例
                BackgroundApi backgroundApi = new BackgroundApi(wordConfiguration);
    
                //源文档
                var fileName = "BackgroundColor.docx"; 
                string name = fileName; 
    
                //源文档密码,若无密码可设置为null
                string password = null;
    
                //源文档所在文件夹,若没有文件夹则设置为null
                string folder = "output";
    
                //使用冰蓝云配置的2G空间存贮文档,可设置为null
                string storage = null;
                
                //获取文档背景色
                System.Console.WriteLine(backgroundApi.GetBackgroundColor(name,password,folder,storage));
                System.Console.ReadLine();       
            }
        }
    }
    复制代码

    背景色RGB值读取结果:

  • 相关阅读:
    Python标准库 -- UUID模块(生成唯一标识)
    Python全局解释器锁 -- GIL
    Python Web Server Gateway Interface -- WSGI
    Mysql 和 Postgresql 抛开性能的对比
    一篇文章掌握RequireJS常用知识
    彻底理解js中的闭包
    全面理解Javascript闭包和闭包的几种写法及用途【转】
    JS 日期转换,格式化等常用的函数定义
    把上传过来的多张图片拼接转为PDF的实现代码
    C# Stream 和 byte[] 之间的转换(文件流的应用)
  • 原文地址:https://www.cnblogs.com/ning-xiaowo/p/13158457.html
Copyright © 2020-2023  润新知