---
title: "Fonts & Colors"
output: rmarkdown::html_vignette
vignette: >
  %\VignetteIndexEntry{Fonts & Colors}
  %\VignetteEngine{knitr::rmarkdown}
  %\VignetteEncoding{UTF-8}
---

```{r, include = FALSE}
knitr::opts_chunk$set(
  collapse = TRUE,
  warning = FALSE, 
  message = FALSE,
  comment = "#>"
)
```

# Fonts

__NOTE__: From `v1.3.1` onward, the Google Fonts (`Roboto Condensed`, `Titillium Web`, `Chelsea Market`, and `Cinzel`) have been removed from the package as the files were taking up a lot of space and those fonts in particular can be easily downloaded via Google Fonts by users themselves. The helper functions to import these fonts have also been removed from the package.

The difficulty with a lot of the fonts used by TV shows in their logos and other paraphernalia is that they are made by font foundries and therefore can be rather expensive (for a regular person like you or me) to purchase. So I endeavored to find FREE fonts to use that were somewhat similar to the real ones used by the shows from resources like `Google Fonts`. In the documentation you can find the __actual__ fonts used by the TV shows if you are so inclined to buy them (some are just my best guesses though)! In some cases there were fan-made fonts such as "Some Time Later" for Spongebob or "Akbar" for The Simpsons that I included with the package. 

Instead of dealing with `extrafont` yourself, I re-purposed the `import_*()` functions from the `hrbrthemes` package so you can import the included fonts very easily. Do note that you still might need to install the fonts directly on your computer from the `.ttf` files found in `inst/fonts`. When you're done running the functions and installing the `.ttf` files on your computer, load the `extrafont` library and then run `loadfonts()`. If you're having problems check out the documentation on `extrafont`'s [Github repo](https://github.com/wch/extrafont/) or on [CRAN](https://CRAN.R-project.org/package=extrafont/).

The help files for each function tells you the recommended font names in case you forget! Besides the really custom stuff like for "The Simpsons", "Rick & Morty", and "SpongeBob", font preferences are really up to you.

```{r, eval=FALSE}
library(tvthemes)

import_simpsons()         ## "Akbar" font
import_avatar()           ## "Slayer" font (formerly `theme_theLastAirbender()`)
import_rickAndMorty()     ## "Get Schwifty" font
import_spongeBob()        ## "Some Time Later" font
import_gravitationFalls() ## "Gravitation Falls" font for "Gravity Falls"

## install.packages("extrafont")
library(extrafont)
loadfonts() ## You need to do this at the beginning of a session.
```

# Colors

I gathered the colors/hex codes by looking at images online or re-watching some old episodes and then using various hex code websites and hex code extraction websites. The colors in some of these palettes may still change from feedback and further experimentation.

You can check out all the colors for each palette by running `scales::show_col(tvthemes:::name_of_palette)`. Some examples below:

```{r}
scales::show_col(tvthemes:::brooklyn99_palette$Dark)
scales::show_col(tvthemes:::gravityFalls_palette)
scales::show_col(tvthemes:::simpsons_palette)
scales::show_col(tvthemes:::stevenUniverse_palette$Peridot)
```
