Un selector de fuentes simple y personalizable que permite a los usuarios obtener una vista previa, seleccionar y usar Google Fonts en su sitio web.
→ Demo
Este es el componente React para la biblioteca de seleccionadores de fuentes .

Para poder acceder a la API, necesitará generar una clave API de Google Fonts.
Instale el paquete font-picker-react con NPM:
npm install font-picker-react Agregue el componente FontPicker a su código React:
import React , { Component } from "react" ;
import FontPicker from "font-picker-react" ;
export default class ExampleComponent extends Component {
constructor ( props ) {
super ( props ) ;
this . state = {
activeFontFamily : "Open Sans" ,
} ;
}
render ( ) {
return (
< div >
< FontPicker
apiKey = "YOUR_API_KEY"
activeFontFamily = { this . state . activeFontFamily }
onChange = { ( nextFont ) =>
this . setState ( {
activeFontFamily : nextFont . family ,
} )
}
/>
< p className = "apply-font" > The font will be applied to this text. </ p >
</ div >
) ;
}
} Agregue la clase "apply-font" a todos los elementos JSX a los que desea aplicar la fuente seleccionada.
Cuando el usuario selecciona una fuente, se descargará automáticamente y se aplicará a todos los elementos con la clase "apply-font" .
Los siguientes accesorios se pueden pasar al componente FontPicker :
apiKey (requerido) : clave de API de GoogleactiveFontFamily : fuente que debe seleccionarse en el selector de fuentes y aplicarse al texto. Debe almacenarse en el estado del componente y actualizarse utilizando onChangeonChange : función que se ejecuta cuando el usuario cambia la fuente activa. Esta función debe actualizar activeFontFamily en el estado del componentepickerId : si tiene múltiples recolectores de fuentes en su sitio, debe darles ID únicos que deben proporcionarse como un accesorio y agregarse a los nombres de clase .apply-font . Ejemplo: if pickerId="main" , use className="apply-font-main"families : si solo aparecen fuentes específicas en la lista, especifique sus nombres en una matriz. Valor predeterminado: todas las familias de fuentescategories : matriz de categorías de fuentes para incluir en la lista. Valores posibles: "sans-serif", "serif", "display", "handwriting", "monospace" . Valor predeterminado: todas las categoríasscripts : matriz de scripts que deben incluir las fuentes y que se descargarán en la selección de fuentes. Predeterminado: ["latin"] . Ejemplo: ["latin", "greek", "hebrew"] (ver todos los valores posibles)variants : matriz de variantes que deben incluir las fuentes y que se descargarán en la selección de fuentes. Predeterminado: ["regular"] . Ejemplo: ["regular", "italic", "700", "700italic"] (ver todos los valores posibles)filter : función que debe evaluar como true para que una fuente se incluya en la lista. Predeterminado: font => true . Ejemplo: if font => font.family.toLowerCase().startsWith("m") , solo las fuentes cuyos nombres comienzan con "m" estarán en la listalimit : número máximo de fuentes para mostrar en la lista (se omitirán las fuentes menos populares). Valor predeterminado: 50sort : Atributo de clasificación para la lista de fuentes. Valores posibles: "alphabet", "popularity" . Valor predeterminado: "alphabet" Actualmente, solo los accesorios activeFontFamily , onChange y sort son reactivos.
Requisitos: node.js, hilo
git clone REPO_URLyarnyarn startlocalhost:3000¡Las sugerencias y las contribuciones son siempre bienvenidas! Discuta los cambios más grandes a través del tema antes de enviar una solicitud de extracción.