水印是疊加的圖像或文本,用於出於各種目的顯示在文檔中。有時,您可能需要用新的文本或圖像替換或編輯插入的水印。本文將重點介紹如何使用 REST API 查找和替換水印文本或圖像。

本文應涵蓋以下主題:

水印 REST API 和 .NET SDK

GroupDocs.Watermark 雲產品系列

對於搜索和替換水印,我將使用 GroupDocs.Watermark Cloud 的 .NET SDK API。它允許您以編程方式從支持格式的圖像和文檔中添加、刪除、搜索和替換水印。目前,它還為 Cloud API 提供了 Java SDK。

GroupDocs.Watermark Cloud SDK for .NET 可以從 NuGet 包管理器安裝到您的 Visual Studio 項目,如下所示:

使用 Rest API 查找和替換水印

您還可以在包管理器控制台中使用以下命令安裝 NuGet 包:

Install-Package GroupDocs.Watermark-Cloud

在開始執行步驟和可用代碼示例之前,請從 dashboard 獲取您的 Client ID 和 Client Secret。在代碼中添加您的 ID 和 Secret,如下所示:

string MyClientId = "YOUR-CLIENT-ID";
string MyClientSecret = "YOUR-CLIENT-SECRET";

var config = new Configuration(MyClientId, MyClientSecret);
var watermarkApi = new WatermarkApi(config);
var fileApi = new FileApi(config);
var storageApi = new StorageApi(config);

使用 REST API 查找和替換文本水印

您可以按照以下簡單步驟從 PDF 文檔中查找和替換水印文本:

上傳PDF文檔

首先,將帶有水印的PDF文檔通過以下任一方式上傳至雲端:

var path = @"C:\Files\";
string MyStorage = null;

var file = Directory.GetFiles(path, "Sample.pdf", SearchOption.AllDirectories).FirstOrDefault();
if (file.Length != 0)
{
	var relativeFilePath = file.Replace(path, string.Empty).Trim(Path.DirectorySeparatorChar);

	var fileStream = File.Open(file, FileMode.Open);
	fileApi.UploadFile(new UploadFileRequest(relativeFilePath, fileStream, MyStorage));
	fileStream.Close();
}

結果,PDF 文件將上傳到 Cloud Storage,並可在儀表板的 文件部分 中找到。

查找和替換文本水印

以下代碼片段顯示瞭如何使用 REST API 從上傳的 PDF 文件中查找和替換文本水印。

public static string FindAndReplaceTextWatermark(WatermarkApi watermarkApi)
{
    var options = new ReplaceOptions
    {
        FileInfo = new GroupDocs.Watermark.Cloud.Sdk.Model.FileInfo
        {
            FilePath = "Sample.pdf"
        },
        TextSearchCriteria = new TextSearchCriteria
        {
            SearchText = "Watermark Text"
        },
        ReplaceTextOptions = new ReplaceTextOptions
        {
            Text = "Confidential",
        }
    };
    var request = new ReplaceRequest(options);
    var result = watermarkApi.Replace(request);

    return result.Path;
}
使用 REST API 查找和替換文本水印

您還可以使用以下代碼示例為水印文本設置字體、文本大小、前景色和背景色:

ReplaceTextOptions = new ReplaceTextOptions
{
    Text = "Confidential",
    FontFamily = "Arial",
    Size = 20d,
    ForegroundColor = new Color { A = 0, R = 0, G = 100, B = 0 }
}

下載更新文件

以上代碼示例將帶有新水印文本或圖像的 PDF 文件保存在雲端。您可以使用以下代碼示例下載它:

var downloadRequest = new DownloadFileRequest(file, MyStorage);

Stream downloadResponse = fileApi.DownloadFile(downloadRequest);
using (var fileStream = System.IO.File.Create("C:\\Files\\DownloadedFile.pdf"))
{
	downloadResponse.Seek(0, SeekOrigin.Begin);
	downloadResponse.CopyTo(fileStream);
}

使用 REST API 查找和替換水印圖像

下面給出的簡單代碼示例演示瞭如何使用 REST API 查找和替換水印圖像。請按照前面提到的步驟上傳和下載文件。

public static string FindAndReplaceImageWatermark(WatermarkApi watermarkApi)
{
    var options = new ReplaceOptions
    {
        FileInfo = new GroupDocs.Watermark.Cloud.Sdk.Model.FileInfo
        {
            FilePath = "Sample.pdf"
        },
        ImageSearchCriteria = new ImageSearchCriteria
        {
            ImageFileInfo = new GroupDocs.Watermark.Cloud.Sdk.Model.FileInfo
            {
                FilePath = "sample_watermark.png"
            }
        },
        ReplaceImageOptions = new ReplaceImageOptions
        {
            Image = new GroupDocs.Watermark.Cloud.Sdk.Model.FileInfo
            {
                FilePath = "Logo.png"
            }
        }
    };
    var request = new ReplaceRequest(options);
    var result = watermarkApi.Replace(request);

    return result.Path;
}
使用 REST API 查找和替換水印圖像

結論

總之,您已經了解瞭如何使用 C# 使用 .NET Watermark REST API 從雲上的 PDF 文檔中搜索和替換文本或圖像水印。此外,您還學習瞭如何以編程方式將文件上傳到雲端,然後從雲端下載。此外,您可以從 文檔 中了解 GroupDocs.Watermark Cloud API 的各種其他有用功能。如有任何疑問,請隨時聯繫 支持

也可以看看