
Metadane dokumentu zawierają podstawowe informacje o dokumencie w postaci właściwości, takich jak tytuł, autor, temat, słowa kluczowe itp. Extensible Metadata Platform (XMP) to oparty na języku XML standard przechowywania metadanych dokumentu jako klucz/wartość para. Możemy programowo dodawać, edytować lub czytać informacje o dokumencie i metadane XMP dokumentu PDF. W tym artykule dowiemy się, jak edytować właściwości i metadane pliku PDF za pomocą języka Java.
W tym artykule zostaną omówione następujące tematy:
- Interfejs API Java do edycji właściwości i metadanych plików PDF
- Edytuj właściwości pliku PDF przy użyciu języka Java
- Przeczytaj właściwości PDF przy użyciu Java
- Pobierz metadane XMP z pliku PDF
- Ustaw metadane XMP w pliku PDF
- Dostosuj przestrzeń nazw metadanych XMP w pliku PDF
Interfejs API Java do edycji właściwości i metadanych plików PDF
Aby edytować właściwości i metadane PDF, będziemy używać Aspose.PDF for Java API. Pozwala nam generować, modyfikować, konwertować, renderować, zabezpieczać i drukować obsługiwane dokumenty bez użycia programu Adobe Acrobat. Pobierz plik JAR interfejsu API lub dodaj następującą konfigurację pom.xml w aplikacji Java opartej na Maven.
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-pdf</artifactId>
<version>22.3</version>
</dependency>
Edytuj właściwości pliku PDF przy użyciu języka Java
Informacje o dokumencie PDF możemy edytować za pomocą klasy PdfFileInfo, która reprezentuje metainformacje o dokumencie PDF. Możemy ustawić różne predefiniowane właściwości, wykonując poniższe kroki:
- Najpierw załaduj dokument PDF przy użyciu klasy PdfFileInfo.
- Ustaw różne właściwości, takie jak autor, twórca, słowa kluczowe, temat, tytuł itp.
- Na koniec zapisz plik PDF, korzystając z metody saveNewInfo(), podając jako argument ścieżkę pliku wyjściowego.
Poniższy przykładowy kod pokazuje, jak edytować metawłaściwości pliku PDF przy użyciu języka Java.
// Ten przykład kodu demonstruje, jak ustawić podstawowe informacje w dokumencie PDF.
// Dokument open source
PdfFileInfo fileInfo = new PdfFileInfo("D:\\Files\\PDF\\sample.pdf");
// Ustaw informacje PDF
fileInfo.setAuthor("Aspose");
fileInfo.setTitle("Editing Metadata");
fileInfo.setKeywords("Aspose.Pdf, DOM, API");
fileInfo.setSubject("PDF Information");
fileInfo.setCreator("Aspose");
// Zapisz zaktualizowany plik
fileInfo.saveNewInfo("D:\\Files\\PDF\\Updated_Info_output.pdf");

