javascript - 是否可以显示/隐藏部分 Canvas 图像,如 Image Sprite?

标签 javascript css html canvas html5-canvas

是否可以像 Image Sprite 那样显示/隐藏 Canvas 图像的一部分?

案例:

我有一个 200 X 200 尺寸的 Canvas 。

在单击一个按钮时,我想显示从点 (100, 100) 到 (120, 120) 的部分 Canvas 。 在另一个我想展示整个 Canvas 。

关于如何做到这一点有什么帮助吗?

最佳答案

由于 Sprite 通常显示在另一个元素中作为背景,也许隐藏父元素可以解决您的问题?

<style>
    #sprite {
        width: 100px;
        height: 100px;
        background-image: src(sprite.png); 
        background-position: 100px 100px;
    }
</style>
<script>
    var hide = false;

    function show() {
        if(!hide) {
            document.getElementById("sprite").style.width="200px";
            hide = true;
        }
        else {
            document.getElementById("sprite").style.width="100px";
            hide = false;
        }
    }
</script>

<div id="button" onclick="show();">button</div>
<div id="sprite"></div>

这是如果 Sprite 的位置在右边 100px。您还可以使用 document.getElementById('#sprite').style.backgroundPosition="200px 200px"; 来完全改变 Sprite 背景的位置。

关于javascript - 是否可以显示/隐藏部分 Canvas 图像,如 Image Sprite?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27498419/

相关文章:

javascript - jQuery 查找标签之间的文本

javascript - 使用淡入淡出效果更改背景图像的最佳方法是什么?

javascript - 如何改变父div的高度?

html - 在 Ember.js 中,将数据中的换行符转换为 HTML BR 元素的惯用方法是什么?

javascript - 如何在不使用 cookie 的情况下处理单页应用程序中的 CSRF 和 XSS 攻击

javascript - 无法单击带有另一个 div 后面的链接的 div 绝对位置不起作用

html - CSS 内容过滤器 - 添加多个类别

javascript - 单击打开引导下拉菜单

Outlook 中的 HTML 电子邮件背景中断布局 - 使用 vml 方法

javascript - FB.Login() 的 enable_profile_selector 不工作