- 764 名前:こんなんでどうかね [2009/09/20(日) 00:36:53 ID:Wiycj4xM]
- use Font::TTF::Font;
$font = Font::TTF::Font->open($ARGV[0]); $uni = 0x3041; $gid = $font->{'cmap'}->ms_lookup($uni); printf("GID of 0x%x is %d¥n", $uni, $gid); # read 'vert' feature $gsub = $font->{'GSUB'}->read; $subtable_offset = $gsub->{'FEATURES'}->{'vert'}->{'INDEX'}; $vert = $gsub->{'LOOKUP'}->[$subtable_offset]; $vert_coverage = $vert->{'SUB'}->[0]->{'COVERAGE'}->{'val'}; $vert_gid = $gid; $vert_gid = $vert->{'SUB'}->[0]->{'RULES'}->[$vert_coverage->{$gid}]->[0]->{'ACTION'}->[0] if (defined $vert_coverage->{$gid}); printf("GID of 0x%x (vert) is %d¥n", $uni, $vert_gid);
|

|