【问题标题】:Canvas save pixels drawn out of view artifacting画布保存从视图伪影中绘制的像素
【发布时间】:2017-01-16 20:06:55
【问题描述】:

我正在使用 html5 画布和 javascript 在屏幕上绘制一些东西。不过由于我画的有时会很大,所以我有一个平移功能。

问题是,当绘图在顶部或左侧离开屏幕时,我会得到一个奇怪的工件。

我正在使用toDataURL() 函数保存绘制的数据,并使用drawImage() 将其重新绘制为图像。

可以在here找到该应用。

【问题讨论】:

    标签: javascript html canvas html5-canvas


    【解决方案1】:

    发生这种情况是因为您将其拖动到“低于”渲染边界。

     =====================
     emtpy with artifacts
     empty with artifacts
     _____________________________
     start of your canvas drawing
    

    由于空白空间不会被纯色填充,它会保持它在缓冲区中的状态。

    只需检测绘图窗格的边缘,并在绘制时用填充矩形填充其余可见视口,然后在拖动后视口。

    【讨论】:

    • 有没有办法改变渲染边界?我希望画布比屏幕大,但仍居中。
    • 实际上移动 html 元素本身可以正常工作。
    猜你喜欢
    • 1970-01-01
    • 2019-10-16
    • 1970-01-01
    • 2021-09-17
    • 1970-01-01
    • 2019-03-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多