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


249

Webを検索すると、フォントの適切なMIMEタイプが何であるかについてさまざまな提案が山積みに見つかりましたが、次のようなChromeの警告が表示されないMIMEタイプはまだ試していません。

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

フォントはOTFです。

これまでに次のMIMEタイプを試しました

  • font / otf
  • application / font-otf
  • アプリケーション/フォント
  • アプリケーション/ otf
  • アプリケーション/オクテットストリーム
  • application / x-font-otf
  • application / x-font-TrueType(私はそれがtruetypeではないことを知っていますが、あるソースはこれをOTFで引用しています)

3
これのヘッダーを実際にどのように記述しますか?どうすればいいのかよくわかりません。あなたが与えることができるどんな助けのための乾杯。
Josh Smith、

1
@Josh:コードを介してフォントを提供している場合、「content-type」ヘッダーを「font / opentype」に設定する必要があります(私の質問のようにOTFを使用している場合)が、単に物理フォントファイルを指す場合、WebサーバーでMIMEタイプを設定する方が簡単な場合があります。使用しているWebサーバーがわからないので、サーバー+ MIMEタイプをグーグル検索するか、問題について説明する新しい質問をSOで開始します。
David Hedlund、

2
タイトルが間違っています。それは「Chromeで「リソースとして解釈されるリソース」の警告を沈黙させるにはどうすればよいのか」
djsadinoff

2
@djs:承知しました!コンソールにログメッセージとエラーをリストし、警告はリストしないことをChromeに記憶させる方法を見つけられたら、そもそもこの質問をしなかった可能性がかなりあります。
David Hedlund、2011年

Chromeは、私たちが要求したことを実行していることを警告しています。.BMPファイルで@ font-faceを使用している場合、グリフに使用するビットマップを正常に把握すると警告が表示されます!
カーディフスペースマン

回答:


137

「font / opentype」を使用してみてください。


51
ただし、これは違法なMIMEタイプです。公式のMIMEタイプには「font /」がありません。より良いMIMEタイプは、「application / x-font-opentype」または「application / octet-stream」です。最初は基本的に「この名前の未登録の
MIMEタイプ

Chrome 16では動作しませんでした。動作したのは、application / vnd.oasis.opendocument.formula-templateです。
jayarjo 2012年

16
現在の勝者は次のようです:application / x-font-woff-お役に立てば幸いです!
2012

7
@busticatedこれはapplication / font-woffに変更されました。w3.org/ TR / WOFF /#appendix
Holger


210

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タイプ)に関する最初のドキュメントをここで管理しているInternet Engineering Task Forceによると、http//tools.ietf.org/html/rfc2045#section-5 ...詳細に述べています。

" サポートされているタイプのより大きなセットへの追加は、通常、これらの初期タイプの新しいサブタイプを作成することによって達成できると予想されます。将来、より多くのトップレベルタイプは、この標準への標準化トラック拡張によってのみ定義される可能性があります別のトップレベルのタイプが何らかの理由で使用する場合、それはその非標準状態を示すために、そして将来の正式名称との競合を避けるために、「X-」で始まる名前を与えられなければなりません。

現状では、標準が作成され受け入れられるにつれて、追加のMIMEタイプが追加されるため、vnd.ms-fontobjectなどのベンダー固有のMIMEタイプの例が表示されます。

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

2015年2月26日の更新: WOFF2は、提案されたMIMEタイプでW3Cエディターズドラフトになりました。最近の進捗スケジュールに従って、来年(おそらく2016年末まで)にIANAに提出する必要があります。SFNTと同様に、Google Web Fontsのバックボーンテーブルリファレンスで使用されているスケーラブル/スプラインコンテナフォント形式で、sfntly javaライブラリがあり、IANAで既にMIMEタイプとして登録されており、個々のニーズに応じてこのリストに追加できます。

UPDATE 2017年10月4日: WOFF2形式の進行状況をここで追跡できます。最新のブラウザーの大部分がこの形式を正常にサポートしています。また、IETFの「フォント」トップレベルメディアタイプリクエストフォーコメント(RFC)トラッカードキュメントに従って、承認のために提案された最新のフォントタイプのセットを追跡できます。


書体を適切な順序で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

良いもの、ありがとう。.woffでエラーメッセージが表示され、.htaccessファイルで修正されました。私が使用しましたAddType application/x-font-woff
ダニーイングランド人

application / x-font-opentypeとapplication / x-font-ttfはLinux Gnome Shellで完全に動作します
Schmoove

1
ttf、otf、woff2は古くなっています。stackoverflow.com/a/20723357/1356047を
ジョナスベルリン

126

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

font / opentypeは警告を沈黙させるかもしれませんが、それはそれを「正しい」ことにするわけではありません。

間違いなく、たとえば「application / x-opentype」を使用して作成する方がよいでしょう。少なくとも「application」は登録済みコンテンツタイプですが、「font」はそうではありません。

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

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


