Skip to content

Commit 2abd178

Browse files
Merge pull request #16180 from ricardoquesada/issue_16113
test case for issue #16113
2 parents bbedddb + aff6e78 commit 2abd178

File tree

2 files changed

+50
-0
lines changed

2 files changed

+50
-0
lines changed

tests/cpp-tests/Classes/RenderTextureTest/RenderTextureTest.cpp

+37
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ RenderTextureTests::RenderTextureTests()
1212
ADD_TEST_CASE(RenderTextureTargetNode);
1313
ADD_TEST_CASE(SpriteRenderTextureBug);
1414
ADD_TEST_CASE(RenderTexturePartTest);
15+
ADD_TEST_CASE(Issue16113Test);
1516
};
1617

1718
/**
@@ -698,3 +699,39 @@ std::string SpriteRenderTextureBug::subtitle() const
698699
{
699700
return "Touch the screen. Sprite should appear on under the touch";
700701
}
702+
703+
704+
//
705+
// Issue16113Test
706+
//
707+
Issue16113Test::Issue16113Test()
708+
{
709+
auto s = Director::getInstance()->getWinSize();
710+
711+
// Save Image menu
712+
MenuItemFont::setFontSize(16);
713+
auto item1 = MenuItemFont::create("Save Image", [&](Ref* ref){
714+
auto winSize = Director::getInstance()->getVisibleSize();
715+
auto text = Label::createWithTTF("hello world", "fonts/Marker Felt.ttf", 40);
716+
text->setTextColor(Color4B::RED);
717+
auto target = RenderTexture::create(winSize.width, winSize.height, Texture2D::PixelFormat::RGBA8888);
718+
target->beginWithClear(0,0,0,0);
719+
text->setPosition(winSize.width / 2,winSize.height/2);
720+
text->Node::visit();
721+
target->end();
722+
target->saveToFile("issue16113.png", Image::Format::PNG);
723+
});
724+
auto menu = Menu::create(item1, nullptr);
725+
this->addChild(menu);
726+
menu->setPosition(s.width/2, s.height/2);
727+
}
728+
729+
std::string Issue16113Test::title() const
730+
{
731+
return "Github Issue 16113";
732+
}
733+
734+
std::string Issue16113Test::subtitle() const
735+
{
736+
return "aaa.png file without white border on iOS";
737+
}

tests/cpp-tests/Classes/RenderTextureTest/RenderTextureTest.h

+13
Original file line numberDiff line numberDiff line change
@@ -142,4 +142,17 @@ class SpriteRenderTextureBug : public RenderTextureTest
142142
SimpleSprite* addNewSpriteWithCoords(const cocos2d::Vec2& p);
143143
};
144144

145+
class Issue16113Test : public RenderTextureTest
146+
{
147+
public:
148+
CREATE_FUNC(Issue16113Test);
149+
Issue16113Test();
150+
virtual std::string title() const override;
151+
virtual std::string subtitle() const override;
152+
153+
private:
154+
cocos2d::RenderTexture* _rend;
155+
cocos2d::Sprite* _spriteDraw;
156+
};
157+
145158
#endif

0 commit comments

Comments
 (0)