更改不平铺的样式
This commit is contained in:
@@ -63,9 +63,10 @@ export async function restoreFabricObject(serializedObject, canvas) {
|
||||
* 获取对象黑白通道画布
|
||||
* @param {fabric.Object} object - 要处理的 fabric 对象
|
||||
* @param {ImageData} revData - 相反的ImageData,白通道的相同位置是否为透明,revData为白色为透明,黑色为不透明
|
||||
* @param {number} diff - 差值,默认 25
|
||||
* @returns {HTMLCanvasElement|null} 包含黑白通道的画布,或 null 如果失败
|
||||
*/
|
||||
export function getObjectAlphaToCanvas(object, revData) {
|
||||
export function getObjectAlphaToCanvas(object, revData, diff = 30) {
|
||||
const image = object.getElement();
|
||||
const { width, height } = image;
|
||||
if (!width || !height) {
|
||||
@@ -88,7 +89,7 @@ export function getObjectAlphaToCanvas(object, revData) {
|
||||
const revB = revData?.data[i + 2] || 0;
|
||||
const revA = revData?.data[i + 3] || 0;
|
||||
if (r || g || b || a) {
|
||||
if (revR || revG || revB || revA) {
|
||||
if (revR > diff || revG > diff || revB > diff || revA > diff) {
|
||||
data.data[i + 0] = 0;
|
||||
data.data[i + 1] = 0;
|
||||
data.data[i + 2] = 0;
|
||||
|
||||
Reference in New Issue
Block a user