diff options
| author | j-p <jp_bruyere@hotmail.com> | 2026-10-26 08:46:46 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-10-26 08:46:46 +0100 |
| commit | 61887b0627a0777058bfb72836cf3081b6db062b (patch) | |
| tree | f23bed5fda623da6c173c3fc73e6ce8ff09b0573 | |
| parent | 272db86a1755e87595dc3c2c6f4925c352af3056 (diff) | |
win compilation, font size in api (#178)
| -rw-r--r-- | gunit_tests/drawTestBase.cpp | 4 | ||||
| -rw-r--r-- | include/vkvg.h | 4 | ||||
| -rw-r--r-- | samples/tests/text.cpp | 6 | ||||
| -rw-r--r-- | src/vkvg_context.c | 10 | ||||
| -rw-r--r-- | src/vkvg_context_internal.c | 4 | ||||
| -rw-r--r-- | tests/text.c | 4 |
6 files changed, 16 insertions, 16 deletions
diff --git a/gunit_tests/drawTestBase.cpp b/gunit_tests/drawTestBase.cpp index b05710a..472a814 100644 --- a/gunit_tests/drawTestBase.cpp +++ b/gunit_tests/drawTestBase.cpp @@ -23,8 +23,8 @@ DrawTestBase::DrawTestBase() { vkvg_device_create_info_t info{}; info.samples = VK_SAMPLE_COUNT_4_BIT; - fs::path fontDir = fs::path(GTEST_DATA_ROOT) / "fonts"; - info.fontsDirectories = fontDir.c_str(); + fs::path fontDir = fs::path(GTEST_DATA_ROOT) / fs::path("fonts"); + info.fontsDirectories = fontDir.string().c_str(); dev = vkvg_device_create(&info); } diff --git a/include/vkvg.h b/include/vkvg.h index e15eab0..bd6a465 100644 --- a/include/vkvg.h +++ b/include/vkvg.h @@ -1710,9 +1710,9 @@ vkvg_public void vkvg_select_font_face(VkvgContext ctx, const char* name); * * @param ctx a valid vkvg @ref context * @param path A valid font file path. - * @param name A short name to select this font afteward + * @param size Font size in point units. */ -vkvg_public void vkvg_load_font_from_path(VkvgContext ctx, const char* path, const char* name); +vkvg_public void vkvg_load_font_from_path(VkvgContext ctx, const char* path, uint32_t size); /** * @brief Select a new font by providing a pointer on the font file loaded in memory and its size in byte. * diff --git a/samples/tests/text.cpp b/samples/tests/text.cpp index 3c64586..4eac831 100644 --- a/samples/tests/text.cpp +++ b/samples/tests/text.cpp @@ -201,7 +201,7 @@ TEST(text_simple) { vkvg_paint(ctx); vkvg_set_source_rgb(ctx, 1, 1, 1); - vkvg_load_font_from_path(ctx, "data/DancingScript-Regular.ttf", "dancing"); + vkvg_load_font_from_path(ctx, "data/DancingScript-Regular.ttf", 30); print_boxed(ctx, "abcdefghijklmnopqrstuvwxyz", 20, 60, 20); print_boxed(ctx, "ABC", 20, 160, 60); vkvg_select_font_face(ctx, "mono"); @@ -217,7 +217,7 @@ TEST(text_font_file_path) { vkvg_set_source_rgb(ctx, 0, 0, 0); vkvg_paint(ctx); vkvg_set_source_rgb(ctx, 1, 1, 1); - vkvg_load_font_from_path(ctx, "data/DancingScript-Regular.ttf", "droid"); + vkvg_load_font_from_path(ctx, "data/DancingScript-Regular.ttf", 30); print_boxed(ctx, "This is a test string!", 50, 20, 12); print_boxed(ctx, "This is a test string!", 50, 50, 20); print_boxed(ctx, "ANOTHER ONE TO CHECK..", 50, 80, 20); @@ -321,7 +321,7 @@ TEST(text_proto_sinaitic) { vkvg_paint(ctx); vkvg_set_source_rgb(ctx, 1, 1, 1); - vkvg_load_font_from_path(ctx, "data/Proto-Sinaitic15.ttf", "sinaitic"); + vkvg_load_font_from_path(ctx, "data/Proto-Sinaitic15.ttf", 30); print_boxed(ctx, "hwhy", 100, 150, 60); vkvg_destroy(ctx); diff --git a/src/vkvg_context.c b/src/vkvg_context.c index de9c75a..1711fbe 100644 --- a/src/vkvg_context.c +++ b/src/vkvg_context.c @@ -38,7 +38,7 @@ static const vkvg_context_save_t CTX_INIT = { }; void _init_ctx(VkvgContext ctx) { - memcpy((void*)&(ctx->curColor), (void*)&CTX_INIT, (void*)&(ctx->indCount) - (void*)&(ctx->curColor)); + memcpy((void*)&(ctx->curColor), (void*)&CTX_INIT, (uintptr_t)&(ctx->indCount) - (uintptr_t)&(ctx->curColor)); ctx->cmdStarted = false; ctx->curClipState = vkvg_clip_state_none; @@ -1240,11 +1240,11 @@ void vkvg_select_font_face(VkvgContext ctx, const char* name) { RECORD(ctx, VKVG_CMD_SET_FONT_FACE, name); vkvg_set_font(ctx, vkvg_font_create(ctx->pSurf, name, 12)); } -void vkvg_load_font_from_path(VkvgContext ctx, const char* path, const char* name) { +void vkvg_load_font_from_path(VkvgContext ctx, const char* path, uint32_t size) { if (vkvg_status(ctx)) return; RECORD(ctx, VKVG_CMD_SET_FONT_PATH, name); - vkvg_set_font(ctx, vkvg_font_create_from_file(ctx->pSurf, path, 0, 12)); + vkvg_set_font(ctx, vkvg_font_create_from_file(ctx->pSurf, path, 0, size)); } void vkvg_set_font_size(VkvgContext ctx, uint32_t size) { if (vkvg_status(ctx)) @@ -1375,7 +1375,7 @@ void vkvg_save(VkvgContext ctx) { else sav->clippingState = vkvg_clip_state_clear;*/ - memcpy((void*)sav, (void*)&(ctx->curColor), (void*)&(ctx->indCount) - (void*)&(ctx->curColor)); + memcpy((void*)sav, (void*)&(ctx->curColor), (uintptr_t)&(ctx->indCount) - (uintptr_t)&(ctx->curColor)); sav->curClipRef = ctx->curClipRef; if (ctx->pattern) @@ -1448,7 +1448,7 @@ void vkvg_restore(VkvgContext ctx) { if (ctx->cmdStarted) CmdSetStencilReference(ctx->cmd, VK_STENCIL_FRONT_AND_BACK, ctx->curClipRef); - memcpy((void*)&(ctx->curColor), (void*)sav, (void*)&(ctx->pattern) - (void*)&(ctx->curColor)); + memcpy((void*)&(ctx->curColor), (void*)sav, (uintptr_t)&(ctx->pattern) - (uintptr_t)&(ctx->curColor)); ctx->pushCstDirty = true; diff --git a/src/vkvg_context_internal.c b/src/vkvg_context_internal.c index f569cc2..e3cb2ce 100644 --- a/src/vkvg_context_internal.c +++ b/src/vkvg_context_internal.c @@ -790,8 +790,8 @@ void _update_cur_pattern(VkvgContext ctx, VkvgPattern pat) { vkvg_matrix_transform_distance(&ctx->pushConsts.mat, &grad->cp[1].z, &grad->cp[0].w); } gradPat->offset = ctx->pSurf->gradCount * sizeof(vkvg_gradient_t); - memcpy(vkh_buffer_get_mapped_pointer(&ctx->pSurf->uboGrad) + gradPat->offset, - grad, sizeof(vkvg_gradient_t)); + uintptr_t targetAddr = (uintptr_t)vkh_buffer_get_mapped_pointer(&ctx->pSurf->uboGrad) + gradPat->offset; + memcpy((void*)targetAddr, grad, sizeof(vkvg_gradient_t)); //vkh_buffer_flush(&ctx->pSurf->uboGrad); if (ctx->cmdStarted) diff --git a/tests/text.c b/tests/text.c index d151b53..fda9c4a 100644 --- a/tests/text.c +++ b/tests/text.c @@ -260,7 +260,7 @@ void font_file_path() { vkvg_set_source_rgb(ctx, 0, 0, 0); vkvg_paint(ctx); vkvg_set_source_rgb(ctx, 1, 1, 1); - vkvg_load_font_from_path(ctx, "data/DancingScript-Regular.ttf", "droid"); + vkvg_load_font_from_path(ctx, "data/DancingScript-Regular.ttf", 50); print_boxed(ctx, "This is a test string!", 50, 20, 12); print_boxed(ctx, "This is a test string!", 50, 50, 20); print_boxed(ctx, "ANOTHER ONE TO CHECK..", 50, 80, 20); @@ -312,7 +312,7 @@ void proto_sinaitic() { vkvg_paint(ctx); vkvg_set_source_rgb(ctx, 1, 1, 1); - vkvg_load_font_from_path(ctx, "data/Proto-Sinaitic15.ttf", "sinaitic"); + vkvg_load_font_from_path(ctx, "data/Proto-Sinaitic15.ttf", 50); print_boxed(ctx, "hwhy", 100, 150, 60); vkvg_destroy(ctx); |