如何在 C# 中向 Word 文件添加水印
在當今的現代企業中,Word 文件是資訊的代名詞,並在部門和公司之間傳遞重要訊息。 但是,使用電子文檔也存在有人篡改或偽造無效或虛假 Word 文件的風險。
因此,對抗這種現象的一種方法是為 Word 文件添加浮水印。 然而,這並不會提高 Word 文件的安全性。 水印能夠有效地區分真正的 Word 文件和偽造的文檔。 此外,以程式設計方式新增浮水印相當具有挑戰性,因為大多數情況下都需要使用者手動使用 Microsoft Word 並在每個文件上新增浮水印,這使得整個過程非常漫長而痛苦。
幸運的是, IronWord可以透過程式設計方式在 Word 中加入圖像作為浮水印。 這樣一來,開發人員就可以以程式設計方式將它們添加到流程中,從而減少重複性工作,提高效率和一致性。
雖然水印有各種類型,例如形狀浮水印和文字浮水印,但本文僅使用圖像浮水印,以 IronWord 庫為例進行討論,並提供向 Word 文件中添加圖像的實用範例。
在 Word 文件中新增浮水印
鐵言
如何在 C# 中為 Word 檔案新增浮水印:圖 1 - IronWord:C# DOCX 函式庫
IronWord 是一個可靠且易於使用的 C# Docx 庫,它允許開發人員使用 C# 建立和編輯 Word 文檔,而無需依賴 Microsoft Office 或 Word Interop 等傳統依賴項。
此外,它還擁有豐富的文檔,並完全支援 .NET 8、7、6、Framework、Core 和 Azure。 這使得它能夠跨平台兼容大多數應用程序,並且無論您正在處理什麼應用程序,它都具有靈活性。
使用影像浮水印
許可證密鑰
請注意,IronWord 需要許可證密鑰才能運作。 您可以點擊此連結以取得免費試用金鑰。
// Replace the license key variable with the trial key you obtained
IronWord.License.LicenseKey = "REPLACE-WITH-YOUR-KEY";// Replace the license key variable with the trial key you obtained
IronWord.License.LicenseKey = "REPLACE-WITH-YOUR-KEY";' Replace the license key variable with the trial key you obtained
IronWord.License.LicenseKey = "REPLACE-WITH-YOUR-KEY"收到試用金鑰後,請在項目中設定此變數。
在 Word 文件中新增圖像浮水印
讓我們來看一個在 Word 文件中新增影像浮水印的範例。 為了減少重複程式碼,我們將不提及 static void main,而只展示主程式碼。
我們將使用此圖像作為浮水印圖像並將其添加到 Word 文件中。
如何在 C# 中為 Word 檔案新增浮水印:圖 2 - 輸入影像
using IronWord;
using IronWord.Models;
using IronWord.Models.Enums;
// Set the license key
IronWord.License.LicenseKey = "YOUR-KEY";
// Create a new Word document
WordDocument doc = new WordDocument();
// Load the image to be used as a watermark
IronWord.Models.Image image = new IronWord.Models.Image("ironword.png");
// Set the width and height of the image
image.Width = 500; // In pixels
image.Height = 250; // In pixels
// Add the image as a watermark to the document
doc.AddImage(image);
// Save the document as a .docx file
doc.SaveAs("documentImageResized.docx");using IronWord;
using IronWord.Models;
using IronWord.Models.Enums;
// Set the license key
IronWord.License.LicenseKey = "YOUR-KEY";
// Create a new Word document
WordDocument doc = new WordDocument();
// Load the image to be used as a watermark
IronWord.Models.Image image = new IronWord.Models.Image("ironword.png");
// Set the width and height of the image
image.Width = 500; // In pixels
image.Height = 250; // In pixels
// Add the image as a watermark to the document
doc.AddImage(image);
// Save the document as a .docx file
doc.SaveAs("documentImageResized.docx");Imports IronWord
Imports IronWord.Models
Imports IronWord.Models.Enums
' Set the license key
IronWord.License.LicenseKey = "YOUR-KEY"
' Create a new Word document
Dim doc As New WordDocument()
' Load the image to be used as a watermark
Dim image As New IronWord.Models.Image("ironword.png")
' Set the width and height of the image
image.Width = 500 ' In pixels
image.Height = 250 ' In pixels
' Add the image as a watermark to the document
doc.AddImage(image)
' Save the document as a .docx file
doc.SaveAs("documentImageResized.docx")- 我們先建立一個新的
WordDocument實例。 這是 IronWord 中的文件類別。 接下來,我們將建立一個名為doc新變量,並將圖片浮水印新增到該變數中。 - 我們將上面輸入的圖像載入到一個新的
Image類別中。 - 我們會相應地設定圖像的寬度和高度。 此寬度和高度屬性允許使用者實現圖像浮水印縮放。 在我們的範例中,寬度設定為 500,高度設定為 250。
- 我們使用
AddImage將影像浮水印加入文件。 - 最後,我們將文檔
documentImageResized儲存並匯出為 Word 文件。
Word文檔的輸出結果如下。
如何在 C# 中為 Word 文件新增浮水印:圖 3 - 輸出 Word 文檔
請注意,範例中設定的尺寸是為了適應整個 Word 文件並展示 IronWord 的功能。
除了添加圖像之外,我們還可以使用WrapText屬性來確保圖像浮水印保持在背景文字的後面。
// Set the image to wrap behind the text
image.WrapText = WrapText.BehindText;// Set the image to wrap behind the text
image.WrapText = WrapText.BehindText;' Set the image to wrap behind the text
image.WrapText = WrapText.BehindText透過此屬性,圖像浮水印應環繞在文字後面,僅在背景中顯示,從而使文字不受阻礙。
此外,開發者還可以嘗試對影像浮水印進行更多自訂,使其獨一無二。 IronWord 可讓您調整影像相對於 Word 文件的尺寸,並管理影像浮水印的位置。
using IronWord;
using IronWord.Models;
// Set the license key
IronWord.License.LicenseKey = "YOUR-KEY";
// Create a new Word document
WordDocument doc = new WordDocument();
// Load the image to be used as a watermark
IronWord.Models.Image image = new IronWord.Models.Image("ironword.png");
// Create an ElementPosition object to set the position
ElementPosition elementPosition = new ElementPosition();
elementPosition.SetXPosition(50);
elementPosition.SetYPosition(50);
// Set the dimensions of the image
image.Width = 50; // In pixels
image.Height = 50; // In pixels
// Set the image position using the ElementPosition object
image.Position = elementPosition;
// Offset the image from each side by 100 pixels
image.DistanceFromTop = 100;
image.DistanceFromBottom = 100;
image.DistanceFromLeft = 100;
image.DistanceFromRight = 100;using IronWord;
using IronWord.Models;
// Set the license key
IronWord.License.LicenseKey = "YOUR-KEY";
// Create a new Word document
WordDocument doc = new WordDocument();
// Load the image to be used as a watermark
IronWord.Models.Image image = new IronWord.Models.Image("ironword.png");
// Create an ElementPosition object to set the position
ElementPosition elementPosition = new ElementPosition();
elementPosition.SetXPosition(50);
elementPosition.SetYPosition(50);
// Set the dimensions of the image
image.Width = 50; // In pixels
image.Height = 50; // In pixels
// Set the image position using the ElementPosition object
image.Position = elementPosition;
// Offset the image from each side by 100 pixels
image.DistanceFromTop = 100;
image.DistanceFromBottom = 100;
image.DistanceFromLeft = 100;
image.DistanceFromRight = 100;Imports IronWord
Imports IronWord.Models
' Set the license key
IronWord.License.LicenseKey = "YOUR-KEY"
' Create a new Word document
Dim doc As New WordDocument()
' Load the image to be used as a watermark
Dim image As New IronWord.Models.Image("ironword.png")
' Create an ElementPosition object to set the position
Dim elementPosition As New ElementPosition()
elementPosition.SetXPosition(50)
elementPosition.SetYPosition(50)
' Set the dimensions of the image
image.Width = 50 ' In pixels
image.Height = 50 ' In pixels
' Set the image position using the ElementPosition object
image.Position = elementPosition
' Offset the image from each side by 100 pixels
image.DistanceFromTop = 100
image.DistanceFromBottom = 100
image.DistanceFromLeft = 100
image.DistanceFromRight = 100與上面的程式碼類似,我們將圖像的 x 和 y 座標尺寸設為 50。我們還將影像的每一邊偏移 100px,以在其周圍建立邊距。
結論
如何在 C# 中向 Word 文件添加浮水印:圖 4 - IronWord 許可信息
在這些範例中,我們示範了使用IronWord庫以程式設計方式在 C# 中操作和讀取 Word 文件是多麼簡單。 該程式庫的靈活性和可擴展性使其成為一個有價值的工具,允許開發人員在實際的、真實的範例中使用 IronWord,例如添加浮水印和文字浮水印。 了解 Word 如何與其他應用程式協同工作至關重要,因為它能為開發人員提供更多應對挑戰的解決方案。
IronWord 提供免費試用授權。
常見問題解答
如何使用 C# 程式化地在 Word 文件中加入水印?
使用 IronWord,開發人員可以在 Word 文件中加入圖片水印,方法是建立 Word 文件實例、載入圖片,並使用 AddImage 方法將其插入為水印。
在 Word 文件中使用水印有什麼好處?
水印有助於區分真偽文件,並透過將檔案標示為草稿、機密或定稿來強化文件管理。
IronWord 如何處理 Word 文件中的影像水印?
IronWord 可讓開發人員載入圖片、設定圖片的尺寸和位置,並將圖片加入 Word 文件作為水印。圖片可以使用 WrapText.BehindText 屬性定位在文字之後。
IronWord 兼容哪些版本的 .NET?
IronWord 支援 .NET 8、7、6、.NET Framework、.NET Core 和 Azure,因此具有高度的通用性和跨平台相容性。
使用 IronWord 是否需要授權?
是的,IronWord 需要許可金鑰才能使用完整功能。您可以從 IronWord 網站取得試用金鑰,進行初步評估。
如何使用 IronWord 自訂 Word 文件中影像水印的位置?
IronWord 允許自訂影像水印的位置,方法是設定 x 與 y 座標,並調整維度,讓影像從兩側各偏移特定的像素值。
IronWord 可以用來在 Word 文件中加入文字水印嗎?
雖然這篇文章著重於影像水印,但 IronWord 也可用來新增文字水印,方法是將文字渲染為影像,並與影像水印相似地套用。
文章提供了哪些使用 IronWord 的實例?
文章提供了建立 Word 文件、載入圖片作為水印、調整圖片尺寸、設定圖片在文字後面的位置等範例,以展示 IronWord 的功能。







