답변:
나는 당신이 otfinfo를 찾고 있다고 생각합니다 . 서브 패밀리에 직접 갈 수 있는 옵션 은 없지만 다음과 같이 할 수 있습니다.
otfinfo --info *.ttf | grep Subfamily
내가 본 많은 글꼴은 "Italic"대신 "Oblique"를 사용합니다.
lcdf-typetools
(의 의존성 texlive-fontutils
이므로 TeX를 사용하는 사람들을 위해 이미 설치되어있을 수 있습니다).
Linux에서 .ttf 글꼴이있는 경우 대부분 유틸리티 와 함께 제공되는 fontconfig 가 fc.scan
있습니다. 원하는 정보에 대한 출력을 구문 분석하거나 잘못 문서화 된 --format
옵션을 사용할 수 있습니다.
예를 들면 다음과 같습니다.
fc-scan --format "%{foundry} : %{family}\n" /usr/share/fonts/truetype/msttcorefonts/arialbd.ttf
이 방법으로 인쇄 할 수있는 글꼴 속성은 다음과 같습니다. http://www.freedesktop.org/software/fontconfig/fontconfig-user.html#AEN21
일부 속성은 여러 언어로 표시됩니다. 예를 들어, %{fullname}
목록 일 수 있습니다. 이 경우 %{fullnamelang}
언어를 나열합니다. 해당 언어가 목록의 네 번째 위치에있는 %{fullname[3]}
경우 형식 문자열로 사용하여 해당 언어로만 전체 이름을 인쇄 할 수 있습니다.
이 언어는 매우 불편합니다. 필자는 하나의 언어로 원하는 정보를 나열하기 위해 완전한 Perl 스크립트를 작성했습니다.
#!/usr/bin/perl
use strict;
my $VERSION=0.1;
my $debug=1;
my @wanted = qw(foundry family fullname style weight slant width spacing file);
my @lang_dependent = qw(family fullname style);
my $lang = "en";
my $separator = ", ";
use File::Basename;
use Data::Dumper; $Data::Dumper::Sortkeys = 1;
my $me = basename $0;
die "Usage: $me FILENAME\n" unless @ARGV;
my $fontfile = shift;
unless (-f $fontfile) {
die "Bad argument: '$fontfile' is not a file !\n";
}
my $fc_format = join( "\\n", map { "\%{$_}" } @wanted );
my @info = `fc-scan --format "$fc_format" "$fontfile"`;
chomp @info;
my %fontinfo;
@fontinfo{@wanted} = @info;
if ( grep /,/, @fontinfo{ @lang_dependent } ) {
my $format = join( "\\n", map { "\%{${_}lang}" } @lang_dependent );
my @langs = `fc-scan --format "$format" "$fontfile"`;
for my $i (0..$#lang_dependent) {
my @lang_list = split /,/, $langs[$i];
my ($pos) = grep { $lang_list[$_] ~~ $lang } 0 .. $#lang_list;
my @vals = split /,/, $fontinfo{$lang_dependent[$i]};
$fontinfo{$lang_dependent[$i]} = $vals[$pos];
}
}
warn Dumper(\%fontinfo), "\n" if $debug;
$fontinfo{'fullname'} ||= $fontinfo{'family'}; # some old fonts don't have a fullname? (WINNT/Fonts/marlett.ttf)
print join($separator, @fontinfo{@wanted}), "\n";
foundry
그것이 당신에게 가장 가까운 것입니다. 그러나 otfinfo -i
cjm에서 제안한대로 표시합니다.
lcdf-typetools
하고 달렸다 otfinfo -i
. (그리고 @cjm에게 +1도주었습니다).
brew install lcdf-typetools