Водяной знак — это наложенное изображение или текст, используемый для отображения в документах для различных целей. Иногда вам может потребоваться заменить или отредактировать вставленный водяной знак новым текстом или изображением. В этой статье основное внимание будет уделено тому, как найти и заменить текст или изображения водяных знаков с помощью REST API.

В этой статье должны быть раскрыты следующие темы:

Водяной знак REST API и пакет SDK для .NET

Семейство облачных продуктов GroupDocs.Watermark

Для поиска и замены водяных знаков я буду использовать .NET SDK GroupDocs.Watermark Cloud API. Он позволяет программно добавлять, удалять, искать и заменять водяные знаки с изображений и документов поддерживаемых форматов. В настоящее время он также предоставляет Java SDK для облачного API.

Пакет SDK GroupDocs.Watermark Cloud для .NET можно установить в проект Visual Studio из диспетчера пакетов NuGet, как показано ниже:

Найти и заменить водяной знак с помощью Rest API

Вы также можете установить пакет NuGet с помощью следующей команды в консоли диспетчера пакетов:

Install-Package GroupDocs.Watermark-Cloud

Прежде чем приступать к выполнению шагов и доступных примеров кода, получите свой идентификатор клиента и секрет клиента на панели инструментов. Добавьте свой идентификатор и секрет в код, как показано ниже:

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, содержащий водяной знак, в Облако одним из следующих способов:

  • Использование панели мониторинга
  • Загрузите файл с помощью Upload File API из браузера.
  • Загрузите программно, используя приведенный ниже пример кода:
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 будет загружен в облачное хранилище и будет доступен в разделе файлов вашей панели управления.

Найти и заменить текстовый водяной знак

В следующем фрагменте кода показано, как найти и заменить текстовый водяной знак в загруженном PDF-файле с помощью REST API.

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

Заключение

В заключение вы узнали, как искать и заменять текстовый или графический водяной знак в документе PDF в облаке с помощью REST API .NET Watermark с использованием C#. Кроме того, вы также узнали, как программно загружать файлы в облако, а затем загружать их из облака. Кроме того, вы можете узнать о различных других полезных функциях GroupDocs.Watermark Cloud API из документации. В случае возникновения неясностей обращайтесь в поддержку.

Смотрите также