Just a small elisp snippet to change font per buffer in emacs:
(defun my-buffer-face-mode-pick-font ()
"Pick a font family using Helm and apply it to the current buffer."
(interactive)
(let ((font (helm :sources (helm-build-sync-source "Font Family"
:candidates (sort (font-family-list) #'string<)
:action (lambda (candidate) candidate))
:buffer "*helm-font-picker*")))
(when font
(setq buffer-face-mode-face `(:family ,font))
(buffer-face-mode))))
https://stackoverflow.com/questions/20866169/change-the-font-of-current-buffer-in-emacs