Робота з водяними знаками
Робота з водяними знаками
У цьому посібнику показано, як додавати, налаштовувати та видаляти водяні знаки документів у Aspose.Words FOSS для .NET використовуючи Watermark клас, доступний через Document.Watermark. Водяний знак може бути текстовим або зображенням, і лише один водяний знак активний у документі в будь-який момент — встановлення нового замінює попередній.
Додавання текстового водяного знаку
Watermark.SetText(text) додає текстовий водяний знак із форматуванням за замовчуванням. Перевантаження SetText(text, options) приймає екземпляр TextWatermarkOptions для керування його виглядом: FontFamily, Color і FontSize контролюють форматування тексту, IsSemitrasparent перемикає напівпрозорий ефект, характерний для водяних знаків, а Layout (значення WatermarkLayout — Horizontal або Diagonal) контролює його орієнтацію щодо сторінки.
Додавання зображення водяного знака
Watermark.SetImage(image) додає зображення водяного знака з вже завантаженого Image. Перевантаження, які також приймають екземпляр ImageWatermarkOptions — SetImage(image, options), SetImage(imagePath, options) (завантаження за шляхом до файлу) і SetImage(imageStream, options) (завантаження з Stream) — дозволяють керувати Scale (коефіцієнтом масштабування зображення, вираженим у вигляді дробу) і IsWashout (ефектом вимивання, який запобігає тому, щоб зображення водяного знака переважало над вмістом сторінки).
Перевірка та видалення водяного знака
Watermark.Type повідомляє тип поточного водяного знака як значення WatermarkType — Text, Image або None, якщо водяний знак не встановлено. Викличте Watermark.Remove(), щоб видалити поточний водяний знак з документа.
Поради та кращі практики
- Перевірте
Watermark.Typeперед тим, як припускати, що водяний знак існує — вона повертаєWatermarkType.Noneу документі, у якому ніколи не встановлювали водяний знак. - Встановлення нового водяного знака за допомогою
SetText()абоSetImage()замінює будь-який існуючий водяний знак; немає можливості мати більше одного активного водяного знака одночасно. - Використовуйте
WatermarkLayout.Diagonal, щоб відтворити діагональну орієнтацію водяного знака за замовчуванням у Word, абоHorizontalдля водяного знака, який розташований паралельно краям сторінки. - Надавайте перевагу перевантаженням
ImageWatermarkOptions/TextWatermarkOptionsнад простими викликамиSetImage(image)/SetText(text), коли потрібно керувати прозорістю, масштабом або шрифтом — параметричні перевантаження використовують значення за замовчуванням Word.
Поширені проблеми
| Проблема | Причина | Виправлення |
|---|---|---|
| Новий водяний знак не відображається поряд зі старим | SetText()/SetImage() замінює існуючий водяний знак замість додавання другого | Викликайте Remove() спочатку лише якщо потрібно очистити його перед встановленням іншого типу; інакше заміна відбувається автоматично |
| Зображення-водяний знак переважає вміст сторінки | ImageWatermarkOptions.IsWashout залишився вимкненим | Встановіть IsWashout у значення true під час створення ImageWatermarkOptions |
| Шрифт текстового водяного знака не відповідає задуманому типу | TextWatermarkOptions.FontFamily не було встановлено (або було написано з помилкою) | Встановіть FontFamily у назву шрифту, доступну в середовищі рендерингу |
FAQ
Як перевірити, чи документ вже має водяний знак?
Прочитайте Document.Watermark.Type; він повертає WatermarkType.Text, WatermarkType.Image або WatermarkType.None.
Як видалити водяний знак?
Викличте Document.Watermark.Remove().
Чи можу я керувати прозорістю водяного знака?
Так – для текстових водяних знаків, встановіть TextWatermarkOptions.IsSemitrasparent; для зображень-водяних знаків, встановіть ImageWatermarkOptions.IsWashout.
Як завантажити водяний знак-зображення з диска замість Image у пам’яті?
Використайте перевантаження Watermark.SetImage(imagePath, options), передаючи шлях до файлу як рядок разом з екземпляром ImageWatermarkOptions.
API Reference Підсумок
| Клас / Перелічення | Опис |
|---|---|
Watermark | Водяний знак документу, за допомогою Document.Watermark; SetText(), SetImage(), Remove(), Type |
WatermarkType | Перелічення, що ідентифікує поточний тип водяного знака: Text, Image, None |
WatermarkLayout | Перелічення для орієнтації водяного знаку: Horizontal, Diagonal |
TextWatermarkOptions | Форматування текстового водяного знаку: FontFamily, Color, FontSize, IsSemitrasparent, Layout |
ImageWatermarkOptions | Параметри зображення водяного знаку: Scale, IsWashout |