All Projects → ElfSundae → Iconfontkit

ElfSundae / Iconfontkit

Licence: mit
Icon fonts toolkit for iOS.

Projects that are alternatives of or similar to Iconfontkit

Boxicons
High Quality web friendly icons
Stars: ✭ 1,104 (+3706.9%)
Mutual labels:  icon-font, icon-pack
Coreui Icons
CoreUI Free Icons - Premium designed free icon set with marks in SVG, Webfont and raster formats
Stars: ✭ 1,813 (+6151.72%)
Mutual labels:  icon-font, icon-pack
Iconhandler
Tint you Icons, change the size, apply alpha color and set a position easily. 👓
Stars: ✭ 59 (+103.45%)
Mutual labels:  icon-font, icon-pack
Eva Icons
A pack of more than 480 beautifully crafted Open Source icons. SVG, Sketch, Web Font and Animations support.
Stars: ✭ 8,114 (+27879.31%)
Mutual labels:  icon-font, icon-pack
icons
Simple, minimal line, and clean icon pack in vector formats — free for public use.
Stars: ✭ 24 (-17.24%)
Mutual labels:  icon-pack, icon-font
Phosphor Icons
A flexible icon family for the web
Stars: ✭ 56 (+93.1%)
Mutual labels:  icon-font, icon-pack
Phosphor React
A flexible icon family for React
Stars: ✭ 97 (+234.48%)
Mutual labels:  icon-font, icon-pack
Awesome Iconjar
44 Collect free icon sets for iconjar. 收集免费的图标包,iconjar 格式(44套)。
Stars: ✭ 188 (+548.28%)
Mutual labels:  icon-font, icon-pack
flutter phosphor icons
Phosphor Icons for Flutter.
Stars: ✭ 12 (-58.62%)
Mutual labels:  icon-pack, icon-font
pixeden-stroke-7-icon
A series of iOS 7 inspired vector icons in a custom @font-face icon font that can be styled dynamically using CSS.
Stars: ✭ 81 (+179.31%)
Mutual labels:  icon-pack, icon-font
Fontisto
The iconic font and CSS toolkit. Fontisto gives you scalable vector icons that can instantly be customized: size, color, drop shadow and anything that can be done with the power of CSS.
Stars: ✭ 413 (+1324.14%)
Mutual labels:  icon-font, icon-pack
Remixicon
Open source neutral style icon system
Stars: ✭ 3,956 (+13541.38%)
Mutual labels:  icon-font, icon-pack
Phosphor Home
The homepage of Phosphor Icons, a flexible icon family for everyone
Stars: ✭ 704 (+2327.59%)
Mutual labels:  icon-font, icon-pack
Stormplane
✈️《沙漠风暴》是一款基于Android开发的纵版飞行射击游戏,以雷电(Shooting Game)为原型,参考微信打飞机大战,通过自定义的SurfaceView来实现游戏,游戏画面、音乐、战斗特效都不错(附带apk安装包,可直接运行)
Stars: ✭ 938 (+3134.48%)
Mutual labels:  app
Todomvc Mithril
TodoMVC app using Mithril.js with CoffeeScript and Brunch
Stars: ✭ 15 (-48.28%)
Mutual labels:  app
Diycode
[暂停维护]diycode android app
Stars: ✭ 931 (+3110.34%)
Mutual labels:  app
Randomix
🎲 An open source app to choose randomly between numbers, answers, options and so on.
Stars: ✭ 24 (-17.24%)
Mutual labels:  app
Androidutilcode
AndroidUtilCode 🔥 is a powerful & easy to use library for Android. This library encapsulates the functions that commonly used in Android development which have complete demo and unit test. By using it's encapsulated APIs, you can greatly improve the development efficiency. The program mainly consists of two modules which is utilcode, which is commonly used in development, and subutil which is rarely used in development, but the utils can be beneficial to simplify the main module. 🔥
Stars: ✭ 30,239 (+104172.41%)
Mutual labels:  app
Sodieremojikeyboardplus
支持自定义emoji表情,icon font , FontAwesome,斜体,超链接,粗体,下划线,字体,颜色,镂空字体等富文本
Stars: ✭ 14 (-51.72%)
Mutual labels:  icon-font
Exhibit
Exhibit is a managed screensaver App for tvOS.
Stars: ✭ 19 (-34.48%)
Mutual labels:  app

IconFontKit

Pod Version

