skia2/gm
Dominik Röttsches 691a794bee Support COLRv1 color fonts
Implement support for COLRv1 color gradient vector forms. COLR v1 is an
extension to the OpenType COLR tables that introduces support for
gradients, transforms and compositing. [1]

COLRv1 fonts contain an OpenType COLR table with format v1. In a COLR v1
table, glyphs are defined by a directed, acyclic graph of Paint
operations. The task for the Skia implementation is to extract the COLR
v1 information from the font using FreeType's COLRv1 API, then traverse
the glyph graph and translate information from the font into Skia
operations on SkCanvas.

Care needs to be taken for transformations to work correctly. FreeType
sends a top level transform that includes the scaling from font units to
actual glyph size, as well as optional transforms configured on FreeType
using FT_Set_Transform. This is set up as the starting transform at the
beginning of drawing a COLRv1 glyph. At the stage of setting a clip for
a PaintGlyph operation, the glyph outline is retrieved from FreeType
unscaled and untransformed. Since the starting transformation is applied
to the SkCanvas, the unscaled glyph is properly scaled and positioned.

Similarly, computing the initial bounding box for the COLRv1 glyph needs
to consider transformations. COLRv1 glyphs have a base glyph entry in
the glyf table which can use a minimum of two points for defining a
bounding box. This bounding box is an imaged rectangle enclosing those
two points at the identity transform. We need to compute the bounding
box scaled, but at identity transform, then make a rectangle from it,
that we then transform so that we get a large enough area to paint
in. If those two points from the glyf table would be transformed first,
then we would compute the bounding box, the resulting bounding box ends
up too small.

As a test font, add a version of the samples-glyf_colr_1.ttf from [2]
with one glyph added for testing PaintColrGlyph functionality and
compositions.

Add a basic GM test that produces color glyphs untransformed, with
skew and with rotation and combinations of those.

[1] https://github.com/googlefonts/colr-gradients-spec/
[2] https://github.com/googlefonts/color-fonts

