Saya minta maaf jika ini adalah pertanyaan yang sangat sederhana, tapi bagaimana Anda menggunakan ikon material google tanpa
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
?
Saya ingin aplikasi saya dapat menampilkan ikon meskipun pengguna tidak memiliki koneksi internet
javascript
html
cordova
materialize
Luke Tan
sumber
sumber
Jawaban:
Metode 2. Panduan Pengembang Hosting Sendiri
Unduh rilis terbaru dari github (aset: file zip), unzip, dan salin folder iconfont, yang berisi file ikon desain material, ke dalam proyek lokal Anda - https://github.com/google/material-design-icons/ rilis
Anda hanya perlu menggunakan folder iconfont dari arsip: ini berisi font ikon dalam format yang berbeda (untuk dukungan beberapa browser) dan css boilerplate.
Paket NPM / Bower
Google secara resmi memiliki opsi ketergantungan Bower dan NPM - ikuti Panduan Ikon Material 1
Menggunakan bower :
bower install material-design-icons --save
Menggunakan NPM :
npm install material-design-icons --save
Ikon Material : Atau lihat font ikon desain Material dan kerangka kerja CSS untuk menghosting ikon sendiri, dari https://marella.me/material-icons/ @ marella
Catatan
sumber
iconfont
folder dari seluruh arsip.Saya membangun untuk Angular 4/5 dan sering bekerja secara offline dan berikut ini yang berhasil untuk saya. Pertama instal NPM:
Kemudian tambahkan berikut ini ke styles.css:
sumber
Pendekatan atas tidak berhasil untuk saya. Saya mengunduh file dari github, tetapi browser tidak memuat font.
Yang saya lakukan adalah membuka tautan sumber ikon material:
https://fonts.googleapis.com/icon?family=Material+Icons
dan saya melihat markup ini:
Saya membuka tautan url font woff https://fonts.gstatic.com/s/materialicons/v22/2fcrYFNaTjcS6g4U3t-Y5ZjZjT5FdEJ140U2DJYC3mY.woff2
dan unduh file woff2.
Kemudian saya mengganti jalur file woff2 dengan yang baru di material-icons.css
Itu membuat segalanya bekerja untuk saya.
sumber
Jika Anda menggunakan proyek webpack, setelah
kamu hanya perlu
sumber
import materialIcons from 'material-design-icons/iconfont/material-icons.css'
. Kami menambahkan baris ini ke mana? app.js atau di tempat lain. Saya menggunakan framework7 dengan Vue dan saya mencoba. Itu tidak berhasil untuk saya.Ini mungkin Solusi yang mudah
Dapatkan repositori ini yang merupakan cabang dari repositori asli yang diterbitkan Google.
Instal dengan bower atau npm
Impor File css di Halaman HTML Anda
atau
Tes: Tambahkan ikon di dalam tag tubuh File HTML Anda
Jika Anda melihat ikon wajah, Anda baik-baik saja.
Jika tidak berhasil, coba tambahkan ini
..
sebagai awalan kenode_modules
jalur:sumber
mat-icon
komponen standar Angular . Dengan demikian transisi berjalan mulus.@import"../node_modules/material-design-icons-iconfont/dist/material-design-icons.css";
Kemudian ikon yang dihosting secara lokal langsung hidupResep saya memiliki tiga langkah:
untuk memasang paket material-design-icons
untuk mengimpor file material-icons.css ke dalam file / proyek .less atau .scss
untuk memasukkan kode yang direkomendasikan ke dalam file / proyek reactjs .js
sumber
Gunakan material-design-icons-iconfont
Saya telah membuat material-design-icons-iconfont untuk mengatasi masalah-masalah utama ini:
npm install
- semua file svg / xml / ... yang tidak relevan telah dihapusGoogle Fonts
CDNInstal melalui
npm
Itu tergantung pada bagaimana Anda mengemas aplikasi web Anda (
webpack
/gulp
/bower
/ ...), Anda harus mengimpor.css
/.scss
file (dan mungkin mengubah jalur font relatif)Impor Menggunakan SCSS
Impor di salah satu file sass Anda
Nanti, rujuk ikon yang Anda inginkan
<i class="material-icons">
+ icon-id +</i>
Halaman demo
Muncul dengan halaman demo ringan untuk membantu pencarian dan copy-paste font
sumber
Saya telah mencoba mengumpulkan semua yang perlu dilakukan untuk ikon hosting mandiri dalam jawaban saya. Anda perlu mengikuti 4 langkah sederhana ini.
Buka folder iconfont dari repositori materialize
link- https://github.com/google/material-design-icons/tree/master/iconfont
Unduh tiga file ikon ini ->
MaterialIcons-Regular.woff2 - format ('woff2')
MaterialIcons-Regular.woff - format ('woff')
MaterialIcons-Regular.ttf - format ('truetype');
Catatan- Setelah Mengunduh Anda dapat mengubah namanya menjadi apa pun yang Anda suka.
Sekarang, buka CSS Anda dan tambahkan kode ini
Catatan: Alamat yang diberikan di src: url (...) harus berkaitan dengan 'File CSS' dan bukan file index.html. Misalnya bisa menjadi src: url (../ myicons / MaterialIcons-Regular.woff2)
Klik di sini untuk melihat semua ikon yang dapat digunakan.
sumber
Setelah Anda selesai
npm install material-design-icons
, tambahkan ini di file CSS utama Anda:sumber
Dengan cli sudut
atau
material-design-icons-iconfont adalah versi terbaru dari ikon. ikon-material-sudut tidak diperbarui untuk waktu yang lama
Tunggu tunggu, tunggu instal selesai lalu tambahkan ke angular.json -> proyek -> arsitek -> gaya
atau jika Anda menginstal material-desing-icons-iconfont lalu
sumber
Pembaruan 2019 di sini:
Untuk menghosting sendiri ikon material Anda, yang Reguler, Bulat, Tajam, semua varian. Dapatkan mereka dari repo ini: https://github.com/petergng/material-icon-font
Untuk beberapa alasan saya tidak tahu mengapa font ini tidak dapat diakses dengan mudah dari repositori Google.
Tapi ini dia.
Setelah mengunduh paket, buka folder bin dan Anda akan melihat empat varian. Tentu saja, terserah Anda untuk menggunakan yang mana saja.
Untuk menggunakannya, buat file css dan
The
url
akan link ke mana ikon yang terletak di proyek Anda.Ini akan membuat kedua kelas
.material-icons-outlined,
dan.material-icons
kelas menggunakan default yang sama. Jika Anda ingin menggunakan.material-icons-sharp
, tambahkan saja ke dua nama kelas.Sekali lagi, untuk menggunakan lebih banyak varian, seperti Sharp, tambahkan saja bloknya seperti dua di atas.
Setelah selesai ... buka html Anda dan gunakan ikon yang baru dibuat.
sumber
Di http://materialize.com/icons.html informasi header gaya yang Anda sertakan di halaman, Anda dapat membuka Hyperlink yang sebenarnya dan membuat salinan yang dilokalkan untuk menggunakan ikon secara offline.
Begini caranya.NB: Anda akan mengunduh dua File di semua icon.css dan somefile.woff .
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
.Simpan halaman sebagai nama_filen apa pun.css. Default-nya adalah icon.css
src: local('Material Icons'), local('MaterialIcons-Regular'), url(https://fonts.gstatic.com/s/materialicons/v22/2fcrYFNaTjcS6g4U3t-Y5ZjZjT5FdEJ140U2DJYC3mY.woff2)
https://fonts.gstatic.com/s/materialicons/v22/2fcrYFNaTjcS6g4U3t-Y5ZjZjT5FdEJ140U2DJYC3mY.woff2
. Browser Anda akan mendownloadnya secara otomatis. Simpan di folder CSS Anda.Anda sekarang harus memiliki dua file icon.css dan 2fcrYFNa .... mY.wof22 , simpan keduanya di css Anda. Sekarang edit di lokasi css header Anda ke icon.css di direktori Anda. Pastikan file .woff2 selalu ada di folder yang sama dengan icon.css. Jangan ragu untuk mengedit nama file yang panjang.
sumber
Judul pertanyaan menanyakan bagaimana menjadi tuan rumah ikon material secara offline tetapi isi menjelaskan bahwa tujuannya adalah untuk menggunakan ikon material secara offline (penekanan saya) .
Menggunakan salinan file ikon material Anda sendiri adalah pendekatan / implementasi yang valid. Lain, bagi mereka yang bisa menggunakan pekerja layanan adalah membiarkan service worker yang menanganinya. Dengan begitu Anda tidak perlu repot mendapatkan salinannya dan selalu memperbaruinya.
Misalnya, buat pekerja layanan menggunakan Workbox , menggunakan pendekatan paling sederhana untuk menjalankan workbox-cli dan menerima default, lalu tambahkan teks berikut ke pekerja layanan yang dihasilkan:
Anda kemudian dapat memeriksa apakah itu di-cache di Chrome menggunakan F12> Aplikasi> Penyimpanan> IndexedDB dan mencari entri dengan googleapis di namanya.
sumber
Pada tahun 2020, pendekatan saya adalah menggunakan paket material-icons-font . Ini menyederhanakan penggunaan paket ikon-desain-material Google dan font-desain-ikon-ikon berbasis komunitas .
Instal paketnya.
npm install material-icons-font --save
Tambahkan jalur file CSS paket ke properti style file angular.json proyek Anda.
... "styles": [ "./node_modules/material-icons-font/material-icons-font.css" ], ...
Jika menggunakan SCSS, salin konten di bawah ke bagian atas file styles.scss Anda.
@import '~material-icons-font/sass/variables'; @import '~material-icons-font/sass/mixins'; $MaterialIcons_FontPath: "~material-icons-font/fonts"; @import '~material-icons-font/sass/main'; @import '~material-icons-font/sass/Regular';
Gunakan ikon di file HTML proyek Anda.
Ikon dari @ angular / material cenderung rusak saat dikembangkan secara offline. Menambahkan paket material-icons-font dalam hubungannya dengan @ angular / material memungkinkan Anda menggunakan tag saat mengembangkan secara offline.
sumber
Instal paket npm
Letakkan jalur file css ke file styles.css
sumber
Metode Kaloyan Stamatov adalah yang terbaik. Pertama, buka https://fonts.googleapis.com/icon?family=Material+Icons . dan salin file cssnya. kontennya terlihat seperti ini
Tempel sumber font ke browser untuk mengunduh file woff2 https://fonts.gstatic.com/s/materialicons/v37/flUhRq6tzZclQEJ-Vdg-IuiaDsNc.woff2 Kemudian ganti file di sumber aslinya. Anda dapat mengganti namanya jika Anda mau. Tidak perlu mengunduh file 60MB dari github. Sangat sederhana Kode saya terlihat seperti ini
sedangkan materialIcon.woff2 adalah file woff2 yang diunduh dan diganti.
sumber
dan
bekerja juga untuk saya dengan Angular Material 8
sumber
Menambahkan ini ke konfigurasi web dan kesalahannya hilang
sumber
Ngomong-ngomong, ada video yang tersedia di youtube dengan petunjuk langkah demi langkah.
https://youtu.be/7j6eOkhISzk
Inilah langkah-langkahnya. Unduh paket ikon mewujudkan dari https://github.com/google/material-design-icons/releases
Salin folder ikon-font dan ubah namanya menjadi ikon.
Buka file materialize.css dan perbarui jalur berikut:
Sebuah. dari url (MaterialIcons-Regular.eot) ke url (../ font / MaterialIcons-Regular.eot) b. dari format url (MaterialIcons-Regular.woff2) ('woff2') ke format url (../ font / MaterialIcons-Regular.woff2) ('woff2') c. dari format url (MaterialIcons-Regular.woff) ('woff') ke format url (../ font / MaterialIcons-Regular.woff) ('woff') d. dari format url (MaterialIcons-Regular.ttf) ('truetype') ke format url (../ font / MaterialIcons-Regular.ttf) ('truetype')
Semuanya akan bekerja seperti sulap!
sumber