[Egret]长按截屏分享、分享截屏图片、本地存储

egret 分享有API可以把一个显示对象树渲染成一个位图纹理,我把它赋值给 HTML 的 Image 元素,就实现了图片的显示,在微信中,通过长按图片可以分享出去。当然在其他浏览器可以保存在本地。

第一步 添加HTML元素

<div id="divImage" style="background: #373737;display:none;text-align:center;z-index:99;width:100%;height:100%;position: absolute;">
    <div style="position:absolute;top:10%;color: #ffffff;display:block;text-align:center;width: 100%;">
        <span style="display:block;font-size: 25px ">长按图片发送给朋友</span><br/>
        <img src="" alt="" id="shareImage" style="width: 100%;">
    </div>
    <img src="./resource/icon_close.png" onclick="isHidden('divImage')" alt="" style="position:absolute;right:1%;top:1%;">
</div>


<script>
    ///这里添加点击 X 按钮关闭
    function isHidden(idtext) {
        var vDiv = document.getElementById(idtext);
        vDiv.style.display = 'none';
    }
</script>

第二步 添加egret代码

public shareImage(target: egret.DisplayObject): void {
        var renderTexture = new egret.RenderTexture();
        renderTexture.drawToTexture(target);//渲染到临时画布
        var divImage = document.getElementById("divImage");//获取DIV
        var shareImage: HTMLImageElement = document.getElementById("shareImage") as HTMLImageElement;//获取Image标签
        shareImage.src = renderTexture.toDataURL('image/jpeg');//把数据赋值给Image
        divImage.style.display = "block";//显示DIV
    }

完结

这就是简单又实用的功能,当然如果是 Native 模式下,需要把数据生成在本地,在分享的时候把图片路径附带并分享出去。
不明白的可以回复。
645887-20171120144843258-744151956.png

转载于:https://www.cnblogs.com/Richard-Core/p/egret-share-image.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值