PoDoFo 1.1.0
Loading...
Searching...
No Matches
PdfMetadataStore.h
1
7#ifndef PDF_METADATA_STORE
8#define PDF_METADATA_STORE
9
10#include "PdfString.h"
11#include "PdfDate.h"
12
13namespace PoDoFo
14{
15 class PODOFO_API PdfMetadataStore final
16 {
17 public:
18 PdfMetadataStore();
19 public:
20 nullable<PdfString> Title;
21 nullable<PdfString> Author;
22 nullable<PdfString> Subject;
23 nullable<PdfString> Keywords;
24 nullable<PdfString> Creator;
25 nullable<PdfString> Producer;
26 nullable<PdfDate> CreationDate;
27 nullable<PdfDate> ModDate;
28 nullable<bool> Trapped;
29 PdfVersion Version;
30 PdfALevel PdfaLevel;
31 PdfUALevel PdfuaLevel;
32 public:
33 const PdfString* GetMetadata(PdfAdditionalMetadata prop) const;
34 void SetMetadata(PdfAdditionalMetadata prop, const PdfString* value);
35 void Reset();
36 public:
37 const std::unordered_map<PdfAdditionalMetadata, PdfString>* GetAdditionalMetadata() const { return m_additionalMetadata.get(); }
38 private:
39 std::unique_ptr<std::unordered_map<PdfAdditionalMetadata, PdfString>> m_additionalMetadata;
40 };
41}
42
43namespace std
44{
45 template<>
46 struct hash<PoDoFo::PdfAdditionalMetadata>
47 {
48 size_t operator()(PoDoFo::PdfAdditionalMetadata prop) const noexcept
49 {
50 return (size_t)prop;
51 }
52 };
53}
54
55#endif // PDF_METADATA_STORE
SPDX-FileCopyrightText: (C) 2022 Francesco Pretto ceztko@gmail.com SPDX-License-Identifier: LGPL-2....
Definition basetypes.h:16
PdfVersion
Enum to identify different versions of the PDF file format.
Definition PdfDeclarations.h:71