728x90
PHP ImageMagick(imagick) 확장 모듈을 설치하는 방법
PHP ImageMagick 확장 모듈은 PHP에서 ImageMagick을 사용할 수 있도록 해주는 모듈입니다. 이 모듈을 설치하면 PHP에서 이미지를 변환, 크기 조정, 색상 변경, 텍스트 추가 등 다양한 작업을 수행할 수 있습니다.
- php 버전 확인
$ php -v
PHP 7.3.29 (cli) (built: Jul 7 2021 17:34:15) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.29, Copyright (c) 1998-2018 Zend Technologies
with Zend OPcache v7.3.29, Copyright (c) 1999-2018, by Zend Technologies
- ImageMagick 설치
yum install -y ImageMagick ImageMagick-devel
PHP ImageMagick 확장 모듈 다운로드
PHP ImageMagick 확장 모듈은 PHP 확장 모듈 저장소(PECL)에서 다운로드할 수 있습니다.
pecl install imagick
---output---
Build process completed successfully
Installing '/usr/lib64/php/modules/imagick.so'
Installing '/usr/include/php/ext/imagick/php_imagick_shared.h'
install ok: channel://pecl.php.net/imagick-3.5.1
configuration option "php_ini" is not set to php.ini location
You should add "extension=imagick.so" to php.ini
php.ini 파일에 확인 모듈 추가
echo "extension=imagick.so" >> /etc/php.ini
imagick 모듈 확인
php -m | grep -i imagick
$ php -m | grep -i imagick
imagick
php -i | grep -i imagick
$ php -i | grep -i imagick
imagick
imagick module => enabled
imagick module version => 3.5.1
imagick classes => Imagick, ImagickDraw, ImagickPixel, ImagickPixelIterator, ImagickKernel
Imagick compiled with ImageMagick version => ImageMagick 6.9.10-68 Q16 x86_64 2021-02-02 https://imagemagick.org
Imagick using ImageMagick library version => ImageMagick 6.9.10-68 Q16 x86_64 2021-02-02 https://imagemagick.org
imagick.allow_zero_dimension_images => 0 => 0
imagick.locale_fix => 0 => 0
imagick.progress_monitor => 0 => 0
imagick.set_single_thread => 1 => 1
imagick.shutdown_sleep_count => 10 => 10
imagick.skip_version_check => 0 => 0
웹 서버 재기동 필요
systemctl restart nginx php-fpm
728x90
PHP에서 ImageMagick 사용
PHP ImageMagick 확장 모듈을 설치하면 PHP에서 다음과 같은 코드를 사용하여 ImageMagick을 사용할 수 있습니다.
<?php
// ImageMagick을 사용하여 이미지를 변환합니다.
$image = new Imagick('image.jpg');
$image->resize(200, 200);
$image->save('image-resized.jpg');
// ImageMagick을 사용하여 이미지의 크기를 조정합니다.
$image = new Imagick('image.jpg');
$image->resize(array('width' => 200, 'height' => 200));
$image->save('image-resized.jpg');
// ImageMagick을 사용하여 이미지의 색상을 변경합니다.
$image = new Imagick('image.jpg');
$image->filter('grayscale');
$image->save('image-grayscale.jpg');
// ImageMagick을 사용하여 이미지에 텍스트를 추가합니다.
$image = new Imagick('image.jpg');
$image->draw('text 50,50 Hello, world!');
$image->save('image-text.jpg');
// ImageMagick을 사용하여 이미지를 합성합니다.
$image1 = new Imagick('image1.jpg');
$image2 = new Imagick('image2.jpg');
$image = new Imagick();
$image->composite($image1, 0, 0, Imagick::COMPOSITE_OVER, 1);
$image->composite($image2, 50, 50, Imagick::COMPOSITE_OVER, 1);
$image->save('image-composite.jpg');
?>
이 코드를 실행하면 다음과 같은 이미지가 생성됩니다.
image-resized.jpg
image-grayscale.jpg
image-text.jpg
image-composite.jpg
PHP ImageMagick 확장 모듈을 사용하여 이미지를 변환, 크기 조정, 색상 변경, 텍스트 추가, 이미지 합성 등 다양한 작업을 수행할 수 있습니다.
728x90
'리눅스' 카테고리의 다른 글
우분투에 HPE Smart Storage Administrator CLI(ssacli)를 설치하는 방법 (0) | 2023.09.14 |
---|---|
Cloudflare 프록시 환경에서 Nginx의 액세스 로그에 클라이언트의 실제 IP 주소를 남기는 방법 (0) | 2023.09.13 |
CentOS 7에서 ImageMagick을 설치하고 테스트하는 방법 (0) | 2023.09.12 |
VMware ESXi 환경에서 리눅스 가상 머신(VM)의 하드 디스크 용량을 증설하는 방법 - Ubuntu (0) | 2023.09.07 |
[draft] 우분투에 Zookeeper와 Kafka를 설치하는 방법 (0) | 2023.09.06 |