mirror of
https://github.com/ForkAwesome/Fork-Awesome.git
synced 2024-12-26 13:31:31 +08:00
build script for fonts
This commit is contained in:
parent
aa63f72cbc
commit
4469d13ec9
2
.gitignore
vendored
2
.gitignore
vendored
@ -31,3 +31,5 @@ stunnel.log
|
||||
|
||||
.ruby-version
|
||||
.bundle
|
||||
|
||||
src/icons/forkawesome/
|
||||
|
1
Gemfile
1
Gemfile
@ -6,3 +6,4 @@ gem 'sass', '~> 3.0'
|
||||
gem 'less', '~> 2.5.0'
|
||||
gem 'libv8', '~> 3.16.14.0'
|
||||
gem 'therubyracer'
|
||||
gem 'fontcustom'
|
||||
|
@ -10,6 +10,10 @@ GEM
|
||||
commonjs (0.2.7)
|
||||
fast-stemmer (1.0.2)
|
||||
ffi (1.9.18)
|
||||
fontcustom (2.0.0)
|
||||
json (~> 1.4)
|
||||
listen (>= 1.0, < 4.0)
|
||||
thor (~> 0.14)
|
||||
highline (1.6.21)
|
||||
jekyll (1.5.1)
|
||||
classifier (~> 1.3)
|
||||
@ -22,6 +26,7 @@ GEM
|
||||
redcarpet (~> 2.3.0)
|
||||
safe_yaml (~> 1.0)
|
||||
toml (~> 0.1.0)
|
||||
json (1.8.3)
|
||||
less (2.5.1)
|
||||
commonjs (~> 0.2.7)
|
||||
libv8 (3.16.14.19)
|
||||
@ -53,6 +58,7 @@ GEM
|
||||
therubyracer (0.12.3)
|
||||
libv8 (~> 3.16.14.15)
|
||||
ref
|
||||
thor (0.20.0)
|
||||
toml (0.1.2)
|
||||
parslet (~> 1.5.0)
|
||||
yajl-ruby (1.1.0)
|
||||
@ -61,6 +67,7 @@ PLATFORMS
|
||||
ruby
|
||||
|
||||
DEPENDENCIES
|
||||
fontcustom
|
||||
jekyll (~> 1.0)
|
||||
less (~> 2.5.0)
|
||||
libv8 (~> 3.16.14.0)
|
||||
|
@ -10,11 +10,11 @@ A tremendous gratitude is given to the whole team behind [Font Awesome](https://
|
||||
This fork is still in its very early stage of development. Though If you wish to be part of the adventure, please start submitting patches.
|
||||
|
||||
## License
|
||||
- The Font Awesome font is licensed under the SIL OFL 1.1:
|
||||
- The Fork Awesome font is licensed under the SIL OFL 1.1:
|
||||
- http://scripts.sil.org/OFL
|
||||
- Font Awesome CSS, LESS, and Sass files are licensed under the MIT License:
|
||||
- Fork Awesome CSS, LESS, and Sass files are licensed under the MIT License:
|
||||
- https://opensource.org/licenses/mit-license.html
|
||||
- The Font Awesome documentation is licensed under the CC BY 3.0 License:
|
||||
- The Fork Awesome documentation is licensed under the CC BY 3.0 License:
|
||||
- https://creativecommons.org/licenses/by/3.0/
|
||||
|
||||
## Contributing
|
||||
|
@ -14,7 +14,7 @@ permalink: pretty
|
||||
include: [_*.scss]
|
||||
|
||||
# used in building icon pages
|
||||
icon_meta: src/icons.yml
|
||||
icon_meta: src/icons/icons.yml
|
||||
icon_layout: icon.html # Relative to _layouts directory
|
||||
icon_destination: icon # Relative to destination
|
||||
|
||||
|
@ -1383,12 +1383,6 @@
|
||||
.fa-digg:before {
|
||||
content: "\f1a6";
|
||||
}
|
||||
.fa-pied-piper-pp:before {
|
||||
content: "\f1a7";
|
||||
}
|
||||
.fa-pied-piper-alt:before {
|
||||
content: "\f1a8";
|
||||
}
|
||||
.fa-drupal:before {
|
||||
content: "\f1a9";
|
||||
}
|
||||
@ -2159,9 +2153,6 @@
|
||||
.fa-snapchat-square:before {
|
||||
content: "\f2ad";
|
||||
}
|
||||
.fa-pied-piper:before {
|
||||
content: "\f2ae";
|
||||
}
|
||||
.fa-first-order:before {
|
||||
content: "\f2b0";
|
||||
}
|
||||
|
2
css/fork-awesome.min.css
vendored
2
css/fork-awesome.min.css
vendored
File diff suppressed because one or more lines are too long
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Before Width: | Height: | Size: 435 KiB After Width: | Height: | Size: 414 KiB |
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -438,8 +438,6 @@
|
||||
.@{fa-css-prefix}-stumbleupon:before { content: @fa-var-stumbleupon; }
|
||||
.@{fa-css-prefix}-delicious:before { content: @fa-var-delicious; }
|
||||
.@{fa-css-prefix}-digg:before { content: @fa-var-digg; }
|
||||
.@{fa-css-prefix}-pied-piper-pp:before { content: @fa-var-pied-piper-pp; }
|
||||
.@{fa-css-prefix}-pied-piper-alt:before { content: @fa-var-pied-piper-alt; }
|
||||
.@{fa-css-prefix}-drupal:before { content: @fa-var-drupal; }
|
||||
.@{fa-css-prefix}-joomla:before { content: @fa-var-joomla; }
|
||||
.@{fa-css-prefix}-language:before { content: @fa-var-language; }
|
||||
@ -724,7 +722,6 @@
|
||||
.@{fa-css-prefix}-snapchat:before { content: @fa-var-snapchat; }
|
||||
.@{fa-css-prefix}-snapchat-ghost:before { content: @fa-var-snapchat-ghost; }
|
||||
.@{fa-css-prefix}-snapchat-square:before { content: @fa-var-snapchat-square; }
|
||||
.@{fa-css-prefix}-pied-piper:before { content: @fa-var-pied-piper; }
|
||||
.@{fa-css-prefix}-first-order:before { content: @fa-var-first-order; }
|
||||
.@{fa-css-prefix}-yoast:before { content: @fa-var-yoast; }
|
||||
.@{fa-css-prefix}-themeisle:before { content: @fa-var-themeisle; }
|
||||
|
@ -513,9 +513,6 @@
|
||||
@fa-var-photo: "\f03e";
|
||||
@fa-var-picture-o: "\f03e";
|
||||
@fa-var-pie-chart: "\f200";
|
||||
@fa-var-pied-piper: "\f2ae";
|
||||
@fa-var-pied-piper-alt: "\f1a8";
|
||||
@fa-var-pied-piper-pp: "\f1a7";
|
||||
@fa-var-pinterest: "\f0d2";
|
||||
@fa-var-pinterest-p: "\f231";
|
||||
@fa-var-pinterest-square: "\f0d3";
|
||||
|
@ -438,8 +438,6 @@
|
||||
.#{$fa-css-prefix}-stumbleupon:before { content: $fa-var-stumbleupon; }
|
||||
.#{$fa-css-prefix}-delicious:before { content: $fa-var-delicious; }
|
||||
.#{$fa-css-prefix}-digg:before { content: $fa-var-digg; }
|
||||
.#{$fa-css-prefix}-pied-piper-pp:before { content: $fa-var-pied-piper-pp; }
|
||||
.#{$fa-css-prefix}-pied-piper-alt:before { content: $fa-var-pied-piper-alt; }
|
||||
.#{$fa-css-prefix}-drupal:before { content: $fa-var-drupal; }
|
||||
.#{$fa-css-prefix}-joomla:before { content: $fa-var-joomla; }
|
||||
.#{$fa-css-prefix}-language:before { content: $fa-var-language; }
|
||||
@ -724,7 +722,6 @@
|
||||
.#{$fa-css-prefix}-snapchat:before { content: $fa-var-snapchat; }
|
||||
.#{$fa-css-prefix}-snapchat-ghost:before { content: $fa-var-snapchat-ghost; }
|
||||
.#{$fa-css-prefix}-snapchat-square:before { content: $fa-var-snapchat-square; }
|
||||
.#{$fa-css-prefix}-pied-piper:before { content: $fa-var-pied-piper; }
|
||||
.#{$fa-css-prefix}-first-order:before { content: $fa-var-first-order; }
|
||||
.#{$fa-css-prefix}-yoast:before { content: $fa-var-yoast; }
|
||||
.#{$fa-css-prefix}-themeisle:before { content: $fa-var-themeisle; }
|
||||
|
@ -514,9 +514,6 @@ $fa-var-phone-square: "\f098";
|
||||
$fa-var-photo: "\f03e";
|
||||
$fa-var-picture-o: "\f03e";
|
||||
$fa-var-pie-chart: "\f200";
|
||||
$fa-var-pied-piper: "\f2ae";
|
||||
$fa-var-pied-piper-alt: "\f1a8";
|
||||
$fa-var-pied-piper-pp: "\f1a7";
|
||||
$fa-var-pinterest: "\f0d2";
|
||||
$fa-var-pinterest-p: "\f231";
|
||||
$fa-var-pinterest-square: "\f0d3";
|
||||
|
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Before Width: | Height: | Size: 435 KiB After Width: | Height: | Size: 414 KiB |
Binary file not shown.
Binary file not shown.
Binary file not shown.
18
src/icons/Makefile
Normal file
18
src/icons/Makefile
Normal file
@ -0,0 +1,18 @@
|
||||
|
||||
FA_DOC_ASSETS_DIR = ../doc/assets/fork-awesome/fonts
|
||||
FA_FONTCUSTOM_OUTPUT_DIR = ./forkawesome
|
||||
|
||||
build:
|
||||
@echo "Compiling Icons into a ForkAwesome fonts"
|
||||
bundle exec fontcustom compile
|
||||
|
||||
cp ${FA_FONTCUSTOM_OUTPUT_DIR}/forkawesome.eot ${FA_DOC_ASSETS_DIR}/forkawesome-webfont.eot
|
||||
cp ${FA_FONTCUSTOM_OUTPUT_DIR}/forkawesome.svg ${FA_DOC_ASSETS_DIR}/forkawesome-webfont.svg
|
||||
cp ${FA_FONTCUSTOM_OUTPUT_DIR}/forkawesome.ttf ${FA_DOC_ASSETS_DIR}/forkawesome-webfont.ttf
|
||||
cp ${FA_FONTCUSTOM_OUTPUT_DIR}/forkawesome.woff ${FA_DOC_ASSETS_DIR}/forkawesome-webfont.woff
|
||||
cp ${FA_FONTCUSTOM_OUTPUT_DIR}/forkawesome.woff2 ${FA_DOC_ASSETS_DIR}/forkawesome-webfont.woff2
|
||||
|
||||
default:
|
||||
build
|
||||
|
||||
.PHONY: build
|
@ -1,53 +0,0 @@
|
||||
# Turn a SVG webfont to a series of font files
|
||||
# Inspired by http://helpfulsheep.com/2015-03-25-converting-svg-fonts-to-svg/
|
||||
|
||||
import sys
|
||||
|
||||
def get_glyph_value(line, start_text):
|
||||
end_text ='"'
|
||||
start_index = line.find(start_text)
|
||||
end_index = line.find(end_text, start_index + len(start_text))
|
||||
if start_index < 0 or end_index < 0:
|
||||
return
|
||||
return line[start_index + len(start_text):end_index]
|
||||
|
||||
def get_glyph_name(line):
|
||||
name = get_glyph_value(line, start_text = 'glyph-name="')
|
||||
name = name.replace('_', '-')
|
||||
return name
|
||||
|
||||
def get_glyph_unicode(line):
|
||||
unicode_char = get_glyph_value(line, start_text = 'unicode="&#x')
|
||||
if unicode_char:
|
||||
return '0x' + unicode_char[:-1].zfill(4).upper()
|
||||
|
||||
if len(sys.argv) < 2:
|
||||
print 'Usage: python {} webfont-file.svg destination-folder'.format(sys.argv[0])
|
||||
sys.exit()
|
||||
|
||||
file = open(sys.argv[1], 'r')
|
||||
folder = sys.argv[2]
|
||||
line = file.readline()
|
||||
|
||||
while line:
|
||||
if '<glyph' in line:
|
||||
name = get_glyph_name(line)
|
||||
unicode_char = get_glyph_unicode(line)
|
||||
|
||||
if unicode_char:
|
||||
filename = './' + folder + '/' + name + '.svg'
|
||||
with open(filename, 'w') as w:
|
||||
w.write('<?xml version="1.0" standalone="no"?>\n')
|
||||
w.write('<svg width="1536px" height="1536px" version="1.1" xmlns="http://www.w3.org/2000/svg">\n')
|
||||
w.write(line.replace('<glyph', '<path transform="scale(1, -1) translate(0, -1536)"') + '\n')
|
||||
|
||||
nextLine = file.readline()
|
||||
while '/>' not in nextLine:
|
||||
w.write(nextLine)
|
||||
nextLine = file.readline()
|
||||
w.write(nextLine)
|
||||
w.write('</svg>')
|
||||
|
||||
line = file.readline()
|
||||
|
||||
file.close()
|
Loading…
Reference in New Issue
Block a user