CSS властивості
ГлавнаяGulpОптимізація зображень в Gulp

Оптимізація зображень в Gulp

173

Як ви, напевно, вже здогадалися, нам знадобиться gulp-imagemin, який допоможе з оптимізацією зображень.

$ npm install gulp-imagemin--save-dev
<code data-language="javascript">var imagemin=require ('gulp-imagemin');

За допомогою gulp-imagemin ми можемо мінімізувати файли png, jpg, gif і навіть svg. Давайте створимо завдання images для цього процесу оптимізації.

<code data-language="javascript">gulp.task('images', function(){ return gulp.src('app/images/**/*.+(png|jpg|gif|svg)') .pipe(imagemin()) .pipe(gulp.dest('dist/images')) });

Оскільки різні типи файлів можуть бути оптимізовані по-різному, ви можете додати параметри в imagemin для налаштування способу оптимізації кожного файлу. Наприклад, для створення черезрядкових GIF-файлів встановіть значення interlaced як true.

<code data-language="javascript">gulp.task(' images', function(){ return gulp.src('app/images/**/*.+(png|jpg|jpeg|gif|svg)') .pipe(imagemin({ //Встановлюємо interlaced як true interlaced: true })) .pipe(gulp.dest('dist/images')) });

Ви можете пограти і з іншими параметрами при бажанні.

Оптимізація зображень це досить повільний процес, який хочеться повторювати без необхідності. З цієї причини ми можемо скористатися плагіном gulp-cache.

$ npm install gulp-cache--save-dev
<code data-language="javascript">var cache=require('gulp-cache'); gulp.task('images', function(){ return gulp.src('app/images/**/*.+(png|jpg|jpeg|gif|svg)') //Кешування зображень, що проходили через imagemin .pipe(cache(imagemin({ interlaced: true })))) .pipe(gulp.dest('dist/images')) });

Ми практично завершили процес оптимізації. Залишилася тільки одна папка, яку нам потрібно перенести з app в dist — це папка зі шрифтами.

invisible">Автор та редактори
Автор: Зелл Лью
Останнє змінення: 11.12.2019
Редактори: Влад Мержевич