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


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

    第一步 添加HTML元素

    <div id="divImage" style="background: #373737;display:none;text-align:center;z-index:99;100%;height:100%;position: absolute;">
        <div style="position:absolute;top:10%;color: #ffffff;display:block;text-align:center; 100%;">
            <span style="display:block;font-size: 25px ">长按图片发送给朋友</span><br/>
            <img src="" alt="" id="shareImage" style=" 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 模式下,需要把数据生成在本地,在分享的时候把图片路径附带并分享出去。
    不明白的可以回复。

  • 相关阅读:
    cookie 当天12点 过期
    ps 前端常用技巧
    定时器遇到的坑
    ajax 会遇到的问题总结
    立即执行函数表达式 项目经常用到js 代码Module模式
    Hello world
    div position:fixed后,水平居中的问题
    关于div中图片水平垂直居中的问题
    [学习]Activiti流程引擎 入门(1) 初步认识
    SSO框架介绍前篇
  • 原文地址:https://www.cnblogs.com/Richard-Core/p/egret-share-image.html
Copyright © 2020-2023  润新知