add effects primitives
add blur effect add default spring values improve values ui
This commit is contained in:
0
app/src/drawers/effect-layer.ts
Normal file
0
app/src/drawers/effect-layer.ts
Normal file
27
app/src/drawers/effects/blur.ts
Normal file
27
app/src/drawers/effects/blur.ts
Normal file
@@ -0,0 +1,27 @@
|
||||
import { Canvas, CanvasKit, Surface } from "canvaskit-wasm";
|
||||
import { BlurEffectLayer } from "primitives/Effects";
|
||||
import { z } from "zod";
|
||||
|
||||
export default function applyBlur(
|
||||
CanvasKit: CanvasKit,
|
||||
canvas: Canvas,
|
||||
surface: Surface,
|
||||
options: z.input<typeof BlurEffectLayer>
|
||||
) {
|
||||
const image = surface.makeImageSnapshot();
|
||||
|
||||
if (image) {
|
||||
const blurFilter = CanvasKit.ImageFilter.MakeBlur(
|
||||
options.amountX,
|
||||
options.amountY,
|
||||
CanvasKit.TileMode[options.tileMode],
|
||||
null
|
||||
);
|
||||
|
||||
const paint = new CanvasKit.Paint();
|
||||
|
||||
paint.setImageFilter(blurFilter);
|
||||
|
||||
canvas.drawImage(image, 0, 0, paint);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user