タイトル文字列の書式設定について

TypeTitleStringFormatedStringの文字列は、
下の一覧表にある「識別子」や「特殊記号」を並べて記述していくことにより
1つの文字列アイテムで複数の情報表示や任意の単語・文章を混合した表示ができます。
つまり「情報系の文字列のType」と「Captionキー(指定した文章をそのまま表示)」を
組み合わせたような文字列アイテムです。
タイトル文字列で指定できる識別子は
ほとんどがTypeキーで表示できる情報系の文字列と同じものですが、
Typeでは表示できないものもいくつかあります。

TitleStringとFormatedStringの違い

TitleString
uLilith本体の設定「表示」→「フェイス」→「タイトル文字列の表示設定」で設定する、
(上の画像の赤で囲んだ部分で設定している)
フェイスの使用者側が表示内容を指定している」文字列ですが、

FormatedString
[String01]
Category = DynamicString
Type = FormatedString
FormatString = "Artist : %>%Artist% - %<Title : %>%Title%"
PosX = 10
PosY = 50
Width = 200
Height = 20
Align = CenterLeft
FontFace = MS Pゴシック
AlternateFontFace = MS UI Gothic
FontSize = 15
FontStyle = Bold
TextColor = 0xFFFFFFFF
上のような文字列アイテムを作ってFormatStringキーで表示内容を指定する
(文字列アイテムの設定方法は、「文字列アイテムの配置方法(1)」のページで説明しています)
フェイスの作成者側が(フェイスのini内で)表示内容を指定できる」文字列です。

FormatedStringFormatStringを混同しないように注意してください。
  edが付いているFormatedStringTypeのほうで、
  付いていない方が内容を書き込むFormatStringキーです。

書き込む内容の書き方はどちらも同じです。



識別子・特殊記号の一覧表

  • 識別子はどれも前後を「%」で挟まれた単語という形式になっています。
    ほとんどの識別子は同じ内容のType%に挟まれたものになっていますが、
    Typeとは異なる名前になっているものもいくつかあります。

識別子

識別子 書式名【※1】 同じ内容のType 備考
%FileName% ファイル名
Title
拡張子を除いたファイル名。
タグにタイトルがあるファイルで
ファイル名のみを表示する場合に
使用する。
%FilePath% ファイルのパス
%FileExt% ファイルの拡張子 " ."つきで表示される。
例:「.mp3」
%Title% タグのタイトル Title 曲名
%Artist% タグのアーティスト Artist
%Album% タグのアルバム Album
%Date% タグの日付 Date
%Track% タグのトラック番号 TrackNumber
%Genre% タグのジャンル Genre
%Comment% タグのコメント Comment
%OutFileName% 出力ファイル名 ファイル変換専用。【※2】
%PlayTime% 演奏時間 TotalTimeMs ファイルの総演奏時間
(ミリ秒単位まで表示)
%PlayTimeSec% 再生時間(秒単位) TotalTime ファイルの総演奏時間
(秒単位まで表示)
%ListCount% プレイリストの登録数 ListTotalCount
%ListCurrent% プレイリストの現在位置 ListCurrentIndex
%ListPlayed% プレイリストの
再生済み数
ListPlayed
%ListPlayTime% プレイリストの
合計演奏時間

ListTotalTime
ListTotalTimeと違い、
ミリ秒まで表示する
%ListPlayTimeSec% プレイリストの
合計演奏時間(秒単位)
ListTotalTime プレイリストの合計演奏時間
(秒単位まで表示)
%ListNumber% プレイリスト上での番号 ListNumber
%FileType% ファイルの種類 CodecString
%Bitrate% ビットレート Bitrate
%Bits% ビット深度 BitDepth
%Samplerate% サンプリングレート Samplerate
%Mode% ステレオモード ChannelMode
%VBR% CBR/VBR BitrateMode
%% % 記号 半角の「%」を
そのまま表示します。

特殊記号

特殊記号 書式名【※1】 備考
%# 識別子との関連付けをリセット %# を挿入した部分の前後で文字列を区切ります。
%< 直前の識別子と関連付け %< を挿入した部分の前後で文字列を区切ります。
%< の記号が挿入された部分の直前の文字列は、
その文字列の直前にある識別子が空でないときだけ
(表示されているときだけ)表示されます。
%> 直後の識別子と関連付け %> を挿入した部分の前後で文字列を区切ります。
%> の記号が挿入された部分の直前の文字列は、
この %> 記号の直後の識別子が空でないときだけ
(表示されているときだけ)表示されます。
※1 「表示」→「フェイス」→「タイトル文字列の表示設定」の右端にある
    識別子・特殊記号を自動入力する「挿入」ボタンで出てくるサブメニューでの項目名です。
