<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>197689</bug_id>
          
          <creation_ts>2019-05-08 02:36:40 -0700</creation_ts>
          <short_desc>Text with a gradient and drop shadow does not display properly if the canvas context is scaled</short_desc>
          <delta_ts>2023-02-12 13:55:42 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Canvas</component>
          <version>Safari 11</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=227954</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>BrowserCompat, InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>themoonrat</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ahmad.saleem792</cc>
    
    <cc>dino</cc>
    
    <cc>mmaxfield</cc>
    
    <cc>sabouhallawa</cc>
    
    <cc>sam.shiels</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1534271</commentid>
    <comment_count>0</comment_count>
      <attachid>369367</attachid>
    <who name="">themoonrat</who>
    <bug_when>2019-05-08 02:36:40 -0700</bug_when>
    <thetext>Created attachment 369367
Comparing visuals to another browser

Seen on:
Safari 11.1.2on MacOS High Sierra 10.13.6
iPad Pro on 12.1.3
iPad Air on 12.x (can&apos;t remember exact version)
iPhone S8+ on 11.4.1

On an empty html page, as this script in the body

&lt;script&gt;
	var canvas = document.getElementById(&quot;myCanvas&quot;);
	var ctx = canvas.getContext(&apos;2d&apos;);
	ctx.shadowColor = &quot;#000000&quot;;
	ctx.shadowOffsetX = 5;
	ctx.shadowOffsetY = 5
	ctx.shadowBlur = 10;
	ctx.font = &quot;70px arial&quot;;
	var gradient = ctx.createLinearGradient(300, 0, 300, 100);
	gradient.addColorStop(0, &apos;#FF0000&apos;);
	gradient.addColorStop(0.25, &apos;#FF0000&apos;);
	gradient.addColorStop(0.5, &apos;#00FF00&apos;);
	gradient.addColorStop(0.75, &apos;#0000FF&apos;);
	gradient.addColorStop(1, &apos;#0000FF&apos;);
	ctx.fillStyle = gradient;
	ctx.scale(0.75, 0.75);
	ctx.fillText(&quot;1234567890&quot;, 10, 70);
&lt;/script&gt;

On every other browser / os combination I&apos;ve tried, you get the correct visual you see at the top of my attachment. But on Safari for MacOS and iOS, the drop shadow appears incorrectly way above the text.

If you remove the gradient and use a simple fill style, the drop shadow will appear in the correct place.
If you keep the gradient but remove the ctx.scale line, the drop shadow will appear in the correct place.

It&apos;s the combination of both gradient and scale where things go wrong.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1534338</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-05-08 09:36:26 -0700</bug_when>
    <thetext>&lt;rdar://problem/50583846&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1536273</commentid>
    <comment_count>2</comment_count>
      <attachid>369899</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2019-05-14 15:20:12 -0700</bug_when>
    <thetext>Created attachment 369899
Testcase</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1777416</commentid>
    <comment_count>3</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2021-07-15 19:47:45 -0700</bug_when>
    <thetext>*** Bug 227954 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1777650</commentid>
    <comment_count>4</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2021-07-16 16:47:47 -0700</bug_when>
    <thetext>The drop-shadow is drawn separate from drawing the text. But we have two different code paths for drawing the drop-shadow: simple and system. In the &quot;simple&quot; case, we draw the drop-shadow ourselves and in the &quot;system&quot; case we let the system draw the drop-shadow for dummy clipped-out text.

In FontCascade::drawGlyphs() we make a distinction between these two cases by the boolean hasSimpleShadow. When it is true we draw normal text and we clear the shadow setting temporarily by calling context.clearShadow()/context.setShadow().

It is important to note that,

1. In CanvasRenderingContext2DBase::drawTextUnchecked() and if (shouldDrawShadows()) is true, we call fontProxy.drawBidiText() but we clip the drawing such that text is clipped but the drop-shadow appears. I think the calculation under this if-statement is the cause of this bug.

2. In FontCascade::drawGlyphs(), hasSimpleShadow is set to true if the drop-shadow is not blurred and the GraphicsContext is not scaled, rotated or sheared.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1777675</commentid>
    <comment_count>5</comment_count>
      <attachid>433722</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2021-07-16 17:36:43 -0700</bug_when>
    <thetext>Created attachment 433722
Simple and system drop-shadow</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1800574</commentid>
    <comment_count>6</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2021-10-05 08:48:54 -0700</bug_when>
    <thetext>*** Bug 227954 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1933030</commentid>
    <comment_count>7</comment_count>
    <who name="Ahmad Saleem">ahmad.saleem792</who>
    <bug_when>2023-02-12 13:55:42 -0800</bug_when>
    <thetext>It is still broken in WebKit ToT 260168@main.

Chrome Canary 112 and Firefox Nightly 111 match each other except the border around the digits while using &quot;Simple and system drop-shadow&quot; test case.

Just wanted to share updated testing result. Thanks!</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>369367</attachid>
            <date>2019-05-08 02:36:40 -0700</date>
            <delta_ts>2019-05-08 02:36:40 -0700</delta_ts>
            <desc>Comparing visuals to another browser</desc>
            <filename>bug.png</filename>
            <type>image/png</type>
            <size>26424</size>
            <attacher>themoonrat</attacher>
            
              <data encoding="base64">iVBORw0KGgoAAAANSUhEUgAAAyAAAADHCAMAAADWB8f9AAAAAXNSR0IArs4c6QAAAARnQU1BAACx
jwv8YQUAAAMAUExURQEBASwsLAV7eyx6fHp6B319MUdHR156b3p7T3Nzcww3uwE2ww1ZmwNNsARt
kBVkpjBStSlylDFuqBJFwilVwUNcu0h6mE1ysnR8iWR7tU5rxmZ5xgi5Nzm5Cza9KgyaVgSQbQOw
TBanZSaZXCyRczC0Uy+oaxPYDgTPLwnuCBHkJC/OBC/TLibkEyvqKRXERDLKTTjEZjjlSVmaC1qd
Jk6vA1OzLG2RBHOSK2WkFWusME6WdFOyU02wcHSXUHaOdm+uTW+xbkXIFkvLMEbjNmPJN03MUFXL
bE/rUGzMU2/ObmHkVHDocguDgjKLjTSDozWiiE6PkVOGqlGvhlimpnSRjm+Pr26vkHSpqXSMyHmi
w1XChXHKi3rFpXzgi7YdHbk3DLcwL5hYC5tZJJFsBJNzLbFMBLNULKdmF6ttMZxZWZN3UY51brVO
S7FxTrNybNUUENAtBMwxK+gKB+cXAusYE/sCAPMSCfobGeQjC+cnF+U0HvIiHOcnJOc1Kek6N/kl
Jfk3N8dFFctNMMVlN+hENsNHRcNYRsVXVtlLQ9VVSNpVU8xqVMZnZMZ2acZ7d9hoZdZ3adZ4d+dM
SedXSuZZWPhGRvVRS/ZXVuNnWOdmZet5bel4dvZmZvd0dIOCDImMMYOnPKaCNo+RTY+UcYypU4+v
bamKUrCOb6WqXamrdYXCVovLdYPld6jEfcqHWsmJdMSgcuWLeJSUlI2Zq5SqkpGrrq6Tjq2skq2t
rY2Zz5esy6u10aWz5JDQjpTJrpDkkpfroavJlbDRr6PimrPmsJXHwbXMyrzF5LzjxMaIhcWWiMaa
l9WHhdWUi9WYl8mpl8iopsm2qMa5uNSrp9S2qda3tuiGheaSieqWlfiIiPaYmOGxmeinpemyqee5
uPSnp/W5ucPLn8zLtsPku+fCt8fHx8TM18bYycfW2NXJx9fXyNfX187V5NLo09vl5efJyeXUyubZ
1/XGxvHRzvTW1uXm2+jo5+fr8ejz6O708vPp6PHy7f7+/gAAAAAAAOADzOQAAAEAdFJOU///////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
/////////////////////////////wBT9wclAAAACXBIWXMAAA7DAAAOwwHHb6hkAAAAGHRFWHRT
b2Z0d2FyZQBwYWludC5uZXQgNC4xLjb9TgnoAABikUlEQVR4Xu29C5xV1Xk2LtY//Y9RBNSARutA
AbkqqeUiggPSYiBqCpYBW9KaRFAid7wQvyZVSY1NUNM0pkm+JBK5htKE9MzthClYTvkmQWzAQdIk
zZe0JzkwM2fO4EmZM5czv9//ed73XXvvc5nDaFAm/99+DpzZe613vWutvZ5nvWvtc7uoJ0SIEL0i
FEiIECUQCiREiBIIBRIiRAmEAgkRogRCgYQIUQKhQEKEKIFQICFClEAokBAhSiAUSIgQJRAKJESI
EggFEiJECYQCCRGiBEKBhAhRAqFAQoQogVAgIUKUwPkRSCbwrxTM4hxWfUGGD/6zP6V8aq3FDViQ
5Tu6M1198lfKWQB9sSH6ahfiAuE8CETG2D06eqWWb2MFzo3ebJyb7o5sT6ZD2IxHUVZLmjPQswAk
L5vt6u7JdmWRydZ3ZHDEgwJ/PO+QZ1adn+tDLfDIlLIK2GkXQvRH9EkgOo5FIVn8x1HGPNzTXdRW
zPggpIAkloLYSBlLMGiSOMpBhzjMMQ6aClWZ657BS7RVWq0WPjTBKx9wBWfdYtAFafbwfx5oof+k
wi5cj0IjIM+O50XtQlxgnEMg3d1nz57t1nmzcAS7u7vbkX/21+mz6bNCKkX+YIuXM2fPpNNkl0Nx
5ghof7bb/AScSbq4Onvmf874SKfFo07Yao1JXqpF2+jKA7MzknMWjT579n/SvzYnQag/6zKfXRfO
BvoQqM1gVcKo1OWwC3L2fwLOgk0P0Y9QWiDdv/76U5ue+sXZLONCwQBmun/9069/6alNmzY9+dSX
v/GzAKuw9HG24Fb6v37y5aeefHLTk1/6+o89o44sKJHn0OHXP4HxU98gyWz1oXbdv/jSk6hN4R9t
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
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>369899</attachid>
            <date>2019-05-14 15:20:12 -0700</date>
            <delta_ts>2019-05-14 15:20:12 -0700</delta_ts>
            <desc>Testcase</desc>
            <filename>gradient-drop-shadow-text.html</filename>
            <type>text/html</type>
            <size>714</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWw+CjxodG1sPgo8aGVhZD4KPC9oZWFkPgo8Ym9keT4KICAgIAoJPGNhbnZh
cyBpZD0ibXlDYW52YXMiIHdpZHRoPSI0MDAiIGhlaWdodD0iNDAwIj4KCTxzY3JpcHQ+CgkJdmFy
IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJteUNhbnZhcyIpOwoJCXZhciBjdHgg
PSBjYW52YXMuZ2V0Q29udGV4dCgnMmQnKTsKCQljdHguc2hhZG93Q29sb3IgPSAiIzAwMDAwMCI7
CgkJY3R4LnNoYWRvd09mZnNldFggPSA1OwoJCWN0eC5zaGFkb3dPZmZzZXRZID0gNQoJCWN0eC5z
aGFkb3dCbHVyID0gMTA7CgkJY3R4LmZvbnQgPSAiNzBweCBhcmlhbCI7CgkJdmFyIGdyYWRpZW50
ID0gY3R4LmNyZWF0ZUxpbmVhckdyYWRpZW50KDMwMCwgMCwgMzAwLCAxMDApOwoJCWdyYWRpZW50
LmFkZENvbG9yU3RvcCgwLCAnI0ZGMDAwMCcpOwoJCWdyYWRpZW50LmFkZENvbG9yU3RvcCgwLjI1
LCAnI0ZGMDAwMCcpOwoJCWdyYWRpZW50LmFkZENvbG9yU3RvcCgwLjUsICcjMDBGRjAwJyk7CgkJ
Z3JhZGllbnQuYWRkQ29sb3JTdG9wKDAuNzUsICcjMDAwMEZGJyk7CgkJZ3JhZGllbnQuYWRkQ29s
b3JTdG9wKDEsICcjMDAwMEZGJyk7CgkJY3R4LmZpbGxTdHlsZSA9IGdyYWRpZW50OwoJCWN0eC5z
Y2FsZSgwLjc1LCAwLjc1KTsKCQljdHguZmlsbFRleHQoIjEyMzQ1Njc4OTAiLCAxMCwgNzApOwoJ
PC9zY3JpcHQ+CgkKCQo8L2JvZHk+CjwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>433722</attachid>
            <date>2021-07-16 17:36:43 -0700</date>
            <delta_ts>2021-07-16 17:36:43 -0700</delta_ts>
            <desc>Simple and system drop-shadow</desc>
            <filename>test037.html</filename>
            <type>text/html</type>
            <size>1534</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">PHN0eWxlPgogICAgY2FudmFzIHsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBibGFjazsKICAg
IH0KPC9zdHlsZT4KPGJvZHk+CiAgICA8dGFibGU+CiAgICAgICAgPHRoZWFkPgogICAgICAgICAg
ICA8dHI+CiAgICAgICAgICAgICAgICA8dGg+U2ltcGxlIGRyb3Atc2hhZG93PC90aD4KICAgICAg
ICAgICAgICAgIDx0aD5TeXN0ZW0gZHJvcC1zaGFkb3c8L3RoPgogICAgICAgICAgICA8L3RyPgog
ICAgICAgIDwvdGhlYWQ+CiAgICAgICAgPHRib2R5PgogICAgICAgICAgICA8dHI+CiAgICAgICAg
ICAgICAgICA8dGQ+PGNhbnZhcyBpZD0iY2FudmFzLW5vdC1zY2FsZWQiIHdpZHRoPSIzMDAiIGhl
aWdodD0iMTUwIj48L2NhbnZhcz48L3RkPgogICAgICAgICAgICAgICAgPHRkPjxjYW52YXMgaWQ9
ImNhbnZhcy1zY2FsZWQiIHdpZHRoPSIzMDAiIGhlaWdodD0iMTUwIj48L2NhbnZhcz48L3RkPgog
ICAgICAgICAgICA8L3RyPgogICAgICAgIDwvdGJvZHk+CiAgICA8L3RhYmxlPgogICAgPHNjcmlw
dD4KICAgICAgICBmdW5jdGlvbiBkcmF3VGV4dFdpdGhTaGFkb3coY2FudmFzLCBzY2FsZSkgewog
ICAgICAgICAgICB2YXIgY3R4ID0gY2FudmFzLmdldENvbnRleHQoJzJkJyk7CiAgICAgICAgICAg
IGN0eC5zaGFkb3dDb2xvciA9ICIjMDAwMEZGIjsKICAgICAgICAgICAgY3R4LnNoYWRvd09mZnNl
dFggPSA1OwogICAgICAgICAgICBjdHguc2hhZG93T2Zmc2V0WSA9IDU7CiAgICAgICAgICAgIGN0
eC5mb250ID0gIjcwcHggYXJpYWwiOwogICAgICAgICAgICB2YXIgZ3JhZGllbnQgPSBjdHguY3Jl
YXRlTGluZWFyR3JhZGllbnQoMzAwLCAwLCAzMDAsIDEwMCk7CiAgICAgICAgICAgIGdyYWRpZW50
LmFkZENvbG9yU3RvcCgwLCAnI0ZGMDAwMCcpOwogICAgICAgICAgICBncmFkaWVudC5hZGRDb2xv
clN0b3AoMSwgJyNGRjAwMDAnKTsKICAgICAgICAgICAgY3R4LmZpbGxTdHlsZSA9IGdyYWRpZW50
OwogICAgICAgICAgICBjdHguc2NhbGUoc2NhbGUsIHNjYWxlKTsKCiAgICAgICAgICAgIGxldCB0
ZXh0ID0gIjEyMzQiOwogICAgICAgICAgICBsZXQgdGV4dE1ldHJpY3MgPSBjdHgubWVhc3VyZVRl
eHQodGV4dCk7CgogICAgICAgICAgICBsZXQgeCA9IDEwOwogICAgICAgICAgICBsZXQgeSA9IDcw
OwogICAgICAgICAgICBjdHguc3Ryb2tlUmVjdCh4LCB5IC0gdGV4dE1ldHJpY3MuZm9udEJvdW5k
aW5nQm94QXNjZW50LCB0ZXh0TWV0cmljcy53aWR0aCwgdGV4dE1ldHJpY3MuZm9udEJvdW5kaW5n
Qm94QXNjZW50ICsgdGV4dE1ldHJpY3MuZm9udEJvdW5kaW5nQm94RGVzY2VudCk7CiAgICAgICAg
ICAgIGN0eC5maWxsVGV4dCh0ZXh0LCB4LCB5KTsKICAgICAgICB9CgogICAgICAgIGRyYXdUZXh0
V2l0aFNoYWRvdyhkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2FudmFzLW5vdC1zY2FsZWQiKSwg
MSk7CiAgICAgICAgZHJhd1RleHRXaXRoU2hhZG93KGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJj
YW52YXMtc2NhbGVkIiksIDEuNSk7CiAgICA8L3NjcmlwdD4KPC9ib2R5Pgo8L2h0bWw+Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>