2016-07-13 8 views
1

Ich versuche, meine eigenen benutzerdefinierten Schriftart-Dateien in ionic2 Anwendung hinzuzufügen, @ font-Gesicht und Pfad meiner benutzerdefinierten Schriftart-Dateien hinzugefügt.benutzerdefinierte Schriftarten sehen nicht nach dem Build in Ionic2

hinzugefügt in der Datei app.variable.scss.

@font-face { 
     font-family: my-fonts; 
     src: url("../fonts/my-fonts.eot") format("eot"); 
     src: url("../fonts/my-fonts.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */ url("../fonts/my-fonts.woff") format("woff"), /* Modern Browsers */ url("../fonts/my-fonts.ttf") format("truetype"); 
     font-weight: normal; 
     font-style: normal; 

     /* IE9 Compat Modes */`enter code here` 
     /* Safari, Android, iOS */ 
    } 



$font-family-md-base: "my-fonts"; 
$font-family-ios-base: "my-fonts"; 
$font-family-wp-base: "my-fonts"; 

Hergestellt in gulpfile.js:

gulp.task("fonts", function() { 
    return copyFonts({ 
     src: [ 
      "app/theme/fonts/**/*.+(eot|svg|ttf|woff)" 
     ] 
    }); 
}); 

Wenn ich bauen meine Anwendung nicht in der Lage, die diese Schriften im www sehen/build/Fonts-Ordner selbst.

Alles, was ich falsch mache?

+0

erhalten Sie eine 404 in Ihrer Konsole über die fehlenden Schriften? Dies scheint ein Pfadproblem zu sein. – misha130

+0

Fügen Sie der 'build' Aufgabe auch die' fonts' Aufgabe hinzu? – sebaferreras

+0

Ich habe neue Aufgabe für benutzerdefinierte Schriftarten in der Gulp-Datei, aber Schriftart Ordner selbst wird angezeigt als fehlende in www \ Build-Ordner –

Antwort

0

Ich würde ein paar Dinge bezüglich der Pfade ändern:

Zuerst in den font-face Regeln ändern die src

src: url("../fonts/my-fonts.eot") format("eot"); 

die $font-path Variable wie folgt umfassen:

src: url("#{$font-path}/my-fonts.eot") format("eot"); 

Und dann in der Gulp Aufgabe:

gulp.task("fonts", function() { 
    return copyFonts({ 
     src: [ 
      "app/fonts/**/*.+(eot|ttf|woff|woff2|svg)" 
     ] 
    }); 
}); 

Dadurch sollten Sie in der Lage sein, Ihre Schriftarten im Ordner www\fonts zu finden.

+0

Wie stelle ich src: url ("# {$ font-path}/my-fonts.eot ") Format (" eot "); wenn meine Schriftarten in App/Schriftarten-Ordner ???? –

+0

www \ fonts oder es sollte in www \ build \ fonts kommen ?? –

+0

Platzieren Sie Ihre Schriftarten nicht in node_modules oder Build-Ordner. Der Ordner node_modules erhält ein Update für npm install oder npm update und der Build-Ordner wird mit jedem Build-Befehl erstellt. Wenn Sie die Variable '$ font-path' nicht verwenden möchten, können Sie sie auch folgendermaßen referenzieren: ' src: url ("../../ fonts/my-fonts.eot") Format ("eot"); ' – sebaferreras

0

Ich habe die Lösung für diese Frage.

Fügen Sie eine Aufgabe für benutzerdefinierte Schriftarten in der Datei gulpfile.js hinzu, um die benutzerdefinierten Schriftartdateien beim Erstellen der Ionic 2-Anwendung einzubeziehen.

gulp.task("customFonts", function() { 
    return copyFonts({ 
     src: [ 
      'app/fonts/**/*.+(eot|ttf|woff|woff2|svg)' 
     ] 
    }); 
}); 

umfassen die neu geschaffene Aufgabe in der runSequesnce von gulp.task ('watch' und gulp.task ('bauen',

runSequence ([ 'Sass', ' html‘, 'Schriftarten', 'customFonts', 'scripts'],

3

ich ging gerade durch diese und ich wollte nur zusammenfassen, was für mich gearbeitet:

I heruntergeladen Google Font Muli

dieses

@font-face { 
    font-family: "Muli"; 
    src: url("../fonts/Muli-Regular.ttf") format("truetype"); 
} 

dies dem app.variable In den app.core.scss hinzugefügt.SCSS

$font-family-md-base: "Muli"; 
$font-family-ios-base: "Muli"; 
$font-family-wp-base: "Muli"; 

hinzugefügt, um diese an die schluck Datei:

gulp.task("customFonts", function() { 
    return copyFonts({ 
     src: [ 
      "app/fonts/**/*.+(eot|ttf|woff|woff2|svg)" 
     ] 
    }); 
}); 

Fügen Sie auch "customFonts" auf die zeitliche Abfolge:

gulp.task('watch', ['clean'], function(done){ 
    runSequence(
    ['sass', 'html', 'fonts', 'customFonts', 'scripts'], 
    function(){ 
     gulpWatch('app/**/*.scss', function(){ gulp.start('sass'); }); 
     gulpWatch('app/**/*.html', function(){ gulp.start('html'); }); 
     buildBrowserify({ watch: true }).on('end', done); 
    } 
); 
}); 

gulp.task('build', ['clean'], function(done){ 
    runSequence(
    ['sass', 'html', 'fonts', 'customFonts', 'scripts'], 
    function(){ 
     buildBrowserify({ 
     minify: isRelease, 
     browserifyOptions: { 
      debug: !isRelease 
     }, 
     uglifyOptions: { 
      mangle: false 
     } 
     }).on('end', done); 
    } 
); 
}); 

Stored die Schriften in: app/fonts

Danke für die Hilfe !!

UPDATE Ionic RC0:

Sie brauchen jetzt nur in der folgenden auf Ihre variable.scss Datei zu setzen.

@font-face { 
    font-family: "Muli"; 
    src: url("../assets/fonts/Muli-Regular.ttf") format("truetype"); 
} 

$font-family-md-base: "Muli"; 
$font-family-ios-base: "Muli"; 
$font-family-wp-base: "Muli"; 
+0

Ja .. das wird funktionieren .. erklärt es gut –

+0

fontface können wir in app.variable.scss ryt hinzufügen? –

+0

Danke! Ich bin mir nicht sicher. Ich habe es in app.core.scss eingefügt. – dhndeveloper

Verwandte Themen