Edytuj meta właściwości pliku PDF w Javie.
Przeczytaj właściwości PDF przy użyciu Java
Podstawowe informacje o dokumencie PDF możemy odczytać, wykonując poniższe czynności:
- Najpierw załaduj dokument PDF przy użyciu klasy PdfFileInfo.
- Na koniec pokaż informacje o dokumencie, odczytując wartości metawłaściwości.
Poniższy przykładowy kod pokazuje, jak uzyskać metawłaściwości pliku PDF przy użyciu języka Java.
// Ten przykład kodu demonstruje, jak uzyskać podstawowe informacje z dokumentu PDF.
// Otwórz dokument
PdfFileInfo fileInfo = new PdfFileInfo("D:\\Files\\PDF\\Updated_Info_output.pdf");
// Uzyskaj informacje w formacie PDF
System.out.println("Subject :" + fileInfo.getSubject());
System.out.println("Title :" + fileInfo.getTitle());
System.out.println("Keywords :" + fileInfo.getKeywords());
System.out.println("Creator :" + fileInfo.getCreator());
System.out.println("Creation Date :" + fileInfo.getCreationDate());
System.out.println("Modification Date :" + fileInfo.getModDate());
// Sprawdź, czy jest to prawidłowy plik PDF i czy jest on również zaszyfrowany
System.out.println("Is Valid PDF :" + fileInfo.isPdfFile());
// w przypadku, gdy plik jest zaszyfrowany, należy podać hasło otwierające plik
// jako drugi argument konstruktora PdfFileInfo
System.out.println("Is Encrypted :" + fileInfo.isEncrypted());
Subject :PDF Information
Title :Editing Metadata
Keywords :Aspose.Pdf, DOM, API
Creator :Aspose
Creation Date :D:20170612160123-04'00'
Modification Date :D:20220405214422+05'00'
Is Valid PDF :true
Is Encrypted :false
Uzyskaj metadane XMP pliku PDF w Javie
Metadane XMP dokumentu PDF możemy odczytać, wykonując poniższe kroki:
- Najpierw załaduj dokument PDF przy użyciu klasy Document.
- Na koniec odczytaj metadane za pomocą metody getItem() klasy Metadata i wyodrębnij informacje.
Poniższy przykładowy kod pokazuje, jak uzyskać metadane XMP z pliku PDF przy użyciu języka Java.
// Ten przykład kodu demonstruje, jak uzyskać metadane XMP z dokumentu PDF.
// Otwórz dokument
Document pdfDocument = new Document("D:\\Files\\PDF\\SetXMPMetadata.pdf");
// Zdobądź właściwości
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:CreateDate : 2022-04-05T10:05:24.4
xmp:Nickname : Nickname
xmp:CustomProperty : Custom Value
Ustaw metadane XMP w pliku PDF w Javie
Możemy ustawić metadane XMP w pliku PDF, wykonując kroki podane poniżej:
- Najpierw załaduj dokument PDF przy użyciu klasy Document.
- Następnie ustaw wartości metadanych za pomocą metody setItem() klasy Metadata.
- Na koniec zapisz plik PDF, korzystając z metody Document.save(), podając jako argument ścieżkę pliku wyjściowego.
Poniższy przykładowy kod pokazuje, jak ustawić metadane XMP pliku PDF przy użyciu języka Java.
// Ten przykład kodu demonstruje, jak ustawić metadane XMP dokumentu PDF.
// Otwórz dokument
Document pdfDocument = new Document("D:\\Files\\PDF\\sample.pdf");
// Ustaw właściwości
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"));
// Zapisz dokument
pdfDocument.save("D:\\Files\\PDF\\SetXMPMetadata.pdf");
Dostosuj przestrzeń nazw metadanych XMP w pliku PDF
Możemy ustawić dostosowany URI przestrzeni nazw zamiast zdefiniowanych specyfikacji XMP w pliku PDF. W tym celu API udostępnia metodę registerNamespaceUri w klasie Metadata. Możemy utworzyć nową przestrzeń nazw metadanych z prefiksem, wykonując kroki podane poniżej:
- Najpierw załaduj dokument PDF przy użyciu klasy Document.
- Następnie wywołaj metodę RegisterNamespaceUri() z prefiksem i identyfikatorem URI przestrzeni nazw jako argumentami.
- Następnie ustaw wartości metadanych za pomocą metody setItem().
- Na koniec zapisz plik PDF za pomocą metody Document.Save(), podając jako argument ścieżkę pliku wyjściowego.
Poniższy przykładowy kod pokazuje, jak ustawić niestandardową przestrzeń nazw metadanych w pliku PDF przy użyciu języka Java.
// Ten przykład kodu demonstruje, jak ustawić dostosowane metadane XMP dokumentu PDF.
// Otwórz dokument
Document pdfDocument = new Document("D:\\Files\\PDF\\sample.pdf");
// Ustaw dostosowane właściwości
pdfDocument.getMetadata().registerNamespaceUri("myown", "http:// myown.xyz.com/xap/1.0/");
pdfDocument.getMetadata().set_Item("myown:ModifyDate", new XmpValue(new java.util.Date()));
pdfDocument.getMetadata().set_Item("myown:CreateDate", new XmpValue(new java.util.Date()));
pdfDocument.getMetadata().set_Item("myown:DeveloperName", new XmpValue("Developer Name"));
pdfDocument.getMetadata().set_Item("myown:MyProperty", new XmpValue("My Custom Value"));
// Zapisz dokument
pdfDocument.save("D:\\Files\\PDF\\CustomizedXMPMetadata.pdf");
Możemy odczytać dostosowane właściwości metadanych XMP, wykonując kroki wymienione wcześniej.
NamespaceUri: http:// myown.xyz.com/xap/1.0/
myown:ModifyDate: 2022-04-05T10:18:45.9
myown:CreateDate: 2022-04-05T10:18:45.9
myown:DeveloperName: Developer Name
myown:MyProperty: My Custom Value
Uzyskaj bezpłatną licencję API
Możesz wypróbować interfejs API bez ograniczeń ewaluacyjnych, prosząc o bezpłatną licencję tymczasową.
Wniosek
W tym artykule dowiedzieliśmy się, jak:
- dodawać/edytować podstawowe informacje o dokumencie PDF przy użyciu języka Java;
- ustaw/pobierz metadane XMP w pliku PDF przy użyciu Java;
- ustaw niestandardowy identyfikator URI przestrzeni nazw metadanych z prefiksem.
Poza tym możesz dowiedzieć się więcej o Aspose.PDF dla API Java, korzystając z dokumentacji. W przypadku jakichkolwiek niejasności prosimy o kontakt na forum.