Foxit PDF SDK

fs_pdfgraphicsobject.h
浏览该文件的文档.
1
15 #ifndef FS_PDFGRAPHICSOBJECT_H_
16 #define FS_PDFGRAPHICSOBJECT_H_
17
18 #include "common/fs_common.h"
19 #include "common/file/fs_file.h"
20 #include "common/fs_image.h"
21 #include "pdf/objects/fs_pdfobject.h"
22
28 namespace foxit {
29 namespace pdf {
30 namespace graphics {
31 class TextObject;
32 class FormXObject;
33 class ImageObject;
34 class PathObject;
35 class ShadingObject;
36 } // namespace graphics
37 class PDFPage;
38 class GraphicsObjects;
39 class LayerNodeArray;
40 class LayerTree;
41 } // namespace pdf
42
46 namespace pdf {
50 namespace graphics {
52 class ColorState FS_FINAL : public Base {
53 public:
54 // 强烈建议用户不要使用此方法；否则可能出现未知情况。
55 explicit ColorState(FS_HANDLE handle);
56
58 ~ColorState();
59
65 ColorState(const ColorState& other);
66
74 ColorState& operator=(const ColorState& other);
75
83 bool operator==(const ColorState& other) const;
84
92 bool operator!=(const ColorState& other) const;
93
101 bool IsEmpty() const;
102
108 common::Color GetFillColor();
109
117 void SetFillColor(const common::Color& color);
118
124 common::Color GetStrokeColor();
125
133 void SetStrokeColor(const common::Color& color);
134 };
135
143 class MarkedContent FS_FINAL : public Object {
144 public:
146 ~MarkedContent() {}
147
156 bool HasTag(const char* tag_name);
164 int GetItemCount() const;
175 String GetItemTagName(int index) const;
184 int GetItemMCID(int index) const;
193 objects::PDFDictionary* GetItemPropertyDict(int index) const;
206 int AddItem(const char* tag_name, objects::PDFDictionary* property_dict = NULL);
214 bool RemoveItem(const char* tag_name);
215
216 private:
217 MarkedContent(const MarkedContent& markedcontent);
218 MarkedContent &operator = (const MarkedContent& markedcontent);
219 };
220
232 class GraphicsObject : public Object {
233 public:
239 typedef enum _BlendMode {
245 e_BlendNormal = 0,
251 e_BlendMultiply = 1,
257 e_BlendScreen = 2,
263 e_BlendOverlay = 3,
269 e_BlendDarken = 4,
275 e_BlendLighten = 5,
286 e_BlendColorDodge = 6,
297 e_BlendColorBurn = 7,
307 e_BlendHardlight = 8,
320 e_BlendSoftlight = 9,
326 e_BlendDifference = 10,
332 e_BlendExclusion = 11,
338 e_BlendHue = 21,
344 e_BlendSaturation = 22,
350 e_BlendColor = 23,
356 e_BlendLuminosity = 24
357 } BlendMode;
358
364 typedef enum _Type {
366 e_TypeAll = 0,
368 e_TypeText = 1,
370 e_TypePath = 2,
372 e_TypeImage = 3,
374 e_TypeShading = 4,
376 e_TypeFormXObject = 5,
378 e_TypeInlines = 6,
380 e_TypeEmptyMarkedContent = 7
381 } Type;
382
383
384 #if !defined(_SWIG_IOS_) && !defined(_SWIG_MACOC_)
385
390 void Release();
391 #endif
392
399 Type GetType() const;
400
407 RectF GetRect() const;
408
414 bool HasTransparency();
415
424 ARGB GetStrokeColor() const;
425
434 ARGB GetFillColor() const;
435
452 void SetStrokeColor(ARGB color);
453
474 void SetFillColor(ARGB color);
475
483 ColorState GetColorState() const;
484
498 void SetColorState(const ColorState& color_state);
499
511 void SetFillOpacity(float opacity);
512
524 void SetStrokeOpacity(float opacity);
525
532 float GetFillOpacity() const;
533
540 float GetStrokeOpacity()const;
541
548 Matrix GetMatrix() const;
549
560 void SetMatrix(const Matrix& matrix);
561
574 bool Transform(const Matrix& matrix, bool need_transform_clippath);
575
586 GraphicsObject* Clone();
587
602 GraphicsObject* Clone(foxit::pdf::GraphicsObjects src_graphicsobjects, foxit::pdf::GraphicsObjects dest_graphicsobjects);
603
611 common::GraphState GetGraphState() const;
612
629 void SetGraphState(const common::GraphState& graph_state);
630
637 BlendMode GetBlendMode() const;
638
650 void SetBlendMode(BlendMode blend_mode);
651
657 int GetClipPathCount() const;
658
668 common::Path GetClipPath(int index) const;
669
679 common::FillMode GetClipPathFillMode(int index) const;
680
693 bool AddClipPath(const common::Path& path, common::FillMode fill_mode);
694
706 bool RemoveClipPath(int index);
707
713 int GetClipTextObjectCount() const;
714
723 TextObject* GetClipTextObject(int index) const;
724
735 bool AddClipTextObject(TextObject* textobject);
736
748 bool RemoveClipTextObject(int index);
749
755 RectF GetClipRect() const;
756
769 void SetClipRect(const RectF& clip_rect);
770
779 bool ClearClips();
780
786 MarkedContent* GetMarkedContent() const;
787
796 LayerNodeArray GetLayers(const LayerTree& layer_tree);
797
804 TextObject* GetTextObject() const;
805
812 FormXObject* GetFormXObject() const;
813
820 ImageObject* GetImageObject() const;
821
828 PathObject* GetPathObject() const;
829
836 ShadingObject* GetShadingObject() const;
837
850 void Rotate(int angle);
851 protected:
852 ~GraphicsObject() {}
853
854 private:
855 GraphicsObject(const GraphicsObject& graphicsobject);
856 GraphicsObject &operator = (const GraphicsObject& graphicsobject);
857 };
858
860 typedef CFX_ArrayTemplate<GraphicsObject*> GraphicsObjectArray;
861
863 class TextState FS_FINAL : public Object {
864 public:
870 typedef enum _Mode {
872 e_ModeFill = 0,
874 e_ModeStroke = 1,
876 e_ModeFillStroke = 2,
878 e_ModeInvisible = 3,
880 e_ModeFillClip = 4,
882 e_ModeStrokeClip = 5,
884 e_ModeFillStrokeClip = 6,
886 e_ModeClip = 7
887 } Mode;
888
889
906 TextState(uint32 version, const common::Font& font, float font_size, float charspace, float wordspace, Mode textmode,
907 const PointF& origin_position, float textmatrix[4]) {
908 this->version = version;
909 this->font = font;
910 this->font_size = font_size;
911 this->font_vertical_size = font_size;
912 this->font_horizontal_size = font_size;
913 this->charspace = charspace;
914 this->wordspace = wordspace;
915 this->textmode = textmode;
916 this->origin_position = origin_position;
917 for (int i=0; i < 4; i++)
918 this->textmatrix[i] = textmatrix[i];
919 }
920
922 TextState()
923 :version(1)
924 , font_size(0.0f)
925 , font_vertical_size(0.0f)
926 , font_horizontal_size(0.0f)
927 , charspace(0.0f)
928 , wordspace(0.0f)
929 , textmode(TextState::e_ModeFill) {
930 origin_position = PointF();
931 this->textmatrix[0] = 1;
932 this->textmatrix[1] = 0;
933 this->textmatrix[2] = 0;
934 this->textmatrix[3] = 1;
935 }
936
942 TextState(const TextState& state) {
943 version = state.version;
944 font = state.font;
945 font_size = state.font_size;
946 font_vertical_size = state.font_vertical_size;
947 font_horizontal_size = state.font_horizontal_size;
948 charspace = state.charspace;
949 wordspace = state.wordspace;
950 textmode = state.textmode;
951 origin_position = state.origin_position;
952 for (int i=0; i < 4; i++)
953 textmatrix[i] = state.textmatrix[i];
954 }
955
963 TextState &operator = (const TextState& state) {
964 version = state.version;
965 font = state.font;
966 font_size = state.font_size;
967 font_vertical_size = state.font_vertical_size;
968 font_horizontal_size = state.font_horizontal_size;
969 charspace = state.charspace;
970 wordspace = state.wordspace;
971 textmode = state.textmode;
972 origin_position = state.origin_position;
973 for (int i=0; i < 4; i++)
974 textmatrix[i] = state.textmatrix[i];
975 return (*this);
976 }
977
994 void Set(uint32 version, const common::Font& font, float font_size, float charspace, float wordspace,
995 Mode textmode, const PointF& origin_position, float textmatrix[4]) {
996 this->version = version;
997 this->font = font;
998 this->font_size = font_size;
999 this->font_vertical_size = font_size;
1000 this->font_horizontal_size = font_size;
1001 this->charspace = charspace;
1002 this->wordspace = wordspace;
1003 this->textmode = textmode;
1004 this->origin_position = origin_position;
1005 for (int i=0; i < 4; i++)
1006 this->textmatrix[i] = textmatrix[i];
1007 }
1008
1016 uint32 version;
1017
1023 common::Font font;
1024
1030 float font_size;
1031
1037 float font_vertical_size;
1038
1044 float font_horizontal_size;
1045
1054 float charspace;
1055
1066 float wordspace;
1067
1074 Mode textmode;
1075
1081 PointF origin_position;
1082
1091 float textmatrix[4];
1092 };
1093
1102 class ImageObject FS_FINAL : public GraphicsObject {
1103 public:
1117 static ImageObject* Create(const PDFDoc& document);
1118
1133 void SetBitmap(const common::Bitmap& bitmap, const common::Bitmap& mask = common::Bitmap());
1134
1151 void SetImage(const common::Image& image, int frame_index);
1152
1171 common::Bitmap CloneBitmap(const GraphicsObjects& graphics_objects);
1172
1190 common::Bitmap CloneBitmap(const PDFPage& page, const GraphicsObjects& graphics_objects);
1191
1203 static ImageObject* CreateFromType3TextObject(const PDFPage& page, TextObject* text_obj);
1204
1211 common::ColorSpaceType GetColorSpace() const;
1212
1219 objects::PDFStream* GetStream() const;
1220
1226 bool IsImageMask() const;
1227
1241 objects::PDFObject* GetMask() const;
1242
1243 private:
1244 ~ImageObject() {}
1245
1246 private:
1247 ImageObject(const ImageObject& imageobject);
1248 ImageObject &operator = (const ImageObject& imageobject);
1249 };
1250
1259 class TextObject FS_FINAL : public GraphicsObject {
1260 public:
1271 static TextObject* Create();
1272
1278 WString GetText() const;
1279
1293 void SetText(const wchar_t* text);
1294
1308 void SetText(const WString& text);
1309
1317 TextState GetTextState(const PDFPage& page) const;
1318
1333 void SetTextState(const PDFPage& page, const TextState& text_state, bool is_italic, int weight);
1334
1340 int GetCharCount() const;
1341
1350 PointF GetCharPos(int index) const;
1351
1360 float GetCharWidthByIndex(int index) const;
1361
1370 float GetCharHeightByIndex(int index) const;
1371
1372 private:
1373 ~TextObject() {}
1374
1375 private:
1376 TextObject(const TextObject& textobject);
1377 TextObject &operator = (const TextObject& textobject);
1378 };
1379
1381 typedef CFX_ArrayTemplate<TextObject*> TextObjectArray;
1382
1393 class PathObject FS_FINAL : public GraphicsObject {
1394 public:
1405 static PathObject* Create();
1406
1419 static PathObject* CreateFromTextObject(const PDFPage& page, TextObject* text_obj);
1420
1427 common::FillMode GetFillMode() const;
1439 void SetFillMode(common::FillMode fill_mode);
1446 bool GetStrokeState() const;
1458 void SetStrokeState(bool is_stroke);
1465 common::Path GetPathData() const;
1466
1477 void SetPathData(const common::Path& path_data);
1478
1479 private:
1480 ~PathObject() {}
1481
1482 private:
1483 PathObject(const PathObject& pathobject);
1484 PathObject &operator = (const PathObject& pathobject);
1485 };
1486
1497 class FormXObject FS_FINAL : public GraphicsObject {
1498 public:
1512 static FormXObject* Create(const PDFDoc& document);
1513
1520 objects::PDFStream* GetStream() const;
1521
1527 GraphicsObjects GetGraphicsObjects() const;
1528
1544 bool ImportPageContent(const PDFPage& source_page, bool is_annots_included);
1545
1546 private:
1547 ~FormXObject() {}
1548
1549 private:
1550 FormXObject(const FormXObject& formxobject);
1551 FormXObject &operator = (const FormXObject& formxobject);
1552 };
1553
1560 class ShadingObject FS_FINAL : public GraphicsObject {
1561 public:
1568 objects::PDFObject* GetPDFObject() const;
1569
1570 private:
1571 ~ShadingObject() {}
1572
1573 private:
1574 ShadingObject(const ShadingObject& shadingobject);
1575 ShadingObject &operator = (const ShadingObject& shadingobject);
1576 };
1577 } // namespace graphics
1578 } // namespace pdf
1579 } // namespace foxit
1580 #endif // FS_PDFGRAPHICSOBJECT_H_
1581
foxit::pdf::graphics::MarkedContent
Definition: fs_pdfgraphicsobject.h:143
foxit::pdf::graphics::GraphicsObject::GetFillOpacity
float GetFillOpacity() const
获取除描边外的绘制操作的不透明度值。
foxit::pdf::graphics::FormXObject
Definition: fs_pdfgraphicsobject.h:1497
foxit::pdf::graphics::TextState::textmatrix
float textmatrix[4]
文本变换矩阵。
Definition: fs_pdfgraphicsobject.h:1091
foxit::pdf::LayerNodeArray
Definition: fs_pdflayer.h:41
foxit::pdf::graphics::GraphicsObject::Release
void Release()
释放尚未插入到任何PDF页面中的克隆或新创建的PDF图形对象或其他对象。
foxit::pdf::graphics::MarkedContent::GetItemCount
int GetItemCount() const
获取标记内容项的数量。
foxit::pdf::graphics::GraphicsObject::RemoveClipTextObject
bool RemoveClipTextObject(int index)
根据索引删除用于裁剪的文本裁剪。
foxit::FS_HANDLE
void * FS_HANDLE
句柄类型。
Definition: fs_basictypes.h:214
foxit::pdf::graphics::GraphicsObject::GetClipRect
RectF GetClipRect() const
获取裁剪矩形。
foxit::pdf::graphics::GraphicsObject::GetTextObject
TextObject * GetTextObject() const
如果当前图形对象表示文本对象，则获取文本图形对象。
foxit::pdf::graphics::TextState::TextState
TextState(uint32 version, const common::Font &font, float font_size, float charspace, float wordspace, Mode textmode, const PointF &origin_position, float textmatrix[4])
带参数的构造函数。
Definition: fs_pdfgraphicsobject.h:906
foxit::pdf::graphics::MarkedContent::HasTag
bool HasTag(const char *tag_name)
检查当前标记内容对象是否具有指定的标记内容项。
foxit::common::Color
Definition: fs_common.h:2567
foxit::pdf::graphics::GraphicsObject::e_BlendColorBurn
加深背景颜色以反映源颜色。
Definition: fs_pdfgraphicsobject.h:297
foxit::pdf::graphics::GraphicsObject::e_BlendDarken
选择背景和源颜色中较暗的一个。
Definition: fs_pdfgraphicsobject.h:269
foxit::pdf::graphics::MarkedContent::GetItemPropertyDict
objects::PDFDictionary * GetItemPropertyDict(int index) const
根据索引获取指定标记内容项的属性字典。
foxit::pdf::graphics::TextObject::GetText
WString GetText() const
获取文本字符串。
foxit::pdf::graphics::GraphicsObject::GetClipPathCount
int GetClipPathCount() const
获取路径裁剪的数量。
foxit::pdf::graphics::MarkedContent::RemoveItem
bool RemoveItem(const char *tag_name)
根据标签名称删除标记内容项。
foxit::pdf::graphics::GraphicsObject::e_BlendHue
使用源颜色的色调和背景颜色的饱和度和明度创建颜色。
Definition: fs_pdfgraphicsobject.h:338
foxit::pdf::graphics::GraphicsObject::SetColorState
void SetColorState(const ColorState &color_state)
设置颜色状态。
foxit::pdf::graphics::PathObject::SetFillMode
void SetFillMode(common::FillMode fill_mode)
设置填充模式。
foxit::pdf::graphics::FormXObject::Create
static FormXObject * Create(const PDFDoc &document)
创建新的表单XObject图形对象。
foxit::pdf::graphics::TextObjectArray
CFX_ArrayTemplate< TextObject * > TextObjectArray
Definition: fs_pdfgraphicsobject.h:1381
foxit::pdf::graphics::GraphicsObject::e_BlendSoftlight
根据源颜色值使颜色变暗或变亮。
Definition: fs_pdfgraphicsobject.h:320
foxit::pdf::graphics::GraphicsObject::e_TypeShading
阴影图形对象。
Definition: fs_pdfgraphicsobject.h:374
foxit::Object
CFX_Object Object
对象类型。
Definition: fs_basictypes.h:221
foxit::common::GraphState
Definition: fs_common.h:1100
foxit::pdf::graphics::TextState::textmode
Mode textmode
文本渲染模式。请参考从TextState::e_ModeFill开始的值， 这应该是这些值中的一个。
Definition: fs_pdfgraphicsobject.h:1074
foxit::pdf::graphics::GraphicsObject::GetImageObject
ImageObject * GetImageObject() const
如果当前图形对象表示图像对象，则获取图像图形对象。
foxit::pdf::graphics::GraphicsObject::HasTransparency
bool HasTransparency()
检查当前图形对象是否具有透明度。
foxit::pdf::graphics::PathObject::Create
static PathObject * Create()
创建新的路径图形对象。
foxit::pdf::graphics::GraphicsObject::Type
Type
PDF图形对象类型的枚举。
Definition: fs_pdfgraphicsobject.h:364
foxit::pdf::graphics::TextState::Set
void Set(uint32 version, const common::Font &font, float font_size, float charspace, float wordspace, Mode textmode, const PointF &origin_position, float textmatrix[4])
设置值。
Definition: fs_pdfgraphicsobject.h:994
foxit::pdf::graphics::TextState::TextState
TextState(const TextState &state)
使用另一个文本状态对象的构造函数。
Definition: fs_pdfgraphicsobject.h:942
foxit::pdf::graphics::TextState::charspace
float charspace
字符间距。
Definition: fs_pdfgraphicsobject.h:1054
foxit::pdf::graphics::TextState::origin_position
PointF origin_position
原点，在PDF坐标系统中。
Definition: fs_pdfgraphicsobject.h:1081
fs_common.h
通用定义和类的头文件。
foxit::pdf::graphics::TextObject::GetCharHeightByIndex
float GetCharHeightByIndex(int index) const
获取当前文本对象中指定索引字符的高度。
foxit::pdf::graphics::PathObject
Definition: fs_pdfgraphicsobject.h:1393
CFX_ArrayTemplate
Definition: fx_basic.h:1278
foxit::pdf::graphics::TextObject::Create
static TextObject * Create()
创建新的文本图形对象。
foxit::pdf::graphics::GraphicsObject::GetClipPath
common::Path GetClipPath(int index) const
根据索引获取路径裁剪。
foxit::pdf::graphics::PathObject::GetStrokeState
bool GetStrokeState() const
获取描边状态
foxit::pdf::graphics::TextState::e_ModeFillStroke
文本模式：填充和描边文本。
Definition: fs_pdfgraphicsobject.h:876
foxit::pdf::graphics::TextState::operator=
TextState & operator=(const TextState &state)
赋值操作符。
Definition: fs_pdfgraphicsobject.h:963
foxit::pdf::graphics::ColorState::IsEmpty
bool IsEmpty() const
检查当前对象是否为空。
fs_file.h
文件操作相关定义和函数的头文件。
foxit::pdf::graphics::ColorState::SetFillColor
void SetFillColor(const common::Color &color)
设置填充颜色。
foxit::pdf::graphics::ColorState::GetStrokeColor
common::Color GetStrokeColor()
获取描边颜色。
foxit::pdf::graphics::MarkedContent::~MarkedContent
~MarkedContent()
析构函数。
Definition: fs_pdfgraphicsobject.h:146
foxit::ARGB
uint32 ARGB
ARGB 颜色类型，32 位，((b) | ((g) << 8) | ((r) << 16)) | ((a) << 24)
Definition: fs_basictypes.h:210
foxit::pdf::graphics::ShadingObject
Definition: fs_pdfgraphicsobject.h:1560
foxit::pdf::graphics::GraphicsObject::e_BlendColorDodge
增亮背景颜色以反映源颜色。
Definition: fs_pdfgraphicsobject.h:286
foxit::pdf::graphics::TextState::e_ModeClip
文本模式：将文本添加到路径以进行裁剪。
Definition: fs_pdfgraphicsobject.h:886
foxit::pdf::objects::PDFObject
Definition: fs_pdfobject.h:55
foxit::pdf::graphics::TextObject::GetCharPos
PointF GetCharPos(int index) const
获取当前文本对象中指定索引字符的位置。
foxit::pdf::graphics::GraphicsObject::GetColorState
ColorState GetColorState() const
获取颜色状态。
foxit::pdf::graphics::TextObject::GetCharWidthByIndex
float GetCharWidthByIndex(int index) const
获取当前文本对象中指定索引字符的宽度。
foxit::pdf::graphics::ImageObject::CloneBitmap
common::Bitmap CloneBitmap(const GraphicsObjects &graphics_objects)
从当前图像图形对象克隆位图。
foxit::pdf::graphics::GraphicsObject::e_BlendNormal
选择源颜色并忽略背景颜色。
Definition: fs_pdfgraphicsobject.h:245
foxit::pdf::graphics::ImageObject::SetImage
void SetImage(const common::Image &image, int frame_index)
将图像的一帧设置到当前图像图形对象。
foxit::pdf::graphics::GraphicsObject::Transform
bool Transform(const Matrix &matrix, bool need_transform_clippath)
变换当前图形对象。
foxit::common::Path
Definition: fs_common.h:2167
foxit::pdf::graphics::GraphicsObject::GetBlendMode
BlendMode GetBlendMode() const
获取透明成像模型的混合模式。
foxit::pdf::graphics::GraphicsObject::SetClipRect
void SetClipRect(const RectF &clip_rect)
设置裁剪矩形。
foxit::pdf::graphics::GraphicsObject::e_BlendOverlay
根据背景颜色值进行相乘或滤色。
Definition: fs_pdfgraphicsobject.h:263
foxit::pdf::LayerTree
Definition: fs_pdflayer.h:123
foxit::pdf::graphics::GraphicsObject::GetRect
RectF GetRect() const
获取当前图形对象的矩形。
foxit::pdf::graphics::GraphicsObject::e_TypeFormXObject
表单XObject图形对象。
Definition: fs_pdfgraphicsobject.h:376
foxit::pdf::graphics::ColorState::operator=
ColorState & operator=(const ColorState &other)
赋值操作符。
foxit::pdf::graphics::GraphicsObject::GetFormXObject
FormXObject * GetFormXObject() const
如果当前图形对象表示表单XObject对象，则获取表单XObject图形对象。
foxit::pdf::graphics::TextState::e_ModeStroke
文本模式：描边文本。
Definition: fs_pdfgraphicsobject.h:874
foxit::common::ColorSpaceType
ColorSpaceType
颜色空间枚举。
Definition: fs_common.h:200
foxit::pdf::graphics::ImageObject::GetStream
objects::PDFStream * GetStream() const
获取图像流。
foxit::pdf::graphics::GraphicsObject::SetStrokeColor
void SetStrokeColor(ARGB color)
设置描边颜色。
foxit::pdf::graphics::GraphicsObject::GetMatrix
Matrix GetMatrix() const
获取矩阵。
foxit::pdf::graphics::GraphicsObject::e_TypeImage
图像图形对象。
Definition: fs_pdfgraphicsobject.h:372
foxit::pdf::graphics::GraphicsObject::e_BlendDifference
从较亮的颜色中减去两种组成颜色中较暗的一种。
Definition: fs_pdfgraphicsobject.h:326
CFX_ByteString
字节字符串类
Definition: fx_string.h:317
foxit::pdf::graphics::ImageObject::Create
static ImageObject * Create(const PDFDoc &document)
创建新的图像图形对象。
foxit::pdf::graphics::GraphicsObject::e_BlendMultiply
将背景与源颜色值相乘。
Definition: fs_pdfgraphicsobject.h:251
foxit::pdf::graphics::ColorState
Definition: fs_pdfgraphicsobject.h:52
foxit::pdf::graphics::GraphicsObject::e_BlendLuminosity
使用源颜色的明度和背景颜色的色调和饱和度创建颜色。
Definition: fs_pdfgraphicsobject.h:356
foxit::pdf::graphics::TextState::e_ModeFill
文本模式：填充文本。
Definition: fs_pdfgraphicsobject.h:872
CFX_PSVTemplate
Definition: fx_coordinates.h:30
foxit::pdf::graphics::TextState::e_ModeInvisible
文本模式：既不填充也不描边文本，使其不可见。
Definition: fs_pdfgraphicsobject.h:878
foxit::pdf::graphics::ImageObject::SetBitmap
void SetBitmap(const common::Bitmap &bitmap, const common::Bitmap &mask=common::Bitmap())
将位图设置到当前图像图形对象。
foxit::pdf::graphics::GraphicsObject::e_BlendScreen
将背景的补码与源颜色值相乘，然后对结果取补。
Definition: fs_pdfgraphicsobject.h:257
foxit::pdf::graphics::TextObject::GetTextState
TextState GetTextState(const PDFPage &page) const
获取文本状态信息。
foxit::pdf::graphics::TextState::Mode
Mode
文本模式的枚举。
Definition: fs_pdfgraphicsobject.h:870
foxit::pdf::graphics::TextObject
Definition: fs_pdfgraphicsobject.h:1259
foxit::pdf::graphics::GraphicsObject
Definition: fs_pdfgraphicsobject.h:232
foxit::pdf::graphics::GraphicsObject::e_TypeText
文本图形对象。
Definition: fs_pdfgraphicsobject.h:368
foxit::pdf::graphics::GraphicsObject::e_BlendColor
使用源颜色的色调和饱和度以及背景颜色的明度创建颜色。
Definition: fs_pdfgraphicsobject.h:350
foxit::pdf::graphics::GraphicsObject::SetFillColor
void SetFillColor(ARGB color)
设置填充颜色。
foxit::common::FillMode
FillMode
填充模式类型枚举，主要用于路径图形对象。
Definition: fs_common.h:108
foxit::pdf::graphics::ImageObject::CreateFromType3TextObject
static ImageObject * CreateFromType3TextObject(const PDFPage &page, TextObject *text_obj)
从type3文本对象创建图像图形对象。
fs_pdfobject.h
PDF对象相关定义和类的头文件。
foxit::pdf::graphics::GraphicsObject::RemoveClipPath
bool RemoveClipPath(int index)
根据索引删除路径裁剪。
foxit::pdf::graphics::ColorState::GetFillColor
common::Color GetFillColor()
获取填充颜色。
foxit::pdf::graphics::GraphicsObject::AddClipPath
bool AddClipPath(const common::Path &path, common::FillMode fill_mode)
添加用于裁剪的路径。
foxit::pdf::graphics::GraphicsObject::e_TypeAll
表示所有图形对象类型，仅用作过滤器。
Definition: fs_pdfgraphicsobject.h:366
foxit
Foxit命名空间。
Definition: fs_taggedpdf.h:27
foxit::pdf::graphics::ColorState::~ColorState
~ColorState()
析构函数。
foxit::pdf::graphics::TextState::TextState
TextState()
构造函数。
Definition: fs_pdfgraphicsobject.h:922
foxit::pdf::graphics::GraphicsObject::GetClipTextObjectCount
int GetClipTextObjectCount() const
获取文本裁剪的数量。
foxit::pdf::graphics::GraphicsObjectArray
CFX_ArrayTemplate< GraphicsObject * > GraphicsObjectArray
Definition: fs_pdfgraphicsobject.h:860
foxit::pdf::graphics::PathObject::SetStrokeState
void SetStrokeState(bool is_stroke)
设置描边状态。
foxit::pdf::graphics::GraphicsObject::GetType
Type GetType() const
获取当前图形对象的类型。
foxit::pdf::graphics::FormXObject::ImportPageContent
bool ImportPageContent(const PDFPage &source_page, bool is_annots_included)
从指定的PDF页面将页面内容导入到当前表单XObject。
foxit::pdf::graphics::TextState::font
common::Font font
字体对象。
Definition: fs_pdfgraphicsobject.h:1023
foxit::pdf::graphics::PathObject::GetPathData
common::Path GetPathData() const
获取路径数据。
foxit::pdf::graphics::GraphicsObject::e_BlendHardlight
根据源颜色值进行相乘或滤色。
Definition: fs_pdfgraphicsobject.h:307
fs_image.h
图像和位图相关定义和类的头文件。
foxit::pdf::graphics::ColorState::SetStrokeColor
void SetStrokeColor(const common::Color &color)
设置描边颜色。
foxit::pdf::objects::PDFDictionary
Definition: fs_pdfobject.h:848
foxit::pdf::graphics::GraphicsObject::GetPathObject
PathObject * GetPathObject() const
如果当前图形对象表示路径对象，则获取路径图形对象。
foxit::pdf::graphics::GraphicsObject::GetStrokeColor
ARGB GetStrokeColor() const
获取描边颜色。
foxit::pdf::graphics::MarkedContent::AddItem
int AddItem(const char *tag_name, objects::PDFDictionary *property_dict=0)
添加新的标记内容项。
foxit::pdf::graphics::GraphicsObject::GetLayers
LayerNodeArray GetLayers(const LayerTree &layer_tree)
获取与当前图形对象关联的所有图层。
foxit::pdf::graphics::GraphicsObject::Rotate
void Rotate(int angle)
从当前状态以指定的角度顺时针旋转当前图形对象。
foxit::pdf::graphics::GraphicsObject::AddClipTextObject
bool AddClipTextObject(TextObject *textobject)
添加用于裁剪的文本对象。
foxit::pdf::graphics::GraphicsObject::SetMatrix
void SetMatrix(const Matrix &matrix)
设置矩阵。
foxit::pdf::graphics::GraphicsObject::GetMarkedContent
MarkedContent * GetMarkedContent() const
获取标记内容对象。
foxit::pdf::graphics::ImageObject
Definition: fs_pdfgraphicsobject.h:1102
NULL
#define NULL
空指针值。
Definition: fx_system.h:792
foxit::pdf::graphics::GraphicsObject::e_TypeInlines
内联图形对象。
Definition: fs_pdfgraphicsobject.h:378
foxit::pdf::graphics::GraphicsObject::e_BlendExclusion
使用源颜色的色调和背景颜色的饱和度和明度创建颜色。
Definition: fs_pdfgraphicsobject.h:332
foxit::pdf::graphics::GraphicsObject::e_TypeEmptyMarkedContent
空标记内容对象。
Definition: fs_pdfgraphicsobject.h:380
CFX_FloatRect
Definition: fx_coordinates.h:771
foxit::pdf::graphics::MarkedContent::GetItemMCID
int GetItemMCID(int index) const
根据索引获取指定标记内容项的标记内容标识符(MCID)。
foxit::pdf::graphics::MarkedContent::GetItemTagName
String GetItemTagName(int index) const
根据索引获取指定标记内容项的标签名称。
foxit::pdf::graphics::GraphicsObject::e_BlendSaturation
使用源颜色的饱和度和背景颜色的色调和明度创建颜色。
Definition: fs_pdfgraphicsobject.h:344
foxit::pdf::PDFDoc
Definition: fs_pdfdoc.h:771
foxit::pdf::PDFPage
Definition: fs_pdfpage.h:421
foxit::pdf::graphics::TextState::e_ModeFillClip
文本模式：填充文本并添加到路径以进行裁剪。
Definition: fs_pdfgraphicsobject.h:880
foxit::pdf::graphics::TextObject::GetCharCount
int GetCharCount() const
获取当前文本对象中的字符数量。
foxit::pdf::graphics::GraphicsObject::GetStrokeOpacity
float GetStrokeOpacity() const
获取路径和字形轮廓的描边绘制操作的不透明度值。
foxit::pdf::graphics::TextState::e_ModeFillStrokeClip
文本模式：填充和描边文本，并添加到路径以进行裁剪。
Definition: fs_pdfgraphicsobject.h:884
foxit::pdf::graphics::TextState::font_size
float font_size
"Tf"中的字体大小。如果有效，应该大于0。
Definition: fs_pdfgraphicsobject.h:1030
foxit::pdf::graphics::TextState::font_horizontal_size
float font_horizontal_size
设备单位中的字体水平大小(只读)。如果有效，应该大于0。
Definition: fs_pdfgraphicsobject.h:1044
foxit::pdf::graphics::TextState::font_vertical_size
float font_vertical_size
设备单位中的字体垂直大小(只读)。如果有效，应该大于0。
Definition: fs_pdfgraphicsobject.h:1037
foxit::pdf::graphics::PathObject::CreateFromTextObject
static PathObject * CreateFromTextObject(const PDFPage &page, TextObject *text_obj)
从文本对象创建路径图形对象。
foxit::common::Image
Definition: fs_image.h:449
foxit::pdf::graphics::ColorState::operator==
bool operator==(const ColorState &other) const
相等操作符。
foxit::pdf::graphics::GraphicsObject::GetClipPathFillMode
common::FillMode GetClipPathFillMode(int index) const
根据索引获取路径裁剪的填充模式。
foxit::pdf::graphics::GraphicsObject::GetGraphState
common::GraphState GetGraphState() const
获取图形状态。
foxit::pdf::graphics::TextState::wordspace
float wordspace
单词间距(仅适用于空格字符)。
Definition: fs_pdfgraphicsobject.h:1066
foxit::pdf::graphics::FormXObject::GetGraphicsObjects
GraphicsObjects GetGraphicsObjects() const
获取与当前表单XObject关联的图形对象。
foxit::PointF
CFX_PointF PointF
点信息，浮点型。
Definition: fs_basictypes.h:469
foxit::pdf::graphics::TextState::version
uint32 version
此类的版本。
Definition: fs_pdfgraphicsobject.h:1016
foxit::pdf::graphics::TextState::e_ModeStrokeClip
文本模式：描边文本并添加到路径以进行裁剪。
Definition: fs_pdfgraphicsobject.h:882
foxit::common::Font
Definition: fs_common.h:1519
CFX_Matrix
Definition: fx_coordinates.h:1076
foxit::pdf::graphics::GraphicsObject::SetFillOpacity
void SetFillOpacity(float opacity)
设置除描边外的绘制操作的不透明度值。
foxit::pdf::graphics::ShadingObject::GetPDFObject
objects::PDFObject * GetPDFObject() const
获取在PDF文件中表示阴影图形对象的PDF对象。
foxit::pdf::graphics::GraphicsObject::GetShadingObject
ShadingObject * GetShadingObject() const
如果当前图形对象表示阴影对象，则获取阴影图形对象。
foxit::pdf::graphics::PathObject::GetFillMode
common::FillMode GetFillMode() const
获取填充模式。
foxit::pdf::graphics::GraphicsObject::SetGraphState
void SetGraphState(const common::GraphState &graph_state)
设置图形状态。
foxit::pdf::graphics::GraphicsObject::ClearClips
bool ClearClips()
清除所有裁剪。
foxit::pdf::graphics::TextObject::SetText
void SetText(const wchar_t *text)
设置文本字符串。
foxit::pdf::graphics::GraphicsObject::SetStrokeOpacity
void SetStrokeOpacity(float opacity)
设置路径和字形轮廓的描边绘制操作的不透明度值。
foxit::pdf::objects::PDFStream
Definition: fs_pdfobject.h:448
foxit::pdf::graphics::TextObject::SetTextState
void SetTextState(const PDFPage &page, const TextState &text_state, bool is_italic, int weight)
设置文本状态信息。
CFX_WideString
宽字符串类
Definition: fx_string.h:1457
foxit::pdf::graphics::ImageObject::GetColorSpace
common::ColorSpaceType GetColorSpace() const
获取颜色空间。
foxit::common::Bitmap
Definition: fs_image.h:36
foxit::pdf::graphics::PathObject::SetPathData
void SetPathData(const common::Path &path_data)
设置路径数据。
foxit::pdf::graphics::TextState
Definition: fs_pdfgraphicsobject.h:863
foxit::pdf::graphics::GraphicsObject::e_TypePath
路径图形对象。
Definition: fs_pdfgraphicsobject.h:370
foxit::pdf::graphics::FormXObject::GetStream
objects::PDFStream * GetStream() const
获取流。
foxit::uint32
FX_UINT32 uint32
无符号 32 位整数。
Definition: fs_basictypes.h:196
foxit::pdf::graphics::GraphicsObject::e_BlendLighten
选择背景和源颜色中较亮的一个。
Definition: fs_pdfgraphicsobject.h:275
foxit::pdf::graphics::ColorState::operator!=
bool operator!=(const ColorState &other) const
不等操作符。
foxit::pdf::graphics::GraphicsObject::SetBlendMode
void SetBlendMode(BlendMode blend_mode)
设置透明成像模型的混合模式。
foxit::Base
Definition: fs_basictypes.h:449
foxit::pdf::graphics::GraphicsObject::GetFillColor
ARGB GetFillColor() const
获取填充颜色。
foxit::pdf::graphics::GraphicsObject::BlendMode
BlendMode
渲染混合模式的枚举。
Definition: fs_pdfgraphicsobject.h:239
foxit::pdf::graphics::GraphicsObject::Clone
GraphicsObject * Clone()
克隆新的图形对象。
foxit::pdf::graphics::ImageObject::GetMask
objects::PDFObject * GetMask() const
获取表示当前图像图形对象蒙版的PDF对象。
foxit::pdf::GraphicsObjects
Definition: fs_pdfpage.h:64
foxit::pdf::graphics::ImageObject::IsImageMask
bool IsImageMask() const
检查当前图像对象是否被视为蒙版。
foxit::pdf::graphics::GraphicsObject::GetClipTextObject
TextObject * GetClipTextObject(int index) const
根据索引获取文本裁剪的文本对象。