cocos2d-x 3.0移植到Android后,字体改变的问题

无论是在CocoStudio中加载的字体,还是在cocos2d-x中添加的字体,移植成app后,全部改变成微软雅黑的样子,移植过程如下:

Compile++ thumb: cocos2dx_static <= CCNS.cpp
Compile++ thumb: cocos2dx_static <= CCRef.cpp
Compile++ thumb: cocos2dx_static <= CCValue.cpp
Compile++ thumb: cocos2dx_static <= etc1.cpp
Compile++ thumb: cocos2dx_static <= s3tc.cpp
Compile++ thumb: cocos2dx_static <= CCSet.cpp
Compile++ thumb: cocos2dx_static <= CCArray.cpp
Compile++ thumb: cocos2dx_static <= CCString.cpp
Compile++ thumb: cocos2dx_static <= CCDictionary.cpp
Compile++ thumb: cocos2dx_static <= CCDeprecated.cpp
Compile++ thumb: cocos2dx_static <= CCNotificationCenter.cpp
Compile thumb : cocos2dx_static <= aabb.c
Compile thumb : cocos2dx_static <= mat3.c
Compile thumb : cocos2dx_static <= mat4.c
Compile thumb : cocos2dx_static <= neon_matrix_impl.c
Compile thumb : cocos2dx_static <= quaternion.c
Compile thumb : cocos2dx_static <= plane.c
Compile thumb : cocos2dx_static <= ray2.c
Compile thumb : cocos2dx_static <= ray3.c
Compile thumb : cocos2dx_static <= utility.c
Compile thumb : cocos2dx_static <= vec3.c
Compile thumb : cocos2dx_static <= vec2.c
Compile thumb : cocos2dx_static <= vec4.c
D:\cocos2d-x-3.0_projects\Minions_v1.1.1\proj.android…/cocos2d/cocos/2d/…/mat
h/kazmath/kazmath/vec4.c: In function ‘kmVec4Assign’:
D:\cocos2d-x-3.0_projects\Minions_v1.1.1\proj.android…/cocos2d/cocos/2d/…/mat
h/kazmath/kazmath/vec4.c:183:2: warning: incompatible implicit declaration of bu
ilt-in function ‘memcpy’
memcpy(pOut, pIn, sizeof(kmScalar) * 4);
^
Compile thumb : cocos2dx_static <= mat4stack.c
Compile thumb : cocos2dx_static <= matrix.c
Compile++ thumb: cocos2dx_static <= CCPhysicsBody.cpp
Compile++ thumb: cocos2dx_static <= CCPhysicsContact.cpp
Compile++ thumb: cocos2dx_static <= CCPhysicsJoint.cpp
Compile++ thumb: cocos2dx_static <= CCPhysicsShape.cpp
Compile++ thumb: cocos2dx_static <= CCPhysicsWorld.cpp
Compile++ thumb: cocos2dx_static <= CCPhysicsBodyInfo_chipmunk.cpp
Compile++ thumb: cocos2dx_static <= CCPhysicsContactInfo_chipmunk.cpp
Compile++ thumb: cocos2dx_static <= CCPhysicsJointInfo_chipmunk.cpp
Compile++ thumb: cocos2dx_static <= CCPhysicsShapeInfo_chipmunk.cpp
Compile++ thumb: cocos2dx_static <= CCPhysicsWorldInfo_chipmunk.cpp
Compile++ thumb: cocos2dx_static <= tinyxml2.cpp
Compile++ thumb: cocos2dx_static <= ioapi.cpp
Compile++ thumb: cocos2dx_static <= unzip.cpp
Compile++ thumb: cocos2dx_static <= edtaa3func.cpp
Compile thumb : cocos2dx_static <= xxhash.c
Compile++ thumb: cocosdenshion_static <= cddSimpleAudioEngine.cpp
Compile++ thumb: cocosdenshion_static <= ccdandroidUtils.cpp
Compile++ thumb: cocosdenshion_static <= cddandroidAndroidJavaEngine.c
pp
Compile++ thumb: box2d_static <= b2BroadPhase.cpp
Compile++ thumb: box2d_static <= b2CollideCircle.cpp
Compile++ thumb: box2d_static <= b2CollideEdge.cpp
Compile++ thumb: box2d_static <= b2CollidePolygon.cpp
Compile++ thumb: box2d_static <= b2Collision.cpp
In file included from D:\cocos2d-x-3.0_projects\Minions_v1.1.1\proj.android…/c
ocos2d/cocos/audio/android/…/…/2d/cocos2d.h:88:0,
from D:\cocos2d-x-3.0_projects\Minions_v1.1.1\proj.android…/c
ocos2d/cocos/audio/android/ccdandroidUtils.cpp:26:
D:\cocos2d-x-3.0_projects\Minions_v1.1.1\proj.android…/cocos2d/cocos/audio/and
roid/…/…/2d/CCLabelTTF.h:77:77: warning: ‘LabelTTF’ is deprecated (declared at
D:\cocos2d-x-3.0_projects\Minions_v1.1.1\proj.android…/cocos2d/cocos/audio/an
droid/…/…/2d/CCLabelTTF.h:59) -Wdeprecated-declarations]
TextVAlignment vAlignment = TextVAlignment::TOP);
^
D:\cocos2d-x-3.0_projects\Minions_v1.1.1\proj.android…/cocos2d/cocos/audio/and
roid/…/…/2d/CCLabelTTF.h:81:105: warning: ‘LabelTTF’ is deprecated (declared a
t D:\cocos2d-x-3.0_projects\Minions_v1.1.1\proj.android…/cocos2d/cocos/audio/a
ndroid/…/…/2d/CCLabelTTF.h:59) -Wdeprecated-declarations]
static LabelTTF * createWithFontDefinition(const std::string& string, FontD
efinition &textDefinition);

                     ^

