servo/components/shared
Andrei Volykhin bcade589e7
imagebitmap: Crop bitmap data with formatting (#37397)
Follow the ImageBitmap specification and make cropping of the bitmap
data to the source rectangle with formatting:
https://html.spec.whatwg.org/multipage/#cropped-to-the-source-rectangle-with-formatting

For now the next functionality not implemented:
- image orientation support (such as EXIF metadata)
- color space conversion (image, blob)

The convertion from ResizeQuality to "image" FilterType:
 - pixelated/low/medium/high -> Nearest/Triangle/CatmullRom/Lanczos3

Other browsers use the following sample filtering:
 - chromium (skia): Nearest/Linear/Linear/CatmullRom
 - firefox (skia): Lanczos3

Testing: Improvements in the following WPT tests
 - html/canvas/element/manual/imagebitmap/*

Fixes (partially): #34112

Signed-off-by: Andrei Volykhin <andrei.volykhin@gmail.com>
2025-06-16 12:09:04 +00:00
..
background_hang_monitor script: add skeleton implementation of FontFace API (#35262) 2025-02-19 05:50:01 +00:00
base imagebitmap: Make ImageBitmap serializable and transferable (#37101) 2025-05-23 20:40:25 +00:00
bluetooth Include WebViewId into EmbedderMsg variants where possible (#35211) 2025-01-30 11:15:35 +00:00
canvas Change canvas/context/snapshot size from u64 -> u32 (#36827) 2025-06-07 14:37:21 +00:00
compositing layout: Store scroll offsets in the ScrollTree (#37428) 2025-06-13 12:01:27 +00:00
constellation layout: Store scroll offsets in the ScrollTree (#37428) 2025-06-13 12:01:27 +00:00
devtools DevTools: Implement support for showing source_content in Debugger > Source panel (#36774) 2025-06-13 09:31:33 +00:00
embedder Allow OHOS servoshell to have a simple multiple tab implementation. (#36891) 2025-06-16 08:17:31 +00:00
fonts Update rustfmt to the 2024 style edition (#35764) 2025-03-03 11:26:53 +00:00
net Report URI with POST fetch request (#37209) 2025-06-08 18:44:55 +00:00
profile Refactor the memory profiler code to return the struct. (#37155) 2025-05-28 00:58:05 +00:00
script layout: Store scroll offsets in the ScrollTree (#37428) 2025-06-13 12:01:27 +00:00
script_layout layout: Store scroll offsets in the ScrollTree (#37428) 2025-06-13 12:01:27 +00:00
snapshot imagebitmap: Crop bitmap data with formatting (#37397) 2025-06-16 12:09:04 +00:00
webgpu Introduce snapshot concept of canvas (#36119) 2025-04-23 07:32:47 +00:00
webxr libservo: Move EventLooperWaker from webxr_traits to embedder_traits (#36420) 2025-04-09 14:19:33 +00:00