diff options
Diffstat (limited to 'test/05Font/main.cpp')
-rw-r--r-- | test/05Font/main.cpp | 83 |
1 files changed, 43 insertions, 40 deletions
diff --git a/test/05Font/main.cpp b/test/05Font/main.cpp index cdda3f0..f6d9bce 100644 --- a/test/05Font/main.cpp +++ b/test/05Font/main.cpp @@ -19,7 +19,7 @@ void onLoad() const char* program = R"( #VERTEX_SHADER -vertex vert(vertex v) +Vertex vert(Vertex v) { return v; } @@ -28,10 +28,11 @@ vertex vert(vertex v) #FRAGMENT_SHADER -Color frag(Color col, Texture tex, vertex v) +vec2 stepSize = vec2(0.02f, 0.02f); + +Color frag(Color col, Texture tex, Vertex v) { - //return Texel(tex, v.uv); - return vec4(1, 1, 1, 1); + return vec4(col.rgb, texel(tex, v.uv).a); } #END_FRAGMENT_SHADER @@ -42,13 +43,33 @@ Color frag(Color col, Texture tex, vertex v) Buffer buffer; fs->read("font.ttf", &buffer); data = FontData::createFontData((const unsigned char*)buffer.data, buffer.size); - font = Font::createFont(data, 15); + font = Font::createFont(data, 18); + page = font->typeset(u8R"( +平安時代中期の物語。紫式部著。ただし,そのすべてが紫式部の筆に成るのでは +ないとする説もある。 54帖。寛弘 (1004~12) 頃成立か。物語は3部に分けてみ +ることができる。第1部は,容貌,才能などすべてにすぐれた主人公光源氏が,多 +啊哈噶科膜卡して広く迎えられている。貴族社会の苦悩を摘出したところに磁瓷得 +ることができる。第1部は,容貌,才能などすべてにすぐれた主人公光源氏が,多 +くの女性と関係をもちながら,運命に導かれて栄華をきわめる姿を描く。これに対 +して第2部は苦悩の世界であって,光源氏は最愛の紫の上を失い,栄華は内側から崩 +壊する。第3部 (宇治十帖) は光源氏没後の物語で,不義によって生れた薫大将を主 +人公として,不安に満ちた暗い世界が展開される。さまざまな恋愛と運命的な人生の +うちに,貴族社会の苦悩を摘出したところに価値があり,現代では,世界的な文学と +して広く迎えられている。abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ +漫画自1999年开始在日本集英社旗下的少年漫画杂志《周刊少年Jump》上连载。2002年 +,由日本动画工作室Studio Pierrot根据漫画原作所改编制作的电视动画版《火影忍者 +》开始在日本东京电视台播出。2004年,漫画进而改编成电影。2006年,漩涡鸣人入选 +美国《新闻周刊》日文版于10月18日发行的特集中选出的“全世界最受尊敬的100位日本 +人”。[2] +)", 20, 0); + delete data; //canvas = Canvas::createCanvas(100, 100); //page = font->typeset("こんにちは世界!", 120, 20); buffer.clear(); fs->read("img.png", &buffer); Bitmap* bitmap = Bitmap::createBitmap(buffer.data, buffer.size); tex = Texture::createTexture(bitmap); + canvas = Canvas::createCanvas(100, 100); } void onEvent(jin::input::Event* e) @@ -65,45 +86,27 @@ void onUpdate(int ms) void onDraw() { + glClear(GL_COLOR_BUFFER_BIT); + glColor4f(1, 1, 1, 1); //gl.pushColor(32, 32, 32, 255); //rect(FILL, 0, 0, 500, 500); - gl.pushColor(255, 255, 255, 255); shader->use(); - tex->draw(0, 0, 1, 1, 0); + //circle(RenderMode::LINE, 50, 50, 30); + //tex->draw(0, 0, 1, 1, 0); + //tex->draw(20, 50, 1, 1, 0); //shader->sendFloat("dt", dt); - //Canvas::bind(canvas); -// if (font != nullptr) -// { -// glColor4f(1, 1, 1, 1); -// //font->print(u8"Hello,你好\n啊 world!", 10, 10); -// //font->print(u8"Привет мир!", 10, 10 + 15 * 1); -// font->print(u8R"( -//One of the most enjoyable arcade game. -//abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ -//平安時代中期の物語。紫式部著。ただし,そのすべてが紫式部の筆に成るのでは -//ないとする説もある。 54帖。寛弘 (1004~12) 頃成立か。物語は3部に分けてみ -//ることができる。第1部は,容貌,才能などすべてにすぐれた主人公光源氏が,多 -//啊哈噶科膜卡して広く迎えられている。貴族社会の苦悩を摘出したところに磁瓷得 -//ることができる。第1部は,容貌,才能などすべてにすぐれた主人公光源氏が,多 -//くの女性と関係をもちながら,運命に導かれて栄華をきわめる姿を描く。これに対 -//して第2部は苦悩の世界であって,光源氏は最愛の紫の上を失い,栄華は内側から崩 -//壊する。第3部 (宇治十帖) は光源氏没後の物語で,不義によって生れた薫大将を主 -//人公として,不安に満ちた暗い世界が展開される。さまざまな恋愛と運命的な人生の -//うちに,貴族社会の苦悩を摘出したところに価値があり,現代では,世界的な文学と -//して広く迎えられている。abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ -//漫画自1999年开始在日本集英社旗下的少年漫画杂志《周刊少年Jump》上连载。2002年 -//,由日本动画工作室Studio Pierrot根据漫画原作所改编制作的电视动画版《火影忍者 -//》开始在日本东京电视台播出。2004年,漫画进而改编成电影。2006年,漩涡鸣人入选 -//美国《新闻周刊》日文版于10月18日发行的特集中选出的“全世界最受尊敬的100位日本 -//人”。[2] -//)", 12, 10 + 15 * 2, 18); -// //font->print(u8"你好世界!", 10, 10 + 15*3); -// //font->render(page); -// glColor4f(1, 1, 1, 1); -// } - shader->unuse(); - //Canvas::unbind(); - //canvas->draw(0, 0, 2, 2, 0); + Canvas::bind(canvas); + if (font != nullptr) + { + //font->print(u8"Hello,你好\n啊 world!", 10, 10); + //font->print(u8"Привет мир!", 10, 10 + 15 * 1); + font->print(page, 12, 10 + 15 * 2); + //font->print(u8"你好世界!", 10, 10 + 15*3); + //font->render(page); + } + Canvas::unbind(); + canvas->draw(0, 0, 1, 1, 0); + shader->unuse(); } int main(int argc, char* argv[]) |