D:\cocos2d-x-3.0_projects\Minions_v1.1.1\proj.android…/cocos2d/cocos/audio/and
roid/…/…/2d/CCLabelTTF.h:116:30: warning: ‘LabelTTF’ is deprecated (declared a
t D:\cocos2d-x-3.0_projects\Minions_v1.1.1\proj.android…/cocos2d/cocos/audio/a
ndroid/…/…/2d/CCLabelTTF.h:59) -Wdeprecated-declarations]
static LabelTTF * create();
^
Compile++ thumb: box2d_static <= b2Distance.cpp
In file included from D:\cocos2d-x-3.0_projects\Minions_v1.1.1\proj.android…/c
ocos2d/cocos/audio/android/…/…/2d/cocos2d.h:89:0,
from D:\cocos2d-x-3.0_projects\Minions_v1.1.1\proj.android…/c
ocos2d/cocos/audio/android/ccdandroidUtils.cpp:26:
D:\cocos2d-x-3.0_projects\Minions_v1.1.1\proj.android…/cocos2d/cocos/audio/and
roid/…/…/2d/CCLabelBMFont.h:88:188: warning: ‘LabelBMFont’ is deprecated (decl
ared at D:\cocos2d-x-3.0_projects\Minions_v1.1.1\proj.android…/cocos2d/cocos/a
udio/android/…/…/2d/CCLabelBMFont.h:74) -Wdeprecated-declarations]
static LabelBMFont * create(const std::string& str, const std::string& fntF
ile, float width = 0, TextHAlignment alignment = TextHAlignment::LEFT,const Poin
t& imageOffset = Point::ZERO);

                        ^

