Класс Stamp
Contents
[
Hide
]
Класс StampExamples на Java демонстрирует основные рабочие процессы создания штампов, доступные через API фасадов.
Добавление штампа изображения
Используйте этот рабочий процесс, когда файл изображения должен быть размещён в PDF в качестве штампа.
Шаги
- Создайте экземпляр
PdfFileStampи привяжите исходный PDF. - Создайте объект
Stampи привяжите его к файлу изображения. - Установите идентификатор штампа и исходную точку размещения.
- Добавьте штамп в документ.
- Сохраните результат и закройте объект фасада.
Пример на Java
public static void addImageStamp(Path inputFile, Path imageFile, Path outputFile) {
PdfFileStamp pdfStamper = new PdfFileStamp();
try {
pdfStamper.bindPdf(inputFile.toString());
Stamp stamp = new Stamp();
stamp.bindImage(imageFile.toString());
stamp.setStampId(1);
stamp.setOrigin(36, 520);
pdfStamper.addStamp(stamp);
pdfStamper.save(outputFile.toString());
} finally {
pdfStamper.close();
}
}
Добавление страницы PDF в качестве штампа
Используйте этот рабочий процесс, когда содержимое другой страницы PDF должно быть повторно использовано в качестве содержимого штампа.
Шаги
- Создайте экземпляр
PdfFileStampи привяжите целевой PDF. - Создайте объект
Stamp. - Привяжите штамп к определённой странице из другого PDF-файла.
- Установите номер целевой страницы и исходную точку для размещения.
- Добавьте штамп, сохраните результат и закройте объект фасада.
Пример на Java
public static void addPdfPageAsStamp(Path inputFile, Path stampPdf, Path outputFile) {
PdfFileStamp pdfStamper = new PdfFileStamp();
try {
pdfStamper.bindPdf(inputFile.toString());
Stamp stamp = new Stamp();
stamp.bindPdf(stampPdf.toString(), 1);
stamp.setPageNumber(1);
stamp.setOrigin(36, 250);
pdfStamper.addStamp(stamp);
pdfStamper.save(outputFile.toString());
} finally {
pdfStamper.close();
}
}
Добавление текстовой печати с TextState
Используйте этот рабочий процесс, когда печать должна содержать стилизованный текст, а не изображение.
Шаги
- Создайте экземпляр
PdfFileStampи привяжите исходный PDF. - Создайте объект
Stamp. - Привяжите текст
FormattedTextи пользовательскийTextStateк штампу. - Установите исходную точку штампа и его вращение.
- Добавьте штамп, сохраните результат и закройте объект фасада.
Пример на Java
public static void addTextStampWithTextState(Path inputFile, Path outputFile) {
PdfFileStamp pdfStamper = new PdfFileStamp();
try {
pdfStamper.bindPdf(inputFile.toString());
Stamp stamp = new Stamp();
stamp.bindLogo(createTextLogo("Approved by signing workflow"));
stamp.bindTextState(createTextState());
stamp.setOrigin(36, 700);
stamp.setRotation(15.0f);
pdfStamper.addStamp(stamp);
pdfStamper.save(outputFile.toString());
} finally {
pdfStamper.close();
}
}
Добавление штампа на конкретные страницы
Используйте этот рабочий процесс, когда штамп должен появляться только на выбранных страницах, а не во всём документе.
Шаги
- Создайте экземпляр
PdfFileStampи привяжите исходный PDF. - Создайте объект
Stampи привяжите его к файлу изображения. - Установите список целевых страниц, исходную точку и размер изображения.
- Добавьте штамп в документ.
- Сохраните результат и закройте объект фасада.
Пример на Java
public static void addStampToSpecificPages(Path inputFile, Path imageFile, Path outputFile) {
PdfFileStamp pdfStamper = new PdfFileStamp();
try {
pdfStamper.bindPdf(inputFile.toString());
Stamp stamp = new Stamp();
stamp.bindImage(imageFile.toString());
stamp.setPages(new int[] {1});
stamp.setOrigin(400, 40);
stamp.setImageSize(120, 60);
pdfStamper.addStamp(stamp);
pdfStamper.save(outputFile.toString());
} finally {
pdfStamper.close();
}
}
Добавление штампа фонового изображения
Используйте этот процесс, когда штамп должен отображаться за содержимым страницы с контролируемой непрозрачностью и поворотом.
Шаги
- Создайте экземпляр
PdfFileStampи привяжите исходный PDF. - Создайте объект
Stampи привяжите его к файлу изображения. - Отметьте штамп как фон.
- Настройте непрозрачность, качество, поворот, размер и исходную точку.
- Добавьте штамп, сохраните результат и закройте объект фасада.
Пример на Java
public static void addBackgroundImageStamp(Path inputFile, Path imageFile, Path outputFile) {
PdfFileStamp pdfStamper = new PdfFileStamp();
try {
pdfStamper.bindPdf(inputFile.toString());
Stamp stamp = new Stamp();
stamp.bindImage(imageFile.toString());
stamp.setBackground(true);
stamp.setOpacity(0.35f);
stamp.setQuality(90);
stamp.setRotation(45.0f);
stamp.setImageSize(160, 80);
stamp.setOrigin(200, 300);
pdfStamper.addStamp(stamp);
pdfStamper.save(outputFile.toString());
} finally {
pdfStamper.close();
}
}