[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 模式下,需要把數據生成在本地,在分享的時候把圖片路徑附帶並分享出去。
不明白的可以回復。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM