発生している問題・エラーメッセージ
Error: Cannot use same file for input and output at Sharp.toFile (/node_modules/sharp/lib/output.js:66:11)
該当のソースコード
javascript
1 sorted_paths = [ "./imgs/a.png", "./imgs/b.png", "./imgs/c.png", "./imgs/d.png" ]; 2 3 for (let i = 0; i < maxLayer; i++) { 4 sharp.cache(false); 5 let filename = `./imgs/result/${img_name}${i}.png`; 6 let baseFile = filename; 7 if (i == 0) 8 baseFile = sorted_paths[0]; 9 sharp(baseFile).composite([{ input: sorted_paths[i + 1] }]).toFile(filename, 10 (err, info) => { if (err) throw err; }); 11 }
試したこと
この記事と同じ現象が起きています。このエラーはsharp側に合成素材をキャッシュとして保持しておくために発生しており、それを解決するのはsharp.cache(false)
だと書かれていました。それを書き加えましたが引き続きエラーが発生します。
なにか手がかりがありましたらご教示お願いします!

回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。