第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Caman.js 渲染適用于以前的狀態(tài)而不是畫布的當前狀態(tài)

Caman.js 渲染適用于以前的狀態(tài)而不是畫布的當前狀態(tài)

慕尼黑8549860 2021-10-14 13:22:39
我正在通過 javascript 創(chuàng)建一個簡單的圖像編輯器,用戶應該能夠旋轉圖像以及應用一些由 Caman js 實現(xiàn)的過濾器。我正在以下畫布中繪制初始圖像:<canvas id="mainCanvas"></canvas>在我的 javascript 中,我有以下用于處理畫布的代碼:var canvasId = 'mainCanvas';var canvas = document.getElementById(canvasId);var ctx = canvas.getContext('2d');為了旋轉圖像,我使用了以下按預期工作的函數(shù):function rotate(degree) {        ctx.clearRect(0, 0, canvas.width, canvas.height);        ctx.beginPath();        var img = new Image();        img.onload = function() {            ctx.save();            ctx.translate(img.width/2, img.height/2);            ctx.rotate(degree * Math.PI / 180);            ctx.drawImage(img, -img.width/2, -img.height/2, img.width, img.height);            ctx.restore();            processHistory('Rotate');        };        img.src = history[lastState];    }我可以多次旋轉圖像,每次旋轉應用于圖像/畫布的當前狀態(tài)時,它都可以正常工作。除了旋轉之外,我還有一個由 Caman js 實現(xiàn)的噪聲按鈕,如下所示:Caman(canvas, val, function() {        this.noise(val).render(function() {            processHistory('Noise');        });    });在多次旋轉的情況下,我可以多次向圖像添加噪聲,并且每次將噪聲應用于圖像/畫布的當前狀態(tài)。請注意,我的代碼中的 history 是一個用于保存操作圖像狀態(tài)的數(shù)組,函數(shù) processHistory 定義如下:function processHistory(){    history[lastState] = canvas.toDataURL();    lastState = lastState + 1;}問題考慮以下迭代Noise1 --> Rotation --> Noise2,即在原始圖像上應用Noise1,然后應用 Rotation 和另一個 Noise ( Noise2 )。然后Noise2(管道中的第三步)不會應用于圖像的當前狀態(tài)(即帶有Noise1和Rotation的圖像),而是應用于帶有Noise1的圖像。我認為問題應該與Caman.js中定義的render函數(shù)有關,但我無法自己解決。所以它沒有按預期工作,你能幫我修復我的代碼或給我一些關于調試代碼的想法。
查看完整描述

1 回答

?
慕田峪4524236

TA貢獻1875條經(jīng)驗 獲得超5個贊

我可以解決這個問題,這里有一個解決方案:只需使用以下回調調用旋轉函數(shù):


rotate(1, function() {

    Caman(canvas, function() {

        this.reloadCanvasData();

    });

});


查看完整回答
反對 回復 2021-10-14
  • 1 回答
  • 0 關注
  • 203 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號