cocos2d 字体颜色
#ifndef __CCTYPES_H__ #define __CCTYPES_H__ #include <string> #include "cocoa/CCGeometry.h" #include "CCGL.h" NS_CC_BEGIN /** RGB color composed(组成) of bytes 3 bytes @since v0.8 */ typedef struct _ccColor3B { GLubyte r; ///// typedef unsigned char GLubyte; //////// GLubyte g; GLubyte b; } ccColor3B; //! helper macro(宏) that creates an ccColor3B type //ccc3用于创建一个ccColor3B type的宏 static inline ccColor3B ccc3(const GLubyte r,const GLubyte g,const GLubyte b) ccColor3B c = {r,g,b}; return c; } /** returns true if both ccColor3B are equal. Otherwise it returns false. static inline bool ccc3BEqual(const ccColor3B &col1,const ccColor3B &col2) //判断两个cccolor3b是否相同 return col1.r == col2.r && col1.g == col2.g && col1.b == col2.b; //ccColor3B predefined(预先定义的) colors //! White color (255,255) static const ccColor3B ccWHITE={255,255}; //! Yellow color (255,0) static const ccColor3B ccYELLOW={255,0}; //! Blue color (0,255);margin-top:0px;margin-bottom:0px;font-size:11px;font-family:Menlo;">static const ccColor3B ccBLUE={0,255);margin-top:0px;margin-bottom:0px;font-size:11px;font-family:Menlo;">//! Green Color (0,255);margin-top:0px;margin-bottom:0px;font-size:11px;font-family:Menlo;">static const ccColor3B ccGREEN={0,255);margin-top:0px;margin-bottom:0px;font-size:11px;font-family:Menlo;">//! Red Color (255,) static const ccColor3B ccRED={255,255);margin-top:0px;margin-bottom:0px;font-size:11px;font-family:Menlo;">//! Magenta Color (255,255);margin-top:0px;margin-bottom:0px;font-size:11px;font-family:Menlo;">static const ccColor3B ccMAGENTA={255,255);margin-top:0px;margin-bottom:0px;font-size:11px;font-family:Menlo;">//! Black Color (0,255);margin-top:0px;margin-bottom:0px;font-size:11px;font-family:Menlo;">static const ccColor3B ccBLACK={0,255);margin-top:0px;margin-bottom:0px;font-size:11px;font-family:Menlo;">//! Orange Color (255,127,255);margin-top:0px;margin-bottom:0px;font-size:11px;font-family:Menlo;">static const ccColor3B ccORANGE={255,255);margin-top:0px;margin-bottom:0px;font-size:11px;font-family:Menlo;">//! Gray Color (166,166,166) static const ccColor3B ccGRAY={166,166}; /** RGBA color composed(组成) of 4 bytes typedef struct _ccColor4B GLubyte a; } ccColor4B; //! helper macro that creates an ccColor4B type //ccc4用于创建一个ccColor3B type的宏 static inline ccColor4B ccc4(const GLubyte r,const GLubyte b,const GLubyte o) ccColor4B c = {r,b,o}; /** RGBA color composed of 4 floats typedef struct _ccColor4F { GLfloat r; GLfloat g; GLfloat b; GLfloat a; } ccColor4F; /** Returns a ccColor4F from a ccColor3B. Alpha will be 1. @since v0.99.1 static inline ccColor4F ccc4FFromccc3B(ccColor3B c) ccColor4F c4 = {c.r/255.f,c.g/255.f,c.b/255.f,1.f}; return c4; //! helper that creates a ccColor4f type static inline ccColor4F ccc4f(const GLfloat r,const GLfloat g,const GLfloat b,const GLfloat a) ccColor4F c4 = {r,a}; /** Returns a ccColor4F from a ccColor4B. static inline ccColor4F ccc4FFromccc4B(ccColor4B c) static inline ccColor4B ccc4BFromccc4F(ccColor4F c) ccColor4B ret = {(GLubyte)(c.r*255),(GLubyte)(c.g*255),(GLubyte)(c.b*255),(GLubyte)(c.a*255)}; return ret; /** returns YES if both ccColor4F are equal. Otherwise it returns NO. static inline bool ccc4FEqual(ccColor4F a,ccColor4F b) return a.r == b.r && a.g == b.g && a.b == b.b && a.a == b.a; /** A vertex composed of 2 floats: x,y typedef struct _ccVertex2F //向量 GLfloat x; GLfloat y; } ccVertex2F; static inline ccVertex2F vertex2(const float x,const float y)//vertex2 创建向量 ccVertex2F c = {x,y}; typedef struct _ccVertex3F//三维向量 GLfloat z; } ccVertex3F; static inline ccVertex3F vertex3(const float x,const float y,const float z)//vertex3创建三维向量 ccVertex3F c = {x,y,z};
/** A texcoord composed of 2 floats: u,255);margin-top:0px;margin-bottom:0px;font-size:11px;font-family:Menlo;">typedef struct _ccTex2F { //纹理坐标 GLfloat u; GLfloat v; } ccTex2F; static inline ccTex2F tex2(const float u,const float v)//tex2 创建纹理坐标 ccTex2F t = {u,v}; return t; //! Point Sprite component typedef struct_ccPointSprite ccVertex2F pos; // 8 bytes ccColor4B color; // 4 bytes GLfloat size; // 4 bytes } ccPointSprite; //! A 2D Quad. 4 * 2 floats //图块 4个顶点(ccVertex2F)组成 typedef struct _ccQuad2 { ccVertex2F tl; ccVertex2F tr; ccVertex2F bl; ccVertex2F br; } ccQuad2; //! A 3D Quad. 4 * 3 floats typedef struct _ccQuad3 { //3d图块4个顶点(ccVertex3F)组成 ccVertex3F bl; ccVertex3F br; ccVertex3F tl; ccVertex3F tr; } ccQuad3; //! a Point with a vertex point,a tex coord point and a color 4B _ccV2F_C4B_T2F //采用2维向量 4b颜色 的ccpoint //! vertices (2F) ccVertex2F vertices; //! colors (4B) ccColor4B colors; //! tex coords (2F) ccTex2F texCoords; } ccV2F_C4B_T2F; _ccV2F_C4F_T2F //采用2维向量 4f颜色 的ccpoint //! colors (4F) ccColor4F colors; } ccV2F_C4F_T2F; _ccV3F_C4B_T2F//采用3维向量 4b颜色 的ccpoint //! vertices (3F) ccVertex3F vertices; // 12 bytes // char __padding__[4]; ccColor4B colors; // 4 bytes // char __padding2__[4]; // tex coords (2F) ccTex2F texCoords; // 8 bytes } ccV3F_C4B_T2F; //! A Triangle(三角形) of ccV2F_C4B_T2F typedef struct _ccV2F_C4B_T2F_Triangle //采用ccV2F_C4B_T2F的三角形 //! Point A ccV2F_C4B_T2F a; //! Point B ccV2F_C4B_T2F b; ccV2F_C4B_T2F c; } ccV2F_C4B_T2F_Triangle; //! A Quad of ccV2F_C4B_T2F typedef struct _ccV2F_C4B_T2F_Quad //采用ccV2F_C4B_T2F的图块 //! bottom left ccV2F_C4B_T2F bl; //! bottom right ccV2F_C4B_T2F br; //! top left ccV2F_C4B_T2F tl; //! top right ccV2F_C4B_T2F tr; } ccV2F_C4B_T2F_Quad; //! 4 ccVertex3FTex2FColor4B typedef struct _ccV3F_C4B_T2F_Quad //采用ccV3F_C4B_T2F的图块 ccV3F_C4B_T2F tl; ccV3F_C4B_T2F bl; ccV3F_C4B_T2F tr; ccV3F_C4B_T2F br; } ccV3F_C4B_T2F_Quad; //! 4 ccVertex2FTex2FColor4F Quad typedef struct _ccV2F_C4F_T2F_Quad //采用ccV2F_C4F_T2F的图块 ccV2F_C4F_T2F bl; ccV2F_C4F_T2F br; ccV2F_C4F_T2F tl; ccV2F_C4F_T2F tr; } ccV2F_C4F_T2F_Quad; //! Blend(混合) Function used for textures typedef struct _ccBlendFunc //用于纹理的混合函数 //! source blend function GLenum src; //资源函数 /////// typedef unsigned int GLenum; ////// //! destination blend function GLenum dst; //目标函数 }ccBlendFunc; static constccBlendFunckCCBlendFuncDisable = {GL_ONE,GL_ZERO}; // #define GL_ONE 1 #define GL_ZERO 0 ///// XXX: If any of these enums(枚举) are edited(编辑的) and/or reordered(再订购;重新整理),update CCTexture2D.m //! Vertical(垂直的) text(文本) alignment(队列) type typedef enum kCCVerticalTextAlignmentTop, kCCVerticalTextAlignmentCenter,255);margin-top:0px;margin-bottom:0px;font-size:11px;font-family:Menlo;"> kCCVerticalTextAlignmentBottom,255);margin-top:0px;margin-bottom:0px;font-size:11px;font-family:Menlo;">} CCVerticalTextAlignment; // XXX: If any of these enums are edited and/or reordered,255);margin-top:0px;margin-bottom:0px;font-size:11px;font-family:Menlo;">//! Horizontal(水平的) text alignment type kCCTextAlignmentLeft,255);margin-top:0px;margin-bottom:0px;font-size:11px;font-family:Menlo;"> kCCTextAlignmentCenter,255);margin-top:0px;margin-bottom:0px;font-size:11px;font-family:Menlo;"> kCCTextAlignmentRight,255);margin-top:0px;margin-bottom:0px;font-size:11px;font-family:Menlo;">} CCTextAlignment; // types for animation in particle systems 粒子系统动画类型 // texture coordinates for a quad typedef struct _ccT2F_Quad ccTex2F bl; ccTex2F br; ccTex2F tl; ccTex2F tr; } ccT2F_Quad; // struct that holds the size in pixels,texture coordinates and delays for animated CCParticleSystemQuad typedef struct ccT2F_Quad texCoords; float delay; CCSize size; } ccAnimationFrameData; /** types used for defining fonts properties (i.e. font name,size,stroke or shadow(阴影 渐变))用于定义字体属性的类型(字体名 大小、、、) // shadow attributes(阴影 渐变)属性 typedef struct _ccFontShadow public:
// shadow is not enabled by default默认情况阴影不使用 _ccFontShadow(): m_shadowEnabled(false) {} // true if shadow enabled bool m_shadowEnabled; // shadow x and y offset CCSize m_shadowOffset; //偏移量 // shadow blurrines float m_shadowBlur;//模糊值 // shadow opacity float m_shadowOpacity;//透明值 } ccFontShadow; // stroke attributes _ccFontStroke // stroke is disabled by default _ccFontStroke(): m_strokeEnabled(false) {} // true if stroke enabled bool m_strokeEnabled; // stroke color ccColor3B m_strokeColor; // stroke size float m_strokeSize; } ccFontStroke; // font attributes typedef struct _ccFontDefinition //字体定义 _ccFontDefinition(): m_alignment(kCCTextAlignmentCenter),255);margin-top:0px;margin-bottom:0px;font-size:11px;font-family:Menlo;"> m_vertAlignment(kCCVerticalTextAlignmentTop),255);margin-top:0px;margin-bottom:0px;font-size:11px;font-family:Menlo;"> m_fontFillColor(ccWHITE) { m_dimensions = CCSizeMake(0,0); } // font name std::string m_fontName; // font size int m_fontSize; // horizontal alignment CCTextAlignment m_alignment; // vertical alignment CCVerticalTextAlignment m_vertAlignment; // renering box CCSize m_dimensions; // font color ccColor3B m_fontFillColor; // font shadow ccFontShadow m_shadow; // font stroke ccFontStroke m_stroke; } ccFontDefinition; NS_CC_END #endif //__CCTYPES_H__ (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |