[3] 
[DFN[[CODE[ScriptLangTag]]]]
は、
[[フォント]]に関連付けられた特定の[[言語][自然言語]]や[[用字系]]を表すものです。
[SRC[>>1]]

[4] 
[[IETF言語タグ]]に非常によく似ており、 
[[IETF言語タグ]]の規定をほぼ参照する形で定義されていますが、
[[フォント]]用に使うものということで、
[[言語]]よりも[[用字系]]に焦点が当てられています。


* 仕様書

[REFS[
- [1] [CITE@ja-jp[[[meta]] — Meta table (OpenType 1.9) - Typography | Microsoft Learn]], [[PeterCon]], [TIME[2022-12-02T14:00:26.000Z]] <https://learn.microsoft.com/ja-jp/typography/opentype/spec/meta#scriptlangtag-values>
]REFS]

* 構文

[6] 
[CODE[ScriptLangTag]]
は、
省略可能な[[言語部分タグ]]、
1個の[[用字系部分タグ]]、
省略可能な[[地域部分タグ]]、
0個[[以上]]の[[異体部分タグ]]、
0個[[以上]]の[[拡張部分タグ]]、
省略可能な[[私用部分タグ]]を、
この順で
[CODE[-]]
で区切って並べたものです。
[SRC[>>1]]

[FIG(railroad)[ [7] [CODE[ScriptLangTag]]

= ?
== [[言語部分タグ]]
== [CODE[-]]
= [[用字系部分タグ]]
= ?
== [CODE[-]]
== [[地域部分タグ]]
= *
== [CODE[-]]
== [[異体部分タグ]]
= *
== [CODE[-]]
== [[拡張部分タグ]]
= ?
== [CODE[-]]
== [[私用部分タグ]]


]FIG]

[10] 
派生元の本来の[[IETF言語タグ]]とは違って[[用字系部分タグ]]が必須となっています。
これは[[言語]]が主対象の[[言語タグ]]と違って、
[[フォント]]で使う [CODE[ScriptLangTag]] では[[用字系]]に主に着目するためです。

;; [11] [[言語タグ]]には[[用字系抑制]]等の規定があって、
明示する必要がないならむしろ[[用字系部分タグ]]は省略するべきとされています。


[12] 
ほとんどの場合には[RUBYB[一般的][generic]]なタグを使うべきです。
[CODE[dlng]] や [CODE[slng]]
では、ほとんどの場合は[[用字系部分タグ]]だけで構成される値を使うことになります。
[SRC[>>1]]

[EG[
[14] 
[CODE[Cyrl]] は[[キリル文字]]を表します。
[CODE[sr-Cyrl]] は[[セルビア語]]用[[キリル文字]]を表します。
[SRC[>>1]]
]EG]

* 文脈

[2] 
[CODE[meta][meta (OpenType)]] [[表][OpenType表]]の
[CODE[dlng]]
や
[CODE[slng]]
の値として使います。
[SRC[>>1]]

* 処理

[8] 
仕様に[[適合]]しない値は無視します。 [SRC[>>1]]

[9] 
[[拡張部分タグ]]、[[私用部分タグ]]は無視できます。 [SRC[>>1]]

[13] 
実装は[[用字系部分タグ]]以外が含まれる値も認めなければなりませんが、
[[用字系部分タグ]]のみを解釈し、他を無視しても構いません。
[SRC[>>1]]

* 語彙

[15] 各[[部分タグ]]の項を参照。

[16] 
特別な値については[[用字系部分タグ]]を参照。

* 関連

[5] 
[[OpenType]] は他に[[用字系タグ]]や[[言語系タグ]]を規定しています。
[CODE[ScriptLangTag]] とは構文と[[語彙]]が違っていて、
対応付けは必ずしも容易ではありません。

[17] [[OpenTypeにおける言語]]参照。

* メモ

[18] 
[CITE@en[Allow ScriptLangTag values with implied script subtag · Issue #978 · MicrosoftDocs/typography-issues · GitHub]], [TIME[2024-05-25T06:05:18.000Z]] <https://github.com/MicrosoftDocs/typography-issues/issues/978>
