fix issues in merge and update to vello pr

This commit is contained in:
mtvare6
2025-09-01 22:27:34 +05:30
parent 49319f9175
commit 8d14aaaded
8 changed files with 69 additions and 1125 deletions

View File

@@ -588,9 +588,8 @@ impl Render for Table<Graphic> {
masked = true;
let rect = vello::kurbo::Rect::new(bounds[0].x, bounds[0].y, bounds[1].x, bounds[1].y);
scene.push_layer(peniko::Mix::Normal, 1., kurbo::Affine::IDENTITY, &rect);
scene.push_luminance_mask_layer(1., kurbo::Affine::IDENTITY, &rect);
mask.render_to_vello(scene, transform, context, &render_params.for_clipper());
scene.push_layer(peniko::BlendMode::new(peniko::Mix::Clip, peniko::Compose::SrcIn), 1., kurbo::Affine::IDENTITY, &rect);
}
}
@@ -627,7 +626,6 @@ impl Render for Table<Graphic> {
if masked {
scene.pop_layer();
scene.pop_layer();
}
if layer {
@@ -909,9 +907,8 @@ impl Render for Table<Vector> {
masked = true;
let rect = vello::kurbo::Rect::new(bounds[0].x, bounds[0].y, bounds[1].x, bounds[1].y);
scene.push_layer(peniko::Mix::Normal, 1., kurbo::Affine::IDENTITY, &rect);
scene.push_luminance_mask_layer(1., kurbo::Affine::IDENTITY, &rect);
mask.render_to_vello(scene, element_transform, _context, &render_params.for_clipper());
scene.push_layer(peniko::BlendMode::new(peniko::Mix::Clip, peniko::Compose::SrcIn), 1., kurbo::Affine::IDENTITY, &rect);
}
}
@@ -1106,7 +1103,6 @@ impl Render for Table<Vector> {
if masked {
scene.pop_layer();
scene.pop_layer();
}
// If we pushed a layer for opacity or a blend mode, we need to pop it
@@ -1333,9 +1329,8 @@ impl Render for Table<Raster<CPU>> {
masked = true;
let rect = vello::kurbo::Rect::new(bounds[0].x, bounds[0].y, bounds[1].x, bounds[1].y);
scene.push_layer(peniko::Mix::Normal, 1., kurbo::Affine::IDENTITY, &rect);
scene.push_luminance_mask_layer(1., kurbo::Affine::IDENTITY, &rect);
mask.render_to_vello(scene, transform, _context, &render_params.for_clipper());
scene.push_layer(peniko::BlendMode::new(peniko::Mix::Clip, peniko::Compose::SrcIn), 1., kurbo::Affine::IDENTITY, &rect);
}
}
@@ -1343,7 +1338,6 @@ impl Render for Table<Raster<CPU>> {
if masked {
scene.pop_layer();
scene.pop_layer();
}
if layer {