Estoy tratando de obtener un icono de fa-home en un documento que estoy compilando usando pdflatex. Soy consciente de que fa-home solo funciona con XeLaTeX. De todos modos, ¿podría reproducir este ícono usando el dibujo de Tikz? Cualquier entrada será muy apreciada.
Comentarios
Responder
Tu gato toma el Versión SVG de Font Awesom copia el código de ha-home
(unicode: f015) en \fill svg={...};
escalando (y desplazando y ) utilizando la información de <font-face units-per-em="1792" ascent="1536" descent="-256" />
. Pon todo esto en una foto y úsalo así \tikz\pic{fa-home};
.
\documentclass{article} \usepackage{tikz} \usetikzlibrary{svg.path} \tikzset { fa-home/.pic = {\fill[scale=1em/1792] svg {M1408 544v-480q0 -26 -19 -45t-45 -19h-384v384h-256v-384h-384q-26 0 -45 19t-19 45v480q0 1 0.5 3t0.5 3l575 474l575 -474q1 -2 1 -6zM1631 613l-62 -74q-8 -9 -21 -11h-3q-13 0 -21 7l-692 577l-692 -577q-12 -8 -24 -7q-13 2 -21 11l-62 74q-8 10 -7 23.5t11 21.5 l719 599q32 26 76 26t76 -26l244 -204v195q0 14 9 23t23 9h192q14 0 23 -9t9 -23v-408l219 -182q10 -8 11 -21.5t-7 -23.5z};} } \begin{document} \foreach \size in {tiny,scriptsize, footnotesize, small, normalsize, large, Large, LARGE, huge, Huge} {{\csname\size\endcsname \size \ \tikz\pic{fa-home};}\par} \end{document}
El único problema es que cuando compila obtienes ! Dimension too large.
. Una posible solución es dividir todas las coordenadas entre 1792 y luego usarlas con simple scale=1em
. Aquí está el código final:
\documentclass{article} \usepackage{tikz} \usetikzlibrary{svg.path} \tikzset { fa-home/.pic = {\fill[scale=1em] svg {M0.786 0.304v-0.268q0.0 -0.015 -0.011 -0.025t-0.025 -0.011h-0.214v0.214h-0.143v-0.214h-0.214q-0.015 0.0 -0.025 0.011t-0.011 0.025v0.268q0.0 0.001 0.0 0.002t0.0 0.002l0.321 0.265l0.321 -0.265q0.001 -0.001 0.001 -0.003zM0.91 0.342l-0.035 -0.041q-0.004 -0.005 -0.012 -0.006h-0.002q-0.007 0.0 -0.012 0.004l-0.386 0.322l-0.386 -0.322q-0.007 -0.004 -0.013 -0.004q-0.007 0.001 -0.012 0.006l-0.035 0.041q-0.004 0.006 -0.004 0.013t0.006 0.012 l0.401 0.334q0.018 0.015 0.042 0.015t0.042 -0.015l0.136 -0.114v0.109q0.0 0.008 0.005 0.013t0.013 0.005h0.107q0.008 0.0 0.013 -0.005t0.005 -0.013v-0.228l0.122 -0.102q0.006 -0.004 0.006 -0.012t-0.004 -0.013z};} } \begin{document} \foreach \size in {tiny,scriptsize, footnotesize, small, normalsize, large, Large, LARGE, huge, Huge} { {\csname\size\endcsname \size \ \tikz\pic{fa-home};}\par } \end{document}
Si desea utilizar la información de descent="-256"
, puede cambiar por – 256 como este \fill[scale=1em/1792, yscale=-256]
y luego úselo con baseline
como este \tikz[baseline]\pic{fa-home};
(si usa el segundo código, debe reemplazar -256 por -256/1792 = 0.14)
Respuesta
Esquinas redondeadas (y parametrización de el ángulo del techo) a la izquierda como ejercicio …
\documentclass[varwidth,border=5]{standalone} \usepackage{tikz} \tikzset{pics/home/.style={ code={ % \fill [x=1ex/6, y=1ex/6] (-1, 3) -- (-1, 0) -- (-5, 0) -- (-5, 4) -- (0,4+5*tan 35) -- ( 5, 4) -- ( 5, 0) -- ( 1, 0) -- ( 1, 3) -- cycle (-6, 4) -- (0, 4+6*tan 35) -- ( 6, 4) -- (6+sin 35, 4+cos 35) -- ( 5, 4+1*tan 35+sec 35) -- ( 5, 4+5*tan 35+sec 35) -- ( 3, 4+5*tan 35+sec 35) -- ( 3, 4+3*tan 35+sec 35) -- ( 0, 4+6*tan 35+sec 35) -- (-6-sin 35, 4+cos 35) -- cycle; % } }} \begin{document} \foreach \f in {Huge, huge, Large, large, normalsize, small, footnotesize, scriptsize, tiny}{ \leavevmode\csname\f\endcsname\f~\tikz\pic {home};\par } \end{document}
Respuesta
Desde la versión 4.3.0 de julio de 2015, fontawesome
también funciona con pdflatex
\documentclass{article} \usepackage{fontawesome} \usepackage{pgffor} \begin{document} \foreach \size in {tiny,scriptsize, footnotesize, small, normalsize, large, Large, LARGE, huge, Huge} { \csname\size\endcsname \size\ \faHome\par } \end{document}
\includegraphics
.