PDFTool  7.0
PtlPDFDocument.h
1 // 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 
14 namespace PdfTk {
15 
16 class PtlParamStream;
17 class PtlEncrypt;
18 class PtlDocProperty;
19 class PtlPages;
20 class PtlEmbeddedFiles;
21 class PtlParamWaterMark;
22 class PtlParamRestriction;
23 class PtlParamOptimize;
24 class PtlParamSearchTextAndHighlight;
25 class PtlParamSearchTextAndSetMask;
26 class PtlParamSearchText;
27 
32 class PDFTK_API PtlPDFDocument
33 {
34 public:
38  enum SAVE_OPTION {
39  SAVE_RECONSTRUCT = 0,
40  SAVE_LINEARIZE = 1,
41  SAVE_INCREMENTAL_UPDATE = 2
42  };
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,
56  PDFA_UNKNOWN = 1000
57  };
58 
59 private:
60  int m_documentHandle;
61 public:
62  int getHandle() const;
63 
64 public:
71 
79 
84 
85 public:
92 
93 public:
99  void setPassword(const PtlParamString& password);
100 
108  void setPKCS12(PtlParamStream& inPKCS12);
109 
115  void load(PtlParamStream& inParam);
116 
117 public:
126 
132  void save(PtlParamStream& outParam);
133 
134 public:
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 
227 public:
234 
235 public:
240  int getPageCount() const;
241 
248 
249 public:
255  bool hasOutlines() const;
256 
266 
267 public:
276  bool hasEmbeddedFiles() const;
277 
284 
285 public:
291  void appendWaterMark(const PtlParamWaterMark& waterMark);
292 
298  void removeWaterMark(const PtlParamString& name);
299 
300 public:
309  void setRestriction(const PtlParamRestriction& restriction);
310 
311 public:
318  bool optimize(const PtlParamOptimize& paramOptimize);
319 
328  bool embedFonts();
329 
330 public:
339 
348 
357 
358 public:
368 
377 
386 
395 
402  void resetForm();
403 
404 
411  void setExportEmptyDataFlg(bool flg);
412 
413 public:
432  int searchTextAndDoProcess(const PtlParamSearchText& paramSearchText);
433 
446 };
447 
448 } // namespace PdfTk
449 
450 #endif // PDFTK_PTLPDFDOCUMENT_H_
451 
PdfTk::PtlPDFDocument::setPKCS12
void setPKCS12(PtlParamStream &inPKCS12)
PKCS#12を設定。
PdfTk::PtlFormFieldValues
フォームフィールドの値(FormFieldValue)のコンテナを表現するクラスです。
Definition: PtlFormFieldValues.h:18
PdfTk::PtlPDFDocument::getPDFAType
PDFA_TYPE getPDFAType() const
PDF/Aタイプを取得。
PdfTk::PtlPDFDocument::optimize
bool optimize(const PtlParamOptimize &paramOptimize)
最適化。
PdfTk::PtlPDFDocument::setEncrypt
void setEncrypt(const PtlEncrypt &encrypt)
暗号化情報を設定。
PdfTk::PtlPDFDocument::exportFormFieldsToFDF
void exportFormFieldsToFDF(PtlParamStream &outParam)
フォームフィールドデータのFDF文書へのエクスポート。
PdfTk::PtlPDFDocument::getPages
PtlPages & getPages()
ページコンテナを取得。
PdfTk::PtlPDFDocument::exportAnnotsToFDF
void exportAnnotsToFDF(PtlParamStream &outParam)
マークアップ注釈のFDF文書へのエクスポート。
PdfTk::PtlPDFDocument::removeEncrypt
void removeEncrypt()
暗号化情報を削除。
PdfTk::PtlPDFDocument::PtlPDFDocument
PtlPDFDocument(const PtlPDFDocument &obj)
コピーコンストラクタ alias copy
PdfTk::PtlPDFDocument::resetForm
void resetForm()
フォームフィールドデータのリセット。
PdfTk::PtlPDFDocument::PtlPDFDocument
PtlPDFDocument()
コンストラクタ
PdfTk::PtlPDFDocument::isPDFA
bool isPDFA() const
PDF/Aかどうかを取得。
PdfTk::PtlSearchTextResults
PrlPtlPDFDocument/PtlPageのsearchText関数で取得されるテキスト検索結果のコンテナを表現するクラスです。
Definition: PtlSearchTextResults.h:51
PdfTk::PtlPDFDocument::hasOutlines
bool hasOutlines() const
アウトライン(しおり)を持っているかどうかを取得。
PdfTk::PtlParamRestriction
PDFの閲覧制限を表現したクラスです。
Definition: PtlParamRestriction.h:22
PdfTk::PtlPDFDocument::getEmbeddedFiles
PtlEmbeddedFiles & getEmbeddedFiles() const
添付ファイルコンテナを取得。
PdfTk::PtlEncrypt
PDFのセキュリティハンドラおよび暗号化情報を表現したクラスです。 すべてのEncryptクラスのベースクラスです。
Definition: PtlEncrypt.h:21
PdfTk::PtlPDFDocument::save
void save(PtlParamStream &outParam)
PDF文書を保存。
PdfTk::PtlPDFDocument::removeWaterMark
void removeWaterMark(const PtlParamString &name)
透かしを削除。
PdfTk::PtlPDFDocument::hasEmbeddedFiles
bool hasEmbeddedFiles() const
添付ファイルを持っているかどうかを取得。
PdfTk::PtlPDFDocument::importAnnotsFromFDF
void importAnnotsFromFDF(PtlParamStream &inParam)
マークアップ注釈のFDFからのインポート。
PdfTk::PtlPDFDocument::importFormFieldsFromXFDF
void importFormFieldsFromXFDF(PtlParamStream &inParam)
フォームフィールドデータのXFDF文書からのインポート。
PdfTk::PtlPDFDocument::PDFA_TYPE
PDFA_TYPE
PDF/Aのタイプ
Definition: PtlPDFDocument.h:47
PdfTk::PtlPDFDocument::importAnnotsFromPDF
void importAnnotsFromPDF(PtlParamStream &inParam)
マークアップ注釈のPDFからのインポート。
PdfTk::PtlPDFDocument::isEncryptedOnlyEmbeddedFiles
bool isEncryptedOnlyEmbeddedFiles() const
添付ファイルのみ暗号化されているかどうかを取得。
PdfTk::PtlPDFDocument::getPageCount
int getPageCount() const
ページ数を取得。
PdfTk::PtlPDFDocument::getRootOutline
PtlOutline getRootOutline() const
ルートアウトラインを取得。
PdfTk::PtlPDFDocument::setExportEmptyDataFlg
void setExportEmptyDataFlg(bool flg)
空データ出力フラグの設定。
PdfTk::PtlPDFDocument::isSignatured
bool isSignatured() const
署名付きかどうかを取得。
PdfTk::PtlPDFDocument::isEncrypted
bool isEncrypted() const
暗号化されているかどうかを取得。
PdfTk::PtlPDFDocument::setSaveOption
void setSaveOption(SAVE_OPTION option)
保存時のオプションを設定。
PdfTk::PtlPDFDocument::getEncrypt
const PtlEncrypt & getEncrypt()
暗号化情報を取得。
PdfTk::PtlPDFDocument::exportFormFieldsToXFDF
void exportFormFieldsToXFDF(PtlParamStream &outParam)
フォームフィールドデータのXFDF文書へのエクスポート。
PdfTk::PtlPDFDocument::embedFonts
bool embedFonts()
フォント埋め込み。
PdfTk::PtlPDFDocument::searchText
PtlSearchTextResults searchText(const PtlParamSearchText &paramSearchText)
テキスト検索。
PdfTk::PtlOutline
PDFのアウトライン(しおり)を表現したクラスです。
Definition: PtlOutline.h:22
PdfTk::PtlPDFDocument::operator=
PtlPDFDocument & operator=(const PtlPDFDocument &obj)
コピーオペレータ alias copy
PdfTk::PtlParamString
文字列を扱うクラスです。
Definition: PtlParamString.h:27
PdfTk::PtlPDFDocument::SAVE_OPTION
SAVE_OPTION
保存オプション
Definition: PtlPDFDocument.h:38
PdfTk::PtlPDFDocument
PDF文書を表現したクラスです。
Definition: PtlPDFDocument.h:33
PdfTk::PtlParamOptimize
最適化に使うパラメータクラスです。
Definition: PtlParamOptimize.h:20
PdfTk::PtlPDFDocument::getDocProperty
PtlDocProperty & getDocProperty() const
文書プロパティを取得。
PdfTk::PtlParamSearchText
コンテント内のテキストを検索する為のパラメータを表現したクラスです。 すべてのテキスト検索のパラメータを表現したクラスのベースクラスです。
Definition: PtlParamSearchText.h:21
PdfTk::PtlPages
ページのコンテナを表現するクラスです。
Definition: PtlPages.h:23
PdfTk::PtlEmbeddedFiles
添付ファイルのコンテナを表現するクラスです。 ※ この添付ファイルコンテナには添付ファイル注釈の添付ファイルは含まれません。
Definition: PtlEmbeddedFiles.h:19
PdfTk::PtlPDFDocument::appendWaterMark
void appendWaterMark(const PtlParamWaterMark &waterMark)
透かしを設定。
PdfTk::PtlParamStream
ファイルやストリームの入出力指定に使うベースクラスです。 PDFToolではstd::ifstreamを使うPtlParamInput、std::ofstreamを使うPtlParamOutputクラ...
Definition: PtlParamStream.h:19
PdfTk::PtlPDFDocument::isPDFX
bool isPDFX() const
PDF/Xかどうかを取得。
PdfTk::PtlPDFDocument::importFormFieldsFromFDF
PtlFormFieldValues importFormFieldsFromFDF(PtlParamStream &inParam)
フォームフィールドデータのFDFからのインポート。
PdfTk::PtlParamWaterMark
透かしの設定で使うパラメータクラスです。 すべての透かしパラメータクラスのベースクラスです。
Definition: PtlParamWaterMark.h:22
PdfTk::PtlPDFDocument::setRestriction
void setRestriction(const PtlParamRestriction &restriction)
閲覧制限を設定。
PdfTk::PtlPDFDocument::setPassword
void setPassword(const PtlParamString &password)
パスワードを設定。
PdfTk::PtlPDFDocument::‾PtlPDFDocument
‾PtlPDFDocument()
デストラクタ
PdfTk::PtlPDFDocument::load
void load(PtlParamStream &inParam)
PDF文書をロード。
PdfTk::PtlPDFDocument::hasOwnerAuthority
bool hasOwnerAuthority() const
オーナー権限があるかどうかを取得。
PdfTk::PtlDocProperty
PDFの文書プロパティを表現したクラスです。 PtlDocPropertyはPtlPDFDocumentから取得して使用します。
Definition: PtlDocProperty.h:24
PdfTk::PtlPDFDocument::searchTextAndDoProcess
int searchTextAndDoProcess(const PtlParamSearchText &paramSearchText)
テキスト検索して後処理。