※2 %OutFilename%は、uLilith本体の「ファイルの変換」機能の設定で使用する識別子なので、
    フェイス上では使用できません。
    (uLilith本体の「ファイルの変換」で「External Process」(外部のコマンドラインエンコーダを利用する設定)を
      利用する場合で、コマンドラインオプションを設定するときに使用される識別子です。)
    タイトル文字列の書式は、TitleStringFormatedStringTypeで利用する
    フェイス上の文字列表示だけでなく、前述のとおり「ファイルの変換」機能の設定画面や
    ファイル変換時の出力ファイル名の設定、
    タスクトレイアイコンでの「ポップアップ曲名お知らせ」などの機能でも使用される書式なので、
    %OutFilename%のようなフェイス上では使用できない識別子も含まれています。


タイトル文字列の書式の基本的な仕組み

識別子は、フェイス上ではそれぞれの識別子に対応する情報に置き換わって表示されます。
特殊記号(%#%<%>)はフェイス上では表示されません。
(半角の%を表示したい場合は、%%と記述してください。)
文字列(識別子でも特殊記号でもない普通の単語・文章・記号。半角スペースも含む)は、
そのまま表示されます。

文字列の直後に特殊記号を記述することで文字列を区切ります。
特殊記号によって、隣接する識別子が空(※)かどうかで
文字列の表示・非表示を制御することも出来ます。(詳しくは下の項目で説明しています)
【※】タグ情報を示す識別子で、タグ未入力などで「表示すべき情報がない」状態のこと

識別子か特殊記号で区切られた部分が文字列のひとかたまりになります。
Artist : %>%Artist% - %<Title : %>%Title%
例えば、このような書式の場合
  「Artist : 」%>%Artist%「 - 」%<「Title : 」%>%Title%
と分けられ、
タグのアーティストが『アーティスト1』
タグのタイトル(曲名)が『タイトル2』と入力されているファイルを再生すると
Artist : アーティスト1 - Title : タイトル2
のように表示されます。


特殊記号による文字列の表示制御

文字列の直後に記述した特殊記号によって、
文字列の前後にある識別子が空かどうかに連動して
文字列の表示・非表示を制御することができます。

直後の識別子と関連付け - 「%>」
%>は文字列を区切り、その文字列の直後の識別子が表示されているかどうかで
文字列の表示・非表示を決定します。
Artist : %>%Artist%
  「Artist : 」%>%Artist%
%>をつけた文字列は、文字列の(後の%>の)直後の識別子が空でないときだけ表示されます。
上の例の場合、%Artist%(タグのアーティスト)が空の場合「Artist : 」も表示されません。

直前の識別子と関連付け - 「%<」
%<は文字列を区切り、その文字列の直前の識別子が表示されているかどうかで
文字列の表示・非表示を決定します。
%Artist% - %<
  %Artist%「 - 」%<
%<をつけた文字列は、文字列の直前の識別子が空でないときだけ表示されます。
上の例の場合、%Artist%(タグのアーティスト)が空の場合「 - 」も表示されません。

識別子との関連付けをリセット - 「%#」
%#は文字列を区切る特殊記号です。
%<%>による前後の識別子との関連付けをリセットする効果もあります。
%#が挿入された部分より「前の文字列」には、
「その後の文字列」の直後にある%<%>の効果は無効になります。
再生中 : %#Album : %>%Album%に収録されている%<Title : %>%Title%
  「再生中 : 」%#「Album : 」%>%Album%「に収録されている」%<「Title : 」%>%Title%
と分かれていると考えてください。

この場合、「Album : 」は%Album%(タグのアルバム)が空の場合には表示されませんが、
%#より前の「再生中 : 」は「Album : 」とは別のかたまりになるので
「Album : 」の%>の処理の影響を受けず、%Album%が空かどうかに関係なく表示されます。

例えば、
タグのアルバムが『アルバム3』
タグのタイトル(曲名)が『タイトル4』と入力されているファイルを再生すると
%Album%%Title%両方に内容があるとき)
再生中 : Album : アルバム3に収録されているTitle : タイトル4
となりますが、

タグのアルバムは未入力、
タグのタイトル(曲名)が『タイトル5』と入力されているファイルを再生すると
%Album%が空・%Title%にのみ内容があるとき)
再生中 : Title : タイトル5
になります。
最終更新:2013年02月07日 09:58