@@ -706,6 +706,27 @@ def test_ft2font_get_kerning(left, right, unscaled, unfitted, default):
706
706
ft2font .KERNING_DEFAULT ) == default
707
707
708
708
709
+ def test_ft2font_set_text ():
710
+ file = fm .findfont ('DejaVu Sans' )
711
+ font = ft2font .FT2Font (file , hinting_factor = 1 , _kerning_factor = 0 )
712
+ xys = font .set_text ('' )
713
+ np .testing .assert_array_equal (xys , np .empty ((0 , 2 )))
714
+ assert font .get_width_height () == (0 , 0 )
715
+ assert font .get_num_glyphs () == 0
716
+ assert font .get_descent () == 0
717
+ assert font .get_bitmap_offset () == (0 , 0 )
718
+ # This string uses all the kerning pairs defined for test_ft2font_get_kerning.
719
+ xys = font .set_text ('AADAT.XC-J' )
720
+ np .testing .assert_array_equal (
721
+ xys ,
722
+ [(0 , 0 ), (512 , 0 ), (1024 , 0 ), (1600 , 0 ), (2112 , 0 ), (2496 , 0 ), (2688 , 0 ),
723
+ (3200 , 0 ), (3712 , 0 ), (4032 , 0 )])
724
+ assert font .get_width_height () == (4288 , 768 )
725
+ assert font .get_num_glyphs () == 10
726
+ assert font .get_descent () == 192
727
+ assert font .get_bitmap_offset () == (6 , 0 )
728
+
729
+
709
730
@pytest .mark .parametrize ('family_name, file_name' ,
710
731
[("WenQuanYi Zen Hei" , "wqy-zenhei.ttc" ),
711
732
("Noto Sans CJK JP" , "NotoSansCJK.ttc" ),
0 commit comments