プロジェクトにいくつかのカスタムフォントを含めようとしていますが、成功しません。
注:angular-cliを使用しています:[email protected]
フォントをフォルダーに入れます
src/assets/fonts/Roboto-Regular.tff
src/styles.css
を追加します
@ font-face {font-family: "Roboto-Regular"; src:url( "./ assets/fonts/Roboto-Regular.tff"); }
コンポーネントで使用します.scss
font-family: "ロボトレギュラー";
404エラーが表示されます:
モジュール "./assets/fonts/Roboto-Regular.tff" client?93b6:80 ./~/css-loader?sourcemap!./~/postcss-loader!./src/styles.cssモジュールが見つかりません:エラー: './assets/fonts/Roboto-Regular.tff'を解決できません 'D:\ Work\Blah\angular\BlahFrontEnd\src'は './assets/fonts/Roboto-Regular.tff'を解決します説明ファイルを使用したD:\ Work\Blah\angular\BlahFrontEnd\src ':D:\ Work\Blah\angular\BlahFrontEnd\package.json(相対パス:./src)フィールド「browser」には有効なエイリアスが含まれていません記述ファイルを使用した後の構成:D:\ Work\Blah\angular\BlahFrontEnd\package.json(相対パス:./src)記述ファイルを使用:D:\ Work\Blah\angular\BlahFrontEnd\package.json(相対パス: ./src/assets/fonts/Roboto-Regular.tff)ディレクトリとして:D:\ Work\Blah\angular\BlahFrontEnd\src\assets\fonts\Roboto-Regular.tffが存在しない拡張子「フィールド」が存在しないtには有効なエイリアス構成が含まれていますD:\ Work\Blah\angular\BlahFrontEnd\src\assets\fonts\Roboto-Regular.tffは存在しません.tsフィールド「browser」はco有効なエイリアス設定を取得しますD:\ Work\Blah\angular\BlahFrontEnd\src\assets\fonts\Roboto-Regular.tff.tsは存在しません.jsフィールド「ブラウザ」には有効なエイリアス設定が含まれていませんD:\ Work\Blah\angular\BlahFrontEnd\src\assets\fonts\Roboto-Regular.tff.jsは存在しません[D:\ Work\Blah\angular\BlahFrontEnd\src\assets\fonts\Roboto-Regular.tff] [ D:\ Work\Blah\angular\BlahFrontEnd\src\assets\fonts\Roboto-Regular.tff] [D:\ Work\Blah\angular\BlahFrontEnd\src\assets\fonts\Roboto-Regular.tff.ts] [ D:\ Work\Blah\angular\BlahFrontEnd\src\assets\fonts\Roboto-Regular.tff.js] @ ./~/css-loader?sourcemap!./~/postcss-loader!./src/styles。 css 6:793-837 @ ./src/styles.css @ multiスタイル
app.component.scss
にフォントフェースの定義を追加すると、404エラーも発生します
jquery.js:2 GET http:// localhost:4200/assets/fonts/Roboto-Regular.tff 404
Roboto-Regular.tffフォントを含める方法はありますか?
宜しくお願いします
検索してここに到着した人々のために:
Npmでインストール:
npm install roboto-fontface --save
.angular-cli.json
(apps[0].styles
)のスタイルに追加:
"styles": [
"styles.css",
"../node_modules/roboto-fontface/css/roboto/roboto-fontface.css"
],
それで全部です!
編集:Angular 6以降、このファイルはangular.json
ではなくangular-cli.json
と呼ばれます。フォントの追加は以前と同じように機能します。
https://fonts.google.com のgooglefont URLを使用してみましたか?
Styles.cssで:
@import url('https://fonts.googleapis.com/css?family=Roboto');
次に、styles.cssまたは必要な場所でfont-familyを使用します。
body, html {
font-family: 'Roboto';
}
私は自分のプロジェクトでこれを使用していますが、うまく機能しています。
SCSSを使用する場合:
インストールroboto-fontface
npm install roboto-fontface --save
Styles.scssファイルにインポートします
@import '~roboto-fontface/css/roboto/roboto-fontface.css';
body {
font-family: Roboto, Helvetica, Arial, sans-serif;
}
あなたがしたことは正しいですが、小さなエラーがあります:
@font-face { font-family: "Roboto-Regular"; src: url("./assets/fonts/Roboto-Regular.tff"); }
tff
の代わりにttf
を指定しました
これを試して :
@font-face { font-family: "Roboto-Regular"; src: url("./assets/fonts/Roboto-Regular.ttf"); }
これはangular 2,4,5,6,7などでローカルにGoogleフォントを使用する最良の方法です、最初にGoogle Fontをダウンロードし、これをアセットフォルダー内で使用して使用しますあなたの要件によるものです。
Angular.jsonでは、src/assetsでこれを呼び出します
"assets": [
"src/assets"
],
Cssファイルで、このfont-faceを上部に追加します
@font-face {
font-family: 'Roboto';
src: url(/assets/Roboto/Roboto-Regular.ttf) format("truetype");
font-weight: 400;
}
最後に次のように要件に従って使用します
body{
font-family: 'Roboto', sans-serif;
}