Word中设置水印时,可使用预设的文字或自定义文字设置为水印效果,但通常添加水印效果时,会对所有页面都设置成统一效果,如果需要对每一页或者某个页面设置不同的水印效果,则可以参考本文中的方法下面,将以C# 代码为例,对Word每一页设置不同的文字水印效果作详细介绍,下面我们就来说一说关于word水印文字怎么能满页?我们一起去了解并探讨一下这个问题吧!
word水印文字怎么能满页
Word中设置水印时,可使用预设的文字或自定义文字设置为水印效果,但通常添加水印效果时,会对所有页面都设置成统一效果,如果需要对每一页或者某个页面设置不同的水印效果,则可以参考本文中的方法。下面,将以C# 代码为例,对Word每一页设置不同的文字水印效果作详细介绍。
方法思路
在给Word每一页添加文字水印前,首先需要在Word文档每一页正文的最后一个字符后面插入“连续”分节符,然后在每一节的页眉段落里添加艺术字形状,并设置形状大小、对齐方式等。最后保存文档。
dll引用方法1
在程序中引入Spire.Doc.dll文件;将Spire.Doc for .NET下载到本地,解压,找到BIN文件夹下的Spire.Doc.dll。然后在Visual Studio中打开“解决方案资源管理器”,鼠标右键点击“引用”,“添加引用”,将本地路径BIN文件夹下的dll文件添加引用至程序。
方法2
通过NuGet安装。可通过以下2种方法安装:
1.可以在Visual Studio中打开“解决方案资源管理器”,鼠标右键点击“引用”,“管理NuGet包”,然后搜索“Spire.Doc”,点击“安装”。等待程序安装完成。
2.将以下内容复制到PM控制台安装。
Install-Package Spire.Doc -Version 10.1.14
代码示例
给每页添加文字水印时,可参考如下步骤:
不同页面中设置不一样的文字水印效果,只需要获取该页面对应的节,然后参考上述用到的方法来添加即可。
C#
using Spire.Doc;
using Spire.Doc.Documents;
using Spire.Doc.Fields;
using System.Drawing;
namespace TextWatermark2
{
class Program
{
static void Main(string[] args)
{
//加载Word测试文档
Document doc = new Document();
doc.LoadFromFile("test.docx");
//获取文档第一节
Section section1 = doc.Sections[0];
//定义水印文字的纵向坐标位置
float y = section1.PageSetup.PageSize.Height/3;
//添加文字水印1
HeaderFooter header1 = section1.HeadersFooters.Header;//获取页眉
header1.Paragraphs.Clear();//删除原有页眉格式的段落
Paragraph para1 = header1.AddParagraph();//重新添加段落
//添加艺术字并设置大小
ShapeObject shape1 = new ShapeObject(doc, ShapeType.TextPlainText);
shape1.Width = 362;
shape1.Height = 118;
//设置艺术字文本内容、位置及样式(即文本水印字样)
shape1.Rotation = 315;
shape1.WordArt.Text = "内部使用";
shape1.FillColor = Color.ForestGreen;
shape1.LineStyle = ShapeLineStyle.Single;
shape1.StrokeColor = Color.ForestGreen;
shape1.StrokeWeight = 0.5;
shape1.VerticalPosition = y;
shape1.HorizontalAlignment = ShapeHorizontalAlignment.Center;
para1.ChildObjects.Add(shape1);
//同理设置第二节页眉中的文字水印2
Section section2 = doc.Sections[1];
HeaderFooter header2 = section2.HeadersFooters.Header;
header2.Paragraphs.Clear();
Paragraph para2 = header2.AddParagraph();
ShapeObject shape2 = new ShapeObject(doc, ShapeType.TextPlainText);
shape2.Width = 362;
shape2.Height = 118;
shape2.Rotation = 315;
shape2.WordArt.Text = "绝密资料";
shape2.FillColor = Color.HotPink;
shape2.LineStyle = ShapeLineStyle.Single;
shape2.StrokeColor = Color.HotPink;
shape2.StrokeWeight = 0.5;
shape2.VerticalPosition = y;
shape2.HorizontalAlignment = ShapeHorizontalAlignment.Center;
para2.ChildObjects.Add(shape2);
//同理设置第三节中的页眉中的文字水印3
Section section3 = doc.Sections[2];
HeaderFooter header3 = section3.HeadersFooters.Header;
header3.Paragraphs.Clear();
Paragraph para3 = header3.AddParagraph();
ShapeObject shape3 = new ShapeObject(doc, ShapeType.TextPlainText);
shape3.Width = 362;
shape3.Height = 118;
shape3.Rotation = 315;
shape3.WordArt.Text = "禁止传阅";
shape3.FillColor = Color.DarkOrange;
shape3.LineStyle = ShapeLineStyle.Single;
shape3.StrokeColor = Color.DarkOrange;
shape3.StrokeWeight = 0.5;
shape3.VerticalPosition = y;
shape3.HorizontalAlignment = ShapeHorizontalAlignment.Center;
para3.ChildObjects.Add(shape3);
//保存文档
doc.SaveToFile("DifferentTextWatermark.docx", FileFormat.Docx2013);
System.Diagnostics.Process.Start("DifferentTextWatermark.docx");
}
}
}
如图,每一页均可显示不同的文字水印效果: