web-dev-qa-db-ja.com

フォントの適切なMIMEタイプ

ウェブを検索してみると、フォントの正しいMIMEタイプが何であるかについてさまざまな提案がありますが、次のようなChromeの警告を取り除くMIMEタイプはまだ試していません。

リソースはフォントとして解釈されますが、MIMEタイプfont/otfで転送されます

フォントはOTFです。

私はこれまでに次のMIMEタイプを試してみました

  • フォント/ otf
  • application/font-otf
  • アプリケーション/フォント
  • アプリケーション/ otf
  • アプリケーション/オクテットストリーム
  • application/x-font-otf
  • application/x-font-TrueType(これはTrueTypeではないことを知っていますが、ある情報源からOTFについて引用されています)
236
David Hedlund

"font/opentype"を使ってみてください。

128
spd

ApacheとIISサーバの両方で、MIMEタイプを設定できるフォントフォーマットがいくつかあります。 私は伝統的に次のような運を持っていました

svg   as "image/svg+xml"                  (W3C: August 2011)
ttf   as "application/x-font-ttf"         (IANA: March 2013)
      or "application/x-font-truetype"
otf   as "application/x-font-opentype"    (IANA: March 2013)
woff  as "application/font-woff"          (IANA: January 2013)
woff2 as "application/font-woff2"         (W3C W./E.Draft: May 2014/March 2016)
eot   as "application/vnd.ms-fontobject"  (IANA: December 2005)
sfnt  as "application/font-sfnt"          (IANA: March 2013) 

多目的インターネットメール拡張機能(MIMEタイプ)に関する最初の文書をここで保守しているインターネット技術特別調査委員会によると: http://tools.ietf.org/html/rfc2045#section-5 。 ..それは具体的に言う:

"サポートされている型の大規模なセットへの追加は、一般にこれらの初期型の新しいサブタイプを作成することで達成できると期待されています。将来、より多くの最上位型は標準によってのみ定義される可能性があります。他のトップレベルの型が何らかの理由で使用されることになっているならば、それがその非標準的な状態を示しそして将来の役人との潜在的な衝突を避けるために "X-"で始まる名前を与えられなければなりません。 name. "

規格が作成され、承認されるにつれて、そして将来的には追加のMIMEタイプが追加されるため、vnd.ms-fontobjectなどのベンダー固有のMIMEタイプの例が表示されます。

更新2013年8月16日:WOFFは 2013年1月3日にIANAに正式登録されました および Webkit 2013年3月5日に が更新され、最新バージョンでこの更新を提供しているブラウザは、古いx-font-woff宣言を持つサーバーのMIMEタイプに関する警告を発行し始めます。警告は煩わしいだけなので、すぐに承認済みのMIMEタイプに切り替えることをお勧めします。理想的な世界では、警告は時間内に解決します。

更新2015年2月26日:WOFF2は現在、提案されているmime-typeとともにW3C Editor's Draftに入っています。最新の進捗スケジュールに従って、来年(おそらく2016年末まで)にIANAに提出される予定です。同様にSFNT、スケーラブル/スプラインコンテナフォントフォーマットは Google Web FontsのバックボーンテーブルリファレンスでそれらのJavaライブラリ と共に使用され、すでに はIANAでMIMEタイプとして登録されています で、このリストに追加することもできますし、個人のニーズにもよります。

更新2017年10月4日:WOFF2形式 here の進行をたどることができます。最近のブラウザの大部分はそれをサポートしています。フォーマットは成功しました。同様に、私達は提案されたフォントの最新のセットに関して、コメント(RFC) tracker および document に対するIETFの「フォント」トップレベルメディアタイプ要求に従うことができます。承認タイプ.


あなたのCSSに正しい順番で書体を埋め込むことを望む人のために この記事 を訪れてください。しかし、もう一度、私は次の順番で運が良かった:

@font-face {
    font-family: 'my-web-font';
    src: url('webfont.eot');
    src: url('webfont.eot?#iefix') format('embedded-opentype'),
         url('webfont.woff2') format('woff2'),
         url('webfont.woff') format('woff'),
         url('webfont.ttf') format('truetype'),
         url('webfont.svg#webfont') format('svg');
    font-weight: normal;
    font-style: normal;
}

Subversionの自動プロパティの場合、これらは次のようにリストされます。

# Font formats
svg   = svn:mime-type=image/svg+xml
ttf   = svn:mime-type=application/x-font-ttf
otf   = svn:mime-type=application/x-font-opentype
woff  = svn:mime-type=application/font-woff
woff2 = svn:mime-type=application/font-woff2
eot   = svn:mime-type=application/vnd.ms-fontobject
sfnt  = svn:mime-type=application/font-sfnt
195
Mike Kormendy

クロムの警告を無視してください。 OTFフォントには標準のMIMEタイプはありません。

font/opentypeは警告を黙らせるかもしれません、しかしそれはそれをすることを「正しい」ことにしません。

おそらく、あなたはそれを作ることをお勧めします。少なくとも "application"は登録済みのコンテンツタイプですが、 "font"はそうではないためです。

更新:OTFは依然として問題ですが、2013年1月にWOFFはIANA MIMEタイプの application/font-woff を作成しました。

更新2:OTFはMIMEタイプを拡張しました: application/font-sfnt 2013年3月。このタイプは.ttfにも適用されます

123
djsadinoff

2017年2月から RFC 8081 はフォントのすべてのMIMEタイプを最上位のfontメディアタイプの下にグループ化します。私の最初の投稿からの古いMIMEタイプは現在非推奨としてリストされています。

IANAにリストされているフォントタイプ は現在:

他の非標準フォントフォーマットはそのままです。


[古い投稿]

