use warnings; use strict; use Font::TTFMetrics; use utf8; my $metrics = Font::TTFMetrics->new("Arial.ttf"); #16px my $str_en = ($metrics->string_width("Balha") * 1152) / (147456); my $str_ar = ($metrics->string_width("بلحة") * 1152) / (147456); my $str_ar2 = ($metrics->string_width("\x{0628}\x{0644}\x{062D}\x{0629}") * 1152) / (147456); print ('My English string: ' . "$str_en" . "px\n"); print ('My Unicode string: ' . "$str_ar" . "px\n"); print ('My Unicode string 2: ' . "$str_ar2" . "px\n");