Có nhiều khi việc sử dụng google fonts qua link của google làm ảnh hưởng tốc độ trang web của bạn, để tránh vấn đề này bạn có thể sử dụng cách upload các fonts đó lên host của chính bạn. Để làm thế bạn cần có các file font của font mà bạn muốn dùng. Một cách rất đơn giản và nhanh gọn để có các file font ấy là sử dụng node module google-fonts-offline

https://www.npmjs.com/package/google-fonts-offline

Học lập trình trực tuyến

Cách dùng

  • Cài đặt

Trước tiên bạn cần cài đặt Nodejs hoặc iojs trong máy.

Sau khi đã cài Nodejs, bạn cài module google-fonts-offline

npm install -g google-fonts-offline
  • Sử dụng
goofoffline "http://fonts.googleapis.com/css?family=Open+Sans"
goofoffline "http://fonts.googleapis.com/css?family=Lato:400,700,400italic,700italic"

Thư mục fonts sẽ tự động được tạo ra ở nơi bạn chạy dòng lệnh trên, khi bạn tải nhiều font liên tiếp, tất cả các font sẽ được import vào file fonts.css. Chỉ việc include file này vào HTML của bạn.

Học lập trình trực tuyến cơ bản đến nâng cao

Xử lý lỗi trên OSX

Trên hệ điều hành MacOS có thể khi chạy goofoffline bạn sẽ gặp lỗi sau

env: node\r: No such file or directory

Lỗi này xảy ra do nội dung file goofoffline có dòng #!/usr/bin/env node ở đầu và kí tự xuống dòng ở cuối là kí tự xuống dòng của Windows \r\n.

Để xử lý lỗi này, bạn vào thư mục

/usr/local/lib/node_modules/google-fonts-offline/bin/

và copy file goofoffline ra Desktop chẳng hạn. Mở terminal và cd tới thư mục bạn vừa copy file kia ra. Chạy dòng lệnh dưới đây để convert các kí tự '\r', '\n' sang kí tự Unix:

dos2unix goofoffline

Sau đó bạn copy đè file goofoffline vào thư mục

/usr/local/lib/node_modules/google-fonts-offline/bin/

(có thể xóa file cũ trong thư mục bin đi rồi copy file mới này vào).
Sau khi đã convert các kí tự xuống dòng sang kiểu Unix, bạn đã có thể chạy lệnh này bình thường.