PDFTool 7.0
PtlPDFDocument.h
1
2// PtlPDFDocument.h
3// Copyright (C) 2013-2020 Antenna House,Inc.
4// All rights reserved.
6#ifndef PDFTK_PTLPDFDOCUMENT_H_
7#define PDFTK_PTLPDFDOCUMENT_H_
8
9#include "PtlOutline.h"
10#include "PtlParamString.h"
11#include "PtlFormFieldValues.h"
12#include "PtlSearchTextResults.h"
13
14namespace PdfTk {
15
16class PtlParamStream;
17class PtlEncrypt;
18class PtlDocProperty;
19class PtlPages;
27
31
32class PDFTK_API PtlPDFDocument
33{
34public:
43
47 enum PDFA_TYPE {
48 PDFA_1A = 101,
49 PDFA_1B = 102,
50 PDFA_2A = 201,
51 PDFA_2B = 202,
52 PDFA_2U = 221,
53 PDFA_3A = 301,
54 PDFA_3B = 302,
55 PDFA_3U = 321,
57 };
58
59private:
60 int m_documentHandle;
61public:
62 int getHandle() const;
63
64public:
71
79
84
85public:
92
93public:
99 void setPassword(const PtlParamString& password);
100
108 void setPKCS12(PtlParamStream& inPKCS12);
109
115 void load(PtlParamStream& inParam);
116
117public:
126
132 void save(PtlParamStream& outParam);
133
134public:
140 bool isEncrypted() const;
141
148
170 bool hasOwnerAuthority() const;
171
178
191 void setEncrypt(const PtlEncrypt& encrypt);
192
198
204 bool isSignatured() const;
205
211 bool isPDFA() const;
212
219
225 bool isPDFX() const;
226
227public:
234
235public:
240 int getPageCount() const;
241
248
249public:
255 bool hasOutlines() const;
256
266
267public:
276 bool hasEmbeddedFiles() const;
277
284
285public:
291 void appendWaterMark(const PtlParamWaterMark& waterMark);
292
299
300public:
309 void setRestriction(const PtlParamRestriction& restriction);
310
311public:
318 bool optimize(const PtlParamOptimize& paramOptimize);
319
329
330public:
339
348
357
358public:
368
377
386
395
402 void resetForm();
403
404
411 void setExportEmptyDataFlg(bool flg);
412
413public:
432 int searchTextAndDoProcess(const PtlParamSearchText& paramSearchText);
433
446};
447
448} // namespace PdfTk
449
450#endif // PDFTK_PTLPDFDOCUMENT_H_
451
PDFの文書プロパティを表現したクラスです。 PtlDocPropertyはPtlPDFDocumentから取得して使用します。
Definition PtlDocProperty.h:24
添付ファイルのコンテナを表現するクラスです。 ※ この添付ファイルコンテナには添付ファイル注釈の添付ファイルは含まれません。
Definition PtlEmbeddedFiles.h:19
PDFのセキュリティハンドラおよび暗号化情報を表現したクラスです。 すべてのEncryptクラスのベースクラスです。
Definition PtlEncrypt.h:21
フォームフィールドの値(FormFieldValue)のコンテナを表現するクラスです。
Definition PtlFormFieldValues.h:18
PDFのアウトライン(しおり)を表現したクラスです。
Definition PtlOutline.h:22
ページのコンテナを表現するクラスです。
Definition PtlPages.h:23
最適化に使うパラメータクラスです。
Definition PtlParamOptimize.h:20
PDFの閲覧制限を表現したクラスです。
Definition PtlParamRestriction.h:22
コンテント内のテキストを検索する為のパラメータを表現したクラスです。 すべてのテキスト検索のパラメータを表現したクラスのベースクラスです。
Definition PtlParamSearchText.h:21
テキスト検索してハイライト注釈をつけるパラメータを表現したクラスです。
Definition PtlParamSearchTextAndHighlight.h:23
テキスト検索してマスク処理するパラメータを表現したクラスです。
Definition PtlParamSearchTextAndSetMask.h:22
透かしの設定で使うパラメータクラスです。 すべての透かしパラメータクラスのベースクラスです。
Definition PtlParamWaterMark.h:22
PtlPages & getPages()
ページコンテナを取得。
PtlSearchTextResults searchText(const PtlParamSearchText &paramSearchText)
テキスト検索。
PDFA_TYPE
PDF/Aのタイプ
Definition PtlPDFDocument.h:47
@ PDFA_2B
PDF/A-2b.
Definition PtlPDFDocument.h:51
@ PDFA_UNKNOWN
PDF/A-?
Definition PtlPDFDocument.h:56
@ PDFA_2U
PDF/A-2u.
Definition PtlPDFDocument.h:52
@ PDFA_3A
PDF/A-3a.
Definition PtlPDFDocument.h:53
@ PDFA_2A
PDF/A-2a.
Definition PtlPDFDocument.h:50
@ PDFA_1B
PDF/A-1b.
Definition PtlPDFDocument.h:49
@ PDFA_3B
PDF/A-3b.
Definition PtlPDFDocument.h:54
@ PDFA_1A
PDF/A-1a.
Definition PtlPDFDocument.h:48
@ PDFA_3U
PDF/A-3u.
Definition PtlPDFDocument.h:55
void exportAnnotsToFDF(PtlParamStream &outParam)
マークアップ注釈のFDF文書へのエクスポート。
void setEncrypt(const PtlEncrypt &encrypt)
暗号化情報を設定。
PtlFormFieldValues importFormFieldsFromFDF(PtlParamStream &inParam)
フォームフィールドデータのFDFからのインポート。
void importFormFieldsFromXFDF(PtlParamStream &inParam)
フォームフィールドデータのXFDF文書からのインポート。
void resetForm()
フォームフィールドデータのリセット。
PtlOutline getRootOutline() const
ルートアウトラインを取得。
bool hasEmbeddedFiles() const
添付ファイルを持っているかどうかを取得。
bool hasOwnerAuthority() const
オーナー権限があるかどうかを取得。
void setPKCS12(PtlParamStream &inPKCS12)
PKCS#12を設定。
bool hasOutlines() const
アウトライン(しおり)を持っているかどうかを取得。
int searchTextAndDoProcess(const PtlParamSearchText &paramSearchText)
テキスト検索して後処理。
void save(PtlParamStream &outParam)
PDF文書を保存。
void appendWaterMark(const PtlParamWaterMark &waterMark)
透かしを設定。
void removeWaterMark(const PtlParamString &name)
透かしを削除。
void removeEncrypt()
暗号化情報を削除。
PDFA_TYPE getPDFAType() const
PDF/Aタイプを取得。
PtlPDFDocument()
コンストラクタ
void importAnnotsFromFDF(PtlParamStream &inParam)
マークアップ注釈のFDFからのインポート。
PtlPDFDocument(const PtlPDFDocument &obj)
コピーコンストラクタ alias copy
const PtlEncrypt & getEncrypt()
暗号化情報を取得。
bool isSignatured() const
署名付きかどうかを取得。
bool optimize(const PtlParamOptimize &paramOptimize)
最適化。
void setRestriction(const PtlParamRestriction &restriction)
閲覧制限を設定。
SAVE_OPTION
保存オプション
Definition PtlPDFDocument.h:38
@ SAVE_RECONSTRUCT
再構築(デフォルト)
Definition PtlPDFDocument.h:39
@ SAVE_LINEARIZE
リニアライズ
Definition PtlPDFDocument.h:40
@ SAVE_INCREMENTAL_UPDATE
増分更新
Definition PtlPDFDocument.h:41
PtlEmbeddedFiles & getEmbeddedFiles() const
添付ファイルコンテナを取得。
‾PtlPDFDocument()
デストラクタ
bool embedFonts()
フォント埋め込み。
bool isEncrypted() const
暗号化されているかどうかを取得。
void importAnnotsFromPDF(PtlParamStream &inParam)
マークアップ注釈のPDFからのインポート。
void setPassword(const PtlParamString &password)
パスワードを設定。
void load(PtlParamStream &inParam)
PDF文書をロード。
PtlPDFDocument & operator=(const PtlPDFDocument &obj)
コピーオペレータ alias copy
bool isEncryptedOnlyEmbeddedFiles() const
添付ファイルのみ暗号化されているかどうかを取得。
void exportFormFieldsToXFDF(PtlParamStream &outParam)
フォームフィールドデータのXFDF文書へのエクスポート。
void setSaveOption(SAVE_OPTION option)
保存時のオプションを設定。
void exportFormFieldsToFDF(PtlParamStream &outParam)
フォームフィールドデータのFDF文書へのエクスポート。
int getPageCount() const
ページ数を取得。
PtlDocProperty & getDocProperty() const
文書プロパティを取得。
bool isPDFX() const
PDF/Xかどうかを取得。
void setExportEmptyDataFlg(bool flg)
空データ出力フラグの設定。
bool isPDFA() const
PDF/Aかどうかを取得。
PrlPtlPDFDocument/PtlPageのsearchText関数で取得されるテキスト検索結果のコンテナを表現するクラスです。
Definition PtlSearchTextResults.h:51
ファイルやストリームの入出力指定に使うベースクラスです。 PDFToolではstd::ifstreamを使うPtlParamInput、std::ofstreamを使うPtlParamOutputクラ...
Definition PtlParamStream.h:19
文字列を扱うクラスです。
Definition PtlParamString.h:27