Font Awesome'den SVG'yi Çıkarma


93

Font Awesome gliflerinden SVG yol verilerini almak istiyorum, böylece bunları HTML’imde doğrudan SVG olarak kullanabilirim. Fontawesome-webfont.svg dosyasındaki yol verilerini kopyalayıp yapıştırmak kadar kolay olacağını düşünmüştüm , ancak bunu HTML'mde kullandığımda sembollerin hepsi ters dönüyor . Nedenini bilen var mı?

(Bakın Fiddle )

Font Awesome SVG:

<glyph unicode="&#xf007;" horiz-adv-x="1408" d="M1408 131q0 -120 -73 -189.5t-194 -69.5h-874q-121 0 -194 69.5t-73 189.5q0 53 3.5 103.5t14 109t26.5 108.5t43 97.5t62 81t85.5 53.5t111.5 20q9 0 42 -21.5t74.5 -48t108 -48t133.5 -21.5t133.5 21.5t108 48t74.5 48t42 21.5q61 0 111.5 -20t85.5 -53.5t62 -81 t43 -97.5t26.5 -108.5t14 -109t3.5 -103.5zM1088 1024q0 -159 -112.5 -271.5t-271.5 -112.5t-271.5 112.5t-112.5 271.5t112.5 271.5t271.5 112.5t271.5 -112.5t112.5 -271.5z" />

... HTML SVG'ye taşındı (ve küçültüldü):

<svg width="1000" height="1000" ><path transform="scale(0.1,0.1)" d="M1408 131q0 -120 -73 -189.5t-194 -69.5h-874q-121 0 -194 69.5t-73 189.5q0 53 3.5 103.5t14 109t26.5 108.5t43 97.5t62 81t85.5 53.5t111.5 20q9 0 42 -21.5t74.5 -48t108 -48t133.5 -21.5t133.5 21.5t108 48t74.5 48t42 21.5q61 0 111.5 -20t85.5 -53.5t62 -81 t43 -97.5t26.5 -108.5t14 -109t3.5 -103.5zM1088 1024q0 -159 -112.5 -271.5t-271.5 -112.5t-271.5 112.5t-112.5 271.5t112.5 271.5t271.5 112.5t271.5 -112.5t112.5 -271.5z"/></svg>

Yanıtlar:


63

Hepsi SVG spesifikasyonuna göre ...

Başlangıç ​​koordinat sisteminin y ekseninin aşağıya baktığı SVG'deki standart grafiklerden farklı olarak, SVG yazı tipleri için tasarım ızgarası, glifler için başlangıç ​​koordinat sistemi ile birlikte, y ekseni, birçok popüler yazı tipi biçimi.

Gereğince Bu yoruma için sarıcı değiştirme <svg height="179.2" width="179.2"><path transform="scale(0.1,-0.1) translate(0,-1536)" d="..." /></svg>nerede, hileye neden olabilir 1792 ünite başına em ve olduğu 1536 Font-face elemana yokuşudur


6
Sarmalayıcı değişen bu cevabın tamlığı için için <svg height="179.2" width="179.2"><path transform="scale(0.1,-0.1) translate(0,-1536)" d="..." /></svg>hile yapmak gibi görünüyor 1792olduğunu units-per-emve 1536olup ascentüzerinde font-faceeleman.
mckamey

1
Re 1792 is the units-per-em: Yazım hatası? 179.2Yükseklik / genişlikle eşleşeceğini düşünürdüm .
Nate Cook

100

Sadece bu github deposundan hazır svg simgelerini alın
Gerektiğinde zaten çevrilmiş ve ortalanmış

görüntü açıklamasını buraya girin

Herhangi bir dosyaya ve ardından "Raw" a basın görüntü açıklamasını buraya girin


10
Bunların birçoğunun yanlarında kırpılmış simgeler olduğunu buldum, örneğin araba
Bankzilla

21

IcoMoon uygulaması bunu çok basitleştirir.


2
Evet IcoMoon harika
Yarin

3
IcoMoon'un kullanımı çok kolaydır, ancak bu GitHub deposundaki SVG'lerden daha uzun yolları dışa aktardığını gördüm . Fa-gift simgesini karşılaştırmayı deneyin. path837 IcoMoon aracılığıyla karakterler, vs olduğu repo 514 .
Dan Dascalescu

İyi bulan Dan, bu uyarı hakkında hiçbir fikri yoktu. Yine de IcoMoon'u seviyorum.
SISYN


7

Bunu sizin için otomatikleştirecek ve öncesi ve sonrası oluşturacak bir node.js aracı da var verify.html. https://github.com/eugene1g/font-blast

Bunu diğer yazı tiplerinde kullandım, şimdiye kadar yalnızca 1 kötü simge dönüşümü, ancak SVG yazı tipinde geri kalanı iyiydi.


2
Bunu denemem gerekecek
John Dangerous

font-blast süper hızlı ve kolay
00-BBB

4

En son sürümünü faburadan indirebilirsiniz : https://fontawesome.com/

Ve sonra advanced-options/raw-svgklasöre gidin . Eğer Orada üç klasör bulacaksınız brands, regularve soliden son simgeleri mevcut içerikli.



Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.