WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
215259
[WinCairo] Use Cairo DirectWrite font backend
https://bugs.webkit.org/show_bug.cgi?id=215259
Summary
[WinCairo] Use Cairo DirectWrite font backend
Fujii Hironori
Reported
2020-08-07 00:21:17 PDT
[WinCairo] Use Cairo DirectWrite font backend Mozilla has Cairo DirectWrite patch. Let's try it.
Attachments
WIP patch
(4.80 KB, patch)
2020-08-07 00:21 PDT
,
Fujii Hironori
no flags
Details
Formatted Diff
Diff
Patch for Cairo 1.16
(74.60 KB, patch)
2020-08-07 00:25 PDT
,
Fujii Hironori
no flags
Details
Formatted Diff
Diff
Patch for Cairo 1.16
(78.37 KB, patch)
2020-08-17 19:59 PDT
,
Fujii Hironori
no flags
Details
Formatted Diff
Diff
WIP patch
(3.33 KB, patch)
2020-08-17 20:00 PDT
,
Fujii Hironori
no flags
Details
Formatted Diff
Diff
WIP patch
(4.28 KB, patch)
2020-08-31 14:29 PDT
,
Fujii Hironori
no flags
Details
Formatted Diff
Diff
WIP patch
(5.98 KB, patch)
2022-04-07 21:57 PDT
,
Fujii Hironori
no flags
Details
Formatted Diff
Diff
WIP patch
(7.12 KB, patch)
2022-05-17 00:47 PDT
,
Fujii Hironori
no flags
Details
Formatted Diff
Diff
small-font-test.html
(1.62 KB, text/html)
2022-05-18 18:42 PDT
,
Fujii Hironori
no flags
Details
WIP patch
(7.33 KB, patch)
2023-01-18 17:32 PST
,
Fujii Hironori
no flags
Details
Formatted Diff
Diff
WIP patch
(6.43 KB, patch)
2023-02-09 22:50 PST
,
Fujii Hironori
no flags
Details
Formatted Diff
Diff
WIP patch
(6.31 KB, patch)
2023-02-24 12:20 PST
,
Fujii Hironori
no flags
Details
Formatted Diff
Diff
WIP patch
(6.00 KB, patch)
2023-03-27 00:06 PDT
,
Fujii Hironori
no flags
Details
Formatted Diff
Diff
WIP patch
(16.69 KB, patch)
2023-03-30 13:51 PDT
,
Fujii Hironori
no flags
Details
Formatted Diff
Diff
WIP patch
(14.68 KB, patch)
2023-04-23 18:48 PDT
,
Fujii Hironori
no flags
Details
Formatted Diff
Diff
Show Obsolete
(12)
View All
Add attachment
proposed patch, testcase, etc.
Fujii Hironori
Comment 1
2020-08-07 00:21:58 PDT
Created
attachment 406156
[details]
WIP patch
Fujii Hironori
Comment 2
2020-08-07 00:25:49 PDT
Created
attachment 406157
[details]
Patch for Cairo 1.16
Fujii Hironori
Comment 3
2020-08-10 13:42:01 PDT
No color glyphs are rendered with this patch. According to the following document, I should use IDWriteFactory4::TranslateColorGlyphRun. Color Fonts - Win32 apps | Microsoft Docs
https://docs.microsoft.com/en-us/windows/win32/directwrite/color-fonts
IDWriteFactory4::TranslateColorGlyphRun (dwrite_3.h) - Win32 apps | Microsoft Docs
https://docs.microsoft.com/en-us/windows/win32/api/dwrite_3/nf-dwrite_3-idwritefactory4-translatecolorglyphrun
Fujii Hironori
Comment 4
2020-08-17 19:59:25 PDT
Created
attachment 406764
[details]
Patch for Cairo 1.16
Fujii Hironori
Comment 5
2020-08-17 20:00:06 PDT
Created
attachment 406765
[details]
WIP patch
Fujii Hironori
Comment 6
2020-08-27 21:31:06 PDT
Graphic bits » Blog Archive » DirectWrite Text Rendering in Firefox 6
https://web.archive.org/web/20160909065035/https://blog.mozilla.org/nattokirai/2011/08/11/directwrite-text-rendering-in-firefox-6/
Fujii Hironori
Comment 7
2020-08-31 14:29:05 PDT
Created
attachment 407628
[details]
WIP patch
Fujii Hironori
Comment 8
2020-08-31 14:52:32 PDT
I found some minor issues. Because WinCairo is using Uniscribe for shaping, I need to use DirectWrite GDI compatible mode at the moment. Unfortunately, DirectWrite GDI compatible mode looks jaggier than GDI. Even though GDI is rendering text with subpixel antialiasing both vertically and horizontally, DirectWrite GDI compatible mode seems to do it only horizontally. Uniscribe doesn't combine some emoji sequences.
https://getemoji.com/
Both issues are related to Uniscribe. WinCairo should use DirectWrite or HarfBuzz DirectWrite backend for shaping.
Fujii Hironori
Comment 9
2020-08-31 18:03:08 PDT
Screenshots:
https://ibb.co/album/dsHY4
Fujii Hironori
Comment 10
2020-08-31 18:04:32 PDT
Oh, wrong URL! Screenshots:
https://ibb.co/album/dsHY4y
Fujii Hironori
Comment 11
2022-04-05 18:21:57 PDT
Cairo 1.17.6 added DWrite support.
https://lists.cairographics.org/archives/cairo/2022-March/029398.html
Fujii Hironori
Comment 12
2022-04-07 21:57:44 PDT
Created
attachment 457016
[details]
WIP patch
Fujii Hironori
Comment 13
2022-04-07 22:01:17 PDT
Some ref tests failures. css2.1/20110323/text-indent-intrinsic-001.htm [ ImageOnlyFailure ] css2.1/20110323/text-indent-intrinsic-002.htm [ ImageOnlyFailure ] css2.1/20110323/text-indent-intrinsic-003.htm [ ImageOnlyFailure ] css2.1/20110323/text-indent-intrinsic-004.htm [ ImageOnlyFailure ] css3/bdi-element.html [ ImageOnlyFailure ] css3/flexbox/csswg/ttwf-reftest-flex-wrap-reverse.html [ ImageOnlyFailure ] css3/flexbox/csswg/ttwf-reftest-flex-wrap.html [ ImageOnlyFailure ] fast/css/absolute-inline-alignment-2.html [ ImageOnlyFailure ] fast/css/absolute-inline-alignment.html [ ImageOnlyFailure ] fast/css/negative-text-indent-in-inline-block.html [ ImageOnlyFailure ] fast/text/arabic-zwj-and-zwnj.html [ ImageOnlyFailure ] fast/text/complex-initial-advance.html [ ImageOnlyFailure ] fast/text/default-ignorable.html [ ImageOnlyFailure ] fast/text/embed-at-end-of-pre-wrap-line-simple-lines.html [ ImageOnlyFailure ] fast/text/fitzpatrick-combination.html [ ImageOnlyFailure ] fast/text/isolate-ignore.html [ ImageOnlyFailure ] fast/text/ja-sans-serif.html [ ImageOnlyFailure ] fast/text/otsvg-spacing.html [ ImageOnlyFailure ] fast/text/simple-line-layout-leading-whitespace-with-soft-hard-linebreak.html [ ImageOnlyFailure ] fast/text/soft-hyphen-min-preferred-width.html [ ImageOnlyFailure ] fast/text/softHyphen.html [ ImageOnlyFailure ] fast/text/text-combine-rendering.html [ ImageOnlyFailure ] fast/text/text-underline-first-line-decoration.html [ ImageOnlyFailure ] fast/text/text-underline-position-under.html [ ImageOnlyFailure ] fast/text/undefined-glyph-with-ligature.html [ ImageOnlyFailure ]
Fujii Hironori
Comment 14
2022-05-17 00:47:55 PDT
Created
attachment 459487
[details]
WIP patch
Fujii Hironori
Comment 15
2022-05-18 18:42:56 PDT
Created
attachment 459562
[details]
small-font-test.html
Fujii Hironori
Comment 16
2022-05-19 18:27:25 PDT
DWrite: Outermost edges of embedded bitmap font glyphs aren't drawn (#569) · Issues · cairo / cairo · GitLab
https://gitlab.freedesktop.org/cairo/cairo/-/issues/569
Fujii Hironori
Comment 17
2022-05-22 13:45:47 PDT
DWrite: It looks jaggy (#567) · Issues · cairo / cairo · GitLab
https://gitlab.freedesktop.org/cairo/cairo/-/issues/567
Fujii Hironori
Comment 18
2023-01-18 17:32:22 PST
Created
attachment 464549
[details]
WIP patch
Fujii Hironori
Comment 19
2023-02-09 22:50:19 PST
Created
attachment 464937
[details]
WIP patch
Fujii Hironori
Comment 20
2023-02-24 12:20:19 PST
Created
attachment 465156
[details]
WIP patch
Fujii Hironori
Comment 21
2023-03-27 00:06:30 PDT
Created
attachment 465605
[details]
WIP patch
Fujii Hironori
Comment 22
2023-03-30 13:51:10 PDT
Created
attachment 465690
[details]
WIP patch
Fujii Hironori
Comment 23
2023-04-23 18:48:19 PDT
Created
attachment 466056
[details]
WIP patch
Fujii Hironori
Comment 24
2023-10-11 23:02:34 PDT
Pull request:
https://github.com/WebKit/WebKit/pull/18985
EWS
Comment 25
2023-10-12 13:16:03 PDT
Committed
269270@main
(0f066948ca64): <
https://commits.webkit.org/269270@main
> Reviewed commits have been landed. Closing PR #18985 and removing active labels.
Radar WebKit Bug Importer
Comment 26
2023-10-12 13:17:19 PDT
<
rdar://problem/116878771
>
Fujii Hironori
Comment 27
2023-10-12 13:59:57 PDT
Re-opening for pull request
https://github.com/WebKit/WebKit/pull/19018
EWS
Comment 28
2023-10-12 14:03:04 PDT
Committed
269275@main
(6d7089f0d592): <
https://commits.webkit.org/269275@main
> Reviewed commits have been landed. Closing PR #19018 and removing active labels.
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug