通過C#實(shí)現(xiàn)給Word文檔添加文字和圖片水印
在日常辦公中,給Word文檔添加水印是個(gè)常見需求——可能是為了標(biāo)記"草稿"狀態(tài)、標(biāo)注"機(jī)密"等級(jí),或者用企業(yè)Logo作為背景防偽。如果需要批量處理文檔,手動(dòng)操作效率太低,用代碼自動(dòng)化處理才是王道。
今天就來分享一個(gè)簡單高效的方案:用 C# 結(jié)合免費(fèi)庫 Free Spire.Doc for .NET 給 Word 文檔添加水?。òㄎ谋舅『蛨D片水?。?。無需依賴Office組件,輕量又好用,新手也能快速上手。
一、準(zhǔn)備工作:獲取Free Spire.Doc
首先需要安裝Free Spire.Doc for .NET。它是一個(gè)免費(fèi)的Word處理類庫,能輕松操作Word文檔的各種元素(包括水印)??梢灾苯油ㄟ^NuGet安裝:
- 在Visual Studio的"解決方案資源管理器"中右鍵項(xiàng)目
- 選擇"管理NuGet包",搜索"FreeSpire.Doc",點(diǎn)擊安裝即可
二、添加文本水?。篊# 代碼示例
文本水印是最常用的類型(比如"機(jī)密"、"內(nèi)部使用")。Free Spire.Doc 提供了 TextWatermark 類,可直接設(shè)置文本內(nèi)容、樣式、布局等屬性。
完整代碼示例:
using System;
using Spire.Doc;
using Spire.Doc.Documents;
using System.Drawing;
namespace WordWatermarkDemo
{
class Program
{
static void Main(string[] args)
{
// 1. 加載Word文檔(支持.doc和.docx)
Document doc = new Document();
doc.LoadFromFile("示例文檔.docx"); // 替換為你的文檔路徑
// 2. 創(chuàng)建文本水印對(duì)象
TextWatermark textWatermark = new TextWatermark();
// 設(shè)置水印文本內(nèi)容
textWatermark.Text = "機(jī)密文檔";
// 設(shè)置字體(名稱、大小、顏色)
textWatermark.FontName = "微軟雅黑";
textWatermark.FontSize = 40;
textWatermark.Color = Color.LightGray; // 淺灰色不影響正文閱讀
// 設(shè)置布局:斜向(Diagonal)或水平(Horizontal)
textWatermark.Layout = WatermarkLayout.Diagonal;
// 3. 將水印應(yīng)用到文檔
doc.Watermark = textWatermark;
// 4. 保存文檔
doc.SaveToFile("帶文本水印的文檔.docx", FileFormat.Docx2013);
doc.Close();
// 提示操作完成
Console.WriteLine("文本水印添加成功!");
}
}
}
三、添加圖片水?。河?Logo 作為背景
如果需要用圖片(比如企業(yè) Logo、版權(quán)標(biāo)識(shí))作為水印,F(xiàn)ree Spire.Doc 的 PictureWatermark 類可以滿足需求,支持設(shè)置圖片路徑、縮放比例。
完整代碼示例:
using System;
using Spire.Doc;
using Spire.Doc.Documents;
namespace WordImageWatermarkDemo
{
class Program
{
static void Main(string[] args)
{
// 1. 加載Word文檔
Document doc = new Document();
doc.LoadFromFile("示例文檔.docx");
// 2. 創(chuàng)建圖片水印對(duì)象
PictureWatermark pictureWatermark = new PictureWatermark();
// 設(shè)置圖片路徑(支持本地圖片,格式如.png、.jpg等)
pictureWatermark.Picture = System.Drawing.Image.FromFile("logo.png"); // 替換為你的圖片路徑
// 設(shè)置縮放比例(100為原始大小,小于100縮小,大于100放大)
pictureWatermark.Scaling = 50; // 縮小到50%,避免遮擋正文
// 設(shè)置淡化效果
pictureWatermark.IsWashout = false;
// 3. 將水印應(yīng)用到文檔
doc.Watermark = pictureWatermark;
// 4. 保存文檔
doc.SaveToFile("帶圖片水印的文檔.docx", FileFormat.Docx2013);
doc.Close();
Console.WriteLine("圖片水印添加成功!");
}
}
}
四、注意事項(xiàng)
免費(fèi)版限制:Free Spire.Doc 免費(fèi)版支持處理最多500個(gè)段落每個(gè)文檔,無任何水印,適合小型或個(gè)人項(xiàng)目。
路徑問題:加載文檔和圖片時(shí),建議使用絕對(duì)路徑(如@"C:\Files\示例文檔.docx"),避免因相對(duì)路徑錯(cuò)誤導(dǎo)致文件找不到。
水印覆蓋范圍:上述代碼會(huì)給整個(gè)文檔添加水印。如果需要給特定頁面(如首頁)添加水印,可以通過doc.Sections[0]獲取指定節(jié),單獨(dú)設(shè)置節(jié)的水印。
五、總結(jié)
用 Free Spire.Doc for .NET 在 C# 中給 Word 添加水印,步驟非常清晰:加載文檔→創(chuàng)建水印對(duì)象(文本/圖片)→設(shè)置屬性→應(yīng)用水印→保存文檔。相比依賴 Office Interop(需要安裝Office,且性能較差),這種方案更輕量、更穩(wěn)定。
到此這篇關(guān)于通過C#實(shí)現(xiàn)給Word文檔添加文字和圖片水印的文章就介紹到這了,更多相關(guān)C# Word添加水印內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
WPF使用內(nèi)置資源系統(tǒng)實(shí)現(xiàn)應(yīng)用程序國際化
本文詳細(xì)介紹了如何利用WPF內(nèi)置資源系統(tǒng)實(shí)現(xiàn)應(yīng)用程序的國際化和本地化,涵蓋創(chuàng)建多語言資源字典、實(shí)現(xiàn)資源管理以及動(dòng)態(tài)綁定資源等內(nèi)容,幫助開發(fā)者輕松為WPF應(yīng)用程序添加多語言支持,需要的朋友可以參考下2026-05-05
C#異步任務(wù)延續(xù)的三種底原理解析(最新推薦)
這篇文章主要介紹了C#異步 任務(wù)延續(xù)的三種底層玩法,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2025-05-05
使用WPF實(shí)現(xiàn)窗口抖動(dòng)動(dòng)畫效果
在用戶界面設(shè)計(jì)中,適當(dāng)?shù)膭?dòng)畫反饋可以提升用戶體驗(yàn),尤其是在錯(cuò)誤提示、操作失敗等場景下,窗口抖動(dòng)作為一種常見且直觀的視覺反饋方式,常用于提醒用戶注意當(dāng)前狀態(tài),本文將詳細(xì)介紹如何使用 WPF 動(dòng)畫機(jī)制 實(shí)現(xiàn)一個(gè)通用的 窗口抖動(dòng)幫助類,需要的朋友可以參考下2025-05-05
C#使用Spire.Doc?for?.NET實(shí)現(xiàn)Word首頁面頁眉頁腳不同設(shè)置指南
在遠(yuǎn)程辦公時(shí)代,C#?Word文檔自動(dòng)化需求激增,然而開發(fā)者常遇痛點(diǎn):手動(dòng)調(diào)整不同的Word首頁頁眉頁腳繁瑣,耗時(shí)長,且Interop依賴Office環(huán)境,部署難、跨平臺(tái)弱,因此本文給大家介紹了C#使用Spire.Doc?for?.NET實(shí)現(xiàn)Word首頁面眉頁腳不同設(shè)置指南,需要的朋友可以參考下2026-03-03
C#實(shí)現(xiàn)MQTT服務(wù)端與客戶端通訊功能
這篇文章介紹了C#實(shí)現(xiàn)MQTT服務(wù)端與客戶端通訊的功能,文中通過示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-01-01

