问题标签 [off-screen]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
21131 浏览

qt - 使用 QOpenGLWidget 进行屏幕外渲染的最简单方法

我有一个隐藏的 QOpenGLWidget(Qt 5.4.2,不是 QGLWidget),我想基本上不断地做 grab() 或 grabFramebuffer() 来获取它的内容(并将其写入磁盘)。小部件在可见时呈现良好,但在隐藏时不呈现。如果我先做一个 show() 然后再做一个 hide() 调用,它就可以工作。这看起来很奇怪,因为根据文档,QOpenGLWidget 确实在内部已经渲染到了帧缓冲区。实现这一目标的最简单方法是什么(如果可能,无需创建另一个帧缓冲区)?
能够使用 QOpenGLWidget 作为其视口捕获屏幕外 QGraphicsView 的奖励积分,其中包含自定义 OpenGL 绘制的 QGraphicsItems...

0 投票
2 回答
1735 浏览

android - Android 屏幕外视图仅绘制其背景,没有其他内容

我正在尝试完全在屏幕外创建和渲染视图。首先,我尝试过(来自http://arpitonline.com/2012/07/17/capturing-bitmaps-of-views-in-android/):

它只呈现了我的视图的背景颜色。这是正确的大小和正确的背景颜色,但内容完全是空的。然后我偶然发现了这个:

但同样,它产生了相同的结果:正确的大小和背景颜色,内容为空。我的视图中有很多视图,我在它们上设置了许多属性,没有空指针等,一切都设置正确。但他们只是没有被画出来。为什么会发生这种情况?

更新:正如 psking 所建议的,我已经将我的绘图逻辑移到了,View#post但它仍然是相同的(尽管触发完成需要更长的时间,这可能是视图实际做某事的线索)。两种方法都试过:

(完成是我的功能,需要一个位图)

但还是一样。

0 投票
1 回答
613 浏览

html - 离屏画布是否有与普通画布一样多的“空间”?

我的情况类似于关于在画布之间复制数据的问题,但在我的情况下,我认为我遇到了画布引擎本身的问题,我想了解/指导我可能做错了什么。

我正在创建一个与屏幕画布具有相同宽度和高度的屏幕外画布。

然后我从屏幕外的画布绘制到屏幕上的画布,如下所示:

偏移量也是一个函数的参数,该函数在所有绘图发生之前转换“实时”画布上下文。

换句话说,我们正在尝试获取屏幕外上下文中与屏幕上上下文的平移偏移量相对应的部分。

这有一些问题。当偏移量使“相机”远离原点时,您会遇到屏幕外画布的“边缘”。

屏幕外画布边缘问题的视觉指示

请注意,当我对屏幕画布执行相同的渲染操作时,元素很好。

似乎离屏画布在处理画布的“边缘”方面并不像画布那样好(默默地忽略其定义区域之外的绘图命令。)换句话说,离屏画布似乎没有反映我在上方或左侧[0,0](或下方或右侧[width,height])所做的任何绘图。有没有办法解决这个问题?


我尝试过的事情:

  • 调整屏幕外画布的宽度和高度(不幸的是,这似乎对坐标有难以预测的影响)
0 投票
1 回答
650 浏览

canvas - 重用 HTML5 画布的绘制内容的最有效方法

我使用屏幕外canvas根据某些变量的运行时值动态生成某些图像。在屏幕外画布上绘制图像后,我想获取它并在我的 web 应用程序的几个地方使用它。

策略 1:使用屏幕外画布的toDataURL()方法获取data:包含图像的 URI,我可以通过编程方式img在页面中应该显示它的多个元素上设置该 URI。

策略二:使用离屏画布的getImageData()方法获取ImageData实例。img用元素替换canvas元素并调用putImageData()它们。

哪种策略在记忆方面更有效?哪个更“惯用”?我试图避免重复保存显示图像实例所需的内存。其他建议?

0 投票
1 回答
493 浏览

java - 处理3离屏丑

我在 OSX 和 Windows 上都使用处理 3(和 2)。离屏 PGraphics 缓冲区中的线性图形比直接绘制的线要丑得多。形状边缘的抗锯齿似乎效果不佳。

你能帮我把屏幕外缓冲区图形做得更好吗?

示例图像(右侧屏幕外丑,左侧屏幕上):

示例代码

谢谢!

此问题也已在此处的处理论坛中交叉发布。

0 投票
0 回答
1184 浏览

opengl - OpenGL glReadPixels 得到 1282 错误

我想用 OpenGL 创建一个屏幕外渲染器。

我创建了 aFBO和 aRBO来调用glReadPixels(),但总是出错。

这是我的代码:

输出不包含任何内容,并且glGetError()函数总是1282 (GL_INVALID_OPERATION)在调用glReadPixels().

这段代码有什么问题?

0 投票
2 回答
631 浏览

performance - 在 iOS 9 中,cornerRadius 和离屏渲染如何影响性能

设置cornerRadius和masksToBounds会导致离屏渲染,这样会影响表格滚动时的性能。虽然这在之前已经提到过很多次,但有没有人在 iOS 9 中对此进行过实验?

这是我的演示,似乎设置cornerRadius对滚动性能没有任何影响。在我的 iPhone 6 上,平均 fps 仍然是 57 或 58。

iOS 9 是否进行了任何优化或我做错了什么?

顺便说一句,我注意到当 UIImageView 是正方形时(宽度 = 高度),设置一些 UIImageView 的 conner 不会导致离屏渲染。这是怎么发生的?

0 投票
1 回答
503 浏览

c++ - Qt 创建屏幕外图像然后将部分复制到屏幕上?

我正在使用 Qt5.5,我想创建一个屏幕外图像,然后将屏幕外图像的特定部分复制回屏幕(可见)区域。

谁能给我一个很好的例子,说明如何创建特定大小的屏幕外图像,在其上绘制一些东西,然后将其特定部分(矩形)从屏幕外图像复制到可见区域。

0 投票
0 回答
272 浏览

javascript - 页面顶部的画布外搜索表单

我正在尝试为网站制作画布外搜索表单。单击“搜索”按钮时,输入表单应从页面顶部(100% 宽度)向下移动,将其余内容拉下。

我不是 javascript 专业人士,所以我在网上搜索但没有找到任何东西,只有在具有不同用途的画布菜单上。我试过了,但我很难适应它们。

正确制作它的步骤是什么?

这是搜索表格:

有小费吗?谢谢!

0 投票
2 回答
272 浏览

opengl-es-2.0 - Android:屏幕外纹理的负值被限制为 0

我正在对 2D 纹理使用离屏渲染。我的第一个着色器将输出 YUV 值,第二个片段着色器从屏幕外纹理读取 YUV。在第二个着色器中,我操纵 U 和 V 并将其设置在 -0.5 到 0.5 之间。但是一旦我尝试渲染它,这些就会被限制在 0 到 1(正)。我所有的负值都变成了 0。

发现问题在这里:

如果我使用 GL_FLOAT 而不是 GL_UNSIGNED_BYTE,它会给我错误,因为颜色格式不匹配。从链接中,https://www.khronos.org/opengles/sdk/docs/man/xhtml/glTexImage2D.xml看起来所有支持的格式都将限制在 0-1 范围内。如何在下一个纹理中也获得负值。

发现我可以使用其他图像格式,如 GL_R16F,但 GLES20 中的链接 / 都不支持它们。