Работа с метаданными PDF файла
Получение информации о PDF файле
Чтобы получить специфическую для файла информацию о PDF файле, сначала получите объект DocumentInfo с помощью класса Document getInfo(). Как только объект DocumentInfo получен, вы можете получить значения отдельных свойств.
Следующий фрагмент кода показывает, как установить информацию о PDF файле.
public class ExampleMetadata {
private static String _dataDir = "/home/aspose/pdf-examples/Samples/Metadata/";
public static void GetPDFFileInformation() {
// Создать новый PDF документ
Document pdfDocument = new Document(_dataDir + "sample.pdf");
// Получить информацию о документе
DocumentInfo docInfo = pdfDocument.getInfo();
// Показать информацию о документе
System.out.println("Автор: " + docInfo.getAuthor());
System.out.println("Дата создания: " + docInfo.getCreationDate());
System.out.println("Ключевые слова: " + docInfo.getKeywords());
System.out.println("Дата изменения: " + docInfo.getModDate());
System.out.println("Тема: " + docInfo.getSubject());
System.out.println("Заголовок: " + docInfo.getTitle());
}
Установка информации о файле PDF
Aspose.PDF for Java позволяет устанавливать специфичную для файла информацию для PDF, такую как автор, дата создания, тема и заголовок.
Чтобы установить эту информацию:
- Создайте объект DocumentInfo.
- Установите значения свойств.
- Сохраните обновлённый документ, используя метод save() класса Document.
Следующий фрагмент кода показывает, как установить информацию о файле PDF.
public static void SetPDFFileInformation() {
// Открыть документ
Document pdfDocument = new Document(_dataDir + "sample.pdf");
// Указать информацию о документе
DocumentInfo docInfo = new DocumentInfo(pdfDocument);
docInfo.setAuthor("Aspose");
docInfo.setCreationDate(new java.util.Date());
docInfo.setKeywords("Aspose.Pdf, DOM, API");
docInfo.setModDate(new java.util.Date());
docInfo.setSubject("PDF Information");
docInfo.setTitle("Setting PDF Document Information");
// Сохранить выходной документ
pdfDocument.save(_dataDir + "SetFileInfo_out.pdf");
}
Получение метаданных XMP из PDF-файла
Aspose.PDF для Java позволяет получить доступ к метаданным XMP PDF-файла.
Чтобы получить метаданные PDF-файла,
- Создайте объект Document и откройте входной PDF-файл.
- Используйте свойство getMetadata() для получения метаданных.
Следующий фрагмент кода показывает, как получить метаданные из PDF-файла.
public static void GetXMPMetadata() {
// Открыть документ
Document pdfDocument = new Document(_dataDir + "SetXMPMetadata.pdf");
System.out.println("xmp:CreateDate: " + pdfDocument.getMetadata().get_Item("xmp:CreateDate"));
System.out.println("xmp:Nickname: " + pdfDocument.getMetadata().get_Item("xmp:Nickname"));
System.out.println("xmp:CustomProperty: " + pdfDocument.getMetadata().get_Item("xmp:CustomProperty"));
}
Установка метаданных XMP в PDF-файле
Aspose.PDF для Java позволяет устанавливать метаданные в PDF-файл. Чтобы установить метаданные:
- Создайте объект Document.
- Установите значения метаданных, используя свойство getMetadata().
- Сохраните обновленный документ, используя метод save() объекта Document.
Следующий фрагмент кода показывает, как установить метаданные в PDF-файле.
public static void SetXMPMetadata() {
// Открыть документ
Document pdfDocument = new Document(_dataDir + "sample.pdf");
// Установить свойства
pdfDocument.getMetadata().set_Item("xmp:CreateDate", new XmpValue(new java.util.Date()));
pdfDocument.getMetadata().set_Item("xmp:Nickname", new XmpValue("Nickname"));
pdfDocument.getMetadata().set_Item("xmp:CustomProperty", new XmpValue("Custom Value"));
// Сохранить документ
pdfDocument.save(_dataDir + "SetXMPMetadata.pdf");
}
Вставка метаданных с префиксом
Некоторым разработчикам необходимо создать новое пространство имен метаданных с префиксом. В следующем фрагменте кода показано, как вставить метаданные с префиксом.
public static void InsertMetadataWithPrefix() {
// Открыть документ
Document pdfDocument = new Document(_dataDir + "SetXMPMetadata.pdf");
pdfDocument.getMetadata().registerNamespaceUri("adc", "http://tempuri.org/adc/1.0");
pdfDocument.getMetadata().set_Item("adc:format", new XmpValue("application/pdf"));
pdfDocument.getMetadata().set_Item("adc:title", new XmpValue("alternative title"));
// Сохранить документ
pdfDocument.save(_dataDir + "SetPrefixMetadata_out.pdf");
}
}