D:\cocos2d-x-3.0_projects\Minions_v1.1.1\proj.android…/cocos2d/cocos/audio/and
roid/…/…/2d/CCLabelBMFont.h:92:33: warning: ‘LabelBMFont’ is deprecated (decla
red at D:\cocos2d-x-3.0_projects\Minions_v1.1.1\proj.android…/cocos2d/cocos/au
dio/android/…/…/2d/CCLabelBMFont.h:74) -Wdeprecated-declarations]
static LabelBMFont * create();
^
Compile++ thumb: box2d_static <= b2DynamicTree.cpp
Compile++ thumb: box2d_static <= b2TimeOfImpact.cpp
Compile++ thumb: box2d_static <= b2ChainShape.cpp
Compile++ thumb: box2d_static <= b2CircleShape.cpp
Compile++ thumb: box2d_static <= b2EdgeShape.cpp
Compile++ thumb: box2d_static <= b2PolygonShape.cpp
Compile++ thumb: box2d_static <= b2BlockAllocator.cpp
Compile++ thumb: box2d_static <= b2Draw.cpp
Compile++ thumb: box2d_static <= b2Math.cpp
Compile++ thumb: box2d_static <= b2Settings.cpp
Compile++ thumb: box2d_static <= b2StackAllocator.cpp
Compile++ thumb: box2d_static <= b2Timer.cpp
Compile++ thumb: box2d_static <= b2Body.cpp
Compile++ thumb: box2d_static <= b2ContactManager.cpp
Compile++ thumb: box2d_static <= b2Fixture.cpp
Compile++ thumb: box2d_static <= b2Island.cpp
Compile++ thumb: box2d_static <= b2World.cpp
Compile++ thumb: box2d_static <= b2WorldCallbacks.cpp
Compile++ thumb: box2d_static <= b2ChainAndCircleContact.cpp
Compile++ thumb: box2d_static <= b2ChainAndPolygonContact.cpp
Compile++ thumb: box2d_static <= b2CircleContact.cpp
Compile++ thumb: box2d_static <= b2Contact.cpp
Compile++ thumb: box2d_static <= b2ContactSolver.cpp
Compile++ thumb: box2d_static <= b2EdgeAndCircleContact.cpp
Compile++ thumb: box2d_static <= b2EdgeAndPolygonContact.cpp
Compile++ thumb: box2d_static <= b2PolygonAndCircleContact.cpp
Compile++ thumb: box2d_static <= b2PolygonContact.cpp
Compile++ thumb: box2d_static <= b2DistanceJoint.cpp
Compile++ thumb: box2d_static <= b2FrictionJoint.cpp
Compile++ thumb: box2d_static <= b2GearJoint.cpp
Compile++ thumb: box2d_static <= b2Joint.cpp
Compile++ thumb: box2d_static <= b2MotorJoint.cpp
Compile++ thumb: box2d_static <= b2MouseJoint.cpp
Compile++ thumb: box2d_static <= b2PrismaticJoint.cpp
Compile++ thumb: box2d_static <= b2PulleyJoint.cpp
Compile++ thumb: box2d_static <= b2RevoluteJoint.cpp
Compile++ thumb: box2d_static <= b2RopeJoint.cpp
Compile++ thumb: box2d_static <= b2WheelJoint.cpp
Compile++ thumb: box2d_static <= b2WeldJoint.cpp
Compile++ thumb: box2d_static <= b2Rope.cpp
Compile++ thumb: cocostudio_static <= CCActionFrame.cpp
Compile++ thumb: cocostudio_static <= CCActionFrameEasing.cpp
Compile++ thumb: cocostudio_static <= CCActionManagerEx.cpp
Compile++ thumb: cocostudio_static <= CCActionNode.cpp
Compile++ thumb: cocostudio_static <= CCActionObject.cpp
Compile++ thumb: cocostudio_static <= CCArmature.cpp
Compile++ thumb: cocostudio_static <= CCBone.cpp
Compile++ thumb: cocostudio_static <= CCArmatureAnimation.cpp
Compile++ thumb: cocostudio_static <= CCProcessBase.cpp
Compile++ thumb: cocostudio_static <= CCTween.cpp
Compile++ thumb: cocostudio_static <= CCDatas.cpp
Compile++ thumb: cocostudio_static <= CCBatchNode.cpp
Compile++ thumb: cocostudio_static <= CCDecorativeDisplay.cpp
Compile++ thumb: cocostudio_static <= CCDisplayFactory.cpp
Compile++ thumb: cocostudio_static <= CCDisplayManager.cpp
Compile++ thumb: cocostudio_static <= CCSkin.cpp
Compile++ thumb: cocostudio_static <= CCColliderDetector.cpp
Compile++ thumb: cocostudio_static <= CCArmatureDataManager.cpp
Compile++ thumb: cocostudio_static <= CCArmatureDefine.cpp
Compile++ thumb: cocostudio_static <= CCSpriteFrameCacheHelper.cpp
Compile++ thumb: cocostudio_static <= CCDataReaderHelper.cpp
Compile++ thumb: cocostudio_static <= CCTransformHelp.cpp
Compile++ thumb: cocostudio_static <= CCUtilMath.cpp
Compile++ thumb: cocostudio_static <= CCComAttribute.cpp
Compile++ thumb: cocostudio_static <= CCComAudio.cpp
Compile++ thumb: cocostudio_static <= CCComController.cpp
Compile++ thumb: cocostudio_static <= CCComRender.cpp
Compile++ thumb: cocostudio_static <= CCInputDelegate.cpp
Compile++ thumb: cocostudio_static <= DictionaryHelper.cpp
Compile++ thumb: cocostudio_static <= CCSGUIReader.cpp
Compile++ thumb: cocostudio_static <= CCSSceneReader.cpp
Compile++ thumb: cocostudio_static <= ObjectFactory.cpp
Compile++ thumb: cocostudio_static <= TriggerBase.cpp
Compile++ thumb: cocostudio_static <= TriggerMng.cpp
Compile++ thumb: cocostudio_static <= TriggerObj.cpp
Compile++ thumb: cocostudio_static <= WidgetReader.cpp
Compile++ thumb: cocostudio_static <= ButtonReader.cpp
Compile++ thumb: cocostudio_static <= CheckBoxReader.cpp
Compile++ thumb: cocostudio_static <= ImageViewReader.cpp
Compile++ thumb: cocostudio_static <= LayoutReader.cpp
Compile++ thumb: cocostudio_static <= ListViewReader.cpp
Compile++ thumb: cocostudio_static <= LoadingBarReader.cpp
Compile++ thumb: cocostudio_static <= PageViewReader.cpp
Compile++ thumb: cocostudio_static <= ScrollViewReader.cpp
Compile++ thumb: cocostudio_static <= SliderReader.cpp
Compile++ thumb: cocostudio_static <= TextAtlasReader.cpp
Compile++ thumb: cocostudio_static <= TextBMFontReader.cpp
Compile++ thumb: cocostudio_static <= TextFieldReader.cpp
Compile++ thumb: cocostudio_static <= TextReader.cpp
Compile thumb : chipmunk_static <= chipmunk.c
Compile thumb : chipmunk_static <= cpArbiter.c
Compile thumb : chipmunk_static <= cpArray.c
Compile thumb : chipmunk_static <= cpBB.c
Compile thumb : chipmunk_static <= cpBBTree.c
Compile thumb : chipmunk_static <= cpBody.c
Compile thumb : chipmunk_static <= cpCollision.c
Compile thumb : chipmunk_static <= cpHashSet.c
Compile thumb : chipmunk_static <= cpPolyShape.c
Compile thumb : chipmunk_static <= cpShape.c
Compile thumb : chipmunk_static <= cpSpace.c
Compile thumb : chipmunk_static <= cpSpaceComponent.c
Compile thumb : chipmunk_static <= cpSpaceHash.c
Compile thumb : chipmunk_static <= cpSpaceQuery.c
Compile thumb : chipmunk_static <= cpSpaceStep.c
Compile thumb : chipmunk_static <= cpSpatialIndex.c
Compile thumb : chipmunk_static <= cpSweep1D.c
Compile thumb : chipmunk_static <= cpVect.c
Compile thumb : chipmunk_static <= cpConstraint.c
Compile thumb : chipmunk_static <= cpDampedRotarySpring.c
Compile thumb : chipmunk_static <= cpDampedSpring.c
Compile thumb : chipmunk_static <= cpGearJoint.c
Compile thumb : chipmunk_static <= cpGrooveJoint.c
Compile thumb : chipmunk_static <= cpPinJoint.c
Compile thumb : chipmunk_static <= cpRatchetJoint.c
Compile thumb : chipmunk_static <= cpPivotJoint.c
Compile thumb : chipmunk_static <= cpRotaryLimitJoint.c
Compile thumb : chipmunk_static <= cpSimpleMotor.c
Compile thumb : chipmunk_static <= cpSlideJoint.c
Compile++ thumb: cocos2dxandroid_static <= CCApplication.cpp
Compile++ thumb: cocos2dxandroid_static <= CCCommon.cpp
Compile++ thumb: cocos2dxandroid_static <= CCDevice.cpp
Compile++ thumb: cocos2dxandroid_static <= CCGLView.cpp
Compile++ thumb: cocos2dxandroid_static <= CCFileUtilsAndroid.cpp
Compile++ thumb: cocos2dxandroid_static <= javaactivity.cpp
Compile++ thumb: cocos2dxandroid_static <= DPIJni.cpp
Compile++ thumb: cocos2dxandroid_static <= IMEJni.cpp
Compile++ thumb: cocos2dxandroid_static <= Java_org_cocos2dx_lib_Cocos
2dxAccelerometer.cpp
Compile++ thumb: cocos2dxandroid_static <= Java_org_cocos2dx_lib_Cocos
2dxBitmap.cpp
Compile++ thumb: cocos2dxandroid_static <= Java_org_cocos2dx_lib_Cocos
2dxHelper.cpp
Compile++ thumb: cocos2dxandroid_static <= Java_org_cocos2dx_lib_Cocos
2dxRenderer.cpp
Compile++ thumb: cocos2dxandroid_static <= JniHelper.cpp
Compile++ thumb: cocos2dxandroid_static <= TouchesJni.cpp
Compile++ thumb: cocos_ui_static <= UIWidget.cpp
Compile++ thumb: cocos_ui_static <= UILayout.cpp
Compile++ thumb: cocos_ui_static <= UILayoutParameter.cpp
Compile++ thumb: cocos_ui_static <= UILayoutDefine.cpp
Compile++ thumb: cocos_ui_static <= CocosGUI.cpp
Compile++ thumb: cocos_ui_static <= UIHelper.cpp
Compile++ thumb: cocos_ui_static <= UIListView.cpp
Compile++ thumb: cocos_ui_static <= UIPageView.cpp
Compile++ thumb: cocos_ui_static <= UIScrollView.cpp
Compile++ thumb: cocos_ui_static <= UIButton.cpp
Compile++ thumb: cocos_ui_static <= UICheckBox.cpp
Compile++ thumb: cocos_ui_static <= UIImageView.cpp
Compile++ thumb: cocos_ui_static <= UIText.cpp
Compile++ thumb: cocos_ui_static <= UITextAtlas.cpp
Compile++ thumb: cocos_ui_static <= UITextBMFont.cpp
Compile++ thumb: cocos_ui_static <= UILoadingBar.cpp
Compile++ thumb: cocos_ui_static <= UISlider.cpp
Compile++ thumb: cocos_ui_static <= UITextField.cpp
Compile++ thumb: cocos_ui_static <= UIRichText.cpp
Compile++ thumb: cocos_ui_static <= CCProtectedNode.cpp
Compile++ thumb: cocos_ui_static <= UIHBox.cpp
Compile++ thumb: cocos_ui_static <= UIVBox.cpp
Compile++ thumb: cocos_ui_static <= UIRelativeBox.cpp
Compile++ thumb: cocos_extension_static <= AssetsManager.cpp
Compile++ thumb: cocos_extension_static <= CCControl.cpp
Compile++ thumb: cocos_extension_static <= CCControlButton.cpp
Compile++ thumb: cocos_extension_static <= CCControlColourPicker.cpp
Compile++ thumb: cocos_extension_static <= CCControlHuePicker.cpp
Compile++ thumb: cocos_extension_static <= CCControlPotentiometer.cpp
Compile++ thumb: cocos_extension_static <= CCControlSaturationBrightne
ssPicker.cpp
Compile++ thumb: cocos_extension_static <= CCControlSlider.cpp
Compile++ thumb: cocos_extension_static <= CCControlStepper.cpp
Compile++ thumb: cocos_extension_static <= CCControlSwitch.cpp
Compile++ thumb: cocos_extension_static <= CCControlUtils.cpp
Compile++ thumb: cocos_extension_static <= CCInvocation.cpp
Compile++ thumb: cocos_extension_static <= CCScale9Sprite.cpp
Compile++ thumb: cocos_extension_static <= CCEditBox.cpp
Compile++ thumb: cocos_extension_static <= CCEditBoxImplAndroid.cpp
Compile++ thumb: cocos_extension_static <= CCEditBoxImplNone.cpp
Compile++ thumb: cocos_extension_static <= CCEditBoxImplWin.cpp
Compile++ thumb: cocos_extension_static <= CCScrollView.cpp
Compile++ thumb: cocos_extension_static <= CCTableView.cpp
Compile++ thumb: cocos_extension_static <= CCTableViewCell.cpp
Compile++ thumb: cocos_extension_static <= CCPhysicsDebugNode.cpp
Compile++ thumb: cocos_extension_static <= CCPhysicsSprite.cpp
Compile thumb : cpufeatures <= cpu-features.c
StaticLibrary : libcocos2d.a
StaticLibrary : libcocosdenshion.a
StaticLibrary : libbox2d.a
StaticLibrary : libcocostudio.a
StaticLibrary : libchipmunk.a
StaticLibrary : libcocos2dandroid.a
StaticLibrary : libui.a
StaticLibrary : libcpufeatures.a
StaticLibrary : libextension.a
SharedLibrary : libcocos2dcpp.so
Install : libcocos2dcpp.so => libs/armeabi/libcocos2dcpp.so
make.exe: Leaving directory `D:/cocos2d-x-3.0_projects/Minions_v1.1.1/proj.andro
id’
C:\Users\robot>

【问题变相解决】出现这个问题,原因是系统没有找到所使用的字体,虽然所有字体都是微软字体,在cocos2d-x中也都可以正常显示,但转成app后,就无法找到,这个有点坑。这个问题,是使用了CocoStudio的publis文件夹,把所有的ttf都放在了这个文件夹中。
解决方案:新建一个font文件夹专门存字体,放在Resources中,与publish文件夹并列。当cocos2d-x中调用字体时,把之前的“Broadway”更改成“font/Broadway.ttf”,这样就正常了。另外,CocoStudio中的字体,可以先获得,然后更改成“font/Broadway.ttf”的字体即可。对于cocoStudio中的label,不知道是不是获取有问题,暂时还无法获取,所以label的字体就无法更改。