Foxit PDF SDK

fs_compare.h
浏览该文件的文档.
1
15 #ifndef FS_COMPARE_H_
16 #define FS_COMPARE_H_
17
18 #include "common/fs_common.h"
19 #include "pdf/fs_pdfdoc.h"
20 #include "pdf/fs_pdfpage.h"
21
27 namespace foxit {
31 namespace addon {
35 namespace comparison {
37 class CompareResultInfo FS_FINAL : public Object {
38 public:
44 typedef enum _CompareResultType {
46 e_CompareResultTypeNone = -1,
48 e_CompareResultTypeDeleteText = 0,
50 e_CompareResultTypeInsertText = 1,
52 e_CompareResultTypeReplaceText = 2,
54 e_CompareResultTypeDeleteImage = 6,
56 e_CompareResultTypeInsertImage = 7,
58 e_CompareResultTypeReplaceImage = 8,
60 e_CompareResultTypeDeletePath = 9,
62 e_CompareResultTypeInsertPath = 10,
64 e_CompareResultTypeReplacePath = 11,
66 e_CompareResultTypeDeleteShading = 12,
68 e_CompareResultTypeInsertShading = 13,
70 e_CompareResultTypeReplaceShading = 14,
72 e_CompareResultTypeDeleteAnnot = 15,
74 e_CompareResultTypeInsertAnnot = 16,
76 e_CompareResultTypeReplaceAnnot = 17,
78 e_CompareResultTypeTextAttriChange = 18
79 } CompareResultType;
80
81
90 CompareResultInfo(CompareResultType type, RectFArray rect_array, WString diff_contents) {
91 this->type = type;
92 this->rect_array = rect_array;
93 this->diff_contents = diff_contents;
94 }
95
97 CompareResultInfo()
98 : type(e_CompareResultTypeNone) {}
99
105 CompareResultInfo(const CompareResultInfo& result_info) {
106 this->type = result_info.type;
107 this->rect_array = result_info.rect_array;
108 this->diff_contents = result_info.diff_contents;
109 }
110
118 CompareResultInfo& operator = (const CompareResultInfo& result_info) {
119 this->type = result_info.type;
120 this->rect_array = result_info.rect_array;
121 this->diff_contents = result_info.diff_contents;
122
123 return *this;
124 }
125
130 CompareResultType type;
131
133 RectFArray rect_array;
134
136 WString diff_contents;
137 };
138
140 FSDK_DEFINE_ARRAY(CompareResultInfoArray, CompareResultInfo)
141
142
148 class CompareResults FS_FINAL : public Object {
149 public:
156 CompareResults(CompareResultInfoArray base_doc_results, CompareResultInfoArray compared_doc_results)
157 : base_doc_results(base_doc_results), compared_doc_results(compared_doc_results) {
158 }
159
161 CompareResults() {}
162
168 CompareResults(const CompareResults& compare_results)
169 : base_doc_results(compare_results.base_doc_results)
170 , compared_doc_results(compare_results.compared_doc_results) {}
171
179 CompareResults& operator = (const CompareResults& compare_results) {
180 base_doc_results = compare_results.base_doc_results;
181 compared_doc_results = compare_results.compared_doc_results;
182
183 return *this;
184 }
185
191 void Clear()
192 {
193 base_doc_results.RemoveAll();
194 compared_doc_results.RemoveAll();
195 }
196
200 CompareResultInfoArray base_doc_results;
201
205 CompareResultInfoArray compared_doc_results;
206 };
207
211 class Comparison FS_FINAL : public Base {
212 public:
218 typedef enum _CompareType {
220 e_CompareTypeAll = 0x00000000,
222 e_CompareTypeText = 0x00000001,
224 e_CompareTypeAnnotation = 0x00000002
225 } CompareType;
226
227
238 explicit Comparison(const pdf::PDFDoc& base_doc, const pdf::PDFDoc& compared_doc);
239
245 Comparison(const Comparison& other);
246
247 // 强烈建议用户不要使用此方法；否则可能发生未知情况。
248 explicit Comparison(FS_HANDLE handle);
249
251 ~Comparison();
252
260 Comparison& operator = (const Comparison& other);
261
269 bool operator == (const Comparison& other) const;
270
278 bool operator != (const Comparison& other) const;
279
287 bool IsEmpty() const;
288
301 CompareResults DoCompare(int base_page_index, int compared_page_index, foxit::uint32 compare_flags);
302
313 pdf::PDFDoc GenerateComparedDoc(foxit::uint32 compare_flags);
314
328 pdf::PDFDoc GenerateComparedDoc(foxit::uint32 compare_flags, bool is_show_all_layers);
329 };
330 } // namespace comparison
331 } // namespace addon
332 } // namespace foxit
333
334 #endif // FS_COMPARE_H_
335
foxit::addon::comparison::CompareResultInfo::e_CompareResultTypeDeleteShading
结果类型：删除阴影。
Definition: fs_compare.h:66
foxit::addon::comparison::Comparison::operator=
Comparison & operator=(const Comparison &other)
赋值操作符。
foxit::FS_HANDLE
void * FS_HANDLE
句柄类型。
Definition: fs_basictypes.h:214
foxit::addon::comparison::CompareResultInfo
Definition: fs_compare.h:37
foxit::addon::comparison::CompareResultInfo::e_CompareResultTypeReplaceImage
结果类型：替换图像。
Definition: fs_compare.h:58
foxit::addon::comparison::CompareResultInfo::e_CompareResultTypeInsertAnnot
结果类型：插入注释。
Definition: fs_compare.h:74
foxit::addon::comparison::CompareResultInfo::e_CompareResultTypeInsertText
结果类型：插入文本。
Definition: fs_compare.h:50
foxit::addon::comparison::Comparison::operator==
bool operator==(const Comparison &other) const
相等操作符。
foxit::addon::comparison::CompareResultInfo::e_CompareResultTypeDeleteAnnot
结果类型：删除注释。
Definition: fs_compare.h:72
foxit::Object
CFX_Object Object
对象类型。
Definition: fs_basictypes.h:221
foxit::addon::comparison::CompareResultInfo::diff_contents
WString diff_contents
作为比较结果的不同内容。
Definition: fs_compare.h:136
foxit::addon::comparison::CompareResultInfo::type
CompareResultType type
结果类型。请参考从CompareResultInfo::e_CompareResultTypeNone 开始的值，这应该是这些值中的一个。
Definition: fs_compare.h:130
fs_common.h
通用定义和类的头文件。
CFX_ArrayTemplate< RectF >
foxit::addon::comparison::CompareResults::CompareResults
CompareResults(CompareResultInfoArray base_doc_results, CompareResultInfoArray compared_doc_results)
带参数的构造函数。
Definition: fs_compare.h:156
foxit::addon::comparison::CompareResultInfo::e_CompareResultTypeReplaceText
结果类型：替换文本。
Definition: fs_compare.h:52
foxit::addon::comparison::CompareResultInfo::CompareResultType
CompareResultType
比较结果类型的枚举。
Definition: fs_compare.h:44
foxit::addon::comparison::CompareResults::base_doc_results
CompareResultInfoArray base_doc_results
结果信息数组，包含基本文档中PDF页面（已被比较）的所有比较结果。
Definition: fs_compare.h:200
foxit::addon::comparison::Comparison::e_CompareTypeAnnotation
仅比较注释。
Definition: fs_compare.h:224
foxit::addon::comparison::Comparison::IsEmpty
bool IsEmpty() const
检查当前对象是否为空。
foxit::addon::comparison::CompareResultInfo::e_CompareResultTypeDeletePath
结果类型：删除路径。
Definition: fs_compare.h:60
foxit::addon::comparison::CompareResultInfo::rect_array
RectFArray rect_array
矩形数组，指定参数diff_contents在要比较的PDF页面中的位置。
Definition: fs_compare.h:133
foxit::addon::comparison::CompareResultInfo::CompareResultInfo
CompareResultInfo(CompareResultType type, RectFArray rect_array, WString diff_contents)
带参数的构造函数。
Definition: fs_compare.h:90
foxit::addon::comparison::CompareResultInfo::e_CompareResultTypeTextAttriChange
（保留，尚未支持）结果类型：文本属性更改。
Definition: fs_compare.h:78
foxit::addon::comparison::Comparison::DoCompare
CompareResults DoCompare(int base_page_index, int compared_page_index, foxit::uint32 compare_flags)
比较基本文档的PDF页面与比较文档中的PDF页面。"基本文档"和"比较文档"指用于构造当前对象的PDF文档对象。
foxit::addon::comparison::CompareResults::CompareResults
CompareResults()
构造函数。
Definition: fs_compare.h:161
foxit::addon::comparison::CompareResultInfo::e_CompareResultTypeDeleteImage
结果类型：删除图像。
Definition: fs_compare.h:54
foxit::addon::comparison::Comparison::e_CompareTypeAll
比较所有内容。此值应单独使用。
Definition: fs_compare.h:220
foxit::addon::comparison::Comparison::GenerateComparedDoc
pdf::PDFDoc GenerateComparedDoc(foxit::uint32 compare_flags)
比较基本文档与比较文档（用于构造当前对象），然后生成PDF文档作为比较结果。
foxit::addon::comparison::CompareResultInfo::e_CompareResultTypeReplacePath
结果类型：替换路径。
Definition: fs_compare.h:64
foxit::addon::comparison::CompareResultInfo::e_CompareResultTypeReplaceShading
结果类型：替换阴影。
Definition: fs_compare.h:70
foxit::addon::comparison::CompareResultInfo::operator=
CompareResultInfo & operator=(const CompareResultInfo &result_info)
赋值操作符。
Definition: fs_compare.h:118
fs_pdfpage.h
PDF页面相关定义和类的头文件。
foxit::addon::comparison::CompareResultInfo::e_CompareResultTypeInsertShading
结果类型：插入阴影。
Definition: fs_compare.h:68
foxit
Foxit命名空间。
Definition: fs_taggedpdf.h:27
foxit::addon::comparison::CompareResults::Clear
void Clear()
清除所有结果信息。
Definition: fs_compare.h:191
foxit::addon::comparison::CompareResultInfo::e_CompareResultTypeInsertImage
结果类型：插入图像。
Definition: fs_compare.h:56
fs_pdfdoc.h
PDF文档相关定义和类的头文件。
foxit::addon::comparison::CompareResultInfo::CompareResultInfo
CompareResultInfo()
构造函数。
Definition: fs_compare.h:97
foxit::addon::comparison::CompareResults::CompareResults
CompareResults(const CompareResults &compare_results)
带另一个比较结果对象的构造函数。
Definition: fs_compare.h:168
foxit::addon::comparison::CompareResultInfo::e_CompareResultTypeDeleteText
结果类型：删除文本。
Definition: fs_compare.h:48
foxit::addon::comparison::CompareResults::compared_doc_results
CompareResultInfoArray compared_doc_results
结果信息数组，包含比较文档中PDF页面（已被比较）的所有比较结果。
Definition: fs_compare.h:205
foxit::pdf::PDFDoc
Definition: fs_pdfdoc.h:771
foxit::addon::comparison::CompareResultInfo::CompareResultInfo
CompareResultInfo(const CompareResultInfo &result_info)
带另一个结果信息对象的构造函数。
Definition: fs_compare.h:105
foxit::addon::comparison::Comparison::CompareType
CompareType
比较类型标志的枚举。
Definition: fs_compare.h:218
foxit::addon::comparison::Comparison::operator!=
bool operator!=(const Comparison &other) const
不相等操作符。
foxit::addon::comparison::CompareResultInfo::e_CompareResultTypeInsertPath
结果类型：插入路径。
Definition: fs_compare.h:62
foxit::addon::comparison::CompareResults
Definition: fs_compare.h:148
CFX_WideString
宽字符串类
Definition: fx_string.h:1457
foxit::addon::comparison::Comparison
Definition: fs_compare.h:211
foxit::addon::comparison::Comparison::~Comparison
~Comparison()
析构函数。
foxit::addon::comparison::Comparison::Comparison
Comparison(const pdf::PDFDoc &base_doc, const pdf::PDFDoc &compared_doc)
从PDF文档对象构造。
foxit::addon::comparison::Comparison::e_CompareTypeText
仅比较文本。
Definition: fs_compare.h:222
foxit::addon::comparison::CompareResultInfo::e_CompareResultTypeReplaceAnnot
结果类型：替换注释。
Definition: fs_compare.h:76
foxit::uint32
FX_UINT32 uint32
无符号 32 位整数。
Definition: fs_basictypes.h:196
foxit::addon::comparison::CompareResultInfo::e_CompareResultTypeNone
结果类型：不支持或无效。
Definition: fs_compare.h:46
foxit::addon::comparison::CompareResultInfoArray
Definition: fs_compare.h:140
foxit::Base
Definition: fs_basictypes.h:449