innych odpowiedzi nie rozwiązałem mojego problemu (Windows 10)
Klucz do mojego systemu wa s pod numerem extrafont::loadfonts(device="win")
przedlibrary(ggplot2)
.
extrafont::loadfonts(device="win")
#extrafont::fonttable()
#extrafont::font_import("C:/Windows/Fonts/", pattern = "RobotoCondensed")
library(ggplot2)
częstym problemem z miejsc czcionki:
miałem zainstalowane czcionki z losowym folderze z extrafont::font_import()
wcześniej. Jako takie extrafont::fonttable()
odwołuje się do plików w moim katalogu C:\Windows\Fonts\
. Aby to naprawić, zresetowałem numer extrafonts::fonttable()
za pomocą install.packages("extrafontdb")
, aby wyczyścić odniesienie do czcionek w innym miejscu.
Edit dotyczące oszczędzania:
Głębiej w dół króliczej nory. Oszczędzanie było dodatkowym wyzwaniem. Aby uzyskać extrafont::loadfonts(device="pdf")
, musiałem się upewnić, że żadne czcionki w moim extrafont::fonttable()
nie mają identycznych nazw rodzinnych i statusu pogrubienia/kursywy. Zmodyfikowałem extrafont:::fonttable_file()
, aby rozwiązać duplikaty czcionek pogrubionych/kursyw w mojej rodzinie. Używając Roboto Condensed zmieniłem nazwę rodziny czcionek czcionek lekkich na "Roboto Condensed Light".
Zapisywanie z ggsave(device="pdf")
następnie pracował. Otwieranie plików w programie acrobat czcionki nie wyświetlały się poprawnie. Próbowałem osadzać czcionki za pomocą ghostscript, a także za pomocą urządzenia cairo_pdf. Najprostszym i najbardziej funkcjonalnym rozwiązaniem było otwarcie plików .pdf w Illustratorze (czcionki wyświetlają się dobrze) i natychmiast ponownie zapisać je ponownie jako .pdf.
Edycja 2 dotyczące oszczędzania:
Zapisywanie jako .eps był to jedyny sposób, aby zachować plik w obu Illustrator i Acrobat. Wynik jest doskonały. ggsave(g, file="Figure.eps", fonts=c("FONT FAMILIES USED", "Roboto Condensed", "Roboto Condensed Light"))
końcowy kod kreślenia:
Oto mój ostatni zestaw połączeń używam przed kreślenia. Komentarze to polecenia konfiguracyjne, które należy uruchomić tylko raz.
# Plotting
extrafont::loadfonts(device="pdf")
extrafont::loadfonts(device="postscript")
# extrafont::font_import("C:/Windows/Fonts/", pattern = "RobotoCondensed", prompt = F)
# extrafont::fonttable()
# C:/Program Files/R/R-3.3.1/library/extrafontdb/fontmap/ - Change lights to "Roboto Condensed Light"
# After ggsave(device="pdf") or ggsave(device="eps") open and resave the file in Illustrator
library(hrbrthemes)
library(ggplot2)
działa, jeśli wypróbujesz 'windowsFonts (Times = windowsFont (" TT Times New Roman "))' pierwszy? –
tak to robi. Dziękuję Ci. powinieneś opublikować to jako odpowiedź. Możesz to wyjaśnić?Czy muszę to robić we wszystkich skryptach, gdy chcę używać czcionek o innej czcionce? – Joschi
Jestem na Macu właśnie teraz, więc nie mogę naprawdę się bawić, ale [to] (https://groups.google.com/forum/?fromgroups=#!topic/ggplot2/781cT5yMqCg) może pomóc, ale głównie pomysł z tego jest, gdy już zainstalowałeś czcionki, których używałeś, aby R używać jawnie –