2
面白い。これを裏付ける参考資料はありますか?
Kzqai、2011年

18
MIMEタイプがありません:「注:TrueType、OpenType、およびWOFFフォントには定義済みのMIMEタイプがないため、指定されたファイルのMIMEタイプは考慮されません。」developer.mozilla.org/en/css/@font-face 。、新しいトップレベルのMIMEタイプを構成する代わりに、x軸は使用しないでください:tools.ietf.org/html/rfc2045#section-5 - 3分編集前djsadinoff
djsadinoff

@djsadinoff IANAがIETFに取って代わると思います。IETFはIANAドラフトを提出し、IANAはwoffがMIMEタイプであると報告しているため、IETFはその限られたリストでオーバーライドされます。
マイクコルメンディ2014年

@MikeKormendy、私はあなたのコメントを理解していませんが、WOFFのみに対応している私の回答の以前のバージョンを参照している可能性があります。私は、元を復元しました
djsadinoff

@djsadinoff奇妙なことに、スタック交換は「3分前」にコメントしたと言った。
マイクコルメンディ2014年

85

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

IANAによってリストされているフォントタイプは次のとおりです。

その他の非標準フォント形式はそのまま残されます。


[古い元の投稿]

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

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

上記のすべてをMIMEタイプに変更する動きがあることに注意してくださいfont/XXX。WOFFv2の提案でW3Cが支持しています。これは、フォント最上位タイプの下でインターネット技術特別調査委員会(IETF)によって追跡されており、2017年2月にRFCステータス(RFC 8081を参照)が承認されたため、まだすべて変更される可能性があります。

Webサーバーについての話題ですが、HTTP応答は&をgzip除いて上記のすべてのフォント形式を圧縮(または圧縮)する可能性があることに言及しておく価値があります。.woff.woff2

私は、より言う(のFantom)シーツを使用してWebフォントのためのMIMEタイプ


2
重複した投稿はSOで自動検出され、両方の投稿が削除されるリスクがあります。公開する有用な情報がある場合は、独自の質問をして回答することを検討してください。
ボロディン

わかった!捕まった!ええ、私は怠惰でした。:/私は他の回答を更新しましたので、関連する質問により関連します。それでもこのページには適していると思います。
Steve Eynon

評価すべき膨大な量の疑わしい答えがあります。私はマークダウンしたものについてコメントするように心がけていますが、ほとんどの場合、あなたの答えは消えてしまいます。話題性を保つようにしてください。
ボロディン

@SteveEynon:PrestoベースのOperaは、画像のMIMEタイプで提供されるꜱᴠɢフォントをレンダリングしません。
user2284570

12

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


今年2月(2017年)に、W3CはStandards Track RFC 8081:フォントファイルの適切なメディアタイプを大幅に簡略化する「フォント」トップレベルメディアタイプを公開しました。

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

これは非常に読みやすいドキュメントであり、メディアタイプとサブタイプの混乱を招く原因となった歴史的背景(「フォントのフォーマットの登録」の欠如)について説明しています。ダウンロード可能なWebフォントの人気が(比較的)最近高まっているため、W3Cは「直感的なトップレベルフォントタイプ」の必要性を認識しました。彼らは何を思い付いたことはあります... font

したがって、IANAはその後、メディアタイプの公式リストfontを、現在認識しているメディアタイプとそのすべてのサブタイプで更新しました。

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

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


2
アンソニー、これは私の投稿に加えて別の素晴らしいリソースです。これをここに共有してくれてありがとう!
マイクコルメンディ2017年


6

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オクテットストリーム警告を排除します。

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


6

IANAの公式リストを調べたところです。MIME標準には「フォント」タイプがないため、ここでの「フォント/ 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

2013年3月以降IANA.ORGは.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)

もっと見る...


2

以下は、eBookスペースで使用できます。

application/vnd.ms-opentype

それはウェブでも同じだと思います。




1

多分これは誰かを助けるでしょう。IIS 7 .ttfでは既に既知のMIMEタイプであることがわかりました。次のように構成されています。

application/octet-stream

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

乾杯、マイケル


1
application/octet-stream「既知のタイプ」ではなく、「一般的なバイトの束」です。:)ブラウザは、このタイプが提供されることについて不平を言っています。
cHao 2013年

-1

Chromeからのこの警告を止める1つの方法は、Chromeを更新してから、MIMEタイプが次のいずれかであることを確認することです。

 "font/ttf"
 "font/opentype"
 "application/font-woff"
 "application/x-font-type1"
 "application/x-font-ttf"
 "application/x-truetype-font"

このリストは、webkit.orgのBug 111418にあるパッチごとに記載されています

同じパッチは、メッセージを「警告」から「ログ」に降格するため、Chromeを2013年3月以降のバージョンにアップグレードするだけで、黄色の三角形がなくなります。

問題はChromeの警告を止めることに関するものであり、人々は何らかの理由で古いバージョンのChromeを保持している可能性があるため、これは追加する価値があると考えました。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.