From a591d671fc6896421f41884fb7108b746cf022b8 Mon Sep 17 00:00:00 2001 From: valadaptive Date: Thu, 6 Mar 2025 12:02:18 -0500 Subject: [PATCH 1/4] Add tests for colr glyph extents --- scripts/gen-shaping-tests.py | 2 + src/hb/face.rs | 3 - tests/custom/colr.tests | 20 + .../test_glyphs-glyf_colr_1_no_cliplist.ttf | Bin 0 -> 21388 bytes tests/shaping/custom.rs | 446 ++++++++++++++++++ 5 files changed, 468 insertions(+), 3 deletions(-) create mode 100644 tests/custom/colr.tests create mode 100644 tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf diff --git a/scripts/gen-shaping-tests.py b/scripts/gen-shaping-tests.py index 6175dc14..b6a4197f 100755 --- a/scripts/gen-shaping-tests.py +++ b/scripts/gen-shaping-tests.py @@ -222,6 +222,8 @@ def convert_test_files(root_dir, hb_shape_exe, tests_dir, tests_name, files, cus root_dir, hb_shape_exe, tests_name, file, idx + 1, test, fonts, custom ) + # Strip the extra trailing newline to avoid formatting churn + rust_code = rust_code[:-1] tests_name_snake_case = tests_name.replace("-", "_") with open(f"../tests/shaping/{tests_name_snake_case}.rs", "w") as f: f.write(rust_code) diff --git a/src/hb/face.rs b/src/hb/face.rs index 2025dbed..1198913a 100644 --- a/src/hb/face.rs +++ b/src/hb/face.rs @@ -266,9 +266,6 @@ impl<'a> hb_font_t<'a> { glyph_extents.height = (-f32::from(img.height) * scale).round() as i32; return true; } - // TODO: Add tests for this. We should use all glyphs from - // https://github.com/googlefonts/color-fonts/blob/main/fonts/test_glyphs-glyf_colr_1_no_cliplist.ttf - // and test their output against harfbuzz. } else if let Some(colr) = self.ttfp_face.tables().colr { if colr.is_simple() { return false; diff --git a/tests/custom/colr.tests b/tests/custom/colr.tests new file mode 100644 index 00000000..cc7183c2 --- /dev/null +++ b/tests/custom/colr.tests @@ -0,0 +1,20 @@ +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0100,U+F0101,U+F0102,U+F0103;[linear_repeat_0_1=0+1000<100,950,800,-700>|linear_repeat_0.2_0.8=1+1000<100,950,800,-700>|linear_repeat_0_1.5=2+1000<100,950,800,-700>|linear_repeat_0.5_1.5=3+1000<100,950,800,-700>] +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0200,U+F0201,U+F0202,U+F0203,U+F0204,U+F0205,U+F0206,U+F0207,U+F0208,U+F0209,U+F020A,U+F020B,U+F020C,U+F020D,U+F020E,U+F020F,U+F0210,U+F0211,U+F0212,U+F0213,U+F0214,U+F0215,U+F0216,U+F0217,U+F0218,U+F0219,U+F021A,U+F021B,U+F021C,U+F021D,U+F021E,U+F021F,U+F0220,U+F0221,U+F0222,U+F0223,U+F0224,U+F0225,U+F0226,U+F0227,U+F0228,U+F0229,U+F022A,U+F022B,U+F022C,U+F022D,U+F022E,U+F022F,U+F0230,U+F0231,U+F0232,U+F0233,U+F0234,U+F0235,U+F0236,U+F0237,U+F0238,U+F0239,U+F023A,U+F023B,U+F023C,U+F023D,U+F023E,U+F023F,U+F0240,U+F0241,U+F0242,U+F0243,U+F0244,U+F0245,U+F0246,U+F0247;[sweep_0_360_pad_narrow=0+1000<150,950,700,-700>|sweep_60_300_pad_narrow=1+1000<150,950,700,-700>|sweep_0_90_pad_narrow=2+1000<150,950,700,-700>|sweep_90_0_pad_narrow=3+1000<150,950,700,-700>|sweep_45_90_pad_narrow=4+1000<150,950,700,-700>|sweep_90_45_pad_narrow=5+1000<150,950,700,-700>|sweep_247.5_292.5_pad_narrow=6+1000<150,950,700,-700>|sweep_-45_45_pad_narrow=7+1000<150,950,700,-700>|sweep_45_-45_pad_narrow=8+1000<150,950,700,-700>|sweep_270_440_pad_narrow=9+1000<150,950,700,-700>|sweep_440_270_pad_narrow=10+1000<150,950,700,-700>|sweep_-180_540_pad_narrow=11+1000<150,950,700,-700>|sweep_0_360_reflect_narrow=12+1000<150,950,700,-700>|sweep_60_300_reflect_narrow=13+1000<150,950,700,-700>|sweep_0_90_reflect_narrow=14+1000<150,950,700,-700>|sweep_90_0_reflect_narrow=15+1000<150,950,700,-700>|sweep_45_90_reflect_narrow=16+1000<150,950,700,-700>|sweep_90_45_reflect_narrow=17+1000<150,950,700,-700>|sweep_247.5_292.5_reflect_narrow=18+1000<150,950,700,-700>|sweep_-45_45_reflect_narrow=19+1000<150,950,700,-700>|sweep_45_-45_reflect_narrow=20+1000<150,950,700,-700>|sweep_270_440_reflect_narrow=21+1000<150,950,700,-700>|sweep_440_270_reflect_narrow=22+1000<150,950,700,-700>|sweep_-180_540_reflect_narrow=23+1000<150,950,700,-700>|sweep_0_360_repeat_narrow=24+1000<150,950,700,-700>|sweep_60_300_repeat_narrow=25+1000<150,950,700,-700>|sweep_0_90_repeat_narrow=26+1000<150,950,700,-700>|sweep_90_0_repeat_narrow=27+1000<150,950,700,-700>|sweep_45_90_repeat_narrow=28+1000<150,950,700,-700>|sweep_90_45_repeat_narrow=29+1000<150,950,700,-700>|sweep_247.5_292.5_repeat_narrow=30+1000<150,950,700,-700>|sweep_-45_45_repeat_narrow=31+1000<150,950,700,-700>|sweep_45_-45_repeat_narrow=32+1000<150,950,700,-700>|sweep_270_440_repeat_narrow=33+1000<150,950,700,-700>|sweep_440_270_repeat_narrow=34+1000<150,950,700,-700>|sweep_-180_540_repeat_narrow=35+1000<150,950,700,-700>|sweep_0_360_pad_wide=36+1000<150,950,700,-700>|sweep_60_300_pad_wide=37+1000<150,950,700,-700>|sweep_0_90_pad_wide=38+1000<150,950,700,-700>|sweep_90_0_pad_wide=39+1000<150,950,700,-700>|sweep_45_90_pad_wide=40+1000<150,950,700,-700>|sweep_90_45_pad_wide=41+1000<150,950,700,-700>|sweep_247.5_292.5_pad_wide=42+1000<150,950,700,-700>|sweep_-45_45_pad_wide=43+1000<150,950,700,-700>|sweep_45_-45_pad_wide=44+1000<150,950,700,-700>|sweep_270_440_pad_wide=45+1000<150,950,700,-700>|sweep_440_270_pad_wide=46+1000<150,950,700,-700>|sweep_-180_540_pad_wide=47+1000<150,950,700,-700>|sweep_0_360_reflect_wide=48+1000<150,950,700,-700>|sweep_60_300_reflect_wide=49+1000<150,950,700,-700>|sweep_0_90_reflect_wide=50+1000<150,950,700,-700>|sweep_90_0_reflect_wide=51+1000<150,950,700,-700>|sweep_45_90_reflect_wide=52+1000<150,950,700,-700>|sweep_90_45_reflect_wide=53+1000<150,950,700,-700>|sweep_247.5_292.5_reflect_wide=54+1000<150,950,700,-700>|sweep_-45_45_reflect_wide=55+1000<150,950,700,-700>|sweep_45_-45_reflect_wide=56+1000<150,950,700,-700>|sweep_270_440_reflect_wide=57+1000<150,950,700,-700>|sweep_440_270_reflect_wide=58+1000<150,950,700,-700>|sweep_-180_540_reflect_wide=59+1000<150,950,700,-700>|sweep_0_360_repeat_wide=60+1000<150,950,700,-700>|sweep_60_300_repeat_wide=61+1000<150,950,700,-700>|sweep_0_90_repeat_wide=62+1000<150,950,700,-700>|sweep_90_0_repeat_wide=63+1000<150,950,700,-700>|sweep_45_90_repeat_wide=64+1000<150,950,700,-700>|sweep_90_45_repeat_wide=65+1000<150,950,700,-700>|sweep_247.5_292.5_repeat_wide=66+1000<150,950,700,-700>|sweep_-45_45_repeat_wide=67+1000<150,950,700,-700>|sweep_45_-45_repeat_wide=68+1000<150,950,700,-700>|sweep_270_440_repeat_wide=69+1000<150,950,700,-700>|sweep_440_270_repeat_wide=70+1000<150,950,700,-700>|sweep_-180_540_repeat_wide=71+1000<150,950,700,-700>] +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0300,U+F0301,U+F0302,U+F0303,U+F0304,U+F0305;[scale_0.5_1.5_center_500.0_500.0=0+1000<250,875,500,-750>|scale_1.5_1.5_center_500.0_500.0=1+1000<125,875,750,-750>|scale_0.5_1.5_center_0_0=2+1000<125,1125,625,-875>|scale_1.5_1.5_center_0_0=3+1000<250,1125,875,-875>|scale_0.5_1.5_center_1000_1000=4+1000<250,750,625,-875>|scale_1.5_1.5_center_1000_1000=5+1000<-125,750,875,-875>] +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0500,U+F0501,U+F0502;[linear_gradient_extend_mode_pad=0+1000<0,1000,1000,-1000>|linear_gradient_extend_mode_repeat=1+1000<0,1000,1000,-1000>|linear_gradient_extend_mode_reflect=2+1000<0,1000,1000,-1000>] +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0503,U+F0504,U+F0505,U+F0506,U+F0507,U+F0508;[radial_contained_gradient_extend_mode_pad=0+1000<0,1000,1000,-1000>|radial_contained_gradient_extend_mode_repeat=1+1000<0,1000,1000,-1000>|radial_contained_gradient_extend_mode_reflect=2+1000<0,1000,1000,-1000>|radial_horizontal_gradient_extend_mode_pad=3+1000<0,1000,1000,-1000>|radial_horizontal_gradient_extend_mode_repeat=4+1000<0,1000,1000,-1000>|radial_horizontal_gradient_extend_mode_reflect=5+1000<0,1000,1000,-1000>] +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0600,U+F0601,U+F0602,U+F0603;[rotate_10_center_0_0=0+1000<115,868,634,-618>|rotate_-10_center_1000_1000=1+1000<131,884,618,-634>|rotate_25_center_500.0_500.0=2+1000<167,832,664,-664>|rotate_-15_center_500.0_500.0=3+1000<193,806,612,-612>] +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0700,U+F0701,U+F0702,U+F0703,U+F0704,U+F0705;[skew_25_0_center_0_0=0+1000<-99,750,849,-500>|skew_25_0_center_500.0_500.0=1+1000<133,750,733,-500>|skew_0_15_center_0_0=2+1000<250,950,500,-700>|skew_0_15_center_500.0_500.0=3+1000<250,816,500,-633>|skew_-10_20_center_500.0_500.0=4+1000<205,840,588,-681>|skew_-10_20_center_1000_1000=5+1000<117,750,632,-772>] +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0800,U+F0801,U+F0802,U+F0803;[transform_matrix_1_0_0_1_125_125=0+1000<250,875,625,-625>|transform_matrix_1.5_0_0_1.5_0_0=1+1000<250,1125,875,-875>|transform_matrix_0.9659_0.2588_-0.2588_0.9659_0_0=2+1000<47,918,702,-668>|transform_matrix_1.0_0.0_0.6_1.0_-300.0_0.0=3+1000<100,750,800,-500>] +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0900,U+F0901,U+F0902,U+F0903,U+F0904,U+F0905,U+F0906;[translate_0_0=0+1000<250,750,500,-500>|translate_0_100=1+1000<250,850,500,-600>|translate_0_-100=2+1000<250,750,500,-600>|translate_100_0=3+1000<250,750,600,-500>|translate_-100_0=4+1000<150,750,600,-500>|translate_200_200=5+1000<250,950,700,-700>|translate_-200_-200=6+1000<50,750,700,-700>] +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0A00,U+F0A01,U+F0A02,U+F0A03,U+F0A04,U+F0A05,U+F0A06,U+F0A07,U+F0A08,U+F0A09,U+F0A0A,U+F0A0B,U+F0A0C,U+F0A0D,U+F0A0E,U+F0A0F,U+F0A10,U+F0A11,U+F0A12,U+F0A13,U+F0A14,U+F0A15,U+F0A16,U+F0A17,U+F0A18,U+F0A19,U+F0A1A,U+F0A1B;[composite_CLEAR=0+1000<250,750,500,-500>|composite_SRC=1+1000<250,750,583,-583>|composite_DEST=2+1000<166,833,583,-583>|composite_SRC_OVER=3+1000<166,833,667,-667>|composite_DEST_OVER=4+1000<166,833,667,-667>|composite_SRC_IN=5+1000<250,750,500,-500>|composite_DEST_IN=6+1000<250,750,500,-500>|composite_SRC_OUT=7+1000<250,750,583,-583>|composite_DEST_OUT=8+1000<166,833,583,-583>|composite_SRC_ATOP=9+1000<166,833,667,-667>|composite_DEST_ATOP=10+1000<166,833,667,-667>|composite_XOR=11+1000<166,833,667,-667>|composite_PLUS=12+1000<166,833,667,-667>|composite_SCREEN=13+1000<166,833,667,-667>|composite_OVERLAY=14+1000<166,833,667,-667>|composite_DARKEN=15+1000<166,833,667,-667>|composite_LIGHTEN=16+1000<166,833,667,-667>|composite_COLOR_DODGE=17+1000<166,833,667,-667>|composite_COLOR_BURN=18+1000<166,833,667,-667>|composite_HARD_LIGHT=19+1000<166,833,667,-667>|composite_SOFT_LIGHT=20+1000<166,833,667,-667>|composite_DIFFERENCE=21+1000<166,833,667,-667>|composite_EXCLUSION=22+1000<166,833,667,-667>|composite_MULTIPLY=23+1000<166,833,667,-667>|composite_HSL_HUE=24+1000<166,833,667,-667>|composite_HSL_SATURATION=25+1000<166,833,667,-667>|composite_HSL_COLOR=26+1000<166,833,667,-667>|composite_HSL_LUMINOSITY=27+1000<166,833,667,-667>] +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0B00,U+F0B01,U+F0B02,U+F0B03,U+F0B04,U+F0B05,U+F0B06,U+F0B07;[foreground_color_linear_alpha_1=0+1000<100,1000,1000,-1000>|foreground_color_linear_alpha_0.3=1+1000<100,1000,1000,-1000>|foreground_color_radial_alpha_1=2+1000<100,1000,1000,-1000>|foreground_color_radial_alpha_0.3=3+1000<100,1000,1000,-1000>|foreground_color_sweep_alpha_1=4+1000<100,1000,1000,-1000>|foreground_color_sweep_alpha_0.3=5+1000<100,1000,1000,-1000>|foreground_color_solid_alpha_1=6+1000<100,1000,1000,-1000>|foreground_color_solid_alpha_0.3=7+1000<100,1000,1000,-1000>] +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0C00,U+F0C01,U+F0C02,U+F0C03,U+F0C04,U+F0C05,U+F0C06,U+F0C07,U+F0C08,U+F0C09,U+F0C0A;[clip_box_top_left=0+1000<0,1000,1000,-1000>|clip_box_bottom_left=1+1000<0,1000,1000,-1000>|clip_box_bottom_right=2+1000<0,1000,1000,-1000>|clip_box_top_right=3+1000<0,1000,1000,-1000>|clip_box_center=4+1000<0,1000,1000,-1000>|clip_shade_top_left=5+1000<0,1000,500,-500>|clip_shade_bottom_left=6+1000<0,500,500,-500>|clip_shade_bottom_right=7+1000<500,500,500,-500>|clip_shade_top_right=8+1000<500,1000,500,-500>|clip_shade_center=9+1000<250,750,500,-500>|inset_clipped_radial_reflect=10+1000<0,1000,1000,-1000>] +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0D00;[gradient_p2_skewed=0+1250<100,950,1100,-700>] +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0E00,U+F0E01;[colored_circles_v0=0+1000<150,950,700,-704>|colored_circles_v1=1+1000<150,950,700,-700>] +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0F00,U+F0F01,U+F0F02,U+F0F03,U+F0F04,U+F0F05,U+F0F06;[circle_r50=0+1000<450,650,100,-100>|circle_r100=1+1000<400,700,200,-200>|circle_r150=2+1000<350,750,300,-300>|circle_r200=3+1000<300,800,400,-400>|circle_r250=4+1000<250,850,500,-500>|circle_r300=5+1000<200,900,600,-600>|circle_r350=6+1000<150,950,700,-700>] +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F1000;[solid_colorline_alpha=0+1000<0,950,1000,-700>] +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F1100,U+F1101;[paintcolrglyph_cycle_first=0+1000<0,0,0,0>|paintcolrglyph_cycle_second=1+1000<0,0,0,0>] +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F1200;[no_cycle_multi_colrglyph=0+1000<0,950,1000,-700>] +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F1300,U+F1301,U+F1302,U+F1303,U+F1304,U+F1305,U+F1306,U+F1307,U+F1308,U+F1309,U+F130A,U+F130B,U+F130C,U+F130D,U+F130E,U+F130F,U+F1310,U+F1311,U+F1312,U+F1313,U+F1314,U+F1315,U+F1316,U+F1317;[sweep_coincident_angles_forward_blue_red_pad=0+1000<150,950,700,-700>|sweep_coincident_angles_forward_blue_red_reflect=1+1000<150,950,700,-700>|sweep_coincident_angles_forward_blue_red_repeat=2+1000<150,950,700,-700>|sweep_coincident_angles_forward_linen_gray_pad=3+1000<150,950,700,-700>|sweep_coincident_angles_forward_linen_gray_reflect=4+1000<150,950,700,-700>|sweep_coincident_angles_forward_linen_gray_repeat=5+1000<150,950,700,-700>|sweep_coincident_angles_reverse_blue_red_pad=6+1000<150,950,700,-700>|sweep_coincident_angles_reverse_blue_red_reflect=7+1000<150,950,700,-700>|sweep_coincident_angles_reverse_blue_red_repeat=8+1000<150,950,700,-700>|sweep_coincident_angles_reverse_linen_gray_pad=9+1000<150,950,700,-700>|sweep_coincident_angles_reverse_linen_gray_reflect=10+1000<150,950,700,-700>|sweep_coincident_angles_reverse_linen_gray_repeat=11+1000<150,950,700,-700>|sweep_coincident_stops_forward_blue_red_pad=12+1000<150,950,700,-700>|sweep_coincident_stops_forward_blue_red_reflect=13+1000<150,950,700,-700>|sweep_coincident_stops_forward_blue_red_repeat=14+1000<150,950,700,-700>|sweep_coincident_stops_forward_linen_gray_pad=15+1000<150,950,700,-700>|sweep_coincident_stops_forward_linen_gray_reflect=16+1000<150,950,700,-700>|sweep_coincident_stops_forward_linen_gray_repeat=17+1000<150,950,700,-700>|sweep_coincident_stops_reverse_blue_red_pad=18+1000<150,950,700,-700>|sweep_coincident_stops_reverse_blue_red_reflect=19+1000<150,950,700,-700>|sweep_coincident_stops_reverse_blue_red_repeat=20+1000<150,950,700,-700>|sweep_coincident_stops_reverse_linen_gray_pad=21+1000<150,950,700,-700>|sweep_coincident_stops_reverse_linen_gray_reflect=22+1000<150,950,700,-700>|sweep_coincident_stops_reverse_linen_gray_repeat=23+1000<150,950,700,-700>] +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F1400,U+F1401,U+F1402,U+F1403,U+F1404,U+F1405,U+F1406,U+F1407,U+F1408,U+F1409,U+F140A,U+F140B,U+F140C,U+F140D,U+F140E,U+F140F;[paint_glyph_nested_identity_identity=0+1000<200,770,600,-520>|paint_glyph_nested_identity_translate=1+1000<200,770,600,-520>|paint_glyph_nested_identity_rotate_origin=2+1000<200,770,600,-520>|paint_glyph_nested_identity_rotate_center=3+1000<200,770,600,-520>|paint_glyph_nested_translate_identity=4+1000<320,890,600,-520>|paint_glyph_nested_translate_translate=5+1000<320,890,600,-520>|paint_glyph_nested_translate_rotate_origin=6+1000<320,890,600,-520>|paint_glyph_nested_translate_rotate_center=7+1000<320,890,600,-520>|paint_glyph_nested_rotate_origin_identity=8+1000<63,897,681,-616>|paint_glyph_nested_rotate_origin_translate=9+1000<63,897,681,-616>|paint_glyph_nested_rotate_origin_rotate_origin=10+1000<63,897,681,-616>|paint_glyph_nested_rotate_origin_rotate_center=11+1000<63,897,681,-616>|paint_glyph_nested_rotate_center_identity=12+1000<124,899,750,-779>|paint_glyph_nested_rotate_center_translate=13+1000<124,899,750,-779>|paint_glyph_nested_rotate_center_rotate_origin=14+1000<124,899,750,-779>|paint_glyph_nested_rotate_center_rotate_center=15+1000<124,899,750,-779>] \ No newline at end of file diff --git a/tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf b/tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf new file mode 100644 index 0000000000000000000000000000000000000000..addc05276a87ef6b1af65f7af17a164628a30641 GIT binary patch literal 21388 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 literal 0 HcmV?d00001 diff --git a/tests/shaping/custom.rs b/tests/shaping/custom.rs index 685c0dbd..846bf0ff 100644 --- a/tests/shaping/custom.rs +++ b/tests/shaping/custom.rs @@ -40,6 +40,452 @@ fn bugs_003() { ); } +#[test] +fn colr_001() { + assert_eq!( + shape( + "tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf", + "\u{F0100}\u{F0101}\u{F0102}\u{F0103}", + "--show-extents", + ), + "linear_repeat_0_1=0+1000<100,950,800,-700>|\ + linear_repeat_0.2_0.8=1+1000<100,950,800,-700>|\ + linear_repeat_0_1.5=2+1000<100,950,800,-700>|\ + linear_repeat_0.5_1.5=3+1000<100,950,800,-700>" + ); +} + +#[test] +fn colr_002() { + assert_eq!( + shape( + "tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf", + "\u{F0200}\u{F0201}\u{F0202}\u{F0203}\u{F0204}\u{F0205}\u{F0206}\u{F0207}\u{F0208}\u{F0209}\ + \u{F020A}\u{F020B}\u{F020C}\u{F020D}\u{F020E}\u{F020F}\u{F0210}\u{F0211}\u{F0212}\u{F0213}\ + \u{F0214}\u{F0215}\u{F0216}\u{F0217}\u{F0218}\u{F0219}\u{F021A}\u{F021B}\u{F021C}\u{F021D}\ + \u{F021E}\u{F021F}\u{F0220}\u{F0221}\u{F0222}\u{F0223}\u{F0224}\u{F0225}\u{F0226}\u{F0227}\ + \u{F0228}\u{F0229}\u{F022A}\u{F022B}\u{F022C}\u{F022D}\u{F022E}\u{F022F}\u{F0230}\u{F0231}\ + \u{F0232}\u{F0233}\u{F0234}\u{F0235}\u{F0236}\u{F0237}\u{F0238}\u{F0239}\u{F023A}\u{F023B}\ + \u{F023C}\u{F023D}\u{F023E}\u{F023F}\u{F0240}\u{F0241}\u{F0242}\u{F0243}\u{F0244}\u{F0245}\ + \u{F0246}\u{F0247}", + "--show-extents", + ), + "sweep_0_360_pad_narrow=0+1000<150,950,700,-700>|\ + sweep_60_300_pad_narrow=1+1000<150,950,700,-700>|\ + sweep_0_90_pad_narrow=2+1000<150,950,700,-700>|\ + sweep_90_0_pad_narrow=3+1000<150,950,700,-700>|\ + sweep_45_90_pad_narrow=4+1000<150,950,700,-700>|\ + sweep_90_45_pad_narrow=5+1000<150,950,700,-700>|\ + sweep_247.5_292.5_pad_narrow=6+1000<150,950,700,-700>|\ + sweep_-45_45_pad_narrow=7+1000<150,950,700,-700>|\ + sweep_45_-45_pad_narrow=8+1000<150,950,700,-700>|\ + sweep_270_440_pad_narrow=9+1000<150,950,700,-700>|\ + sweep_440_270_pad_narrow=10+1000<150,950,700,-700>|\ + sweep_-180_540_pad_narrow=11+1000<150,950,700,-700>|\ + sweep_0_360_reflect_narrow=12+1000<150,950,700,-700>|\ + sweep_60_300_reflect_narrow=13+1000<150,950,700,-700>|\ + sweep_0_90_reflect_narrow=14+1000<150,950,700,-700>|\ + sweep_90_0_reflect_narrow=15+1000<150,950,700,-700>|\ + sweep_45_90_reflect_narrow=16+1000<150,950,700,-700>|\ + sweep_90_45_reflect_narrow=17+1000<150,950,700,-700>|\ + sweep_247.5_292.5_reflect_narrow=18+1000<150,950,700,-700>|\ + sweep_-45_45_reflect_narrow=19+1000<150,950,700,-700>|\ + sweep_45_-45_reflect_narrow=20+1000<150,950,700,-700>|\ + sweep_270_440_reflect_narrow=21+1000<150,950,700,-700>|\ + sweep_440_270_reflect_narrow=22+1000<150,950,700,-700>|\ + sweep_-180_540_reflect_narrow=23+1000<150,950,700,-700>|\ + sweep_0_360_repeat_narrow=24+1000<150,950,700,-700>|\ + sweep_60_300_repeat_narrow=25+1000<150,950,700,-700>|\ + sweep_0_90_repeat_narrow=26+1000<150,950,700,-700>|\ + sweep_90_0_repeat_narrow=27+1000<150,950,700,-700>|\ + sweep_45_90_repeat_narrow=28+1000<150,950,700,-700>|\ + sweep_90_45_repeat_narrow=29+1000<150,950,700,-700>|\ + sweep_247.5_292.5_repeat_narrow=30+1000<150,950,700,-700>|\ + sweep_-45_45_repeat_narrow=31+1000<150,950,700,-700>|\ + sweep_45_-45_repeat_narrow=32+1000<150,950,700,-700>|\ + sweep_270_440_repeat_narrow=33+1000<150,950,700,-700>|\ + sweep_440_270_repeat_narrow=34+1000<150,950,700,-700>|\ + sweep_-180_540_repeat_narrow=35+1000<150,950,700,-700>|\ + sweep_0_360_pad_wide=36+1000<150,950,700,-700>|\ + sweep_60_300_pad_wide=37+1000<150,950,700,-700>|\ + sweep_0_90_pad_wide=38+1000<150,950,700,-700>|\ + sweep_90_0_pad_wide=39+1000<150,950,700,-700>|\ + sweep_45_90_pad_wide=40+1000<150,950,700,-700>|\ + sweep_90_45_pad_wide=41+1000<150,950,700,-700>|\ + sweep_247.5_292.5_pad_wide=42+1000<150,950,700,-700>|\ + sweep_-45_45_pad_wide=43+1000<150,950,700,-700>|\ + sweep_45_-45_pad_wide=44+1000<150,950,700,-700>|\ + sweep_270_440_pad_wide=45+1000<150,950,700,-700>|\ + sweep_440_270_pad_wide=46+1000<150,950,700,-700>|\ + sweep_-180_540_pad_wide=47+1000<150,950,700,-700>|\ + sweep_0_360_reflect_wide=48+1000<150,950,700,-700>|\ + sweep_60_300_reflect_wide=49+1000<150,950,700,-700>|\ + sweep_0_90_reflect_wide=50+1000<150,950,700,-700>|\ + sweep_90_0_reflect_wide=51+1000<150,950,700,-700>|\ + sweep_45_90_reflect_wide=52+1000<150,950,700,-700>|\ + sweep_90_45_reflect_wide=53+1000<150,950,700,-700>|\ + sweep_247.5_292.5_reflect_wide=54+1000<150,950,700,-700>|\ + sweep_-45_45_reflect_wide=55+1000<150,950,700,-700>|\ + sweep_45_-45_reflect_wide=56+1000<150,950,700,-700>|\ + sweep_270_440_reflect_wide=57+1000<150,950,700,-700>|\ + sweep_440_270_reflect_wide=58+1000<150,950,700,-700>|\ + sweep_-180_540_reflect_wide=59+1000<150,950,700,-700>|\ + sweep_0_360_repeat_wide=60+1000<150,950,700,-700>|\ + sweep_60_300_repeat_wide=61+1000<150,950,700,-700>|\ + sweep_0_90_repeat_wide=62+1000<150,950,700,-700>|\ + sweep_90_0_repeat_wide=63+1000<150,950,700,-700>|\ + sweep_45_90_repeat_wide=64+1000<150,950,700,-700>|\ + sweep_90_45_repeat_wide=65+1000<150,950,700,-700>|\ + sweep_247.5_292.5_repeat_wide=66+1000<150,950,700,-700>|\ + sweep_-45_45_repeat_wide=67+1000<150,950,700,-700>|\ + sweep_45_-45_repeat_wide=68+1000<150,950,700,-700>|\ + sweep_270_440_repeat_wide=69+1000<150,950,700,-700>|\ + sweep_440_270_repeat_wide=70+1000<150,950,700,-700>|\ + sweep_-180_540_repeat_wide=71+1000<150,950,700,-700>" + ); +} + +#[test] +fn colr_003() { + assert_eq!( + shape( + "tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf", + "\u{F0300}\u{F0301}\u{F0302}\u{F0303}\u{F0304}\u{F0305}", + "--show-extents", + ), + "scale_0.5_1.5_center_500.0_500.0=0+1000<250,875,500,-750>|\ + scale_1.5_1.5_center_500.0_500.0=1+1000<125,875,750,-750>|\ + scale_0.5_1.5_center_0_0=2+1000<125,1125,625,-875>|\ + scale_1.5_1.5_center_0_0=3+1000<250,1125,875,-875>|\ + scale_0.5_1.5_center_1000_1000=4+1000<250,750,625,-875>|\ + scale_1.5_1.5_center_1000_1000=5+1000<-125,750,875,-875>" + ); +} + +#[test] +fn colr_004() { + assert_eq!( + shape( + "tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf", + "\u{F0500}\u{F0501}\u{F0502}", + "--show-extents", + ), + "linear_gradient_extend_mode_pad=0+1000<0,1000,1000,-1000>|\ + linear_gradient_extend_mode_repeat=1+1000<0,1000,1000,-1000>|\ + linear_gradient_extend_mode_reflect=2+1000<0,1000,1000,-1000>" + ); +} + +#[test] +fn colr_005() { + assert_eq!( + shape( + "tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf", + "\u{F0503}\u{F0504}\u{F0505}\u{F0506}\u{F0507}\u{F0508}", + "--show-extents", + ), + "radial_contained_gradient_extend_mode_pad=0+1000<0,1000,1000,-1000>|\ + radial_contained_gradient_extend_mode_repeat=1+1000<0,1000,1000,-1000>|\ + radial_contained_gradient_extend_mode_reflect=2+1000<0,1000,1000,-1000>|\ + radial_horizontal_gradient_extend_mode_pad=3+1000<0,1000,1000,-1000>|\ + radial_horizontal_gradient_extend_mode_repeat=4+1000<0,1000,1000,-1000>|\ + radial_horizontal_gradient_extend_mode_reflect=5+1000<0,1000,1000,-1000>" + ); +} + +#[test] +fn colr_006() { + assert_eq!( + shape( + "tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf", + "\u{F0600}\u{F0601}\u{F0602}\u{F0603}", + "--show-extents", + ), + "rotate_10_center_0_0=0+1000<115,868,634,-618>|\ + rotate_-10_center_1000_1000=1+1000<131,884,618,-634>|\ + rotate_25_center_500.0_500.0=2+1000<167,832,664,-664>|\ + rotate_-15_center_500.0_500.0=3+1000<193,806,612,-612>" + ); +} + +#[test] +fn colr_007() { + assert_eq!( + shape( + "tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf", + "\u{F0700}\u{F0701}\u{F0702}\u{F0703}\u{F0704}\u{F0705}", + "--show-extents", + ), + "skew_25_0_center_0_0=0+1000<-99,750,849,-500>|\ + skew_25_0_center_500.0_500.0=1+1000<133,750,733,-500>|\ + skew_0_15_center_0_0=2+1000<250,950,500,-700>|\ + skew_0_15_center_500.0_500.0=3+1000<250,816,500,-633>|\ + skew_-10_20_center_500.0_500.0=4+1000<205,840,588,-681>|\ + skew_-10_20_center_1000_1000=5+1000<117,750,632,-772>" + ); +} + +#[test] +fn colr_008() { + assert_eq!( + shape( + "tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf", + "\u{F0800}\u{F0801}\u{F0802}\u{F0803}", + "--show-extents", + ), + "transform_matrix_1_0_0_1_125_125=0+1000<250,875,625,-625>|\ + transform_matrix_1.5_0_0_1.5_0_0=1+1000<250,1125,875,-875>|\ + transform_matrix_0.9659_0.2588_-0.2588_0.9659_0_0=2+1000<47,918,702,-668>|\ + transform_matrix_1.0_0.0_0.6_1.0_-300.0_0.0=3+1000<100,750,800,-500>" + ); +} + +#[test] +fn colr_009() { + assert_eq!( + shape( + "tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf", + "\u{F0900}\u{F0901}\u{F0902}\u{F0903}\u{F0904}\u{F0905}\u{F0906}", + "--show-extents", + ), + "translate_0_0=0+1000<250,750,500,-500>|\ + translate_0_100=1+1000<250,850,500,-600>|\ + translate_0_-100=2+1000<250,750,500,-600>|\ + translate_100_0=3+1000<250,750,600,-500>|\ + translate_-100_0=4+1000<150,750,600,-500>|\ + translate_200_200=5+1000<250,950,700,-700>|\ + translate_-200_-200=6+1000<50,750,700,-700>" + ); +} + +#[test] +fn colr_010() { + assert_eq!( + shape( + "tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf", + "\u{F0A00}\u{F0A01}\u{F0A02}\u{F0A03}\u{F0A04}\u{F0A05}\u{F0A06}\u{F0A07}\u{F0A08}\u{F0A09}\ + \u{F0A0A}\u{F0A0B}\u{F0A0C}\u{F0A0D}\u{F0A0E}\u{F0A0F}\u{F0A10}\u{F0A11}\u{F0A12}\u{F0A13}\ + \u{F0A14}\u{F0A15}\u{F0A16}\u{F0A17}\u{F0A18}\u{F0A19}\u{F0A1A}\u{F0A1B}", + "--show-extents", + ), + "composite_CLEAR=0+1000<250,750,500,-500>|\ + composite_SRC=1+1000<250,750,583,-583>|\ + composite_DEST=2+1000<166,833,583,-583>|\ + composite_SRC_OVER=3+1000<166,833,667,-667>|\ + composite_DEST_OVER=4+1000<166,833,667,-667>|\ + composite_SRC_IN=5+1000<250,750,500,-500>|\ + composite_DEST_IN=6+1000<250,750,500,-500>|\ + composite_SRC_OUT=7+1000<250,750,583,-583>|\ + composite_DEST_OUT=8+1000<166,833,583,-583>|\ + composite_SRC_ATOP=9+1000<166,833,667,-667>|\ + composite_DEST_ATOP=10+1000<166,833,667,-667>|\ + composite_XOR=11+1000<166,833,667,-667>|\ + composite_PLUS=12+1000<166,833,667,-667>|\ + composite_SCREEN=13+1000<166,833,667,-667>|\ + composite_OVERLAY=14+1000<166,833,667,-667>|\ + composite_DARKEN=15+1000<166,833,667,-667>|\ + composite_LIGHTEN=16+1000<166,833,667,-667>|\ + composite_COLOR_DODGE=17+1000<166,833,667,-667>|\ + composite_COLOR_BURN=18+1000<166,833,667,-667>|\ + composite_HARD_LIGHT=19+1000<166,833,667,-667>|\ + composite_SOFT_LIGHT=20+1000<166,833,667,-667>|\ + composite_DIFFERENCE=21+1000<166,833,667,-667>|\ + composite_EXCLUSION=22+1000<166,833,667,-667>|\ + composite_MULTIPLY=23+1000<166,833,667,-667>|\ + composite_HSL_HUE=24+1000<166,833,667,-667>|\ + composite_HSL_SATURATION=25+1000<166,833,667,-667>|\ + composite_HSL_COLOR=26+1000<166,833,667,-667>|\ + composite_HSL_LUMINOSITY=27+1000<166,833,667,-667>" + ); +} + +#[test] +fn colr_011() { + assert_eq!( + shape( + "tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf", + "\u{F0B00}\u{F0B01}\u{F0B02}\u{F0B03}\u{F0B04}\u{F0B05}\u{F0B06}\u{F0B07}", + "--show-extents", + ), + "foreground_color_linear_alpha_1=0+1000<100,1000,1000,-1000>|\ + foreground_color_linear_alpha_0.3=1+1000<100,1000,1000,-1000>|\ + foreground_color_radial_alpha_1=2+1000<100,1000,1000,-1000>|\ + foreground_color_radial_alpha_0.3=3+1000<100,1000,1000,-1000>|\ + foreground_color_sweep_alpha_1=4+1000<100,1000,1000,-1000>|\ + foreground_color_sweep_alpha_0.3=5+1000<100,1000,1000,-1000>|\ + foreground_color_solid_alpha_1=6+1000<100,1000,1000,-1000>|\ + foreground_color_solid_alpha_0.3=7+1000<100,1000,1000,-1000>" + ); +} + +#[test] +fn colr_012() { + assert_eq!( + shape( + "tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf", + "\u{F0C00}\u{F0C01}\u{F0C02}\u{F0C03}\u{F0C04}\u{F0C05}\u{F0C06}\u{F0C07}\u{F0C08}\u{F0C09}\ + \u{F0C0A}", + "--show-extents", + ), + "clip_box_top_left=0+1000<0,1000,1000,-1000>|\ + clip_box_bottom_left=1+1000<0,1000,1000,-1000>|\ + clip_box_bottom_right=2+1000<0,1000,1000,-1000>|\ + clip_box_top_right=3+1000<0,1000,1000,-1000>|\ + clip_box_center=4+1000<0,1000,1000,-1000>|\ + clip_shade_top_left=5+1000<0,1000,500,-500>|\ + clip_shade_bottom_left=6+1000<0,500,500,-500>|\ + clip_shade_bottom_right=7+1000<500,500,500,-500>|\ + clip_shade_top_right=8+1000<500,1000,500,-500>|\ + clip_shade_center=9+1000<250,750,500,-500>|\ + inset_clipped_radial_reflect=10+1000<0,1000,1000,-1000>" + ); +} + +#[test] +fn colr_013() { + assert_eq!( + shape( + "tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf", + "\u{F0D00}", + "--show-extents", + ), + "gradient_p2_skewed=0+1250<100,950,1100,-700>" + ); +} + +#[test] +fn colr_014() { + assert_eq!( + shape( + "tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf", + "\u{F0E00}\u{F0E01}", + "--show-extents", + ), + "colored_circles_v0=0+1000<150,950,700,-704>|\ + colored_circles_v1=1+1000<150,950,700,-700>" + ); +} + +#[test] +fn colr_015() { + assert_eq!( + shape( + "tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf", + "\u{F0F00}\u{F0F01}\u{F0F02}\u{F0F03}\u{F0F04}\u{F0F05}\u{F0F06}", + "--show-extents", + ), + "circle_r50=0+1000<450,650,100,-100>|\ + circle_r100=1+1000<400,700,200,-200>|\ + circle_r150=2+1000<350,750,300,-300>|\ + circle_r200=3+1000<300,800,400,-400>|\ + circle_r250=4+1000<250,850,500,-500>|\ + circle_r300=5+1000<200,900,600,-600>|\ + circle_r350=6+1000<150,950,700,-700>" + ); +} + +#[test] +fn colr_016() { + assert_eq!( + shape( + "tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf", + "\u{F1000}", + "--show-extents", + ), + "solid_colorline_alpha=0+1000<0,950,1000,-700>" + ); +} + +#[test] +fn colr_017() { + assert_eq!( + shape( + "tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf", + "\u{F1100}\u{F1101}", + "--show-extents", + ), + "paintcolrglyph_cycle_first=0+1000<0,0,0,0>|\ + paintcolrglyph_cycle_second=1+1000<0,0,0,0>" + ); +} + +#[test] +fn colr_018() { + assert_eq!( + shape( + "tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf", + "\u{F1200}", + "--show-extents", + ), + "no_cycle_multi_colrglyph=0+1000<0,950,1000,-700>" + ); +} + +#[test] +fn colr_019() { + assert_eq!( + shape( + "tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf", + "\u{F1300}\u{F1301}\u{F1302}\u{F1303}\u{F1304}\u{F1305}\u{F1306}\u{F1307}\u{F1308}\u{F1309}\ + \u{F130A}\u{F130B}\u{F130C}\u{F130D}\u{F130E}\u{F130F}\u{F1310}\u{F1311}\u{F1312}\u{F1313}\ + \u{F1314}\u{F1315}\u{F1316}\u{F1317}", + "--show-extents", + ), + "sweep_coincident_angles_forward_blue_red_pad=0+1000<150,950,700,-700>|\ + sweep_coincident_angles_forward_blue_red_reflect=1+1000<150,950,700,-700>|\ + sweep_coincident_angles_forward_blue_red_repeat=2+1000<150,950,700,-700>|\ + sweep_coincident_angles_forward_linen_gray_pad=3+1000<150,950,700,-700>|\ + sweep_coincident_angles_forward_linen_gray_reflect=4+1000<150,950,700,-700>|\ + sweep_coincident_angles_forward_linen_gray_repeat=5+1000<150,950,700,-700>|\ + sweep_coincident_angles_reverse_blue_red_pad=6+1000<150,950,700,-700>|\ + sweep_coincident_angles_reverse_blue_red_reflect=7+1000<150,950,700,-700>|\ + sweep_coincident_angles_reverse_blue_red_repeat=8+1000<150,950,700,-700>|\ + sweep_coincident_angles_reverse_linen_gray_pad=9+1000<150,950,700,-700>|\ + sweep_coincident_angles_reverse_linen_gray_reflect=10+1000<150,950,700,-700>|\ + sweep_coincident_angles_reverse_linen_gray_repeat=11+1000<150,950,700,-700>|\ + sweep_coincident_stops_forward_blue_red_pad=12+1000<150,950,700,-700>|\ + sweep_coincident_stops_forward_blue_red_reflect=13+1000<150,950,700,-700>|\ + sweep_coincident_stops_forward_blue_red_repeat=14+1000<150,950,700,-700>|\ + sweep_coincident_stops_forward_linen_gray_pad=15+1000<150,950,700,-700>|\ + sweep_coincident_stops_forward_linen_gray_reflect=16+1000<150,950,700,-700>|\ + sweep_coincident_stops_forward_linen_gray_repeat=17+1000<150,950,700,-700>|\ + sweep_coincident_stops_reverse_blue_red_pad=18+1000<150,950,700,-700>|\ + sweep_coincident_stops_reverse_blue_red_reflect=19+1000<150,950,700,-700>|\ + sweep_coincident_stops_reverse_blue_red_repeat=20+1000<150,950,700,-700>|\ + sweep_coincident_stops_reverse_linen_gray_pad=21+1000<150,950,700,-700>|\ + sweep_coincident_stops_reverse_linen_gray_reflect=22+1000<150,950,700,-700>|\ + sweep_coincident_stops_reverse_linen_gray_repeat=23+1000<150,950,700,-700>" + ); +} + +#[test] +fn colr_020() { + assert_eq!( + shape( + "tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf", + "\u{F1400}\u{F1401}\u{F1402}\u{F1403}\u{F1404}\u{F1405}\u{F1406}\u{F1407}\u{F1408}\u{F1409}\ + \u{F140A}\u{F140B}\u{F140C}\u{F140D}\u{F140E}\u{F140F}", + "--show-extents", + ), + "paint_glyph_nested_identity_identity=0+1000<200,770,600,-520>|\ + paint_glyph_nested_identity_translate=1+1000<200,770,600,-520>|\ + paint_glyph_nested_identity_rotate_origin=2+1000<200,770,600,-520>|\ + paint_glyph_nested_identity_rotate_center=3+1000<200,770,600,-520>|\ + paint_glyph_nested_translate_identity=4+1000<320,890,600,-520>|\ + paint_glyph_nested_translate_translate=5+1000<320,890,600,-520>|\ + paint_glyph_nested_translate_rotate_origin=6+1000<320,890,600,-520>|\ + paint_glyph_nested_translate_rotate_center=7+1000<320,890,600,-520>|\ + paint_glyph_nested_rotate_origin_identity=8+1000<63,897,681,-616>|\ + paint_glyph_nested_rotate_origin_translate=9+1000<63,897,681,-616>|\ + paint_glyph_nested_rotate_origin_rotate_origin=10+1000<63,897,681,-616>|\ + paint_glyph_nested_rotate_origin_rotate_center=11+1000<63,897,681,-616>|\ + paint_glyph_nested_rotate_center_identity=12+1000<124,899,750,-779>|\ + paint_glyph_nested_rotate_center_translate=13+1000<124,899,750,-779>|\ + paint_glyph_nested_rotate_center_rotate_origin=14+1000<124,899,750,-779>|\ + paint_glyph_nested_rotate_center_rotate_center=15+1000<124,899,750,-779>" + ); +} + #[test] fn fuzzer_001() { assert_eq!( From 8fc6feb18621e87cfb86e6f091b31fcc3dd5a2eb Mon Sep 17 00:00:00 2001 From: valadaptive Date: Thu, 6 Mar 2025 12:19:18 -0500 Subject: [PATCH 2/4] Ignore broken tests --- scripts/gen-shaping-tests.py | 14 +++ tests/shaping/custom.rs | 220 ----------------------------------- 2 files changed, 14 insertions(+), 220 deletions(-) diff --git a/scripts/gen-shaping-tests.py b/scripts/gen-shaping-tests.py index b6a4197f..9545ea65 100755 --- a/scripts/gen-shaping-tests.py +++ b/scripts/gen-shaping-tests.py @@ -47,6 +47,20 @@ # This custom test fails because harfbuzz uses a set digest in AAT to abort early # which we don't do yet. Is basically the same as morx_20_005, but with `--show-flags` "glyph_flags_002", + + # These currently return different results from harfbuzz. + "colr_003", + "colr_006", + "colr_007", + "colr_008", + "colr_009", + "colr_010", + "colr_011", + "colr_012", + "colr_014", + "colr_015", + "colr_016", + "colr_018", ] diff --git a/tests/shaping/custom.rs b/tests/shaping/custom.rs index 846bf0ff..ed968451 100644 --- a/tests/shaping/custom.rs +++ b/tests/shaping/custom.rs @@ -145,23 +145,6 @@ fn colr_002() { ); } -#[test] -fn colr_003() { - assert_eq!( - shape( - "tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf", - "\u{F0300}\u{F0301}\u{F0302}\u{F0303}\u{F0304}\u{F0305}", - "--show-extents", - ), - "scale_0.5_1.5_center_500.0_500.0=0+1000<250,875,500,-750>|\ - scale_1.5_1.5_center_500.0_500.0=1+1000<125,875,750,-750>|\ - scale_0.5_1.5_center_0_0=2+1000<125,1125,625,-875>|\ - scale_1.5_1.5_center_0_0=3+1000<250,1125,875,-875>|\ - scale_0.5_1.5_center_1000_1000=4+1000<250,750,625,-875>|\ - scale_1.5_1.5_center_1000_1000=5+1000<-125,750,875,-875>" - ); -} - #[test] fn colr_004() { assert_eq!( @@ -193,154 +176,6 @@ fn colr_005() { ); } -#[test] -fn colr_006() { - assert_eq!( - shape( - "tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf", - "\u{F0600}\u{F0601}\u{F0602}\u{F0603}", - "--show-extents", - ), - "rotate_10_center_0_0=0+1000<115,868,634,-618>|\ - rotate_-10_center_1000_1000=1+1000<131,884,618,-634>|\ - rotate_25_center_500.0_500.0=2+1000<167,832,664,-664>|\ - rotate_-15_center_500.0_500.0=3+1000<193,806,612,-612>" - ); -} - -#[test] -fn colr_007() { - assert_eq!( - shape( - "tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf", - "\u{F0700}\u{F0701}\u{F0702}\u{F0703}\u{F0704}\u{F0705}", - "--show-extents", - ), - "skew_25_0_center_0_0=0+1000<-99,750,849,-500>|\ - skew_25_0_center_500.0_500.0=1+1000<133,750,733,-500>|\ - skew_0_15_center_0_0=2+1000<250,950,500,-700>|\ - skew_0_15_center_500.0_500.0=3+1000<250,816,500,-633>|\ - skew_-10_20_center_500.0_500.0=4+1000<205,840,588,-681>|\ - skew_-10_20_center_1000_1000=5+1000<117,750,632,-772>" - ); -} - -#[test] -fn colr_008() { - assert_eq!( - shape( - "tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf", - "\u{F0800}\u{F0801}\u{F0802}\u{F0803}", - "--show-extents", - ), - "transform_matrix_1_0_0_1_125_125=0+1000<250,875,625,-625>|\ - transform_matrix_1.5_0_0_1.5_0_0=1+1000<250,1125,875,-875>|\ - transform_matrix_0.9659_0.2588_-0.2588_0.9659_0_0=2+1000<47,918,702,-668>|\ - transform_matrix_1.0_0.0_0.6_1.0_-300.0_0.0=3+1000<100,750,800,-500>" - ); -} - -#[test] -fn colr_009() { - assert_eq!( - shape( - "tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf", - "\u{F0900}\u{F0901}\u{F0902}\u{F0903}\u{F0904}\u{F0905}\u{F0906}", - "--show-extents", - ), - "translate_0_0=0+1000<250,750,500,-500>|\ - translate_0_100=1+1000<250,850,500,-600>|\ - translate_0_-100=2+1000<250,750,500,-600>|\ - translate_100_0=3+1000<250,750,600,-500>|\ - translate_-100_0=4+1000<150,750,600,-500>|\ - translate_200_200=5+1000<250,950,700,-700>|\ - translate_-200_-200=6+1000<50,750,700,-700>" - ); -} - -#[test] -fn colr_010() { - assert_eq!( - shape( - "tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf", - "\u{F0A00}\u{F0A01}\u{F0A02}\u{F0A03}\u{F0A04}\u{F0A05}\u{F0A06}\u{F0A07}\u{F0A08}\u{F0A09}\ - \u{F0A0A}\u{F0A0B}\u{F0A0C}\u{F0A0D}\u{F0A0E}\u{F0A0F}\u{F0A10}\u{F0A11}\u{F0A12}\u{F0A13}\ - \u{F0A14}\u{F0A15}\u{F0A16}\u{F0A17}\u{F0A18}\u{F0A19}\u{F0A1A}\u{F0A1B}", - "--show-extents", - ), - "composite_CLEAR=0+1000<250,750,500,-500>|\ - composite_SRC=1+1000<250,750,583,-583>|\ - composite_DEST=2+1000<166,833,583,-583>|\ - composite_SRC_OVER=3+1000<166,833,667,-667>|\ - composite_DEST_OVER=4+1000<166,833,667,-667>|\ - composite_SRC_IN=5+1000<250,750,500,-500>|\ - composite_DEST_IN=6+1000<250,750,500,-500>|\ - composite_SRC_OUT=7+1000<250,750,583,-583>|\ - composite_DEST_OUT=8+1000<166,833,583,-583>|\ - composite_SRC_ATOP=9+1000<166,833,667,-667>|\ - composite_DEST_ATOP=10+1000<166,833,667,-667>|\ - composite_XOR=11+1000<166,833,667,-667>|\ - composite_PLUS=12+1000<166,833,667,-667>|\ - composite_SCREEN=13+1000<166,833,667,-667>|\ - composite_OVERLAY=14+1000<166,833,667,-667>|\ - composite_DARKEN=15+1000<166,833,667,-667>|\ - composite_LIGHTEN=16+1000<166,833,667,-667>|\ - composite_COLOR_DODGE=17+1000<166,833,667,-667>|\ - composite_COLOR_BURN=18+1000<166,833,667,-667>|\ - composite_HARD_LIGHT=19+1000<166,833,667,-667>|\ - composite_SOFT_LIGHT=20+1000<166,833,667,-667>|\ - composite_DIFFERENCE=21+1000<166,833,667,-667>|\ - composite_EXCLUSION=22+1000<166,833,667,-667>|\ - composite_MULTIPLY=23+1000<166,833,667,-667>|\ - composite_HSL_HUE=24+1000<166,833,667,-667>|\ - composite_HSL_SATURATION=25+1000<166,833,667,-667>|\ - composite_HSL_COLOR=26+1000<166,833,667,-667>|\ - composite_HSL_LUMINOSITY=27+1000<166,833,667,-667>" - ); -} - -#[test] -fn colr_011() { - assert_eq!( - shape( - "tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf", - "\u{F0B00}\u{F0B01}\u{F0B02}\u{F0B03}\u{F0B04}\u{F0B05}\u{F0B06}\u{F0B07}", - "--show-extents", - ), - "foreground_color_linear_alpha_1=0+1000<100,1000,1000,-1000>|\ - foreground_color_linear_alpha_0.3=1+1000<100,1000,1000,-1000>|\ - foreground_color_radial_alpha_1=2+1000<100,1000,1000,-1000>|\ - foreground_color_radial_alpha_0.3=3+1000<100,1000,1000,-1000>|\ - foreground_color_sweep_alpha_1=4+1000<100,1000,1000,-1000>|\ - foreground_color_sweep_alpha_0.3=5+1000<100,1000,1000,-1000>|\ - foreground_color_solid_alpha_1=6+1000<100,1000,1000,-1000>|\ - foreground_color_solid_alpha_0.3=7+1000<100,1000,1000,-1000>" - ); -} - -#[test] -fn colr_012() { - assert_eq!( - shape( - "tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf", - "\u{F0C00}\u{F0C01}\u{F0C02}\u{F0C03}\u{F0C04}\u{F0C05}\u{F0C06}\u{F0C07}\u{F0C08}\u{F0C09}\ - \u{F0C0A}", - "--show-extents", - ), - "clip_box_top_left=0+1000<0,1000,1000,-1000>|\ - clip_box_bottom_left=1+1000<0,1000,1000,-1000>|\ - clip_box_bottom_right=2+1000<0,1000,1000,-1000>|\ - clip_box_top_right=3+1000<0,1000,1000,-1000>|\ - clip_box_center=4+1000<0,1000,1000,-1000>|\ - clip_shade_top_left=5+1000<0,1000,500,-500>|\ - clip_shade_bottom_left=6+1000<0,500,500,-500>|\ - clip_shade_bottom_right=7+1000<500,500,500,-500>|\ - clip_shade_top_right=8+1000<500,1000,500,-500>|\ - clip_shade_center=9+1000<250,750,500,-500>|\ - inset_clipped_radial_reflect=10+1000<0,1000,1000,-1000>" - ); -} - #[test] fn colr_013() { assert_eq!( @@ -353,49 +188,6 @@ fn colr_013() { ); } -#[test] -fn colr_014() { - assert_eq!( - shape( - "tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf", - "\u{F0E00}\u{F0E01}", - "--show-extents", - ), - "colored_circles_v0=0+1000<150,950,700,-704>|\ - colored_circles_v1=1+1000<150,950,700,-700>" - ); -} - -#[test] -fn colr_015() { - assert_eq!( - shape( - "tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf", - "\u{F0F00}\u{F0F01}\u{F0F02}\u{F0F03}\u{F0F04}\u{F0F05}\u{F0F06}", - "--show-extents", - ), - "circle_r50=0+1000<450,650,100,-100>|\ - circle_r100=1+1000<400,700,200,-200>|\ - circle_r150=2+1000<350,750,300,-300>|\ - circle_r200=3+1000<300,800,400,-400>|\ - circle_r250=4+1000<250,850,500,-500>|\ - circle_r300=5+1000<200,900,600,-600>|\ - circle_r350=6+1000<150,950,700,-700>" - ); -} - -#[test] -fn colr_016() { - assert_eq!( - shape( - "tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf", - "\u{F1000}", - "--show-extents", - ), - "solid_colorline_alpha=0+1000<0,950,1000,-700>" - ); -} - #[test] fn colr_017() { assert_eq!( @@ -409,18 +201,6 @@ fn colr_017() { ); } -#[test] -fn colr_018() { - assert_eq!( - shape( - "tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf", - "\u{F1200}", - "--show-extents", - ), - "no_cycle_multi_colrglyph=0+1000<0,950,1000,-700>" - ); -} - #[test] fn colr_019() { assert_eq!( From 656b05516fa588cedcd743a7316a0f3da8888904 Mon Sep 17 00:00:00 2001 From: valadaptive Date: Fri, 7 Mar 2025 18:08:11 -0500 Subject: [PATCH 3/4] Remove glyph names from COLR tests --- tests/custom/colr.tests | 40 +++--- tests/shaping/custom.rs | 272 ++++++++++++++++++++-------------------- 2 files changed, 156 insertions(+), 156 deletions(-) diff --git a/tests/custom/colr.tests b/tests/custom/colr.tests index cc7183c2..44e40185 100644 --- a/tests/custom/colr.tests +++ b/tests/custom/colr.tests @@ -1,20 +1,20 @@ -tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0100,U+F0101,U+F0102,U+F0103;[linear_repeat_0_1=0+1000<100,950,800,-700>|linear_repeat_0.2_0.8=1+1000<100,950,800,-700>|linear_repeat_0_1.5=2+1000<100,950,800,-700>|linear_repeat_0.5_1.5=3+1000<100,950,800,-700>] -tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0200,U+F0201,U+F0202,U+F0203,U+F0204,U+F0205,U+F0206,U+F0207,U+F0208,U+F0209,U+F020A,U+F020B,U+F020C,U+F020D,U+F020E,U+F020F,U+F0210,U+F0211,U+F0212,U+F0213,U+F0214,U+F0215,U+F0216,U+F0217,U+F0218,U+F0219,U+F021A,U+F021B,U+F021C,U+F021D,U+F021E,U+F021F,U+F0220,U+F0221,U+F0222,U+F0223,U+F0224,U+F0225,U+F0226,U+F0227,U+F0228,U+F0229,U+F022A,U+F022B,U+F022C,U+F022D,U+F022E,U+F022F,U+F0230,U+F0231,U+F0232,U+F0233,U+F0234,U+F0235,U+F0236,U+F0237,U+F0238,U+F0239,U+F023A,U+F023B,U+F023C,U+F023D,U+F023E,U+F023F,U+F0240,U+F0241,U+F0242,U+F0243,U+F0244,U+F0245,U+F0246,U+F0247;[sweep_0_360_pad_narrow=0+1000<150,950,700,-700>|sweep_60_300_pad_narrow=1+1000<150,950,700,-700>|sweep_0_90_pad_narrow=2+1000<150,950,700,-700>|sweep_90_0_pad_narrow=3+1000<150,950,700,-700>|sweep_45_90_pad_narrow=4+1000<150,950,700,-700>|sweep_90_45_pad_narrow=5+1000<150,950,700,-700>|sweep_247.5_292.5_pad_narrow=6+1000<150,950,700,-700>|sweep_-45_45_pad_narrow=7+1000<150,950,700,-700>|sweep_45_-45_pad_narrow=8+1000<150,950,700,-700>|sweep_270_440_pad_narrow=9+1000<150,950,700,-700>|sweep_440_270_pad_narrow=10+1000<150,950,700,-700>|sweep_-180_540_pad_narrow=11+1000<150,950,700,-700>|sweep_0_360_reflect_narrow=12+1000<150,950,700,-700>|sweep_60_300_reflect_narrow=13+1000<150,950,700,-700>|sweep_0_90_reflect_narrow=14+1000<150,950,700,-700>|sweep_90_0_reflect_narrow=15+1000<150,950,700,-700>|sweep_45_90_reflect_narrow=16+1000<150,950,700,-700>|sweep_90_45_reflect_narrow=17+1000<150,950,700,-700>|sweep_247.5_292.5_reflect_narrow=18+1000<150,950,700,-700>|sweep_-45_45_reflect_narrow=19+1000<150,950,700,-700>|sweep_45_-45_reflect_narrow=20+1000<150,950,700,-700>|sweep_270_440_reflect_narrow=21+1000<150,950,700,-700>|sweep_440_270_reflect_narrow=22+1000<150,950,700,-700>|sweep_-180_540_reflect_narrow=23+1000<150,950,700,-700>|sweep_0_360_repeat_narrow=24+1000<150,950,700,-700>|sweep_60_300_repeat_narrow=25+1000<150,950,700,-700>|sweep_0_90_repeat_narrow=26+1000<150,950,700,-700>|sweep_90_0_repeat_narrow=27+1000<150,950,700,-700>|sweep_45_90_repeat_narrow=28+1000<150,950,700,-700>|sweep_90_45_repeat_narrow=29+1000<150,950,700,-700>|sweep_247.5_292.5_repeat_narrow=30+1000<150,950,700,-700>|sweep_-45_45_repeat_narrow=31+1000<150,950,700,-700>|sweep_45_-45_repeat_narrow=32+1000<150,950,700,-700>|sweep_270_440_repeat_narrow=33+1000<150,950,700,-700>|sweep_440_270_repeat_narrow=34+1000<150,950,700,-700>|sweep_-180_540_repeat_narrow=35+1000<150,950,700,-700>|sweep_0_360_pad_wide=36+1000<150,950,700,-700>|sweep_60_300_pad_wide=37+1000<150,950,700,-700>|sweep_0_90_pad_wide=38+1000<150,950,700,-700>|sweep_90_0_pad_wide=39+1000<150,950,700,-700>|sweep_45_90_pad_wide=40+1000<150,950,700,-700>|sweep_90_45_pad_wide=41+1000<150,950,700,-700>|sweep_247.5_292.5_pad_wide=42+1000<150,950,700,-700>|sweep_-45_45_pad_wide=43+1000<150,950,700,-700>|sweep_45_-45_pad_wide=44+1000<150,950,700,-700>|sweep_270_440_pad_wide=45+1000<150,950,700,-700>|sweep_440_270_pad_wide=46+1000<150,950,700,-700>|sweep_-180_540_pad_wide=47+1000<150,950,700,-700>|sweep_0_360_reflect_wide=48+1000<150,950,700,-700>|sweep_60_300_reflect_wide=49+1000<150,950,700,-700>|sweep_0_90_reflect_wide=50+1000<150,950,700,-700>|sweep_90_0_reflect_wide=51+1000<150,950,700,-700>|sweep_45_90_reflect_wide=52+1000<150,950,700,-700>|sweep_90_45_reflect_wide=53+1000<150,950,700,-700>|sweep_247.5_292.5_reflect_wide=54+1000<150,950,700,-700>|sweep_-45_45_reflect_wide=55+1000<150,950,700,-700>|sweep_45_-45_reflect_wide=56+1000<150,950,700,-700>|sweep_270_440_reflect_wide=57+1000<150,950,700,-700>|sweep_440_270_reflect_wide=58+1000<150,950,700,-700>|sweep_-180_540_reflect_wide=59+1000<150,950,700,-700>|sweep_0_360_repeat_wide=60+1000<150,950,700,-700>|sweep_60_300_repeat_wide=61+1000<150,950,700,-700>|sweep_0_90_repeat_wide=62+1000<150,950,700,-700>|sweep_90_0_repeat_wide=63+1000<150,950,700,-700>|sweep_45_90_repeat_wide=64+1000<150,950,700,-700>|sweep_90_45_repeat_wide=65+1000<150,950,700,-700>|sweep_247.5_292.5_repeat_wide=66+1000<150,950,700,-700>|sweep_-45_45_repeat_wide=67+1000<150,950,700,-700>|sweep_45_-45_repeat_wide=68+1000<150,950,700,-700>|sweep_270_440_repeat_wide=69+1000<150,950,700,-700>|sweep_440_270_repeat_wide=70+1000<150,950,700,-700>|sweep_-180_540_repeat_wide=71+1000<150,950,700,-700>] -tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0300,U+F0301,U+F0302,U+F0303,U+F0304,U+F0305;[scale_0.5_1.5_center_500.0_500.0=0+1000<250,875,500,-750>|scale_1.5_1.5_center_500.0_500.0=1+1000<125,875,750,-750>|scale_0.5_1.5_center_0_0=2+1000<125,1125,625,-875>|scale_1.5_1.5_center_0_0=3+1000<250,1125,875,-875>|scale_0.5_1.5_center_1000_1000=4+1000<250,750,625,-875>|scale_1.5_1.5_center_1000_1000=5+1000<-125,750,875,-875>] -tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0500,U+F0501,U+F0502;[linear_gradient_extend_mode_pad=0+1000<0,1000,1000,-1000>|linear_gradient_extend_mode_repeat=1+1000<0,1000,1000,-1000>|linear_gradient_extend_mode_reflect=2+1000<0,1000,1000,-1000>] -tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0503,U+F0504,U+F0505,U+F0506,U+F0507,U+F0508;[radial_contained_gradient_extend_mode_pad=0+1000<0,1000,1000,-1000>|radial_contained_gradient_extend_mode_repeat=1+1000<0,1000,1000,-1000>|radial_contained_gradient_extend_mode_reflect=2+1000<0,1000,1000,-1000>|radial_horizontal_gradient_extend_mode_pad=3+1000<0,1000,1000,-1000>|radial_horizontal_gradient_extend_mode_repeat=4+1000<0,1000,1000,-1000>|radial_horizontal_gradient_extend_mode_reflect=5+1000<0,1000,1000,-1000>] -tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0600,U+F0601,U+F0602,U+F0603;[rotate_10_center_0_0=0+1000<115,868,634,-618>|rotate_-10_center_1000_1000=1+1000<131,884,618,-634>|rotate_25_center_500.0_500.0=2+1000<167,832,664,-664>|rotate_-15_center_500.0_500.0=3+1000<193,806,612,-612>] -tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0700,U+F0701,U+F0702,U+F0703,U+F0704,U+F0705;[skew_25_0_center_0_0=0+1000<-99,750,849,-500>|skew_25_0_center_500.0_500.0=1+1000<133,750,733,-500>|skew_0_15_center_0_0=2+1000<250,950,500,-700>|skew_0_15_center_500.0_500.0=3+1000<250,816,500,-633>|skew_-10_20_center_500.0_500.0=4+1000<205,840,588,-681>|skew_-10_20_center_1000_1000=5+1000<117,750,632,-772>] -tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0800,U+F0801,U+F0802,U+F0803;[transform_matrix_1_0_0_1_125_125=0+1000<250,875,625,-625>|transform_matrix_1.5_0_0_1.5_0_0=1+1000<250,1125,875,-875>|transform_matrix_0.9659_0.2588_-0.2588_0.9659_0_0=2+1000<47,918,702,-668>|transform_matrix_1.0_0.0_0.6_1.0_-300.0_0.0=3+1000<100,750,800,-500>] -tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0900,U+F0901,U+F0902,U+F0903,U+F0904,U+F0905,U+F0906;[translate_0_0=0+1000<250,750,500,-500>|translate_0_100=1+1000<250,850,500,-600>|translate_0_-100=2+1000<250,750,500,-600>|translate_100_0=3+1000<250,750,600,-500>|translate_-100_0=4+1000<150,750,600,-500>|translate_200_200=5+1000<250,950,700,-700>|translate_-200_-200=6+1000<50,750,700,-700>] -tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0A00,U+F0A01,U+F0A02,U+F0A03,U+F0A04,U+F0A05,U+F0A06,U+F0A07,U+F0A08,U+F0A09,U+F0A0A,U+F0A0B,U+F0A0C,U+F0A0D,U+F0A0E,U+F0A0F,U+F0A10,U+F0A11,U+F0A12,U+F0A13,U+F0A14,U+F0A15,U+F0A16,U+F0A17,U+F0A18,U+F0A19,U+F0A1A,U+F0A1B;[composite_CLEAR=0+1000<250,750,500,-500>|composite_SRC=1+1000<250,750,583,-583>|composite_DEST=2+1000<166,833,583,-583>|composite_SRC_OVER=3+1000<166,833,667,-667>|composite_DEST_OVER=4+1000<166,833,667,-667>|composite_SRC_IN=5+1000<250,750,500,-500>|composite_DEST_IN=6+1000<250,750,500,-500>|composite_SRC_OUT=7+1000<250,750,583,-583>|composite_DEST_OUT=8+1000<166,833,583,-583>|composite_SRC_ATOP=9+1000<166,833,667,-667>|composite_DEST_ATOP=10+1000<166,833,667,-667>|composite_XOR=11+1000<166,833,667,-667>|composite_PLUS=12+1000<166,833,667,-667>|composite_SCREEN=13+1000<166,833,667,-667>|composite_OVERLAY=14+1000<166,833,667,-667>|composite_DARKEN=15+1000<166,833,667,-667>|composite_LIGHTEN=16+1000<166,833,667,-667>|composite_COLOR_DODGE=17+1000<166,833,667,-667>|composite_COLOR_BURN=18+1000<166,833,667,-667>|composite_HARD_LIGHT=19+1000<166,833,667,-667>|composite_SOFT_LIGHT=20+1000<166,833,667,-667>|composite_DIFFERENCE=21+1000<166,833,667,-667>|composite_EXCLUSION=22+1000<166,833,667,-667>|composite_MULTIPLY=23+1000<166,833,667,-667>|composite_HSL_HUE=24+1000<166,833,667,-667>|composite_HSL_SATURATION=25+1000<166,833,667,-667>|composite_HSL_COLOR=26+1000<166,833,667,-667>|composite_HSL_LUMINOSITY=27+1000<166,833,667,-667>] -tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0B00,U+F0B01,U+F0B02,U+F0B03,U+F0B04,U+F0B05,U+F0B06,U+F0B07;[foreground_color_linear_alpha_1=0+1000<100,1000,1000,-1000>|foreground_color_linear_alpha_0.3=1+1000<100,1000,1000,-1000>|foreground_color_radial_alpha_1=2+1000<100,1000,1000,-1000>|foreground_color_radial_alpha_0.3=3+1000<100,1000,1000,-1000>|foreground_color_sweep_alpha_1=4+1000<100,1000,1000,-1000>|foreground_color_sweep_alpha_0.3=5+1000<100,1000,1000,-1000>|foreground_color_solid_alpha_1=6+1000<100,1000,1000,-1000>|foreground_color_solid_alpha_0.3=7+1000<100,1000,1000,-1000>] -tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0C00,U+F0C01,U+F0C02,U+F0C03,U+F0C04,U+F0C05,U+F0C06,U+F0C07,U+F0C08,U+F0C09,U+F0C0A;[clip_box_top_left=0+1000<0,1000,1000,-1000>|clip_box_bottom_left=1+1000<0,1000,1000,-1000>|clip_box_bottom_right=2+1000<0,1000,1000,-1000>|clip_box_top_right=3+1000<0,1000,1000,-1000>|clip_box_center=4+1000<0,1000,1000,-1000>|clip_shade_top_left=5+1000<0,1000,500,-500>|clip_shade_bottom_left=6+1000<0,500,500,-500>|clip_shade_bottom_right=7+1000<500,500,500,-500>|clip_shade_top_right=8+1000<500,1000,500,-500>|clip_shade_center=9+1000<250,750,500,-500>|inset_clipped_radial_reflect=10+1000<0,1000,1000,-1000>] -tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0D00;[gradient_p2_skewed=0+1250<100,950,1100,-700>] -tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0E00,U+F0E01;[colored_circles_v0=0+1000<150,950,700,-704>|colored_circles_v1=1+1000<150,950,700,-700>] -tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0F00,U+F0F01,U+F0F02,U+F0F03,U+F0F04,U+F0F05,U+F0F06;[circle_r50=0+1000<450,650,100,-100>|circle_r100=1+1000<400,700,200,-200>|circle_r150=2+1000<350,750,300,-300>|circle_r200=3+1000<300,800,400,-400>|circle_r250=4+1000<250,850,500,-500>|circle_r300=5+1000<200,900,600,-600>|circle_r350=6+1000<150,950,700,-700>] -tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F1000;[solid_colorline_alpha=0+1000<0,950,1000,-700>] -tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F1100,U+F1101;[paintcolrglyph_cycle_first=0+1000<0,0,0,0>|paintcolrglyph_cycle_second=1+1000<0,0,0,0>] -tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F1200;[no_cycle_multi_colrglyph=0+1000<0,950,1000,-700>] -tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F1300,U+F1301,U+F1302,U+F1303,U+F1304,U+F1305,U+F1306,U+F1307,U+F1308,U+F1309,U+F130A,U+F130B,U+F130C,U+F130D,U+F130E,U+F130F,U+F1310,U+F1311,U+F1312,U+F1313,U+F1314,U+F1315,U+F1316,U+F1317;[sweep_coincident_angles_forward_blue_red_pad=0+1000<150,950,700,-700>|sweep_coincident_angles_forward_blue_red_reflect=1+1000<150,950,700,-700>|sweep_coincident_angles_forward_blue_red_repeat=2+1000<150,950,700,-700>|sweep_coincident_angles_forward_linen_gray_pad=3+1000<150,950,700,-700>|sweep_coincident_angles_forward_linen_gray_reflect=4+1000<150,950,700,-700>|sweep_coincident_angles_forward_linen_gray_repeat=5+1000<150,950,700,-700>|sweep_coincident_angles_reverse_blue_red_pad=6+1000<150,950,700,-700>|sweep_coincident_angles_reverse_blue_red_reflect=7+1000<150,950,700,-700>|sweep_coincident_angles_reverse_blue_red_repeat=8+1000<150,950,700,-700>|sweep_coincident_angles_reverse_linen_gray_pad=9+1000<150,950,700,-700>|sweep_coincident_angles_reverse_linen_gray_reflect=10+1000<150,950,700,-700>|sweep_coincident_angles_reverse_linen_gray_repeat=11+1000<150,950,700,-700>|sweep_coincident_stops_forward_blue_red_pad=12+1000<150,950,700,-700>|sweep_coincident_stops_forward_blue_red_reflect=13+1000<150,950,700,-700>|sweep_coincident_stops_forward_blue_red_repeat=14+1000<150,950,700,-700>|sweep_coincident_stops_forward_linen_gray_pad=15+1000<150,950,700,-700>|sweep_coincident_stops_forward_linen_gray_reflect=16+1000<150,950,700,-700>|sweep_coincident_stops_forward_linen_gray_repeat=17+1000<150,950,700,-700>|sweep_coincident_stops_reverse_blue_red_pad=18+1000<150,950,700,-700>|sweep_coincident_stops_reverse_blue_red_reflect=19+1000<150,950,700,-700>|sweep_coincident_stops_reverse_blue_red_repeat=20+1000<150,950,700,-700>|sweep_coincident_stops_reverse_linen_gray_pad=21+1000<150,950,700,-700>|sweep_coincident_stops_reverse_linen_gray_reflect=22+1000<150,950,700,-700>|sweep_coincident_stops_reverse_linen_gray_repeat=23+1000<150,950,700,-700>] -tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F1400,U+F1401,U+F1402,U+F1403,U+F1404,U+F1405,U+F1406,U+F1407,U+F1408,U+F1409,U+F140A,U+F140B,U+F140C,U+F140D,U+F140E,U+F140F;[paint_glyph_nested_identity_identity=0+1000<200,770,600,-520>|paint_glyph_nested_identity_translate=1+1000<200,770,600,-520>|paint_glyph_nested_identity_rotate_origin=2+1000<200,770,600,-520>|paint_glyph_nested_identity_rotate_center=3+1000<200,770,600,-520>|paint_glyph_nested_translate_identity=4+1000<320,890,600,-520>|paint_glyph_nested_translate_translate=5+1000<320,890,600,-520>|paint_glyph_nested_translate_rotate_origin=6+1000<320,890,600,-520>|paint_glyph_nested_translate_rotate_center=7+1000<320,890,600,-520>|paint_glyph_nested_rotate_origin_identity=8+1000<63,897,681,-616>|paint_glyph_nested_rotate_origin_translate=9+1000<63,897,681,-616>|paint_glyph_nested_rotate_origin_rotate_origin=10+1000<63,897,681,-616>|paint_glyph_nested_rotate_origin_rotate_center=11+1000<63,897,681,-616>|paint_glyph_nested_rotate_center_identity=12+1000<124,899,750,-779>|paint_glyph_nested_rotate_center_translate=13+1000<124,899,750,-779>|paint_glyph_nested_rotate_center_rotate_origin=14+1000<124,899,750,-779>|paint_glyph_nested_rotate_center_rotate_center=15+1000<124,899,750,-779>] \ No newline at end of file +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents --no-glyph-names;U+F0100,U+F0101,U+F0102,U+F0103;[8=0+1000<100,950,800,-700>|9=1+1000<100,950,800,-700>|10=2+1000<100,950,800,-700>|11=3+1000<100,950,800,-700>] +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents --no-glyph-names;U+F0200,U+F0201,U+F0202,U+F0203,U+F0204,U+F0205,U+F0206,U+F0207,U+F0208,U+F0209,U+F020A,U+F020B,U+F020C,U+F020D,U+F020E,U+F020F,U+F0210,U+F0211,U+F0212,U+F0213,U+F0214,U+F0215,U+F0216,U+F0217,U+F0218,U+F0219,U+F021A,U+F021B,U+F021C,U+F021D,U+F021E,U+F021F,U+F0220,U+F0221,U+F0222,U+F0223,U+F0224,U+F0225,U+F0226,U+F0227,U+F0228,U+F0229,U+F022A,U+F022B,U+F022C,U+F022D,U+F022E,U+F022F,U+F0230,U+F0231,U+F0232,U+F0233,U+F0234,U+F0235,U+F0236,U+F0237,U+F0238,U+F0239,U+F023A,U+F023B,U+F023C,U+F023D,U+F023E,U+F023F,U+F0240,U+F0241,U+F0242,U+F0243,U+F0244,U+F0245,U+F0246,U+F0247;[12=0+1000<150,950,700,-700>|13=1+1000<150,950,700,-700>|14=2+1000<150,950,700,-700>|15=3+1000<150,950,700,-700>|16=4+1000<150,950,700,-700>|17=5+1000<150,950,700,-700>|18=6+1000<150,950,700,-700>|19=7+1000<150,950,700,-700>|20=8+1000<150,950,700,-700>|21=9+1000<150,950,700,-700>|22=10+1000<150,950,700,-700>|23=11+1000<150,950,700,-700>|24=12+1000<150,950,700,-700>|25=13+1000<150,950,700,-700>|26=14+1000<150,950,700,-700>|27=15+1000<150,950,700,-700>|28=16+1000<150,950,700,-700>|29=17+1000<150,950,700,-700>|30=18+1000<150,950,700,-700>|31=19+1000<150,950,700,-700>|32=20+1000<150,950,700,-700>|33=21+1000<150,950,700,-700>|34=22+1000<150,950,700,-700>|35=23+1000<150,950,700,-700>|36=24+1000<150,950,700,-700>|37=25+1000<150,950,700,-700>|38=26+1000<150,950,700,-700>|39=27+1000<150,950,700,-700>|40=28+1000<150,950,700,-700>|41=29+1000<150,950,700,-700>|42=30+1000<150,950,700,-700>|43=31+1000<150,950,700,-700>|44=32+1000<150,950,700,-700>|45=33+1000<150,950,700,-700>|46=34+1000<150,950,700,-700>|47=35+1000<150,950,700,-700>|48=36+1000<150,950,700,-700>|49=37+1000<150,950,700,-700>|50=38+1000<150,950,700,-700>|51=39+1000<150,950,700,-700>|52=40+1000<150,950,700,-700>|53=41+1000<150,950,700,-700>|54=42+1000<150,950,700,-700>|55=43+1000<150,950,700,-700>|56=44+1000<150,950,700,-700>|57=45+1000<150,950,700,-700>|58=46+1000<150,950,700,-700>|59=47+1000<150,950,700,-700>|60=48+1000<150,950,700,-700>|61=49+1000<150,950,700,-700>|62=50+1000<150,950,700,-700>|63=51+1000<150,950,700,-700>|64=52+1000<150,950,700,-700>|65=53+1000<150,950,700,-700>|66=54+1000<150,950,700,-700>|67=55+1000<150,950,700,-700>|68=56+1000<150,950,700,-700>|69=57+1000<150,950,700,-700>|70=58+1000<150,950,700,-700>|71=59+1000<150,950,700,-700>|72=60+1000<150,950,700,-700>|73=61+1000<150,950,700,-700>|74=62+1000<150,950,700,-700>|75=63+1000<150,950,700,-700>|76=64+1000<150,950,700,-700>|77=65+1000<150,950,700,-700>|78=66+1000<150,950,700,-700>|79=67+1000<150,950,700,-700>|80=68+1000<150,950,700,-700>|81=69+1000<150,950,700,-700>|82=70+1000<150,950,700,-700>|83=71+1000<150,950,700,-700>] +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents --no-glyph-names;U+F0300,U+F0301,U+F0302,U+F0303,U+F0304,U+F0305;[84=0+1000<250,875,500,-750>|85=1+1000<125,875,750,-750>|86=2+1000<125,1125,625,-875>|87=3+1000<250,1125,875,-875>|88=4+1000<250,750,625,-875>|89=5+1000<-125,750,875,-875>] +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents --no-glyph-names;U+F0500,U+F0501,U+F0502;[90=0+1000<0,1000,1000,-1000>|91=1+1000<0,1000,1000,-1000>|92=2+1000<0,1000,1000,-1000>] +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents --no-glyph-names;U+F0503,U+F0504,U+F0505,U+F0506,U+F0507,U+F0508;[93=0+1000<0,1000,1000,-1000>|94=1+1000<0,1000,1000,-1000>|95=2+1000<0,1000,1000,-1000>|96=3+1000<0,1000,1000,-1000>|97=4+1000<0,1000,1000,-1000>|98=5+1000<0,1000,1000,-1000>] +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents --no-glyph-names;U+F0600,U+F0601,U+F0602,U+F0603;[99=0+1000<115,868,634,-618>|100=1+1000<131,884,618,-634>|101=2+1000<167,832,664,-664>|102=3+1000<193,806,612,-612>] +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents --no-glyph-names;U+F0700,U+F0701,U+F0702,U+F0703,U+F0704,U+F0705;[103=0+1000<-99,750,849,-500>|104=1+1000<133,750,733,-500>|105=2+1000<250,950,500,-700>|106=3+1000<250,816,500,-633>|107=4+1000<205,840,588,-681>|108=5+1000<117,750,632,-772>] +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents --no-glyph-names;U+F0800,U+F0801,U+F0802,U+F0803;[109=0+1000<250,875,625,-625>|110=1+1000<250,1125,875,-875>|111=2+1000<47,918,702,-668>|112=3+1000<100,750,800,-500>] +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents --no-glyph-names;U+F0900,U+F0901,U+F0902,U+F0903,U+F0904,U+F0905,U+F0906;[113=0+1000<250,750,500,-500>|114=1+1000<250,850,500,-600>|115=2+1000<250,750,500,-600>|116=3+1000<250,750,600,-500>|117=4+1000<150,750,600,-500>|118=5+1000<250,950,700,-700>|119=6+1000<50,750,700,-700>] +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents --no-glyph-names;U+F0A00,U+F0A01,U+F0A02,U+F0A03,U+F0A04,U+F0A05,U+F0A06,U+F0A07,U+F0A08,U+F0A09,U+F0A0A,U+F0A0B,U+F0A0C,U+F0A0D,U+F0A0E,U+F0A0F,U+F0A10,U+F0A11,U+F0A12,U+F0A13,U+F0A14,U+F0A15,U+F0A16,U+F0A17,U+F0A18,U+F0A19,U+F0A1A,U+F0A1B;[120=0+1000<250,750,500,-500>|121=1+1000<250,750,583,-583>|122=2+1000<166,833,583,-583>|123=3+1000<166,833,667,-667>|124=4+1000<166,833,667,-667>|125=5+1000<250,750,500,-500>|126=6+1000<250,750,500,-500>|127=7+1000<250,750,583,-583>|128=8+1000<166,833,583,-583>|129=9+1000<166,833,667,-667>|130=10+1000<166,833,667,-667>|131=11+1000<166,833,667,-667>|132=12+1000<166,833,667,-667>|133=13+1000<166,833,667,-667>|134=14+1000<166,833,667,-667>|135=15+1000<166,833,667,-667>|136=16+1000<166,833,667,-667>|137=17+1000<166,833,667,-667>|138=18+1000<166,833,667,-667>|139=19+1000<166,833,667,-667>|140=20+1000<166,833,667,-667>|141=21+1000<166,833,667,-667>|142=22+1000<166,833,667,-667>|143=23+1000<166,833,667,-667>|144=24+1000<166,833,667,-667>|145=25+1000<166,833,667,-667>|146=26+1000<166,833,667,-667>|147=27+1000<166,833,667,-667>] +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents --no-glyph-names;U+F0B00,U+F0B01,U+F0B02,U+F0B03,U+F0B04,U+F0B05,U+F0B06,U+F0B07;[148=0+1000<100,1000,1000,-1000>|149=1+1000<100,1000,1000,-1000>|150=2+1000<100,1000,1000,-1000>|151=3+1000<100,1000,1000,-1000>|152=4+1000<100,1000,1000,-1000>|153=5+1000<100,1000,1000,-1000>|154=6+1000<100,1000,1000,-1000>|155=7+1000<100,1000,1000,-1000>] +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents --no-glyph-names;U+F0C00,U+F0C01,U+F0C02,U+F0C03,U+F0C04,U+F0C05,U+F0C06,U+F0C07,U+F0C08,U+F0C09,U+F0C0A;[156=0+1000<0,1000,1000,-1000>|157=1+1000<0,1000,1000,-1000>|158=2+1000<0,1000,1000,-1000>|159=3+1000<0,1000,1000,-1000>|160=4+1000<0,1000,1000,-1000>|161=5+1000<0,1000,500,-500>|162=6+1000<0,500,500,-500>|163=7+1000<500,500,500,-500>|164=8+1000<500,1000,500,-500>|165=9+1000<250,750,500,-500>|166=10+1000<0,1000,1000,-1000>] +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents --no-glyph-names;U+F0D00;[167=0+1250<100,950,1100,-700>] +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents --no-glyph-names;U+F0E00,U+F0E01;[168=0+1000<150,950,700,-704>|169=1+1000<150,950,700,-700>] +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents --no-glyph-names;U+F0F00,U+F0F01,U+F0F02,U+F0F03,U+F0F04,U+F0F05,U+F0F06;[170=0+1000<450,650,100,-100>|171=1+1000<400,700,200,-200>|172=2+1000<350,750,300,-300>|173=3+1000<300,800,400,-400>|174=4+1000<250,850,500,-500>|175=5+1000<200,900,600,-600>|176=6+1000<150,950,700,-700>] +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents --no-glyph-names;U+F1000;[177=0+1000<0,950,1000,-700>] +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents --no-glyph-names;U+F1100,U+F1101;[178=0+1000<0,0,0,0>|179=1+1000<0,0,0,0>] +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents --no-glyph-names;U+F1200;[180=0+1000<0,950,1000,-700>] +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents --no-glyph-names;U+F1300,U+F1301,U+F1302,U+F1303,U+F1304,U+F1305,U+F1306,U+F1307,U+F1308,U+F1309,U+F130A,U+F130B,U+F130C,U+F130D,U+F130E,U+F130F,U+F1310,U+F1311,U+F1312,U+F1313,U+F1314,U+F1315,U+F1316,U+F1317;[181=0+1000<150,950,700,-700>|182=1+1000<150,950,700,-700>|183=2+1000<150,950,700,-700>|184=3+1000<150,950,700,-700>|185=4+1000<150,950,700,-700>|186=5+1000<150,950,700,-700>|187=6+1000<150,950,700,-700>|188=7+1000<150,950,700,-700>|189=8+1000<150,950,700,-700>|190=9+1000<150,950,700,-700>|191=10+1000<150,950,700,-700>|192=11+1000<150,950,700,-700>|193=12+1000<150,950,700,-700>|194=13+1000<150,950,700,-700>|195=14+1000<150,950,700,-700>|196=15+1000<150,950,700,-700>|197=16+1000<150,950,700,-700>|198=17+1000<150,950,700,-700>|199=18+1000<150,950,700,-700>|200=19+1000<150,950,700,-700>|201=20+1000<150,950,700,-700>|202=21+1000<150,950,700,-700>|203=22+1000<150,950,700,-700>|204=23+1000<150,950,700,-700>] +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents --no-glyph-names;U+F1400,U+F1401,U+F1402,U+F1403,U+F1404,U+F1405,U+F1406,U+F1407,U+F1408,U+F1409,U+F140A,U+F140B,U+F140C,U+F140D,U+F140E,U+F140F;[205=0+1000<200,770,600,-520>|206=1+1000<200,770,600,-520>|207=2+1000<200,770,600,-520>|208=3+1000<200,770,600,-520>|209=4+1000<320,890,600,-520>|210=5+1000<320,890,600,-520>|211=6+1000<320,890,600,-520>|212=7+1000<320,890,600,-520>|213=8+1000<63,897,681,-616>|214=9+1000<63,897,681,-616>|215=10+1000<63,897,681,-616>|216=11+1000<63,897,681,-616>|217=12+1000<124,899,750,-779>|218=13+1000<124,899,750,-779>|219=14+1000<124,899,750,-779>|220=15+1000<124,899,750,-779>] \ No newline at end of file diff --git a/tests/shaping/custom.rs b/tests/shaping/custom.rs index ed968451..9dd8fad1 100644 --- a/tests/shaping/custom.rs +++ b/tests/shaping/custom.rs @@ -46,12 +46,12 @@ fn colr_001() { shape( "tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf", "\u{F0100}\u{F0101}\u{F0102}\u{F0103}", - "--show-extents", + "--show-extents --no-glyph-names", ), - "linear_repeat_0_1=0+1000<100,950,800,-700>|\ - linear_repeat_0.2_0.8=1+1000<100,950,800,-700>|\ - linear_repeat_0_1.5=2+1000<100,950,800,-700>|\ - linear_repeat_0.5_1.5=3+1000<100,950,800,-700>" + "8=0+1000<100,950,800,-700>|\ + 9=1+1000<100,950,800,-700>|\ + 10=2+1000<100,950,800,-700>|\ + 11=3+1000<100,950,800,-700>" ); } @@ -68,80 +68,80 @@ fn colr_002() { \u{F0232}\u{F0233}\u{F0234}\u{F0235}\u{F0236}\u{F0237}\u{F0238}\u{F0239}\u{F023A}\u{F023B}\ \u{F023C}\u{F023D}\u{F023E}\u{F023F}\u{F0240}\u{F0241}\u{F0242}\u{F0243}\u{F0244}\u{F0245}\ \u{F0246}\u{F0247}", - "--show-extents", + "--show-extents --no-glyph-names", ), - "sweep_0_360_pad_narrow=0+1000<150,950,700,-700>|\ - sweep_60_300_pad_narrow=1+1000<150,950,700,-700>|\ - sweep_0_90_pad_narrow=2+1000<150,950,700,-700>|\ - sweep_90_0_pad_narrow=3+1000<150,950,700,-700>|\ - sweep_45_90_pad_narrow=4+1000<150,950,700,-700>|\ - sweep_90_45_pad_narrow=5+1000<150,950,700,-700>|\ - sweep_247.5_292.5_pad_narrow=6+1000<150,950,700,-700>|\ - sweep_-45_45_pad_narrow=7+1000<150,950,700,-700>|\ - sweep_45_-45_pad_narrow=8+1000<150,950,700,-700>|\ - sweep_270_440_pad_narrow=9+1000<150,950,700,-700>|\ - sweep_440_270_pad_narrow=10+1000<150,950,700,-700>|\ - sweep_-180_540_pad_narrow=11+1000<150,950,700,-700>|\ - sweep_0_360_reflect_narrow=12+1000<150,950,700,-700>|\ - sweep_60_300_reflect_narrow=13+1000<150,950,700,-700>|\ - sweep_0_90_reflect_narrow=14+1000<150,950,700,-700>|\ - sweep_90_0_reflect_narrow=15+1000<150,950,700,-700>|\ - sweep_45_90_reflect_narrow=16+1000<150,950,700,-700>|\ - sweep_90_45_reflect_narrow=17+1000<150,950,700,-700>|\ - sweep_247.5_292.5_reflect_narrow=18+1000<150,950,700,-700>|\ - sweep_-45_45_reflect_narrow=19+1000<150,950,700,-700>|\ - sweep_45_-45_reflect_narrow=20+1000<150,950,700,-700>|\ - sweep_270_440_reflect_narrow=21+1000<150,950,700,-700>|\ - sweep_440_270_reflect_narrow=22+1000<150,950,700,-700>|\ - sweep_-180_540_reflect_narrow=23+1000<150,950,700,-700>|\ - sweep_0_360_repeat_narrow=24+1000<150,950,700,-700>|\ - sweep_60_300_repeat_narrow=25+1000<150,950,700,-700>|\ - sweep_0_90_repeat_narrow=26+1000<150,950,700,-700>|\ - sweep_90_0_repeat_narrow=27+1000<150,950,700,-700>|\ - sweep_45_90_repeat_narrow=28+1000<150,950,700,-700>|\ - sweep_90_45_repeat_narrow=29+1000<150,950,700,-700>|\ - sweep_247.5_292.5_repeat_narrow=30+1000<150,950,700,-700>|\ - sweep_-45_45_repeat_narrow=31+1000<150,950,700,-700>|\ - sweep_45_-45_repeat_narrow=32+1000<150,950,700,-700>|\ - sweep_270_440_repeat_narrow=33+1000<150,950,700,-700>|\ - sweep_440_270_repeat_narrow=34+1000<150,950,700,-700>|\ - sweep_-180_540_repeat_narrow=35+1000<150,950,700,-700>|\ - sweep_0_360_pad_wide=36+1000<150,950,700,-700>|\ - sweep_60_300_pad_wide=37+1000<150,950,700,-700>|\ - sweep_0_90_pad_wide=38+1000<150,950,700,-700>|\ - sweep_90_0_pad_wide=39+1000<150,950,700,-700>|\ - sweep_45_90_pad_wide=40+1000<150,950,700,-700>|\ - sweep_90_45_pad_wide=41+1000<150,950,700,-700>|\ - sweep_247.5_292.5_pad_wide=42+1000<150,950,700,-700>|\ - sweep_-45_45_pad_wide=43+1000<150,950,700,-700>|\ - sweep_45_-45_pad_wide=44+1000<150,950,700,-700>|\ - sweep_270_440_pad_wide=45+1000<150,950,700,-700>|\ - sweep_440_270_pad_wide=46+1000<150,950,700,-700>|\ - sweep_-180_540_pad_wide=47+1000<150,950,700,-700>|\ - sweep_0_360_reflect_wide=48+1000<150,950,700,-700>|\ - sweep_60_300_reflect_wide=49+1000<150,950,700,-700>|\ - sweep_0_90_reflect_wide=50+1000<150,950,700,-700>|\ - sweep_90_0_reflect_wide=51+1000<150,950,700,-700>|\ - sweep_45_90_reflect_wide=52+1000<150,950,700,-700>|\ - sweep_90_45_reflect_wide=53+1000<150,950,700,-700>|\ - sweep_247.5_292.5_reflect_wide=54+1000<150,950,700,-700>|\ - sweep_-45_45_reflect_wide=55+1000<150,950,700,-700>|\ - sweep_45_-45_reflect_wide=56+1000<150,950,700,-700>|\ - sweep_270_440_reflect_wide=57+1000<150,950,700,-700>|\ - sweep_440_270_reflect_wide=58+1000<150,950,700,-700>|\ - sweep_-180_540_reflect_wide=59+1000<150,950,700,-700>|\ - sweep_0_360_repeat_wide=60+1000<150,950,700,-700>|\ - sweep_60_300_repeat_wide=61+1000<150,950,700,-700>|\ - sweep_0_90_repeat_wide=62+1000<150,950,700,-700>|\ - sweep_90_0_repeat_wide=63+1000<150,950,700,-700>|\ - sweep_45_90_repeat_wide=64+1000<150,950,700,-700>|\ - sweep_90_45_repeat_wide=65+1000<150,950,700,-700>|\ - sweep_247.5_292.5_repeat_wide=66+1000<150,950,700,-700>|\ - sweep_-45_45_repeat_wide=67+1000<150,950,700,-700>|\ - sweep_45_-45_repeat_wide=68+1000<150,950,700,-700>|\ - sweep_270_440_repeat_wide=69+1000<150,950,700,-700>|\ - sweep_440_270_repeat_wide=70+1000<150,950,700,-700>|\ - sweep_-180_540_repeat_wide=71+1000<150,950,700,-700>" + "12=0+1000<150,950,700,-700>|\ + 13=1+1000<150,950,700,-700>|\ + 14=2+1000<150,950,700,-700>|\ + 15=3+1000<150,950,700,-700>|\ + 16=4+1000<150,950,700,-700>|\ + 17=5+1000<150,950,700,-700>|\ + 18=6+1000<150,950,700,-700>|\ + 19=7+1000<150,950,700,-700>|\ + 20=8+1000<150,950,700,-700>|\ + 21=9+1000<150,950,700,-700>|\ + 22=10+1000<150,950,700,-700>|\ + 23=11+1000<150,950,700,-700>|\ + 24=12+1000<150,950,700,-700>|\ + 25=13+1000<150,950,700,-700>|\ + 26=14+1000<150,950,700,-700>|\ + 27=15+1000<150,950,700,-700>|\ + 28=16+1000<150,950,700,-700>|\ + 29=17+1000<150,950,700,-700>|\ + 30=18+1000<150,950,700,-700>|\ + 31=19+1000<150,950,700,-700>|\ + 32=20+1000<150,950,700,-700>|\ + 33=21+1000<150,950,700,-700>|\ + 34=22+1000<150,950,700,-700>|\ + 35=23+1000<150,950,700,-700>|\ + 36=24+1000<150,950,700,-700>|\ + 37=25+1000<150,950,700,-700>|\ + 38=26+1000<150,950,700,-700>|\ + 39=27+1000<150,950,700,-700>|\ + 40=28+1000<150,950,700,-700>|\ + 41=29+1000<150,950,700,-700>|\ + 42=30+1000<150,950,700,-700>|\ + 43=31+1000<150,950,700,-700>|\ + 44=32+1000<150,950,700,-700>|\ + 45=33+1000<150,950,700,-700>|\ + 46=34+1000<150,950,700,-700>|\ + 47=35+1000<150,950,700,-700>|\ + 48=36+1000<150,950,700,-700>|\ + 49=37+1000<150,950,700,-700>|\ + 50=38+1000<150,950,700,-700>|\ + 51=39+1000<150,950,700,-700>|\ + 52=40+1000<150,950,700,-700>|\ + 53=41+1000<150,950,700,-700>|\ + 54=42+1000<150,950,700,-700>|\ + 55=43+1000<150,950,700,-700>|\ + 56=44+1000<150,950,700,-700>|\ + 57=45+1000<150,950,700,-700>|\ + 58=46+1000<150,950,700,-700>|\ + 59=47+1000<150,950,700,-700>|\ + 60=48+1000<150,950,700,-700>|\ + 61=49+1000<150,950,700,-700>|\ + 62=50+1000<150,950,700,-700>|\ + 63=51+1000<150,950,700,-700>|\ + 64=52+1000<150,950,700,-700>|\ + 65=53+1000<150,950,700,-700>|\ + 66=54+1000<150,950,700,-700>|\ + 67=55+1000<150,950,700,-700>|\ + 68=56+1000<150,950,700,-700>|\ + 69=57+1000<150,950,700,-700>|\ + 70=58+1000<150,950,700,-700>|\ + 71=59+1000<150,950,700,-700>|\ + 72=60+1000<150,950,700,-700>|\ + 73=61+1000<150,950,700,-700>|\ + 74=62+1000<150,950,700,-700>|\ + 75=63+1000<150,950,700,-700>|\ + 76=64+1000<150,950,700,-700>|\ + 77=65+1000<150,950,700,-700>|\ + 78=66+1000<150,950,700,-700>|\ + 79=67+1000<150,950,700,-700>|\ + 80=68+1000<150,950,700,-700>|\ + 81=69+1000<150,950,700,-700>|\ + 82=70+1000<150,950,700,-700>|\ + 83=71+1000<150,950,700,-700>" ); } @@ -151,11 +151,11 @@ fn colr_004() { shape( "tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf", "\u{F0500}\u{F0501}\u{F0502}", - "--show-extents", + "--show-extents --no-glyph-names", ), - "linear_gradient_extend_mode_pad=0+1000<0,1000,1000,-1000>|\ - linear_gradient_extend_mode_repeat=1+1000<0,1000,1000,-1000>|\ - linear_gradient_extend_mode_reflect=2+1000<0,1000,1000,-1000>" + "90=0+1000<0,1000,1000,-1000>|\ + 91=1+1000<0,1000,1000,-1000>|\ + 92=2+1000<0,1000,1000,-1000>" ); } @@ -165,14 +165,14 @@ fn colr_005() { shape( "tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf", "\u{F0503}\u{F0504}\u{F0505}\u{F0506}\u{F0507}\u{F0508}", - "--show-extents", + "--show-extents --no-glyph-names", ), - "radial_contained_gradient_extend_mode_pad=0+1000<0,1000,1000,-1000>|\ - radial_contained_gradient_extend_mode_repeat=1+1000<0,1000,1000,-1000>|\ - radial_contained_gradient_extend_mode_reflect=2+1000<0,1000,1000,-1000>|\ - radial_horizontal_gradient_extend_mode_pad=3+1000<0,1000,1000,-1000>|\ - radial_horizontal_gradient_extend_mode_repeat=4+1000<0,1000,1000,-1000>|\ - radial_horizontal_gradient_extend_mode_reflect=5+1000<0,1000,1000,-1000>" + "93=0+1000<0,1000,1000,-1000>|\ + 94=1+1000<0,1000,1000,-1000>|\ + 95=2+1000<0,1000,1000,-1000>|\ + 96=3+1000<0,1000,1000,-1000>|\ + 97=4+1000<0,1000,1000,-1000>|\ + 98=5+1000<0,1000,1000,-1000>" ); } @@ -182,9 +182,9 @@ fn colr_013() { shape( "tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf", "\u{F0D00}", - "--show-extents", + "--show-extents --no-glyph-names", ), - "gradient_p2_skewed=0+1250<100,950,1100,-700>" + "167=0+1250<100,950,1100,-700>" ); } @@ -194,10 +194,10 @@ fn colr_017() { shape( "tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf", "\u{F1100}\u{F1101}", - "--show-extents", + "--show-extents --no-glyph-names", ), - "paintcolrglyph_cycle_first=0+1000<0,0,0,0>|\ - paintcolrglyph_cycle_second=1+1000<0,0,0,0>" + "178=0+1000<0,0,0,0>|\ + 179=1+1000<0,0,0,0>" ); } @@ -209,32 +209,32 @@ fn colr_019() { "\u{F1300}\u{F1301}\u{F1302}\u{F1303}\u{F1304}\u{F1305}\u{F1306}\u{F1307}\u{F1308}\u{F1309}\ \u{F130A}\u{F130B}\u{F130C}\u{F130D}\u{F130E}\u{F130F}\u{F1310}\u{F1311}\u{F1312}\u{F1313}\ \u{F1314}\u{F1315}\u{F1316}\u{F1317}", - "--show-extents", + "--show-extents --no-glyph-names", ), - "sweep_coincident_angles_forward_blue_red_pad=0+1000<150,950,700,-700>|\ - sweep_coincident_angles_forward_blue_red_reflect=1+1000<150,950,700,-700>|\ - sweep_coincident_angles_forward_blue_red_repeat=2+1000<150,950,700,-700>|\ - sweep_coincident_angles_forward_linen_gray_pad=3+1000<150,950,700,-700>|\ - sweep_coincident_angles_forward_linen_gray_reflect=4+1000<150,950,700,-700>|\ - sweep_coincident_angles_forward_linen_gray_repeat=5+1000<150,950,700,-700>|\ - sweep_coincident_angles_reverse_blue_red_pad=6+1000<150,950,700,-700>|\ - sweep_coincident_angles_reverse_blue_red_reflect=7+1000<150,950,700,-700>|\ - sweep_coincident_angles_reverse_blue_red_repeat=8+1000<150,950,700,-700>|\ - sweep_coincident_angles_reverse_linen_gray_pad=9+1000<150,950,700,-700>|\ - sweep_coincident_angles_reverse_linen_gray_reflect=10+1000<150,950,700,-700>|\ - sweep_coincident_angles_reverse_linen_gray_repeat=11+1000<150,950,700,-700>|\ - sweep_coincident_stops_forward_blue_red_pad=12+1000<150,950,700,-700>|\ - sweep_coincident_stops_forward_blue_red_reflect=13+1000<150,950,700,-700>|\ - sweep_coincident_stops_forward_blue_red_repeat=14+1000<150,950,700,-700>|\ - sweep_coincident_stops_forward_linen_gray_pad=15+1000<150,950,700,-700>|\ - sweep_coincident_stops_forward_linen_gray_reflect=16+1000<150,950,700,-700>|\ - sweep_coincident_stops_forward_linen_gray_repeat=17+1000<150,950,700,-700>|\ - sweep_coincident_stops_reverse_blue_red_pad=18+1000<150,950,700,-700>|\ - sweep_coincident_stops_reverse_blue_red_reflect=19+1000<150,950,700,-700>|\ - sweep_coincident_stops_reverse_blue_red_repeat=20+1000<150,950,700,-700>|\ - sweep_coincident_stops_reverse_linen_gray_pad=21+1000<150,950,700,-700>|\ - sweep_coincident_stops_reverse_linen_gray_reflect=22+1000<150,950,700,-700>|\ - sweep_coincident_stops_reverse_linen_gray_repeat=23+1000<150,950,700,-700>" + "181=0+1000<150,950,700,-700>|\ + 182=1+1000<150,950,700,-700>|\ + 183=2+1000<150,950,700,-700>|\ + 184=3+1000<150,950,700,-700>|\ + 185=4+1000<150,950,700,-700>|\ + 186=5+1000<150,950,700,-700>|\ + 187=6+1000<150,950,700,-700>|\ + 188=7+1000<150,950,700,-700>|\ + 189=8+1000<150,950,700,-700>|\ + 190=9+1000<150,950,700,-700>|\ + 191=10+1000<150,950,700,-700>|\ + 192=11+1000<150,950,700,-700>|\ + 193=12+1000<150,950,700,-700>|\ + 194=13+1000<150,950,700,-700>|\ + 195=14+1000<150,950,700,-700>|\ + 196=15+1000<150,950,700,-700>|\ + 197=16+1000<150,950,700,-700>|\ + 198=17+1000<150,950,700,-700>|\ + 199=18+1000<150,950,700,-700>|\ + 200=19+1000<150,950,700,-700>|\ + 201=20+1000<150,950,700,-700>|\ + 202=21+1000<150,950,700,-700>|\ + 203=22+1000<150,950,700,-700>|\ + 204=23+1000<150,950,700,-700>" ); } @@ -245,24 +245,24 @@ fn colr_020() { "tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf", "\u{F1400}\u{F1401}\u{F1402}\u{F1403}\u{F1404}\u{F1405}\u{F1406}\u{F1407}\u{F1408}\u{F1409}\ \u{F140A}\u{F140B}\u{F140C}\u{F140D}\u{F140E}\u{F140F}", - "--show-extents", + "--show-extents --no-glyph-names", ), - "paint_glyph_nested_identity_identity=0+1000<200,770,600,-520>|\ - paint_glyph_nested_identity_translate=1+1000<200,770,600,-520>|\ - paint_glyph_nested_identity_rotate_origin=2+1000<200,770,600,-520>|\ - paint_glyph_nested_identity_rotate_center=3+1000<200,770,600,-520>|\ - paint_glyph_nested_translate_identity=4+1000<320,890,600,-520>|\ - paint_glyph_nested_translate_translate=5+1000<320,890,600,-520>|\ - paint_glyph_nested_translate_rotate_origin=6+1000<320,890,600,-520>|\ - paint_glyph_nested_translate_rotate_center=7+1000<320,890,600,-520>|\ - paint_glyph_nested_rotate_origin_identity=8+1000<63,897,681,-616>|\ - paint_glyph_nested_rotate_origin_translate=9+1000<63,897,681,-616>|\ - paint_glyph_nested_rotate_origin_rotate_origin=10+1000<63,897,681,-616>|\ - paint_glyph_nested_rotate_origin_rotate_center=11+1000<63,897,681,-616>|\ - paint_glyph_nested_rotate_center_identity=12+1000<124,899,750,-779>|\ - paint_glyph_nested_rotate_center_translate=13+1000<124,899,750,-779>|\ - paint_glyph_nested_rotate_center_rotate_origin=14+1000<124,899,750,-779>|\ - paint_glyph_nested_rotate_center_rotate_center=15+1000<124,899,750,-779>" + "205=0+1000<200,770,600,-520>|\ + 206=1+1000<200,770,600,-520>|\ + 207=2+1000<200,770,600,-520>|\ + 208=3+1000<200,770,600,-520>|\ + 209=4+1000<320,890,600,-520>|\ + 210=5+1000<320,890,600,-520>|\ + 211=6+1000<320,890,600,-520>|\ + 212=7+1000<320,890,600,-520>|\ + 213=8+1000<63,897,681,-616>|\ + 214=9+1000<63,897,681,-616>|\ + 215=10+1000<63,897,681,-616>|\ + 216=11+1000<63,897,681,-616>|\ + 217=12+1000<124,899,750,-779>|\ + 218=13+1000<124,899,750,-779>|\ + 219=14+1000<124,899,750,-779>|\ + 220=15+1000<124,899,750,-779>" ); } From 1daaf294c52510a3f5d0b39770d02f80769c46f5 Mon Sep 17 00:00:00 2001 From: valadaptive Date: Sat, 8 Mar 2025 15:13:22 -0500 Subject: [PATCH 4/4] Remove HB output from COLR tests --- tests/custom/colr.tests | 40 +++--- tests/shaping/custom.rs | 272 ++++++++++++++++++++-------------------- 2 files changed, 156 insertions(+), 156 deletions(-) diff --git a/tests/custom/colr.tests b/tests/custom/colr.tests index 44e40185..9759744b 100644 --- a/tests/custom/colr.tests +++ b/tests/custom/colr.tests @@ -1,20 +1,20 @@ -tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents --no-glyph-names;U+F0100,U+F0101,U+F0102,U+F0103;[8=0+1000<100,950,800,-700>|9=1+1000<100,950,800,-700>|10=2+1000<100,950,800,-700>|11=3+1000<100,950,800,-700>] -tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents --no-glyph-names;U+F0200,U+F0201,U+F0202,U+F0203,U+F0204,U+F0205,U+F0206,U+F0207,U+F0208,U+F0209,U+F020A,U+F020B,U+F020C,U+F020D,U+F020E,U+F020F,U+F0210,U+F0211,U+F0212,U+F0213,U+F0214,U+F0215,U+F0216,U+F0217,U+F0218,U+F0219,U+F021A,U+F021B,U+F021C,U+F021D,U+F021E,U+F021F,U+F0220,U+F0221,U+F0222,U+F0223,U+F0224,U+F0225,U+F0226,U+F0227,U+F0228,U+F0229,U+F022A,U+F022B,U+F022C,U+F022D,U+F022E,U+F022F,U+F0230,U+F0231,U+F0232,U+F0233,U+F0234,U+F0235,U+F0236,U+F0237,U+F0238,U+F0239,U+F023A,U+F023B,U+F023C,U+F023D,U+F023E,U+F023F,U+F0240,U+F0241,U+F0242,U+F0243,U+F0244,U+F0245,U+F0246,U+F0247;[12=0+1000<150,950,700,-700>|13=1+1000<150,950,700,-700>|14=2+1000<150,950,700,-700>|15=3+1000<150,950,700,-700>|16=4+1000<150,950,700,-700>|17=5+1000<150,950,700,-700>|18=6+1000<150,950,700,-700>|19=7+1000<150,950,700,-700>|20=8+1000<150,950,700,-700>|21=9+1000<150,950,700,-700>|22=10+1000<150,950,700,-700>|23=11+1000<150,950,700,-700>|24=12+1000<150,950,700,-700>|25=13+1000<150,950,700,-700>|26=14+1000<150,950,700,-700>|27=15+1000<150,950,700,-700>|28=16+1000<150,950,700,-700>|29=17+1000<150,950,700,-700>|30=18+1000<150,950,700,-700>|31=19+1000<150,950,700,-700>|32=20+1000<150,950,700,-700>|33=21+1000<150,950,700,-700>|34=22+1000<150,950,700,-700>|35=23+1000<150,950,700,-700>|36=24+1000<150,950,700,-700>|37=25+1000<150,950,700,-700>|38=26+1000<150,950,700,-700>|39=27+1000<150,950,700,-700>|40=28+1000<150,950,700,-700>|41=29+1000<150,950,700,-700>|42=30+1000<150,950,700,-700>|43=31+1000<150,950,700,-700>|44=32+1000<150,950,700,-700>|45=33+1000<150,950,700,-700>|46=34+1000<150,950,700,-700>|47=35+1000<150,950,700,-700>|48=36+1000<150,950,700,-700>|49=37+1000<150,950,700,-700>|50=38+1000<150,950,700,-700>|51=39+1000<150,950,700,-700>|52=40+1000<150,950,700,-700>|53=41+1000<150,950,700,-700>|54=42+1000<150,950,700,-700>|55=43+1000<150,950,700,-700>|56=44+1000<150,950,700,-700>|57=45+1000<150,950,700,-700>|58=46+1000<150,950,700,-700>|59=47+1000<150,950,700,-700>|60=48+1000<150,950,700,-700>|61=49+1000<150,950,700,-700>|62=50+1000<150,950,700,-700>|63=51+1000<150,950,700,-700>|64=52+1000<150,950,700,-700>|65=53+1000<150,950,700,-700>|66=54+1000<150,950,700,-700>|67=55+1000<150,950,700,-700>|68=56+1000<150,950,700,-700>|69=57+1000<150,950,700,-700>|70=58+1000<150,950,700,-700>|71=59+1000<150,950,700,-700>|72=60+1000<150,950,700,-700>|73=61+1000<150,950,700,-700>|74=62+1000<150,950,700,-700>|75=63+1000<150,950,700,-700>|76=64+1000<150,950,700,-700>|77=65+1000<150,950,700,-700>|78=66+1000<150,950,700,-700>|79=67+1000<150,950,700,-700>|80=68+1000<150,950,700,-700>|81=69+1000<150,950,700,-700>|82=70+1000<150,950,700,-700>|83=71+1000<150,950,700,-700>] -tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents --no-glyph-names;U+F0300,U+F0301,U+F0302,U+F0303,U+F0304,U+F0305;[84=0+1000<250,875,500,-750>|85=1+1000<125,875,750,-750>|86=2+1000<125,1125,625,-875>|87=3+1000<250,1125,875,-875>|88=4+1000<250,750,625,-875>|89=5+1000<-125,750,875,-875>] -tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents --no-glyph-names;U+F0500,U+F0501,U+F0502;[90=0+1000<0,1000,1000,-1000>|91=1+1000<0,1000,1000,-1000>|92=2+1000<0,1000,1000,-1000>] -tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents --no-glyph-names;U+F0503,U+F0504,U+F0505,U+F0506,U+F0507,U+F0508;[93=0+1000<0,1000,1000,-1000>|94=1+1000<0,1000,1000,-1000>|95=2+1000<0,1000,1000,-1000>|96=3+1000<0,1000,1000,-1000>|97=4+1000<0,1000,1000,-1000>|98=5+1000<0,1000,1000,-1000>] -tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents --no-glyph-names;U+F0600,U+F0601,U+F0602,U+F0603;[99=0+1000<115,868,634,-618>|100=1+1000<131,884,618,-634>|101=2+1000<167,832,664,-664>|102=3+1000<193,806,612,-612>] -tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents --no-glyph-names;U+F0700,U+F0701,U+F0702,U+F0703,U+F0704,U+F0705;[103=0+1000<-99,750,849,-500>|104=1+1000<133,750,733,-500>|105=2+1000<250,950,500,-700>|106=3+1000<250,816,500,-633>|107=4+1000<205,840,588,-681>|108=5+1000<117,750,632,-772>] -tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents --no-glyph-names;U+F0800,U+F0801,U+F0802,U+F0803;[109=0+1000<250,875,625,-625>|110=1+1000<250,1125,875,-875>|111=2+1000<47,918,702,-668>|112=3+1000<100,750,800,-500>] -tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents --no-glyph-names;U+F0900,U+F0901,U+F0902,U+F0903,U+F0904,U+F0905,U+F0906;[113=0+1000<250,750,500,-500>|114=1+1000<250,850,500,-600>|115=2+1000<250,750,500,-600>|116=3+1000<250,750,600,-500>|117=4+1000<150,750,600,-500>|118=5+1000<250,950,700,-700>|119=6+1000<50,750,700,-700>] -tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents --no-glyph-names;U+F0A00,U+F0A01,U+F0A02,U+F0A03,U+F0A04,U+F0A05,U+F0A06,U+F0A07,U+F0A08,U+F0A09,U+F0A0A,U+F0A0B,U+F0A0C,U+F0A0D,U+F0A0E,U+F0A0F,U+F0A10,U+F0A11,U+F0A12,U+F0A13,U+F0A14,U+F0A15,U+F0A16,U+F0A17,U+F0A18,U+F0A19,U+F0A1A,U+F0A1B;[120=0+1000<250,750,500,-500>|121=1+1000<250,750,583,-583>|122=2+1000<166,833,583,-583>|123=3+1000<166,833,667,-667>|124=4+1000<166,833,667,-667>|125=5+1000<250,750,500,-500>|126=6+1000<250,750,500,-500>|127=7+1000<250,750,583,-583>|128=8+1000<166,833,583,-583>|129=9+1000<166,833,667,-667>|130=10+1000<166,833,667,-667>|131=11+1000<166,833,667,-667>|132=12+1000<166,833,667,-667>|133=13+1000<166,833,667,-667>|134=14+1000<166,833,667,-667>|135=15+1000<166,833,667,-667>|136=16+1000<166,833,667,-667>|137=17+1000<166,833,667,-667>|138=18+1000<166,833,667,-667>|139=19+1000<166,833,667,-667>|140=20+1000<166,833,667,-667>|141=21+1000<166,833,667,-667>|142=22+1000<166,833,667,-667>|143=23+1000<166,833,667,-667>|144=24+1000<166,833,667,-667>|145=25+1000<166,833,667,-667>|146=26+1000<166,833,667,-667>|147=27+1000<166,833,667,-667>] -tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents --no-glyph-names;U+F0B00,U+F0B01,U+F0B02,U+F0B03,U+F0B04,U+F0B05,U+F0B06,U+F0B07;[148=0+1000<100,1000,1000,-1000>|149=1+1000<100,1000,1000,-1000>|150=2+1000<100,1000,1000,-1000>|151=3+1000<100,1000,1000,-1000>|152=4+1000<100,1000,1000,-1000>|153=5+1000<100,1000,1000,-1000>|154=6+1000<100,1000,1000,-1000>|155=7+1000<100,1000,1000,-1000>] -tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents --no-glyph-names;U+F0C00,U+F0C01,U+F0C02,U+F0C03,U+F0C04,U+F0C05,U+F0C06,U+F0C07,U+F0C08,U+F0C09,U+F0C0A;[156=0+1000<0,1000,1000,-1000>|157=1+1000<0,1000,1000,-1000>|158=2+1000<0,1000,1000,-1000>|159=3+1000<0,1000,1000,-1000>|160=4+1000<0,1000,1000,-1000>|161=5+1000<0,1000,500,-500>|162=6+1000<0,500,500,-500>|163=7+1000<500,500,500,-500>|164=8+1000<500,1000,500,-500>|165=9+1000<250,750,500,-500>|166=10+1000<0,1000,1000,-1000>] -tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents --no-glyph-names;U+F0D00;[167=0+1250<100,950,1100,-700>] -tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents --no-glyph-names;U+F0E00,U+F0E01;[168=0+1000<150,950,700,-704>|169=1+1000<150,950,700,-700>] -tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents --no-glyph-names;U+F0F00,U+F0F01,U+F0F02,U+F0F03,U+F0F04,U+F0F05,U+F0F06;[170=0+1000<450,650,100,-100>|171=1+1000<400,700,200,-200>|172=2+1000<350,750,300,-300>|173=3+1000<300,800,400,-400>|174=4+1000<250,850,500,-500>|175=5+1000<200,900,600,-600>|176=6+1000<150,950,700,-700>] -tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents --no-glyph-names;U+F1000;[177=0+1000<0,950,1000,-700>] -tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents --no-glyph-names;U+F1100,U+F1101;[178=0+1000<0,0,0,0>|179=1+1000<0,0,0,0>] -tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents --no-glyph-names;U+F1200;[180=0+1000<0,950,1000,-700>] -tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents --no-glyph-names;U+F1300,U+F1301,U+F1302,U+F1303,U+F1304,U+F1305,U+F1306,U+F1307,U+F1308,U+F1309,U+F130A,U+F130B,U+F130C,U+F130D,U+F130E,U+F130F,U+F1310,U+F1311,U+F1312,U+F1313,U+F1314,U+F1315,U+F1316,U+F1317;[181=0+1000<150,950,700,-700>|182=1+1000<150,950,700,-700>|183=2+1000<150,950,700,-700>|184=3+1000<150,950,700,-700>|185=4+1000<150,950,700,-700>|186=5+1000<150,950,700,-700>|187=6+1000<150,950,700,-700>|188=7+1000<150,950,700,-700>|189=8+1000<150,950,700,-700>|190=9+1000<150,950,700,-700>|191=10+1000<150,950,700,-700>|192=11+1000<150,950,700,-700>|193=12+1000<150,950,700,-700>|194=13+1000<150,950,700,-700>|195=14+1000<150,950,700,-700>|196=15+1000<150,950,700,-700>|197=16+1000<150,950,700,-700>|198=17+1000<150,950,700,-700>|199=18+1000<150,950,700,-700>|200=19+1000<150,950,700,-700>|201=20+1000<150,950,700,-700>|202=21+1000<150,950,700,-700>|203=22+1000<150,950,700,-700>|204=23+1000<150,950,700,-700>] -tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents --no-glyph-names;U+F1400,U+F1401,U+F1402,U+F1403,U+F1404,U+F1405,U+F1406,U+F1407,U+F1408,U+F1409,U+F140A,U+F140B,U+F140C,U+F140D,U+F140E,U+F140F;[205=0+1000<200,770,600,-520>|206=1+1000<200,770,600,-520>|207=2+1000<200,770,600,-520>|208=3+1000<200,770,600,-520>|209=4+1000<320,890,600,-520>|210=5+1000<320,890,600,-520>|211=6+1000<320,890,600,-520>|212=7+1000<320,890,600,-520>|213=8+1000<63,897,681,-616>|214=9+1000<63,897,681,-616>|215=10+1000<63,897,681,-616>|216=11+1000<63,897,681,-616>|217=12+1000<124,899,750,-779>|218=13+1000<124,899,750,-779>|219=14+1000<124,899,750,-779>|220=15+1000<124,899,750,-779>] \ No newline at end of file +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0100,U+F0101,U+F0102,U+F0103; +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0200,U+F0201,U+F0202,U+F0203,U+F0204,U+F0205,U+F0206,U+F0207,U+F0208,U+F0209,U+F020A,U+F020B,U+F020C,U+F020D,U+F020E,U+F020F,U+F0210,U+F0211,U+F0212,U+F0213,U+F0214,U+F0215,U+F0216,U+F0217,U+F0218,U+F0219,U+F021A,U+F021B,U+F021C,U+F021D,U+F021E,U+F021F,U+F0220,U+F0221,U+F0222,U+F0223,U+F0224,U+F0225,U+F0226,U+F0227,U+F0228,U+F0229,U+F022A,U+F022B,U+F022C,U+F022D,U+F022E,U+F022F,U+F0230,U+F0231,U+F0232,U+F0233,U+F0234,U+F0235,U+F0236,U+F0237,U+F0238,U+F0239,U+F023A,U+F023B,U+F023C,U+F023D,U+F023E,U+F023F,U+F0240,U+F0241,U+F0242,U+F0243,U+F0244,U+F0245,U+F0246,U+F0247; +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0300,U+F0301,U+F0302,U+F0303,U+F0304,U+F0305; +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0500,U+F0501,U+F0502; +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0503,U+F0504,U+F0505,U+F0506,U+F0507,U+F0508; +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0600,U+F0601,U+F0602,U+F0603; +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0700,U+F0701,U+F0702,U+F0703,U+F0704,U+F0705; +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0800,U+F0801,U+F0802,U+F0803; +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0900,U+F0901,U+F0902,U+F0903,U+F0904,U+F0905,U+F0906; +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0A00,U+F0A01,U+F0A02,U+F0A03,U+F0A04,U+F0A05,U+F0A06,U+F0A07,U+F0A08,U+F0A09,U+F0A0A,U+F0A0B,U+F0A0C,U+F0A0D,U+F0A0E,U+F0A0F,U+F0A10,U+F0A11,U+F0A12,U+F0A13,U+F0A14,U+F0A15,U+F0A16,U+F0A17,U+F0A18,U+F0A19,U+F0A1A,U+F0A1B; +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0B00,U+F0B01,U+F0B02,U+F0B03,U+F0B04,U+F0B05,U+F0B06,U+F0B07; +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0C00,U+F0C01,U+F0C02,U+F0C03,U+F0C04,U+F0C05,U+F0C06,U+F0C07,U+F0C08,U+F0C09,U+F0C0A; +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0D00; +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0E00,U+F0E01; +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F0F00,U+F0F01,U+F0F02,U+F0F03,U+F0F04,U+F0F05,U+F0F06; +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F1000; +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F1100,U+F1101; +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F1200; +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F1300,U+F1301,U+F1302,U+F1303,U+F1304,U+F1305,U+F1306,U+F1307,U+F1308,U+F1309,U+F130A,U+F130B,U+F130C,U+F130D,U+F130E,U+F130F,U+F1310,U+F1311,U+F1312,U+F1313,U+F1314,U+F1315,U+F1316,U+F1317; +tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf;--show-extents;U+F1400,U+F1401,U+F1402,U+F1403,U+F1404,U+F1405,U+F1406,U+F1407,U+F1408,U+F1409,U+F140A,U+F140B,U+F140C,U+F140D,U+F140E,U+F140F; \ No newline at end of file diff --git a/tests/shaping/custom.rs b/tests/shaping/custom.rs index 9dd8fad1..ed968451 100644 --- a/tests/shaping/custom.rs +++ b/tests/shaping/custom.rs @@ -46,12 +46,12 @@ fn colr_001() { shape( "tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf", "\u{F0100}\u{F0101}\u{F0102}\u{F0103}", - "--show-extents --no-glyph-names", + "--show-extents", ), - "8=0+1000<100,950,800,-700>|\ - 9=1+1000<100,950,800,-700>|\ - 10=2+1000<100,950,800,-700>|\ - 11=3+1000<100,950,800,-700>" + "linear_repeat_0_1=0+1000<100,950,800,-700>|\ + linear_repeat_0.2_0.8=1+1000<100,950,800,-700>|\ + linear_repeat_0_1.5=2+1000<100,950,800,-700>|\ + linear_repeat_0.5_1.5=3+1000<100,950,800,-700>" ); } @@ -68,80 +68,80 @@ fn colr_002() { \u{F0232}\u{F0233}\u{F0234}\u{F0235}\u{F0236}\u{F0237}\u{F0238}\u{F0239}\u{F023A}\u{F023B}\ \u{F023C}\u{F023D}\u{F023E}\u{F023F}\u{F0240}\u{F0241}\u{F0242}\u{F0243}\u{F0244}\u{F0245}\ \u{F0246}\u{F0247}", - "--show-extents --no-glyph-names", + "--show-extents", ), - "12=0+1000<150,950,700,-700>|\ - 13=1+1000<150,950,700,-700>|\ - 14=2+1000<150,950,700,-700>|\ - 15=3+1000<150,950,700,-700>|\ - 16=4+1000<150,950,700,-700>|\ - 17=5+1000<150,950,700,-700>|\ - 18=6+1000<150,950,700,-700>|\ - 19=7+1000<150,950,700,-700>|\ - 20=8+1000<150,950,700,-700>|\ - 21=9+1000<150,950,700,-700>|\ - 22=10+1000<150,950,700,-700>|\ - 23=11+1000<150,950,700,-700>|\ - 24=12+1000<150,950,700,-700>|\ - 25=13+1000<150,950,700,-700>|\ - 26=14+1000<150,950,700,-700>|\ - 27=15+1000<150,950,700,-700>|\ - 28=16+1000<150,950,700,-700>|\ - 29=17+1000<150,950,700,-700>|\ - 30=18+1000<150,950,700,-700>|\ - 31=19+1000<150,950,700,-700>|\ - 32=20+1000<150,950,700,-700>|\ - 33=21+1000<150,950,700,-700>|\ - 34=22+1000<150,950,700,-700>|\ - 35=23+1000<150,950,700,-700>|\ - 36=24+1000<150,950,700,-700>|\ - 37=25+1000<150,950,700,-700>|\ - 38=26+1000<150,950,700,-700>|\ - 39=27+1000<150,950,700,-700>|\ - 40=28+1000<150,950,700,-700>|\ - 41=29+1000<150,950,700,-700>|\ - 42=30+1000<150,950,700,-700>|\ - 43=31+1000<150,950,700,-700>|\ - 44=32+1000<150,950,700,-700>|\ - 45=33+1000<150,950,700,-700>|\ - 46=34+1000<150,950,700,-700>|\ - 47=35+1000<150,950,700,-700>|\ - 48=36+1000<150,950,700,-700>|\ - 49=37+1000<150,950,700,-700>|\ - 50=38+1000<150,950,700,-700>|\ - 51=39+1000<150,950,700,-700>|\ - 52=40+1000<150,950,700,-700>|\ - 53=41+1000<150,950,700,-700>|\ - 54=42+1000<150,950,700,-700>|\ - 55=43+1000<150,950,700,-700>|\ - 56=44+1000<150,950,700,-700>|\ - 57=45+1000<150,950,700,-700>|\ - 58=46+1000<150,950,700,-700>|\ - 59=47+1000<150,950,700,-700>|\ - 60=48+1000<150,950,700,-700>|\ - 61=49+1000<150,950,700,-700>|\ - 62=50+1000<150,950,700,-700>|\ - 63=51+1000<150,950,700,-700>|\ - 64=52+1000<150,950,700,-700>|\ - 65=53+1000<150,950,700,-700>|\ - 66=54+1000<150,950,700,-700>|\ - 67=55+1000<150,950,700,-700>|\ - 68=56+1000<150,950,700,-700>|\ - 69=57+1000<150,950,700,-700>|\ - 70=58+1000<150,950,700,-700>|\ - 71=59+1000<150,950,700,-700>|\ - 72=60+1000<150,950,700,-700>|\ - 73=61+1000<150,950,700,-700>|\ - 74=62+1000<150,950,700,-700>|\ - 75=63+1000<150,950,700,-700>|\ - 76=64+1000<150,950,700,-700>|\ - 77=65+1000<150,950,700,-700>|\ - 78=66+1000<150,950,700,-700>|\ - 79=67+1000<150,950,700,-700>|\ - 80=68+1000<150,950,700,-700>|\ - 81=69+1000<150,950,700,-700>|\ - 82=70+1000<150,950,700,-700>|\ - 83=71+1000<150,950,700,-700>" + "sweep_0_360_pad_narrow=0+1000<150,950,700,-700>|\ + sweep_60_300_pad_narrow=1+1000<150,950,700,-700>|\ + sweep_0_90_pad_narrow=2+1000<150,950,700,-700>|\ + sweep_90_0_pad_narrow=3+1000<150,950,700,-700>|\ + sweep_45_90_pad_narrow=4+1000<150,950,700,-700>|\ + sweep_90_45_pad_narrow=5+1000<150,950,700,-700>|\ + sweep_247.5_292.5_pad_narrow=6+1000<150,950,700,-700>|\ + sweep_-45_45_pad_narrow=7+1000<150,950,700,-700>|\ + sweep_45_-45_pad_narrow=8+1000<150,950,700,-700>|\ + sweep_270_440_pad_narrow=9+1000<150,950,700,-700>|\ + sweep_440_270_pad_narrow=10+1000<150,950,700,-700>|\ + sweep_-180_540_pad_narrow=11+1000<150,950,700,-700>|\ + sweep_0_360_reflect_narrow=12+1000<150,950,700,-700>|\ + sweep_60_300_reflect_narrow=13+1000<150,950,700,-700>|\ + sweep_0_90_reflect_narrow=14+1000<150,950,700,-700>|\ + sweep_90_0_reflect_narrow=15+1000<150,950,700,-700>|\ + sweep_45_90_reflect_narrow=16+1000<150,950,700,-700>|\ + sweep_90_45_reflect_narrow=17+1000<150,950,700,-700>|\ + sweep_247.5_292.5_reflect_narrow=18+1000<150,950,700,-700>|\ + sweep_-45_45_reflect_narrow=19+1000<150,950,700,-700>|\ + sweep_45_-45_reflect_narrow=20+1000<150,950,700,-700>|\ + sweep_270_440_reflect_narrow=21+1000<150,950,700,-700>|\ + sweep_440_270_reflect_narrow=22+1000<150,950,700,-700>|\ + sweep_-180_540_reflect_narrow=23+1000<150,950,700,-700>|\ + sweep_0_360_repeat_narrow=24+1000<150,950,700,-700>|\ + sweep_60_300_repeat_narrow=25+1000<150,950,700,-700>|\ + sweep_0_90_repeat_narrow=26+1000<150,950,700,-700>|\ + sweep_90_0_repeat_narrow=27+1000<150,950,700,-700>|\ + sweep_45_90_repeat_narrow=28+1000<150,950,700,-700>|\ + sweep_90_45_repeat_narrow=29+1000<150,950,700,-700>|\ + sweep_247.5_292.5_repeat_narrow=30+1000<150,950,700,-700>|\ + sweep_-45_45_repeat_narrow=31+1000<150,950,700,-700>|\ + sweep_45_-45_repeat_narrow=32+1000<150,950,700,-700>|\ + sweep_270_440_repeat_narrow=33+1000<150,950,700,-700>|\ + sweep_440_270_repeat_narrow=34+1000<150,950,700,-700>|\ + sweep_-180_540_repeat_narrow=35+1000<150,950,700,-700>|\ + sweep_0_360_pad_wide=36+1000<150,950,700,-700>|\ + sweep_60_300_pad_wide=37+1000<150,950,700,-700>|\ + sweep_0_90_pad_wide=38+1000<150,950,700,-700>|\ + sweep_90_0_pad_wide=39+1000<150,950,700,-700>|\ + sweep_45_90_pad_wide=40+1000<150,950,700,-700>|\ + sweep_90_45_pad_wide=41+1000<150,950,700,-700>|\ + sweep_247.5_292.5_pad_wide=42+1000<150,950,700,-700>|\ + sweep_-45_45_pad_wide=43+1000<150,950,700,-700>|\ + sweep_45_-45_pad_wide=44+1000<150,950,700,-700>|\ + sweep_270_440_pad_wide=45+1000<150,950,700,-700>|\ + sweep_440_270_pad_wide=46+1000<150,950,700,-700>|\ + sweep_-180_540_pad_wide=47+1000<150,950,700,-700>|\ + sweep_0_360_reflect_wide=48+1000<150,950,700,-700>|\ + sweep_60_300_reflect_wide=49+1000<150,950,700,-700>|\ + sweep_0_90_reflect_wide=50+1000<150,950,700,-700>|\ + sweep_90_0_reflect_wide=51+1000<150,950,700,-700>|\ + sweep_45_90_reflect_wide=52+1000<150,950,700,-700>|\ + sweep_90_45_reflect_wide=53+1000<150,950,700,-700>|\ + sweep_247.5_292.5_reflect_wide=54+1000<150,950,700,-700>|\ + sweep_-45_45_reflect_wide=55+1000<150,950,700,-700>|\ + sweep_45_-45_reflect_wide=56+1000<150,950,700,-700>|\ + sweep_270_440_reflect_wide=57+1000<150,950,700,-700>|\ + sweep_440_270_reflect_wide=58+1000<150,950,700,-700>|\ + sweep_-180_540_reflect_wide=59+1000<150,950,700,-700>|\ + sweep_0_360_repeat_wide=60+1000<150,950,700,-700>|\ + sweep_60_300_repeat_wide=61+1000<150,950,700,-700>|\ + sweep_0_90_repeat_wide=62+1000<150,950,700,-700>|\ + sweep_90_0_repeat_wide=63+1000<150,950,700,-700>|\ + sweep_45_90_repeat_wide=64+1000<150,950,700,-700>|\ + sweep_90_45_repeat_wide=65+1000<150,950,700,-700>|\ + sweep_247.5_292.5_repeat_wide=66+1000<150,950,700,-700>|\ + sweep_-45_45_repeat_wide=67+1000<150,950,700,-700>|\ + sweep_45_-45_repeat_wide=68+1000<150,950,700,-700>|\ + sweep_270_440_repeat_wide=69+1000<150,950,700,-700>|\ + sweep_440_270_repeat_wide=70+1000<150,950,700,-700>|\ + sweep_-180_540_repeat_wide=71+1000<150,950,700,-700>" ); } @@ -151,11 +151,11 @@ fn colr_004() { shape( "tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf", "\u{F0500}\u{F0501}\u{F0502}", - "--show-extents --no-glyph-names", + "--show-extents", ), - "90=0+1000<0,1000,1000,-1000>|\ - 91=1+1000<0,1000,1000,-1000>|\ - 92=2+1000<0,1000,1000,-1000>" + "linear_gradient_extend_mode_pad=0+1000<0,1000,1000,-1000>|\ + linear_gradient_extend_mode_repeat=1+1000<0,1000,1000,-1000>|\ + linear_gradient_extend_mode_reflect=2+1000<0,1000,1000,-1000>" ); } @@ -165,14 +165,14 @@ fn colr_005() { shape( "tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf", "\u{F0503}\u{F0504}\u{F0505}\u{F0506}\u{F0507}\u{F0508}", - "--show-extents --no-glyph-names", + "--show-extents", ), - "93=0+1000<0,1000,1000,-1000>|\ - 94=1+1000<0,1000,1000,-1000>|\ - 95=2+1000<0,1000,1000,-1000>|\ - 96=3+1000<0,1000,1000,-1000>|\ - 97=4+1000<0,1000,1000,-1000>|\ - 98=5+1000<0,1000,1000,-1000>" + "radial_contained_gradient_extend_mode_pad=0+1000<0,1000,1000,-1000>|\ + radial_contained_gradient_extend_mode_repeat=1+1000<0,1000,1000,-1000>|\ + radial_contained_gradient_extend_mode_reflect=2+1000<0,1000,1000,-1000>|\ + radial_horizontal_gradient_extend_mode_pad=3+1000<0,1000,1000,-1000>|\ + radial_horizontal_gradient_extend_mode_repeat=4+1000<0,1000,1000,-1000>|\ + radial_horizontal_gradient_extend_mode_reflect=5+1000<0,1000,1000,-1000>" ); } @@ -182,9 +182,9 @@ fn colr_013() { shape( "tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf", "\u{F0D00}", - "--show-extents --no-glyph-names", + "--show-extents", ), - "167=0+1250<100,950,1100,-700>" + "gradient_p2_skewed=0+1250<100,950,1100,-700>" ); } @@ -194,10 +194,10 @@ fn colr_017() { shape( "tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf", "\u{F1100}\u{F1101}", - "--show-extents --no-glyph-names", + "--show-extents", ), - "178=0+1000<0,0,0,0>|\ - 179=1+1000<0,0,0,0>" + "paintcolrglyph_cycle_first=0+1000<0,0,0,0>|\ + paintcolrglyph_cycle_second=1+1000<0,0,0,0>" ); } @@ -209,32 +209,32 @@ fn colr_019() { "\u{F1300}\u{F1301}\u{F1302}\u{F1303}\u{F1304}\u{F1305}\u{F1306}\u{F1307}\u{F1308}\u{F1309}\ \u{F130A}\u{F130B}\u{F130C}\u{F130D}\u{F130E}\u{F130F}\u{F1310}\u{F1311}\u{F1312}\u{F1313}\ \u{F1314}\u{F1315}\u{F1316}\u{F1317}", - "--show-extents --no-glyph-names", + "--show-extents", ), - "181=0+1000<150,950,700,-700>|\ - 182=1+1000<150,950,700,-700>|\ - 183=2+1000<150,950,700,-700>|\ - 184=3+1000<150,950,700,-700>|\ - 185=4+1000<150,950,700,-700>|\ - 186=5+1000<150,950,700,-700>|\ - 187=6+1000<150,950,700,-700>|\ - 188=7+1000<150,950,700,-700>|\ - 189=8+1000<150,950,700,-700>|\ - 190=9+1000<150,950,700,-700>|\ - 191=10+1000<150,950,700,-700>|\ - 192=11+1000<150,950,700,-700>|\ - 193=12+1000<150,950,700,-700>|\ - 194=13+1000<150,950,700,-700>|\ - 195=14+1000<150,950,700,-700>|\ - 196=15+1000<150,950,700,-700>|\ - 197=16+1000<150,950,700,-700>|\ - 198=17+1000<150,950,700,-700>|\ - 199=18+1000<150,950,700,-700>|\ - 200=19+1000<150,950,700,-700>|\ - 201=20+1000<150,950,700,-700>|\ - 202=21+1000<150,950,700,-700>|\ - 203=22+1000<150,950,700,-700>|\ - 204=23+1000<150,950,700,-700>" + "sweep_coincident_angles_forward_blue_red_pad=0+1000<150,950,700,-700>|\ + sweep_coincident_angles_forward_blue_red_reflect=1+1000<150,950,700,-700>|\ + sweep_coincident_angles_forward_blue_red_repeat=2+1000<150,950,700,-700>|\ + sweep_coincident_angles_forward_linen_gray_pad=3+1000<150,950,700,-700>|\ + sweep_coincident_angles_forward_linen_gray_reflect=4+1000<150,950,700,-700>|\ + sweep_coincident_angles_forward_linen_gray_repeat=5+1000<150,950,700,-700>|\ + sweep_coincident_angles_reverse_blue_red_pad=6+1000<150,950,700,-700>|\ + sweep_coincident_angles_reverse_blue_red_reflect=7+1000<150,950,700,-700>|\ + sweep_coincident_angles_reverse_blue_red_repeat=8+1000<150,950,700,-700>|\ + sweep_coincident_angles_reverse_linen_gray_pad=9+1000<150,950,700,-700>|\ + sweep_coincident_angles_reverse_linen_gray_reflect=10+1000<150,950,700,-700>|\ + sweep_coincident_angles_reverse_linen_gray_repeat=11+1000<150,950,700,-700>|\ + sweep_coincident_stops_forward_blue_red_pad=12+1000<150,950,700,-700>|\ + sweep_coincident_stops_forward_blue_red_reflect=13+1000<150,950,700,-700>|\ + sweep_coincident_stops_forward_blue_red_repeat=14+1000<150,950,700,-700>|\ + sweep_coincident_stops_forward_linen_gray_pad=15+1000<150,950,700,-700>|\ + sweep_coincident_stops_forward_linen_gray_reflect=16+1000<150,950,700,-700>|\ + sweep_coincident_stops_forward_linen_gray_repeat=17+1000<150,950,700,-700>|\ + sweep_coincident_stops_reverse_blue_red_pad=18+1000<150,950,700,-700>|\ + sweep_coincident_stops_reverse_blue_red_reflect=19+1000<150,950,700,-700>|\ + sweep_coincident_stops_reverse_blue_red_repeat=20+1000<150,950,700,-700>|\ + sweep_coincident_stops_reverse_linen_gray_pad=21+1000<150,950,700,-700>|\ + sweep_coincident_stops_reverse_linen_gray_reflect=22+1000<150,950,700,-700>|\ + sweep_coincident_stops_reverse_linen_gray_repeat=23+1000<150,950,700,-700>" ); } @@ -245,24 +245,24 @@ fn colr_020() { "tests/fonts/rb_custom/test_glyphs-glyf_colr_1_no_cliplist.ttf", "\u{F1400}\u{F1401}\u{F1402}\u{F1403}\u{F1404}\u{F1405}\u{F1406}\u{F1407}\u{F1408}\u{F1409}\ \u{F140A}\u{F140B}\u{F140C}\u{F140D}\u{F140E}\u{F140F}", - "--show-extents --no-glyph-names", + "--show-extents", ), - "205=0+1000<200,770,600,-520>|\ - 206=1+1000<200,770,600,-520>|\ - 207=2+1000<200,770,600,-520>|\ - 208=3+1000<200,770,600,-520>|\ - 209=4+1000<320,890,600,-520>|\ - 210=5+1000<320,890,600,-520>|\ - 211=6+1000<320,890,600,-520>|\ - 212=7+1000<320,890,600,-520>|\ - 213=8+1000<63,897,681,-616>|\ - 214=9+1000<63,897,681,-616>|\ - 215=10+1000<63,897,681,-616>|\ - 216=11+1000<63,897,681,-616>|\ - 217=12+1000<124,899,750,-779>|\ - 218=13+1000<124,899,750,-779>|\ - 219=14+1000<124,899,750,-779>|\ - 220=15+1000<124,899,750,-779>" + "paint_glyph_nested_identity_identity=0+1000<200,770,600,-520>|\ + paint_glyph_nested_identity_translate=1+1000<200,770,600,-520>|\ + paint_glyph_nested_identity_rotate_origin=2+1000<200,770,600,-520>|\ + paint_glyph_nested_identity_rotate_center=3+1000<200,770,600,-520>|\ + paint_glyph_nested_translate_identity=4+1000<320,890,600,-520>|\ + paint_glyph_nested_translate_translate=5+1000<320,890,600,-520>|\ + paint_glyph_nested_translate_rotate_origin=6+1000<320,890,600,-520>|\ + paint_glyph_nested_translate_rotate_center=7+1000<320,890,600,-520>|\ + paint_glyph_nested_rotate_origin_identity=8+1000<63,897,681,-616>|\ + paint_glyph_nested_rotate_origin_translate=9+1000<63,897,681,-616>|\ + paint_glyph_nested_rotate_origin_rotate_origin=10+1000<63,897,681,-616>|\ + paint_glyph_nested_rotate_origin_rotate_center=11+1000<63,897,681,-616>|\ + paint_glyph_nested_rotate_center_identity=12+1000<124,899,750,-779>|\ + paint_glyph_nested_rotate_center_translate=13+1000<124,899,750,-779>|\ + paint_glyph_nested_rotate_center_rotate_origin=14+1000<124,899,750,-779>|\ + paint_glyph_nested_rotate_center_rotate_center=15+1000<124,899,750,-779>" ); }