gpt4 book ai didi

emscripten - 如何检索 Emscripten Canvas 的浏览器内大小?

转载 作者:行者123 更新时间:2023-12-03 23:14:23 25 4
gpt4 key购买 nike

我已经研究了一段时间,我似乎无法找到如何实现这一点。

有一个非常明确的标题 emscripten_get_canvas_size,它没有做我期望它做的事情。实际的 Emscripten Canvas 元素已设置为 100% 的宽度和高度,但如果我通过 emscripten_get_canvas_size 检索宽度和高度,我只需获取 Canvas 内显示的 GLFW 窗口的宽度和高度,而不是 Canvas 缩放到的实际尺寸。

我想获得浏览器中显示的实际 Canvas 大小,以便我可以调用 glfwSetWindowSize 来缩放视口(viewport)以填充整个浏览器窗口。

即使我将 Canvas 设置为 100x100px,emscripten_get_canvas_size 也只会返回我在程序开始时通过 glfwSetWindowSize 设置的 1920x1080。

我可能遗漏了一些明显的东西,但是什么?

最佳答案

我对使用 Emscripten 进行 GUI 编程的知识为零,但您可以创建自己的函数来获取 HTML Canvas 大小。例如:

// These are JavaScript code in C/C++ file
#include <emscripten.h>
EM_JS(int, canvas_get_width, (), {
return yourCanvasElement.width;
});

EM_JS(int, canvas_get_height, (), {
return yourCanvasElement.height;
});

// Then call
int width = canvas_get_width();
int height = canvas_get_height();
您可以在 the official document 中了解如何在 C/C++ 代码中创建 JS 代码.

关于emscripten - 如何检索 Emscripten Canvas 的浏览器内大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53752243/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com