<text> does not support custom fills or strokes This will first require some additional changes to how KCanvas does its drawing: http://bugzilla.opendarwin.org/show_bug.cgi?id=6447 Then it will also may require changes to QPainter to call WebCoreTextRenderer in a special way to have it not set the current color. It might be possible to simply augment QPainter to just pass "nil" for the NSColor to WebCoreTextRenderer. I'm not sure.
*** Bug 6478 has been marked as a duplicate of this bug. ***
Created attachment 5823 [details] support for text fill/strokes
Comment on attachment 5823 [details] support for text fill/strokes Unfortunately the patch you've attached does not apply. It looks to be an svk patch... which svn-apply does not understand.
Comment on attachment 5823 [details] support for text fill/strokes So a few comments. + virtual void render(KRenderingDeviceContext* context, const RenderPath* renderPath, KCPaintTargetType type) const { } these should be pure virtual ( = 0 ) instead. Everything in WebCore is now in a single namespace. No need to use khtml:: or KDOM:: in new code. Also KSVG should be replaced by WebCore in these files as you edit them. + int width = 2048; + int height = 2048; // FIXME??? + IntSize size = IntSize(width, height); needs to be replaced by some real text measurement code. The QPainter p; and PaintInfo creation code inside RenderText should be completely unecessary. You should just be able to pass the exisiting "paintInfo" variable into RenderBlock::paint()
Comment on attachment 5823 [details] support for text fill/strokes Actually, I was able to tweak the patch locally to make it apply. With that, I made the few minor changes I suggested with the previous comment and I'm now going to go ahead and land this. This looks good for now.
Btw, this patch fixes about 40 some test cases, and causes a regression in one: W3C-SVG-1.1/painting-fill-02-t That regression is that currentColor is not properly supported for text for some reason now. But we'll track that with a separate bug.
*** Bug 6669 has been marked as a duplicate of this bug. ***