Bug: skia:11264
Change-Id: I8357cd0c7ac0039bb2eac18f21fa343bf61871eb
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/300558
Commit-Queue: Dominik Röttsches <drott@chromium.org>
Commit-Queue: Ben Wagner <bungeman@google.com>
Auto-Submit: Dominik Röttsches <drott@chromium.org>
Reviewed-by: Ben Wagner <bungeman@google.com>
2021-02-11 22:51:13 +00:00
..
verifiers drawBitmap is deprecated, use drawImage 2021-01-25 01:44:55 +00:00
3d.cpp
aaa.cpp Move convexity enum out of public 2020-08-30 13:04:22 +00:00
aaclip.cpp drawBitmap is deprecated 2021-01-24 14:48:44 +00:00
aarectmodes.cpp Bitmap should use sampling options 2020-12-12 15:36:21 +00:00
aaxfermodes.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
addarc.cpp Reland "Enable GrTessellationPathRenderer by default" 2021-01-04 19:43:41 +00:00
all_bitmap_configs.cpp drawBitmap is deprecated 2021-01-24 04:36:04 +00:00
alpha_image.cpp Pass sampling to drawImage calls 2021-01-23 18:23:33 +00:00
alphagradients.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
analytic_gradients.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
androidblendmodes.cpp Pass sampling to drawImage calls 2021-01-23 18:23:33 +00:00
animated_gif.cpp drawBitmap is deprecated 2021-01-24 14:48:44 +00:00
animated_image_orientation.cpp Pass sampling to drawImage 2021-01-24 00:04:33 +00:00
animatedimageblurs.cpp move SkTPin to include/private 2020-10-16 19:45:11 +00:00
anisotropic.cpp Name common cubic resamplers 2021-02-05 19:21:04 +00:00
annotated_text.cpp
arcofzorro.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
arcto.cpp Add arc methods to path builder 2020-08-03 15:50:01 +00:00
arithmode.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
asyncrescaleandread.cpp Pass sampling to drawImage 2021-01-24 00:04:33 +00:00
b_119394958.cpp
backdrop_imagefilter_croprect.cpp
backdrop.cpp
badpaint.cpp Bitmap should use sampling options 2020-12-12 15:36:21 +00:00
bc1_transparency.cpp Downgrade SkImage to GrImageContext 2020-09-14 17:01:07 +00:00
beziereffects.cpp whole-word replace renderTargetContext with surfaceDrawContext 2020-12-11 23:24:40 +00:00
beziers.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
bicubic.cpp Name common cubic resamplers 2021-02-05 19:21:04 +00:00
bigblurs.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
bigmatrix.cpp Simplify common case of linear filtering with no mips 2021-01-15 16:47:16 +00:00
bigrect.cpp
bigrrectaaeffect.cpp whole-word replace renderTargetContext with surfaceDrawContext 2020-12-11 23:24:40 +00:00
bigtext.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
bigtileimagefilter.cpp More hiding of legacy drawImage calls 2021-01-22 13:53:42 +00:00
bitmapcopy.cpp drawBitmap is deprecated 2021-01-24 04:36:04 +00:00
bitmapfilters.cpp drawBitmap is deprecated 2021-01-24 14:48:44 +00:00
bitmapimage.cpp get image from skcodec 2021-01-25 21:50:16 +00:00
bitmappremul.cpp More hiding of legacy drawImage calls 2021-01-22 13:53:42 +00:00
bitmaprect.cpp drawBitmap is deprecated 2021-01-24 04:36:04 +00:00
bitmaprecttest.cpp drawBitmap is deprecated 2021-01-24 04:36:04 +00:00
bitmapshader.cpp drawBitmap is deprecated, use drawImage 2021-01-25 01:44:55 +00:00
bitmaptiled.cpp drawBitmap is deprecated, use drawImage 2021-01-25 01:44:55 +00:00
bleed.cpp Name common cubic resamplers 2021-02-05 19:21:04 +00:00
blend.cpp
blurcircles2.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
blurcircles.cpp Reland "Allow rect and circle blur fast cases to be used with rotation matrices." 2020-09-24 21:33:44 +00:00
blurignorexform.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
blurimagevmask.cpp Pass sampling to drawImage calls 2021-01-23 18:23:33 +00:00
blurpositioning.cpp
blurquickreject.cpp Don't use filter-quality 2021-01-30 16:09:23 +00:00
blurrect.cpp drawBitmap is deprecated, use drawImage 2021-01-25 01:44:55 +00:00
blurredclippedcircle.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
blurroundrect.cpp Reland "Perform bounding rect-relative calcs in full float in GrRRectBlurEffect" 2020-10-21 19:07:33 +00:00
blurs.cpp Ensure that blur result is identity if both sigmas are near-zero 2021-01-27 21:37:30 +00:00
blurtextsmallradii.cpp
bmpfilterqualityrepeat.cpp drawBitmap is deprecated 2021-01-24 04:36:04 +00:00
bug5252.cpp use pathbuilder 2020-08-25 16:29:48 +00:00
bug6643.cpp
bug6783.cpp Simplify common case of linear filtering with no mips 2021-01-15 16:47:16 +00:00
bug9331.cpp
bug530095.cpp use pathbuilder 2020-08-25 16:29:48 +00:00
bug615686.cpp use pathbuilder 2020-08-17 22:05:00 +00:00
cgm.c Hide legacy drawImage methods 2021-01-20 00:59:26 +00:00
cgms.cpp
circle_sizes.cpp
circulararcs.cpp Revert "Revert "use pathbuilder"" 2020-08-26 17:35:34 +00:00
circularclips.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
clear_swizzle.cpp Add GrSurfaceFillContext 2020-12-16 20:48:43 +00:00
clip_error.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
clip_sierpinski_region.cpp
clip_strokerect.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
clipdrawdraw.cpp
clippedbitmapshaders.cpp Name common cubic resamplers 2021-02-05 19:21:04 +00:00
clockwise.cpp how to use SkArenaAlloc with no friends 2020-12-15 01:23:18 +00:00
collapsepaths.cpp Enable ClangTidy check llvm-namespace-comment. 2020-08-06 19:07:52 +00:00
color4f.cpp Pass sampling to surface.draw 2021-01-06 19:05:00 +00:00
coloremoji_blendmodes.cpp Bitmap should use sampling options 2020-12-12 15:36:21 +00:00
coloremoji.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
colorfilteralpha8.cpp More hiding of legacy drawImage calls 2021-01-22 13:53:42 +00:00
colorfilterimagefilter.cpp Revert "Revert "Use explicit samplingoptions"" 2020-12-09 03:08:09 +00:00
colorfilters.cpp Simplify common case for recttorect 2021-01-15 18:37:46 +00:00
colormatrix.cpp Pass sampling to drawImage calls 2021-01-23 18:23:33 +00:00
colorspace.cpp SkCanvas::makeSurface() can fail 2021-01-08 20:49:36 +00:00
colorwheel.cpp
colrv1.cpp Support COLRv1 color fonts 2021-02-11 22:51:13 +00:00
complexclip2.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
complexclip3.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
complexclip4.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
complexclip_blur_tiled.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
complexclip.cpp drawBitmap is deprecated 2021-01-24 14:48:44 +00:00
composeshader.cpp Bitmap.asImage() 2020-12-23 15:54:57 +00:00
compositor_quads.cpp Don't use filter-quality 2021-01-30 16:09:23 +00:00
compressed_textures.cpp Name common cubic resamplers 2021-02-05 19:21:04 +00:00
concavepaths.cpp Use factories to avoid using (deprecated) path editing methods 2020-08-24 19:53:13 +00:00
conicpaths.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
constcolorprocessor.cpp Name common cubic resamplers 2021-02-05 19:21:04 +00:00
convex_all_line_paths.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
convexpaths.cpp use pathbuilder 2020-08-25 16:29:48 +00:00
convexpolyclip.cpp drawBitmap is deprecated, use drawImage 2021-01-25 01:44:55 +00:00
convexpolyeffect.cpp whole-word replace renderTargetContext with surfaceDrawContext 2020-12-11 23:24:40 +00:00
copy_to_4444.cpp drawBitmap is deprecated, use drawImage 2021-01-25 01:44:55 +00:00
crbug_224618.cpp More hiding of legacy drawImage calls 2021-01-22 13:53:42 +00:00
crbug_691386.cpp
crbug_788500.cpp use pathbuilder 2020-08-17 22:05:00 +00:00
crbug_847759.cpp use pathbuilder 2020-08-17 22:05:00 +00:00
crbug_884166.cpp use pathbuilder 2020-08-17 22:05:00 +00:00
crbug_887103.cpp use pathbuilder 2020-08-17 22:05:00 +00:00
crbug_892988.cpp
crbug_899512.cpp
crbug_905548.cpp Add SkImageFilters::Blend rename for Xfermode filter 2020-10-13 14:28:26 +00:00
crbug_908646.cpp use pathbuilder 2020-08-17 22:05:00 +00:00
crbug_913349.cpp use pathbuilder 2020-08-17 22:05:00 +00:00
crbug_918512.cpp
crbug_938592.cpp
crbug_946965.cpp
crbug_947055.cpp
crbug_996140.cpp Add arc methods to path builder 2020-08-03 15:50:01 +00:00
crbug_1041204.cpp
crbug_1073670.cpp
crbug_1086705.cpp use pathbuilder 2020-08-17 22:05:00 +00:00
crbug_1113794.cpp Simplify common case for recttorect 2021-01-15 18:37:46 +00:00
crbug_1139750.cpp Avoid infinite inverse inner-radii in eliiptical rrect op 2020-11-02 20:01:04 +00:00
crbug_1156804.cpp Improve clamp mode in GPU blur with downsampling. 2020-12-11 18:43:20 +00:00
crbug_1162942.cpp Fix DrawEdgeAAQuad degenerate issue where 3D points don't correctly project to 2D points. 2021-01-19 17:33:45 +00:00
crbug_1167277.cpp GrQuadUtils: Handle degenerate persp quads where edges intersect outside quad 2021-01-20 23:01:23 +00:00
crbug_1174186.cpp Drop AA on quads that are extremely thin before AA insetting/outsetting. 2021-02-10 02:43:35 +00:00
croppedrects.cpp Pass sampling to drawImage calls 2021-01-23 18:23:33 +00:00
crosscontextimage.cpp Pass sampling to drawImage 2021-01-24 00:04:33 +00:00
cubicpaths.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
daa.cpp use pathbuilder 2020-08-25 16:29:48 +00:00
dashcircle.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
dashcubics.cpp do work in onBefore, not in constructor 2020-10-30 20:54:11 +00:00
dashing.cpp Handle overflow of accumulated rect perimeter in SkDaskPath cull_path 2021-02-10 18:32:12 +00:00
degeneratesegments.cpp use pathbuilder 2020-08-25 16:29:48 +00:00
dftext_blob_persp.cpp Pass sampling to drawImage calls 2021-01-23 18:23:33 +00:00
dftext.cpp Pass sampling to drawImage calls 2021-01-23 18:23:33 +00:00
discard.cpp Pass sampling to surface.draw 2021-01-06 19:05:00 +00:00
displacement.cpp drawBitmap is deprecated 2021-01-24 14:48:44 +00:00
distantclip.cpp use pathbuilder 2020-08-25 16:29:48 +00:00
draw_bitmap_rect_skbug4374.cpp drawBitmap is deprecated 2021-01-24 04:36:04 +00:00
drawable.cpp use pathbuilder 2020-08-17 22:05:00 +00:00
drawatlas.cpp Hide misc non-sampling draw methods 2021-01-25 17:54:56 +00:00
drawatlascolor.cpp Hide misc non-sampling draw methods 2021-01-25 17:54:56 +00:00
drawbitmaprect.cpp Pass sampling to drawimage 2021-01-24 03:07:23 +00:00
drawimageset.cpp Hide misc non-sampling draw methods 2021-01-25 17:54:56 +00:00
drawminibitmaprect.cpp Pass sampling to drawImage calls 2021-01-23 18:23:33 +00:00
drawquadset.cpp Remove public getter for GrSurfaceDrawContext on SkSCanvas. 2020-12-23 16:13:07 +00:00
drawregion.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
drawregionmodes.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
dropshadowimagefilter.cpp drawBitmap is deprecated 2021-01-24 14:48:44 +00:00
drrect_small_inner.cpp
drrect.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
dsl_processor_test.cpp added SkSL DSL uniform support 2021-02-11 22:03:56 +00:00
dstreadshuffle.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
ducky_yuv_blend.cpp Pass sampling to drawimage 2021-01-24 03:07:23 +00:00
emboss.cpp filter-quality is deprecated, pass sampling to drawImage 2021-01-28 03:22:51 +00:00
emptypath.cpp use pathbuilder 2020-08-25 22:27:20 +00:00
encode_alpha_jpeg.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
encode_color_types.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
encode_platform.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
encode_srgb.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
encode.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
exoticformats.cpp Downgrade SkImage to GrImageContext 2020-09-14 17:01:07 +00:00
fadefilter.cpp
fatpathfill.cpp Pass sampling to surface.draw 2021-01-06 19:05:00 +00:00
fiddle.cpp
filltypes.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
filltypespersp.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
filterbug.cpp Name common cubic resamplers 2021-02-05 19:21:04 +00:00
filterfastbounds.cpp Guard legacy matrixtransforms, and expose new one 2021-02-01 22:10:39 +00:00
filterindiabox.cpp Name common cubic resamplers 2021-02-05 19:21:04 +00:00
flippity.cpp Pass sampling to drawimage 2021-01-24 03:07:23 +00:00
fontcache.cpp GrRenderTargetContext->GrSurfaceDrawContext 2020-12-10 18:51:19 +00:00
fontmgr.cpp Move fontmgr_bounds labels to tight bounds 2020-08-24 15:02:44 +00:00
fontregen.cpp GrRenderTargetContext->GrSurfaceDrawContext 2020-12-10 18:51:19 +00:00
fontscaler.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
fontscalerdistortable.cpp Enable ClangTidy check llvm-namespace-comment. 2020-08-06 19:07:52 +00:00
fp_sample_chaining.cpp Android roll broke with a compilation error: 2021-02-10 00:05:10 +00:00
fpcoordinateoverride.cpp Remove GrFragmentProcessor::usesExplicitReturn. 2020-12-15 18:06:12 +00:00
fwidth_squircle.cpp how to use SkArenaAlloc with no friends 2020-12-15 01:23:18 +00:00
gammatext.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
getpostextpath.cpp
giantbitmap.cpp Bitmap should use sampling options 2020-12-12 15:36:21 +00:00
glyph_pos.cpp GM glyph_pos correct advance placement. 2021-02-09 22:21:10 +00:00
gm.cpp Remove public getter for GrSurfaceDrawContext on SkSCanvas. 2020-12-23 16:13:07 +00:00
gm.h Reland "Add backend texture and backend render target versions snapshot GMs" 2021-02-04 14:30:57 +00:00
gpu_blur_utils.cpp Replace SkImage_Base::view() and ::refView() with new asView(). 2021-02-03 19:05:49 +00:00
gradient_dirty_laundry.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
gradient_matrix.cpp
gradients_2pt_conical.cpp Enable ClangTidy check llvm-namespace-comment. 2020-08-06 19:07:52 +00:00
gradients_degenerate.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
gradients_no_texture.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
gradients.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
gradtext.cpp
grayscalejpg.cpp
hairlines.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
hairmodes.cpp Bitmap should use sampling options 2020-12-12 15:36:21 +00:00
hardstop_gradients.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
highcontrastfilter.cpp Migrate work from constructors to onOnceBeforeDraw. 2020-11-05 15:43:42 +00:00
hittestpath.cpp Revert "Revert "use pathbuilder"" 2020-08-26 17:35:34 +00:00
hsl.cpp Pass sampling to drawImage 2021-01-24 00:04:33 +00:00
hugepath.cpp Pass sampling to surface.draw 2021-01-06 19:05:00 +00:00
image_pict.cpp Replace SkImage_Base::view() and ::refView() with new asView(). 2021-02-03 19:05:49 +00:00
image_shader.cpp Simplify common case for recttorect 2021-01-15 18:37:46 +00:00
image.cpp drawBitmap is deprecated, use drawImage 2021-01-25 01:44:55 +00:00
imagealphathreshold.cpp Pass sampling to drawImage calls 2021-01-23 18:23:33 +00:00
imageblur2.cpp
imageblur.cpp
imageblurclampmode.cpp drawBitmap is deprecated 2021-01-24 14:48:44 +00:00
imageblurrepeatmode.cpp drawBitmap is deprecated, use drawImage 2021-01-25 01:44:55 +00:00
imageblurtiled.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
imagefilters.cpp Guard legacy matrixtransforms, and expose new one 2021-02-01 22:10:39 +00:00
imagefiltersbase.cpp Name common cubic resamplers 2021-02-05 19:21:04 +00:00
imagefiltersclipped.cpp Guard legacy matrixtransforms, and expose new one 2021-02-01 22:10:39 +00:00
imagefilterscropexpand.cpp drawBitmap is deprecated 2021-01-24 14:48:44 +00:00
imagefilterscropped.cpp drawBitmap is deprecated 2021-01-24 14:48:44 +00:00
imagefiltersgraph.cpp drawBitmap is deprecated 2021-01-24 14:48:44 +00:00
imagefiltersscaled.cpp Guard legacy matrixtransforms, and expose new one 2021-02-01 22:10:39 +00:00
imagefiltersstroked.cpp Guard legacy matrixtransforms, and expose new one 2021-02-01 22:10:39 +00:00
imagefilterstransformed.cpp Guard legacy matrixtransforms, and expose new one 2021-02-01 22:10:39 +00:00
imagefromyuvtextures.cpp Name common cubic resamplers 2021-02-05 19:21:04 +00:00
imagemagnifier.cpp Bitmap.asImage() 2020-12-23 15:54:57 +00:00
imagemakewithfilter.cpp Guard legacy matrixtransforms, and expose new one 2021-02-01 22:10:39 +00:00
imagemasksubset.cpp Pass sampling to drawimage 2021-01-24 03:07:23 +00:00
imageresizetiled.cpp Guard legacy matrixtransforms, and expose new one 2021-02-01 22:10:39 +00:00
imagescalealigned.cpp Name common cubic resamplers 2021-02-05 19:21:04 +00:00
imagesource2.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
imagesource.cpp Bitmap.asImage() 2020-12-23 15:54:57 +00:00
internal_links.cpp
inverseclip.cpp Revert "Revert "use pathbuilder"" 2020-08-26 17:35:34 +00:00
inversepaths.cpp add static factories for SkPath 2020-08-02 23:40:06 +00:00
jpg_color_cube.cpp move SkTPin to include/private 2020-10-16 19:45:11 +00:00
labyrinth.cpp use pathbuilder 2020-08-17 22:05:00 +00:00
largeclippedpath.cpp Rewrite GrPathTessellateOp as GrPathInnerTriangulateOp 2021-01-28 18:34:39 +00:00
largeglyphblur.cpp
lattice.cpp Hide misc non-sampling draw methods 2021-01-25 17:54:56 +00:00
lazytiling.cpp Add new lazytiling GM and update GrTextureEffect 2021-01-21 20:57:20 +00:00
lcdblendmodes.cpp Pass sampling to surface.draw 2021-01-06 19:05:00 +00:00
lcdoverlap.cpp Fix gms placing text in bounds. 2020-09-28 16:35:13 +00:00
lcdtext.cpp
lighting.cpp drawBitmap is deprecated, use drawImage 2021-01-25 01:44:55 +00:00
linepaths.cpp
localmatriximagefilter.cpp Pass sampling to drawImage calls 2021-01-23 18:23:33 +00:00
localmatriximageshader.cpp Name common cubic resamplers 2021-02-05 19:21:04 +00:00
localmatrixshader.cpp Simplify common case of linear filtering with no mips 2021-01-15 16:47:16 +00:00
lumafilter.cpp SkColorFilters::WithWorkingFormat 2021-02-11 19:44:33 +00:00
mac_aa_explorer.cpp Pass sampling to surface.draw 2021-01-06 19:05:00 +00:00
make_raster_image.cpp
makecolorspace.cpp get image from skcodec 2021-01-25 21:50:16 +00:00
mandoline.cpp Enable ClangTidy check llvm-namespace-comment. 2020-08-06 19:07:52 +00:00
manypaths.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
matrixconvolution.cpp don't use drawBitmap 2021-01-26 02:24:21 +00:00
matriximagefilter.cpp Reland "Remove deprecated SkImageFilter::MakeMatrixFilter" 2021-02-04 21:17:58 +00:00
mipmap.cpp Name common cubic resamplers 2021-02-05 19:21:04 +00:00
mixedtextblobs.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
mixercolorfilter.cpp Android roll broke with a compilation error: 2021-02-10 00:05:10 +00:00
modecolorfilters.cpp Bitmap should use sampling options 2020-12-12 15:36:21 +00:00
morphology.cpp drawBitmap is deprecated 2021-01-24 14:48:44 +00:00
nested.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
ninepatchstretch.cpp Pass sampling to drawImage calls 2021-01-23 18:23:33 +00:00
nonclosedpaths.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
offsetimagefilter.cpp Hide SkImageFilter::CropRect 2021-01-30 16:10:29 +00:00
orientation.cpp Fix images used in orientation GMs 2020-12-17 15:48:25 +00:00
ovals.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
overdrawcanvas.cpp Pass sampling to drawImage 2021-01-24 00:04:33 +00:00
overdrawcolorfilter.cpp drawBitmap is deprecated 2021-01-24 04:36:04 +00:00
overstroke.cpp Revert "Revert "use pathbuilder"" 2020-08-26 17:35:34 +00:00
p3.cpp drawBitmap is deprecated, use drawImage 2021-01-25 01:44:55 +00:00
particles.cpp Fix particle bug where uniforms are allocated too late 2021-02-03 22:50:28 +00:00
patch.cpp Revert "Revert "Use explicit samplingoptions"" 2020-12-09 03:08:09 +00:00
path_stroke_with_zero_length.cpp Update error handling in DDL-averse GMs 2020-10-14 16:42:01 +00:00
patharcto.cpp Add arc methods to path builder 2020-08-03 15:50:01 +00:00
pathcontourstart.cpp Migrate work from constructors to onOnceBeforeDraw. 2020-11-05 15:43:42 +00:00
patheffects.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
pathfill.cpp Pass sampling to surface.draw 2021-01-06 19:05:00 +00:00
pathinterior.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
pathmaskcache.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
pathmeasure.cpp use pathbuilder 2020-08-25 16:29:48 +00:00
pathopsinverse.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
pathreverse.cpp use pathbuilder 2020-08-25 16:29:48 +00:00
pdf_never_embed.cpp
perlinnoise.cpp Remove Improved Perlin Noise 2021-01-11 15:27:26 +00:00
perspimages.cpp Name common cubic resamplers 2021-02-05 19:21:04 +00:00
perspshaders.cpp Name common cubic resamplers 2021-02-05 19:21:04 +00:00
picture.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
pictureimagefilter.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
pictureimagegenerator.cpp drawBitmap is deprecated, use drawImage 2021-01-25 01:44:55 +00:00
pictureshader.cpp Add filter param to picture-shader 2021-01-15 21:05:56 +00:00
pictureshadercache.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
pictureshadertile.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
pixelsnap.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
plus.cpp
points.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
poly2poly.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
polygonoffset.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
polygons.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
postercircle.cpp Pass sampling to drawImage calls 2021-01-23 18:23:33 +00:00
preservefillrule.cpp GrRenderTargetContext->GrSurfaceDrawContext 2020-12-10 18:51:19 +00:00
quadpaths.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
radial_gradient_precision.cpp
rasterhandleallocator.cpp don't use drawBitmap 2021-01-26 02:24:21 +00:00
readpixels.cpp get image from skcodec 2021-01-25 21:50:16 +00:00
recordopts.cpp don't use drawBitmap 2021-01-26 02:24:21 +00:00
rectangletexture.cpp Name common cubic resamplers 2021-02-05 19:21:04 +00:00
repeated_bitmap.cpp
resizeimagefilter.cpp Name common cubic resamplers 2021-02-05 19:21:04 +00:00
roundrects.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
rrect.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
rrectclipdrawpaint.cpp GrRenderTargetContext->GrSurfaceDrawContext 2020-12-10 18:51:19 +00:00
rrects.cpp Remove public getter for GrSurfaceDrawContext on SkSCanvas. 2020-12-23 16:13:07 +00:00
rsxtext.cpp Simplify common case of linear filtering with no mips 2021-01-15 16:47:16 +00:00
runtimecolorfilter.cpp Pass sampling to drawImage 2021-01-24 00:04:33 +00:00
runtimeeffectimage.cpp Add SkRuntimeEffect::makeImage() 2021-01-23 17:40:23 +00:00
runtimefunctions.cpp Android roll broke with a compilation error: 2021-02-10 00:05:10 +00:00
runtimeintrinsics.cpp Update intrinsic tests to floor(vec) and ceil(vec). 2021-01-29 21:42:58 +00:00
runtimeshader.cpp Android roll broke with a compilation error: 2021-02-10 00:05:10 +00:00
sample_matrix_constant.cpp Name common cubic resamplers 2021-02-05 19:21:04 +00:00
sample_matrix_variable.cpp Name common cubic resamplers 2021-02-05 19:21:04 +00:00
samplelocations.cpp Fix fragment processors and unit tests which mix ints and floats. 2021-01-14 00:24:45 +00:00
samplerstress.cpp Use sampling for bitmap shaders 2020-12-12 20:10:41 +00:00
savelayer.cpp Pass sampling to drawImage 2021-01-24 00:04:33 +00:00
scaledemoji_rendering.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
scaledemoji.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
scaledstrokes.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
shadermaskfilter.cpp
shadertext3.cpp drawBitmap is deprecated, use drawImage 2021-01-25 01:44:55 +00:00
shadowutils.cpp Fix shadow directional light bounds. 2020-12-17 18:04:15 +00:00
shallowgradient.cpp
shapes.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
sharedcorners.cpp Enable ClangTidy check llvm-namespace-comment. 2020-08-06 19:07:52 +00:00
showmiplevels.cpp drawBitmap is deprecated, use drawImage 2021-01-25 01:44:55 +00:00
simple_magnification.cpp Bitmap.asImage() 2020-12-23 15:54:57 +00:00
simpleaaclip.cpp drawBitmap is deprecated, use drawImage 2021-01-25 01:44:55 +00:00
simplerect.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
skbug1719.cpp
skbug_257.cpp Use samplingoptions for bitmap shader 2020-12-12 17:08:11 +00:00
skbug_4868.cpp
skbug_5321.cpp
skbug_8664.cpp Pass sampling to drawImage calls 2021-01-23 18:23:33 +00:00
skbug_8955.cpp
skbug_9319.cpp
skbug_9819.cpp drawBitmap is deprecated 2021-01-24 14:48:44 +00:00
smallarc.cpp
smallpaths.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
spritebitmap.cpp drawBitmap is deprecated 2021-01-24 14:48:44 +00:00
srcmode.cpp Pass sampling to surface.draw 2021-01-06 19:05:00 +00:00
srgb.cpp Pass sampling to drawImage calls 2021-01-23 18:23:33 +00:00
stlouisarch.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
stringart.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
stroke_rect_shader.cpp Enable ClangTidy check llvm-namespace-comment. 2020-08-06 19:07:52 +00:00
strokedlines.cpp Use samplingoptions for bitmap shader 2020-12-12 17:08:11 +00:00
strokefill.cpp Simplify firstdirection 2020-08-30 15:01:02 +00:00
strokerect_anisotropic.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
strokerect.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
strokerects.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
strokes.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
stroketext.cpp Enable ClangTidy check llvm-namespace-comment. 2020-08-06 19:07:52 +00:00
subsetshader.cpp Use samplingoptions for bitmap shader 2020-12-12 17:08:11 +00:00
surface.cpp Reland "Add backend texture and backend render target versions snapshot GMs" 2021-02-04 14:30:57 +00:00
swizzle.cpp GrRenderTargetContext->GrSurfaceDrawContext 2020-12-10 18:51:19 +00:00
tablecolorfilter.cpp drawBitmap is deprecated, use drawImage 2021-01-25 01:44:55 +00:00
tallstretchedbitmaps.cpp drawBitmap is deprecated, use drawImage 2021-01-25 01:44:55 +00:00
tessellation.cpp GrRenderTargetContext->GrSurfaceDrawContext 2020-12-10 18:51:19 +00:00
testgradient.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
texelsubset.cpp Simplify common case for recttorect 2021-01-15 18:37:46 +00:00
text_scale_skew.cpp
textblob.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
textblobblockreordering.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
textblobcolortrans.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
textblobgeometrychange.cpp Pass sampling to surface.draw 2021-01-06 19:05:00 +00:00
textblobmixedsizes.cpp Pass sampling to drawImage 2021-01-24 00:04:33 +00:00
textblobrandomfont.cpp Pass sampling to surface.draw 2021-01-06 19:05:00 +00:00
textblobshader.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
textblobtransforms.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
textblobuseaftergpufree.cpp GrRenderTargetContext->GrSurfaceDrawContext 2020-12-10 18:51:19 +00:00
texteffects.cpp Enable ClangTidy check llvm-namespace-comment. 2020-08-06 19:07:52 +00:00
thinconcavepaths.cpp Enable ClangTidy check llvm-namespace-comment. 2020-08-06 19:07:52 +00:00
thinrects.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
thinstrokedrects.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
tiledscaledbitmap.cpp Name common cubic resamplers 2021-02-05 19:21:04 +00:00
tileimagefilter.cpp Pass sampling to drawImage calls 2021-01-23 18:23:33 +00:00
tilemodes_alpha.cpp Revert "Revert "Use explicit samplingoptions"" 2020-12-09 03:08:09 +00:00
tilemodes_scaled.cpp Use sampling for bitmap shaders 2020-12-12 20:10:41 +00:00
tilemodes.cpp Simplify common case of linear filtering with no mips 2021-01-15 16:47:16 +00:00
tinybitmap.cpp Use samplingoptions for bitmap shader 2020-12-12 17:08:11 +00:00
transparency.cpp Pass sampling to surface.draw 2021-01-06 19:05:00 +00:00
trickycubicstrokes.cpp Simplify common case for recttorect 2021-01-15 18:37:46 +00:00
typeface.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
unpremul.cpp drawBitmap is deprecated, use drawImage 2021-01-25 01:44:55 +00:00
userfont.cpp SkCustomTypefaceBuilder to set SkFontStyle 2020-08-19 00:09:55 +00:00
variedtext.cpp Fix gms placing text in bounds. 2020-09-28 16:35:13 +00:00
vertices.cpp Android roll broke with a compilation error: 2021-02-10 00:05:10 +00:00
verylargebitmap.cpp Pass sampling to drawImage 2021-01-24 00:04:33 +00:00
video_decoder.cpp Fix video_decoder GM 2021-01-31 00:29:20 +00:00
wacky_yuv_formats.cpp don't use drawBitmap 2021-01-26 02:24:21 +00:00
widebuttcaps.cpp GrRenderTargetContext->GrSurfaceDrawContext 2020-12-10 18:51:19 +00:00
windowrectangles.cpp Revert "Revert "Reland "Make textures used with alpha-only color-types produce 0s for RGB"""" 2021-01-06 14:16:09 +00:00
xfermodeimagefilter.cpp drawBitmap is deprecated, use drawImage 2021-01-25 01:44:55 +00:00
xfermodes2.cpp Use samplingoptions for bitmap shader 2020-12-12 17:08:11 +00:00
xfermodes3.cpp Pass sampling to surface.draw 2021-01-06 19:05:00 +00:00
xfermodes.cpp drawBitmap is deprecated, use drawImage 2021-01-25 01:44:55 +00:00
xform.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
ycbcrimage.cpp Pass sampling to drawImage 2021-01-28 20:32:19 +00:00
yuv420_odd_dim.cpp Remove SkYUVASizeInfo, make SkYUVAIndex a private part of SkYUVAInfo 2021-01-12 15:06:26 +00:00
yuvtorgbsubset.cpp Reland "Push SkYUVAInfo into GrYUVToRGBEffect." 2021-01-13 22:08:44 +00:00