WebフォントのMIMEタイプについてはWeb上でまだ多くの混乱があるので、有効な日付と、 IANA とW3Cへのサポートリンクを含めて、現在の回答を示したいと思いました。

Webフォントの公式MIMEタイプは次のとおりです。

W3CのWOFF v2の提案に裏付けられているように、上記すべてをMIMEタイプfont/XXXに変更する動きがあります。これはインターネットエンジニアリングタスクフォース(IETF)によって フォントトップレベルタイプ の下で追跡されていて、2017年2月にはRFCステータスとして承認されました( RFC 8081 を参照)。まだ変わります!

Webサーバーの話題ではあるが、HTTPレスポンスは既にかなり圧縮されている.woff.woff2を除く上記のすべてのフォントフォーマットをgzip(あるいは圧縮)するかもしれないことを言及する価値があります。

詳しくは (Fantom)BedSheetを使ったWebフォントのMIMEタイプ を参照してください。

65
Steve Eynon

コンピューティングにおける 2つの難しいこと のうちの1つの具体例として、この質問が最初に投稿されてからこの質問に対する答えがどのように変化したかを見るのは興味深いです。ありがたいことに、混乱に秩序をもたらした力が:


今年2月(2017)に、W3CはStandards TrackRFC 8081を発行しました。「フォント」トップレベルメディアフォントファイルに適したメディアタイプを大幅に簡略化するType

このメモは "フォント"トップレベルメディアタイプを登録して文書化するのに役立ち、その下にフォントの表現フォーマットのサブタイプを登録することができます。この文書は、すでに使用されているいくつかの既存のサブタイプの代表であり、別々の登録によって現在「アプリケーション」ツリーの下に登録されている、意図されたサブタイプのセットの登録アプリケーションとしても機能します。

これはかなり読みやすい文書であり、混乱したメディアの組み合わせを生み出した歴史的背景(「フォントのフォーマットの登録」の欠如)について説明しています。タイプとサブタイプ。ダウンロード可能なWebフォントの(比較的)最近の人気の高まりに伴い、W3Cは「直感的なトップレベルのフォントタイプ」の必要性を認識しました。彼らが思いついたのは… font です。

それに応じて、IANAはそれ以来彼らが現在認識しているfontメディアタイプとそのすべてのサブタイプでメディアタイプの正式なリスト を更新しました

collection  font/collection
otf     font/otf
sfnt    font/sfnt
ttf     font/ttf
woff    font/woff
woff2   font/woff2

これがこの質問が必要とする最後の答えであることを願っています。

9

私は IANAの公式リスト について調査しました。 MIME標準には 'font'タイプがないため、ここでの 'font/xxx'の答えは正しくありません。

RFCとIANAに基づくと、これは2013年5月の時点での現状のようです。

これら3つは公式で、IANAによって割り当てられています。

  • "image/svg + xml"としてのsvg
  • "application/font-woff"としてのwoff
  • "application/vnd.ms-fontobject"としてeot

これらは公式のものでも割り当てられたものでもないので、 'x-'構文を使わなければなりません:

  • "application/x-font-ttf"としてのttf
  • "application/x-font-opentype"としてのotf

Application/font-woffは、2013年1月から新しく正式に登場しただけかもしれません。そのため、 "application/x-font-woff"は、短期的にはより安全で互換性のあるものになるでしょう。

5
Aaron

Debian LinuxおよびOS X LeopardとSnow LeopardでテストされたApache 2.2 VirtualHostingおよびmod_mimeに関するFWIW:

VirtualHost設定がある場合は、少なくとも次のようにAddTypeディレクティブを使って次のように型を追加します。

....
   AddType font/opentype .otf
   AddType font/ttf .ttf
</VirtualHost>

Chrome Unstable/TrunkおよびSafari WebKit Nightlyに対してテストされたため、ttfとotfの両方のフォントタイプに対するMIMEオクテットストリームの警告が表示されなくなりました。

注:VirtualHostingを扱う場合、.htaccessは効果がありません。複数のサイト用に開発している場合はVirtualHosting開発を使用することになり、各構成にはこれらのAddType追加が必要になります。

5

2013年3月から IANA.ORG推奨 for。otf
application/font-sfnt

その他のフォント

.eot  ->  application/vnd.ms-fontobject (as from December 2005)
.otf  ->  application/font-sfnt         (as from March 2013)
.svg  ->  image/svg+xml                 (as from August 2011)
.ttf  ->  application/font-sfnt         (as from March 2013)
.woff ->  application/font-woff         (as from January 2013)

もっと見る を参照

4
Serge

これがNGINXソリューションです

ファイル

/usr/local/nginx/conf/mime.types

追加する

font/ttf                      ttf;
font/opentype                 otf;
application/font-woff         woff2;
application/font-woff         woff;
application/vnd.ms-fontobject eot;

削除する

application/octet-stream        eot;

Mike Fulcherに感謝します

http://drawingablank.me/blog/font-mime-types-in-nginx.html

4
BG Bruno
1
citrin

以下は電子書籍スペースで使用できます。

application/vnd.ms-opentype

Webでも同じだと思います。

1
Arktype

2017年2月現在、 RFC 8081 はfont/*メディアタイプを追加しており、それらも IANA Media Types リストに記載されています。 font/otfはこのリストにあります。

1
George Helyar

多分これは誰かを助けるでしょう。私はIIS 7 .ttfがすでに知られているMIMEタイプであることを見ました。それは以下のように構成されています。

application/octet-stream

だから私はちょうどすべてのCSSフォントタイプ(.oet.svg.ttf.woff)とIISにそれらを供給し始めたことを加えました。 Chrome開発ツールは、型の再解釈について不平を言うこともありません。

乾杯、マイケル

0
Michael Kennedy