IconFontKit provides a convenient toolkit to use icon fonts for iOS development.

Sample Explorer Selector

Installation

  • pod 'IconFontKit/Core' to install only the IFIcon abstract class.
  • pod 'IconFontKit' to install all icon packs.
  • pod 'IconFontKit/{Font Identifier}' to install certain of icon packs, e.g. pod 'IconFontKit/FontAwesome'.

Usage

  • An icon can be created by three ways: code like @"\uf179", type like IFFAApple, identifier like @"fa-apple".
    The code and type way are recommended.

    IFFontAwesome *faIcon = [IFFontAwesome iconWithCode:@"\uf17b" fontSize:20.0];
    IFIonicons *ionIcon = [IFFontAwesome iconWithType:IFIIWifi fontSize:20.0];
    IFOcticons *octIcon = [IFOcticons iconWithIdentifier:@"octicon-gift" fontSize:20.0];
    
  • IFIcon are backend with NSAttributedString, and there are several methods for accessing attributes, like:

    - (NSDictionary *)attributes;
    - (void)addAttribute:(NSString *)name value:(id)value;
    - (void)removeAttribute:(NSString *)name;
    - (void)setAttributes:(NSDictionary *)attributes;
    
  • You may create an icon image using -[IFxxxIcon imageWithSize:] or +[IFxxxIcon imageWithType:color:...] etc.

    UIImage *image = [IFFontAwesome imageWithType:IFOIArrowRight color:nil imageSize:CGSizeMake(30, 30)];
    
  • Use +[IFxxxIcon fontWithSize:] to get an icon font instance of UIFont type.

  • [UIImage if_imageWithStackedIcons:imageSize:] can stack multi-icons to one image.

    /**
     * Draws the IFIcons on an image.
     * These icons will be centered horizontally and vertically by default.
     * You can set the `drawingPositionAdjustment` property to adjust drawing offset for each icon.
     *
     * @param icons The icons to be drawn. The first icon will be drawn on the bottom and the last icon will be drawn on the top.
     * @param imageSize Height and width for the generated image.
     *
     * @return An image with the icons.
     */
    + (UIImage *)if_imageWithStackedIcons:(NSArray <IFIcon *>*)icons imageSize:(CGSize)imageSize;
    

    For example:

    IFFontAwesome *container = [IFFontAwesome iconWithType:IFFASquareO fontSize:100.0 color:[UIColor colorWithWhite:0.88 alpha:1.0]];
    container.drawingPositionAdjustment = UIOffsetMake(0, 4);
    IFFontAwesome *forbidden = [IFFontAwesome iconWithType:IFFABan fontSize:70.0 color:[[UIColor redColor] colorWithAlphaComponent:0.6]];
    IFFontAwesome *usbIcon = [IFFontAwesome iconWithType:IFFAUsb fontSize:50];
    
    UIImage *stackedImage = [UIImage if_imageWithStackedIcons:@[container, usbIcon, forbidden] imageSize:CGSizeMake(100, 100)];
    

Using Custom Icon Fonts

  • To use your own icon fonts, just subclass IFIcon and implement + (NSURL *)fontFileURL method.

  • If the font name is not the same as the filename of fontFileURL, you need to implement + (NSString *)fontName method as well.

  • If you want to use identifier way to create icons, you need to implement + (NSDictionary *)allIcons method as well.

  • Icon types of your custom fonts are the icon's unicode hexadecimal value. e.g. icon code \uf100's type is 0xf100.

  • FYI: You can generate icon fonts using IcoMoon app, Fontello, Fontastic or other awesome services.

  • See "IconFontKitExample/MyFontIcons" for demo.

    // MyFontIcons.h
    
    #import <IconFontKit/IFIcon.h>
    
    typedef NS_ENUM(IFIconType, MyFontIconsType) {
        MFFacebookSquared   = 0xa100,
        MFChat              = 0xa101,
        MFEmoHappy          = 0xa102,
        MFThumbsUp          = 0xa103,
        MFThumbsUpAlt       = 0xa104,
        MFLinkExt           = 0xa105,
        MFVolumeUp          = 0xa106,
        MFCogAlt            = 0xa107,
        MFCode              = 0xa108,
    };
    
    @interface MyFontIcons : IFIcon
    @end
    
    // MyFontIcons.m
    
    #import "MyFontIcons.h"
    
    @implementation MyFontIcons
    
    + (NSURL *)fontFileURL {
        return [[[NSBundle mainBundle] resourceURL] URLByAppendingPathComponent:@"myfonticons.ttf"];
    }
    
    // Optional becase the font name is the same as the filename of font.
    //+ (NSString *)fontName {
    //    return @"myfonticons";
    //}
    
    + (NSDictionary *)allIcons {
        return @{
                 @"facebook-squared":  @"\ua100",
                 @"chat":              @"\ua101",
                 @"emo-happy":         @"\ua102",
                 @"thumbs-up":         @"\ua103",
                 @"thumbs-up-alt":     @"\ua104",
                 @"link-ext":          @"\ua105",
                 @"volume-up":         @"\ua106",
                 @"cog-alt":           @"\ua107",
                 @"code":              @"\ua108",
                 };
    }
    @end
    

