Работа с метаданными 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");
    }
}