Рубрики
Uncategorized

Установка и использование пакета расширения для обработки изображений/изображений

Автор оригинала: David Wong.

Эта статья была разрешена к передаче из сообщества PHPHub

Объяснять

Intervention/image-это настраиваемый инструмент обработки изображений для Laravel, который обеспечивает простой в использовании способ создания и редактирования изображений.

Эта статья была написана участником группы EST @monkey и началась с сообщества PHPHPHub.

Для получения демонстрационного кода см. https://github.com/zhengjinghua/est-image-demo

Демонстрация

Демонстрационные скриншоты

Демонстрационная операция

Обратитесь к документации о том, как быстро запустить проект Laravel с помощью Homestead.

Обзор статей

  1. Установка;

  2. Изменение информации о конфигурации;

  3. Основное использование;

  4. Характеристическая функция.

Далее приводится подробное объяснение.

1. установка

Используйте composer для установки:

composer require intervention/image

Приведенная выше команда будет

2). приложение/конфигурация/приложение. php Добавить поставщика услуг:

// Add the following code to the providers array
'providers' => [
    // ...
    Intervention\Image\ImageServiceProvider::class,
    // ...
  ],


// Add the following code to the aliases array
'aliases' => [
    // ...
    'Image' => Intervention\Image\Facades\Image::class,
    // ...
  ],

2. Настройка библиотеки обработки изображений

Этот пакет расширений по умолчанию использует библиотеку GD PHP для обработки изображений, но поскольку библиотека GD несколько менее эффективна, чем библиотека ImageMagick для обработки изображений, рекомендуется заменить библиотеку image magick для обработки изображений.

Перед началом работы вы должны убедиться, что GD или Imagick установлены локально.

При использовании изображения вмешательства вы можете переключаться между библиотеками GD и Imagick, просто передавая параметр массива в ImageManager.

Следующим образом:

// Introducing composer autoload
require 'vendor/autoload.php';

// Import Intervention Image Manager Class
use Intervention\Image\ImageManager;

// Create an image manager instance by specifying the driver
$manager = new ImageManager(array('driver' => 'imagick'));

// Finally, create an image instance
$image = $manager->make('public/foo.jpg')->resize(300, 200);

Вы также можете использовать статическую версию ImageManager следующим образом:

// Introducing composer autoload
require 'vendor/autoload.php';

// Import Intervention Image Manager Class
use Intervention\Image\ImageManagerStatic as Image;

// Create an image manager instance by specifying the driver (default gd)
Image::configure(array('driver' => 'imagick'));

// Finally, create an image instance
$image = Image::make('public/foo.jpg')->resize(300, 200);

генерировать config/image.php Файл конфигурации:

php artisan vendor:publish --provider="Intervention\Image\ImageServiceProviderLaravel5"

После выполнения вышеуказанной команды она будет сгенерирована в проекте config/image.php Файл конфигурации, откройте этот файл и драйвер Изменен в imagick :

return array(
    'driver' => 'imagick'
);

На данный момент пакет расширения успешно установлен!

3. Основное использование

// Modify the size of the specified image
$img = Image::make('images/avatar.jpg')->resize(200, 200);

// Insert the watermarking, the watermarking position is in the lower right corner of the original image, 10 pixels from the lower edge, 15 pixels from the right edge.
$img->insert('images/watermark.png', 'bottom-right', 15, 10);

// Re-save the processed image to another path
$img->save('images/new_avatar.jpg');

/* The above logic can be worked out by chain expressions.*/
$img = Image::make('images/avatar.jpg')->resize(200, 200)->insert('images/new_avatar.jpg', 'bottom-right', 15, 10);

4. Характеристическая функция

В дополнение к базовому использованию, описанному выше, этот пакет расширений поддерживает:

  • Функция загрузки изображений;

  • Функция кэширования изображений;

  • Функция фильтрации изображений: преобразование изображений в соответствии с едиными правилами;

  • Динамическая обработка изображений: Автоматическая настройка размера изображения в соответствии с параметрами URL-адреса доступного изображения.

Для получения дополнительных примеров, пожалуйста, обратитесь к официальным документам.

Добро пожаловать к вашему вниманию. Советы Laravel Общедоступный номер Microsoft, предназначенный для обслуживания разработчиков Laravel и помогающий разработчикам лучше понять платформу Laravel и повысить эффективность разработки.