OLD | NEW |
1 // Copyright 2014 PDFium Authors. All rights reserved. | 1 // Copyright 2014 PDFium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com | 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com |
6 | 6 |
7 #ifndef _FPDF_VT_H_ | 7 #ifndef _FPDF_VT_H_ |
8 #define _FPDF_VT_H_ | 8 #define _FPDF_VT_H_ |
9 #include "../fxcrt/fx_basic.h" | 9 #include "../fxcrt/fx_basic.h" |
10 #include "../fpdfapi/fpdf_parser.h" | 10 #include "../fpdfapi/fpdf_parser.h" |
(...skipping 257 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
268 | 268 |
269 CPDF_Rect rcSection; | 269 CPDF_Rect rcSection; |
270 | 270 |
271 CPVT_SecProps SecProps; | 271 CPVT_SecProps SecProps; |
272 | 272 |
273 CPVT_WordProps WordProps; | 273 CPVT_WordProps WordProps; |
274 }; | 274 }; |
275 class IPDF_VariableText_Provider | 275 class IPDF_VariableText_Provider |
276 { | 276 { |
277 public: | 277 public: |
| 278 virtual ~IPDF_VariableText_Provider() { } |
278 | 279 |
279 virtual FX_INT32 GetCharWidth(FX_
INT32 nFontIndex, FX_WORD word, FX_INT32 nWordStyle) = 0; | 280 virtual FX_INT32 GetCharWidth(FX_
INT32 nFontIndex, FX_WORD word, FX_INT32 nWordStyle) = 0; |
280 | 281 |
281 virtual FX_INT32 GetTypeAscent(FX
_INT32 nFontIndex) = 0; | 282 virtual FX_INT32 GetTypeAscent(FX
_INT32 nFontIndex) = 0; |
282 | 283 |
283 virtual FX_INT32 GetTypeDescent(F
X_INT32 nFontIndex) = 0; | 284 virtual FX_INT32 GetTypeDescent(F
X_INT32 nFontIndex) = 0; |
284 | 285 |
285 virtual FX_INT32 GetWordFontIndex
(FX_WORD word, FX_INT32 charset, FX_INT32 nFontIndex) = 0; | 286 virtual FX_INT32 GetWordFontIndex
(FX_WORD word, FX_INT32 charset, FX_INT32 nFontIndex) = 0; |
286 | 287 |
287 virtual FX_BOOL IsLatinW
ord(FX_WORD word) = 0; | 288 virtual FX_BOOL IsLatinW
ord(FX_WORD word) = 0; |
288 | 289 |
289 virtual FX_INT32 GetDefaultFontIn
dex() = 0; | 290 virtual FX_INT32 GetDefaultFontIn
dex() = 0; |
290 }; | 291 }; |
291 class IPDF_VariableText_Iterator | 292 class IPDF_VariableText_Iterator |
292 { | 293 { |
293 public: | 294 public: |
| 295 virtual ~IPDF_VariableText_Iterator() { } |
294 | 296 |
295 virtual FX_BOOL NextWord
() = 0; | 297 virtual FX_BOOL NextWord
() = 0; |
296 | 298 |
297 virtual FX_BOOL PrevWord
() = 0; | 299 virtual FX_BOOL PrevWord
() = 0; |
298 | 300 |
299 virtual FX_BOOL NextLine
() = 0; | 301 virtual FX_BOOL NextLine
() = 0; |
300 | 302 |
301 virtual FX_BOOL PrevLine
() = 0; | 303 virtual FX_BOOL PrevLine
() = 0; |
302 | 304 |
303 virtual FX_BOOL NextSect
ion() = 0; | 305 virtual FX_BOOL NextSect
ion() = 0; |
(...skipping 12 matching lines...) Expand all Loading... |
316 | 318 |
317 virtual void SetAt(FX
_INT32 nWordIndex) = 0; | 319 virtual void SetAt(FX
_INT32 nWordIndex) = 0; |
318 | 320 |
319 virtual void SetAt(co
nst CPVT_WordPlace & place) = 0; | 321 virtual void SetAt(co
nst CPVT_WordPlace & place) = 0; |
320 | 322 |
321 virtual const CPVT_WordPlace & GetAt() const = 0; | 323 virtual const CPVT_WordPlace & GetAt() const = 0; |
322 }; | 324 }; |
323 class IPDF_VariableText | 325 class IPDF_VariableText |
324 { | 326 { |
325 public: | 327 public: |
326 | |
327 static IPDF_VariableText* NewVariableText(); | 328 static IPDF_VariableText* NewVariableText(); |
328 | 329 |
329 static void DelVariableText(
IPDF_VariableText* pVT); | 330 static void DelVariableText(
IPDF_VariableText* pVT); |
330 public: | |
331 | 331 |
332 virtual IPDF_VariableText_Provider* SetProvider(IPDF_VariableText_Pr
ovider * pProvider) = 0; | 332 virtual IPDF_VariableText_Provider* SetProvider(IPDF_VariableText_Pr
ovider * pProvider) = 0; |
333 | 333 |
334 virtual IPDF_VariableText_Iterator* GetIterator() = 0; | 334 virtual IPDF_VariableText_Iterator* GetIterator() = 0; |
335 | 335 |
336 virtual void SetPlate
Rect(const CPDF_Rect & rect) = 0; | 336 virtual void SetPlate
Rect(const CPDF_Rect & rect) = 0; |
337 | 337 |
338 virtual void SetAlign
ment(FX_INT32 nFormat = 0) = 0; | 338 virtual void SetAlign
ment(FX_INT32 nFormat = 0) = 0; |
339 | 339 |
340 virtual void SetPassw
ordChar(FX_WORD wSubWord = '*') = 0; | 340 virtual void SetPassw
ordChar(FX_WORD wSubWord = '*') = 0; |
(...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
433 | 433 |
434 virtual CPVT_WordPlace GetSectionEndPla
ce(const CPVT_WordPlace & place) const = 0; | 434 virtual CPVT_WordPlace GetSectionEndPla
ce(const CPVT_WordPlace & place) const = 0; |
435 | 435 |
436 virtual void UpdateWo
rdPlace(CPVT_WordPlace & place) const = 0; | 436 virtual void UpdateWo
rdPlace(CPVT_WordPlace & place) const = 0; |
437 | 437 |
438 virtual CPVT_WordPlace AjustLineHeader(
const CPVT_WordPlace & place, FX_BOOL bPrevOrNext) const = 0; | 438 virtual CPVT_WordPlace AjustLineHeader(
const CPVT_WordPlace & place, FX_BOOL bPrevOrNext) const = 0; |
439 | 439 |
440 virtual FX_INT32 WordPlaceToWordI
ndex(const CPVT_WordPlace & place) const = 0; | 440 virtual FX_INT32 WordPlaceToWordI
ndex(const CPVT_WordPlace & place) const = 0; |
441 | 441 |
442 virtual CPVT_WordPlace WordIndexToWordP
lace(FX_INT32 index) const = 0; | 442 virtual CPVT_WordPlace WordIndexToWordP
lace(FX_INT32 index) const = 0; |
| 443 |
| 444 protected: |
| 445 ~IPDF_VariableText() { } |
443 }; | 446 }; |
444 #endif | 447 #endif |
OLD | NEW |