Render Canvas using GDI+

RESOLVED WONTFIX

Status

()

Core
Canvas: 2D
--
enhancement
RESOLVED WONTFIX
13 years ago
12 years ago

People

(Reporter: paper, Unassigned)

Tracking

Trunk
x86
Windows 2000
Points:
---

Firefox Tracking Flags

(Not tracked)

Details

(URL)

Attachments

(1 attachment)

(Reporter)

Description

13 years ago
Before the yelling starts, I know this bug is DOA (dead on arrival).  Unless
convinced otherwise, I will not be asking for reviews.  However, I feel it a
waste if I don't at least post the code somewhere.

This bug/patch implements a GDI+ rendering engine for canvas.  If gdiplus.dll
doesn't exists on the system, it falls back gracefully to cairo.

The URL I've provided includes testcases and what the output should look like. 
These outputs are captured from this GDI+ implementation.  There's also a chart
that lists the differences between the Cairo renderer and the GDI+ renderer.

The advantage to GDI+ is that it uses the video card directly, and it has built
in bicubic interpolation for resizing and rotating.  In otherwords, it's fast
and pretty.

For the uninitiated, this bug is DOA for the following reasons:
- Everything is moving to Cairo, so that mozilla.org doesn't have to maintain
crossplatform gfx anymore
- The people in charge of canvas and gfx are dead against a GDI+ renderer, so
getting valid reviewers is next to impossible.

Initially I was hoping we could use GDI+ as an interim until Cairo is up to
speed (namely bicubic interpolation and direct video driver calls), but I've
been told that Cairo is in a "good enough" state for canvas.
(Reporter)

Comment 1

13 years ago
Created attachment 185125 [details] [diff] [review]
Patch
Status: NEW → RESOLVED
Last Resolved: 12 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.