Built-in Icon Packs

Font Identifier Version Icons Number Font Size License Description
FontAwesome 4.7.0 675 135 KB SIL OFL 1.1 Font Awesome
Octicons 4.3.0 172 45 KB SIL OFL 1.1 GitHub's icons
FoundationIcons 3.0 283 57 KB ? Foundation Icon Fonts 3
Ionicons 2.0.1 733 189 KB MIT The premium icon font for Ionic Framework.
MaterialDesignIcons 1.6.50 1650 236 KB SIL OFL 1.1 Material Design Icons
ElusiveIcons 2.0.0 304 80 KB SIL OFL 1.1 Elusive Icons
MaterialIcons 2.2.3 932 128 KB CC-BY 4.0 Made by Google for Material design.
ZocialButtons 1.2.0 102 26 KB MIT Social buttons
Typicons 2.0.7 336 100 KB SIL OFL 1.1
OpenIconic 1.1.1 223 28 KB SIL OFL 1.1 The open source sibling of Iconic.
MetrizeIcons 1.0 300 63 KB Free to use Metro-Style Icons
Meteocons 1.0 47 18 KB Free to use A set of weather icons
MFGLabsIconset 1.0 186 56 KB SIL OFL 1.1 MFG Labs iconset
LineariconsFree 1.0.0 170 56 KB CC BY-SA 4.0 Linearicons Free Version
IcoMoonFree 1.0.0 491 95 KB CC BY 4.0 or GPL IcoMoon Free Pack
HawconsFilled 1.0 517 107 KB Free to use Hawcons filled style, includes icons of Documents, Sports, Weather, Emoji, Gestures, Filetypes, etc.
HawconsStroke 1.0 518 138 KB Free to use Hawcons stroke style, includes icons of Documents, Sports, Weather, Emoji, Gestures, Filetypes, etc.
Dashicons 3.8 234 42 KB GPLv2 Dashicons is the official icon font of the WordPress admin.
Linea 1.0 716 125 KB CCBY A free outline iconset designed by Dario Ferrando.
Entypo 1.0 411 76 KB CC BY-SA 4.0 Entypo+ is the third version of a free suite of premium quality pictograms.
ThemifyIcons 1.0 352 79 KB Free to use Handcrafted icons that draw inspiration from Apple iOS 7.
StreamlineFree v2 100 38 KB License Streamline Free Pack, free iOS 8 vector icons
Stroke7Icons 1.2 202 58 KB Free to use A series of iOS 7 inspired thin stroke icons from Pixeden
Devicons 1.8.0 171 147 KB MIT An iconic font for developers.
LigatureSymbols 2.11 239 84 KB SIL OFL 1.1 Ligature Symbols by Kazuyuki Motoyama
Dripicons 1.0 95 21 KB Free to use A completely free, vector line-icon font by Amit Jakhu.
OpenWebIcons 1.4.0 97 40 KB SIL OFL 1.1 OpenWeb Icons
Genericons 3.4.1 147 22 KB GPLv2 Designed to be clean and simple keeping with a generic aesthetic.
MapIcons 3.0.0 175 48 KB SIL OFL 1.1 An icon font for use with Google Maps.
WeatherIcons 2.0.10 219 100 KB SIL OFL 1.1 weather, maritime, and meteorological based icons
EvilIcons 1.8.0 70 15 KB MIT Simple and clean SVG icon pack with the code to support Rails, Sprockets, Node.js, Gulp, Grunt and CDN.

Credits

IconFontKit is inspired to FontAwesomeKit.

License

IconFontKit is available under the MIT license. See the LICENSE file for more info.

NOTICE: each icon font has it's own license agreement.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].