39class POPPLER_CPP_EXPORT
document :
public poppler::noncopyable
72 bool is_locked()
const;
73 bool unlock(
const std::string &owner_password,
const std::string &user_password);
75 page_mode_enum page_mode()
const;
76 page_layout_enum page_layout()
const;
77 void get_pdf_version(
int *major,
int *minor)
const;
78 std::vector<std::string> info_keys()
const;
80 ustring info_key(
const std::string &key)
const;
81 bool set_info_key(
const std::string &key,
const ustring &val);
83 [[deprecated]] time_type info_date(
const std::string &key)
const;
84 [[deprecated]]
bool set_info_date(
const std::string &key, time_type val);
85 time_t info_date_t(
const std::string &key)
const;
86 bool set_info_date_t(
const std::string &key, time_t val);
88 ustring get_title()
const;
89 bool set_title(
const ustring &title);
90 ustring get_author()
const;
91 bool set_author(
const ustring &author);
92 ustring get_subject()
const;
93 bool set_subject(
const ustring &subject);
94 ustring get_keywords()
const;
95 bool set_keywords(
const ustring &keywords);
96 ustring get_creator()
const;
97 bool set_creator(
const ustring &creator);
98 ustring get_producer()
const;
99 bool set_producer(
const ustring &producer);
100 [[deprecated]] time_type get_creation_date()
const;
101 [[deprecated]]
bool set_creation_date(time_type creation_date);
102 time_t get_creation_date_t()
const;
103 bool set_creation_date_t(time_t creation_date);
104 [[deprecated]] time_type get_modification_date()
const;
105 [[deprecated]]
bool set_modification_date(time_type mod_date);
106 time_t get_modification_date_t()
const;
107 bool set_modification_date_t(time_t mod_date);
111 bool is_encrypted()
const;
112 bool is_linearized()
const;
113 form_type form_type()
const;
114 bool has_javascript()
const;
116 bool has_permission(permission_enum which)
const;
117 ustring metadata()
const;
118 bool get_pdf_id(std::string *permanent_id, std::string *update_id)
const;
121 page *create_page(
const ustring &label)
const;
122 page *create_page(
int index)
const;
124 std::vector<font_info> fonts()
const;
125 font_iterator *create_font_iterator(
int start_page = 0)
const;
127 toc *create_toc()
const;
129 bool has_embedded_files()
const;
130 std::vector<embedded_file *> embedded_files()
const;
134 std::map<std::string, destination> create_destination_map()
const;
136 bool save(
const std::string &file_name)
const;
137 bool save_a_copy(
const std::string &file_name)
const;
139 static document *load_from_file(
const std::string &file_name,
const std::string &owner_password = std::string(),
const std::string &user_password = std::string());
140 static document *load_from_data(byte_array *file_data,
const std::string &owner_password = std::string(),
const std::string &user_password = std::string());
141 static document *load_from_raw_data(
const char *file_data,
int file_data_length,
const std::string &owner_password = std::string(),
const std::string &user_password = std::string());
144 explicit document(document_private &dd);
147 friend class document_private;