Добавление изображений штампов в PDF программно
Добавление изображения штампа в PDF файл
Вы можете использовать класс ImageStamp для добавления изображения в качестве штампа в PDF документ. Класс ImageStamp предоставляет методы для задания высоты, ширины и непрозрачности и т.д.
Чтобы добавить изображение штампа:
-
Создайте объект Document и объект ImageStamp, используя необходимые свойства.
-
Вызовите метод addStamp(..) класса Page для добавления штампа в PDF.
Следующий пример кода показывает, как добавить изображение штампа в PDF файл.
public static void AddImageStampInPDFFile() {
// Открываем документ
Document pdfDocument = new Document(_dataDir + "AddImageStamp.pdf");
// Создаем изображение штампа
ImageStamp imageStamp = new ImageStamp(_dataDir + "aspose-logo.png");
imageStamp.setBackground(true);
imageStamp.setXIndent(100);
imageStamp.setYIndent(100);
imageStamp.setHeight(48);
imageStamp.setWidth(225);
imageStamp.setRotate(Rotation.on270);
imageStamp.setOpacity(0.5);
// Добавляем штамп на конкретную страницу
pdfDocument.getPages().get_Item(1).addStamp(imageStamp);
// Сохраняем выводной документ
pdfDocument.save(_dataDir + "AddImageStamp_out.pdf");
}
Контроль качества изображения при добавлении штампа
Класс ImageStamp позволяет добавить изображение в качестве штампа в PDF-документ. Он также позволяет контролировать качество изображения при добавлении его в качестве водяного знака в PDF-файл. Для этого в класс ImageStamp был добавлен метод с именем setQuality(…). Аналогичный метод также можно найти в классе Stamp пакета com.aspose.pdf.facades.
Следующий фрагмент кода показывает, как контролировать качество изображения при добавлении его в качестве штампа в PDF-файл.
public static void ControlImageQualityWhenAddingStamp() {
// Открыть документ
Document pdfDocument = new Document(_dataDir + "AddImageStamp.pdf");
// Создать штамп изображения
ImageStamp imageStamp = new ImageStamp(_dataDir + "aspose-logo.png");
imageStamp.setQuality(10);
pdfDocument.getPages().get_Item(1).addStamp(imageStamp);
pdfDocument.save(_dataDir + "ControlImageQuality_out.pdf");
}
Изображение Штамп как Фон в Плавающем Блоке
Aspose.PDF API позволяет добавить изображение штамп как фон в плавающем блоке. Свойство BackgroundImage класса FloatingBox может быть использовано для установки фонового изображения штампа для плавающего блока, как показано в следующем примере кода.
public static void ImageStampAsBackgroundInFloatingBox() {
// Создать объект Document
Document doc = new Document();
// Добавить страницу в PDF документ
Page page = doc.getPages().add();
// Создать объект FloatingBox
FloatingBox aBox = new FloatingBox(200, 100);
// Установить левую позицию для FloatingBox
aBox.setLeft(40);
// Установить верхнюю позицию для FloatingBox
aBox.setTop(80);
// Установить горизонтальное выравнивание для FloatingBox
aBox.setHorizontalAlignment(HorizontalAlignment.Center);
// Добавить текстовый фрагмент в коллекцию абзацев FloatingBox
aBox.getParagraphs().add(new TextFragment("основной текст"));
// Установить границу для FloatingBox
aBox.setBorder(new BorderInfo(BorderSide.All, Color.getRed()));
// Добавить фоновое изображение
Image img = new Image();
img.setFile(_dataDir + "aspose-logo.png");
aBox.setBackgroundImage(img);
// Установить фоновый цвет для FloatingBox
aBox.setBackgroundColor(Color.getYellow());
// Добавить FloatingBox в коллекцию абзацев объекта страницы
page.getParagraphs().add(aBox);
// Сохранить PDF документ
doc.save(_dataDir + "AddImageStampAsBackgroundInFloatingBox_out.pdf");
}
}