현재 위치: > 최신 기사 목록> PHP의 이미지 슬라이싱 및 스 플라이 싱에 대한 튜토리얼 전체

PHP의 이미지 슬라이싱 및 스 플라이 싱에 대한 튜토리얼 전체

M66 2025-08-07

PHP가 이미지 슬라이싱 및 스 플라이 싱을 실현하기위한 응용 프로그램 시나리오

웹 개발 과정에서 이미지 최적화 처리는 사용자 경험 및 웹 페이지 성능 향상의 중요한 부분입니다. 그중에서도 그림의 슬라이싱 및 스 플라이 싱 작업은 사진의 로딩 시간을 효과적으로 줄이고 페이지의 응답 속도를 향상시킬 수 있습니다. PHP는 강력한 이미지 처리 기능을 통해 두 작업을 쉽게 달성 할 수 있습니다.

PHP를 사용하여 사진 슬라이싱을 구현하십시오

이미지 슬라이스는 큰 이미지를 여러 개의 작은 이미지로 나누고 있습니다. 종종 영역별로 이미지를로드하거나 그래픽 맵을 만들거나 게으른 이미지 로딩 효과를 달성하는 데 사용됩니다.

다음은 고정 된 크기로 큰 이미지를 슬라이스하고 저장하는 방법을 보여주는 PHP 코드 예제입니다.

<?php
// 원본 이미지 경로
$srcPath = 'big_image.jpg';
// 슬라이스 저장 경로
$savePath = 'sliced_images/';
// 슬라이스 크기
$width = 200; // 슬라이스 너비
$height = 200; // 슬라이스 높이

// 원본 이미지를로드하십시오
$srcImage = imagecreatefromjpeg($srcPath);
$srcWidth = imagesx($srcImage);
$srcHeight = imagesy($srcImage);

// 슬라이스 수를 계산하십시오
$numX = ceil($srcWidth / $width);
$numY = ceil($srcHeight / $height);

// 자르고 슬라이스를 저장하십시오
for ($x = 0; $x < $numX; $x++) {
    for ($y = 0; $y < $numY; $y++) {
        // 새 캔버스를 만듭니다
        $sliceImage = imagecreatetruecolor($width, $height);
        // 사본 영역
        imagecopy($sliceImage, $srcImage, 0, 0, $x * $width, $y * $height, $width, $height);
        // 슬라이스를 저장하십시오
        imagejpeg($sliceImage, $savePath . 'slice_' . $x . '_' . $y . '.jpg');
        // 리소스 정리
        imagedestroy($sliceImage);
    }
}

// 원본 이미지 리소스를 정리하십시오
imagedestroy($srcImage);
?>

위의 코드는 큰 이미지를 설정 너비와 높이에 따라 여러 개의 작은 이미지로 자르고 지정된 디렉토리에 저장 한 후 좌표에 따라 파일 이름을 이름으로 쉽게 관리합니다.

PHP를 사용하여 사진 스티칭을 달성하십시오

이미지 스티치는 여러 개의 작은 이미지를 하나의 큰 이미지로 결합하는 것입니다.이 이미지는 이미지 합성, 배경 타일링 또는 큰 이미지 복원에 적합합니다.

다음 코드는 슬라이스 이미지를 읽고 순서대로 큰 이미지로 연결하는 방법을 보여줍니다.

<?php
// 사진 카탈로그를 슬라이스합니다
$slicePath = 'sliced_images/';
// 스티칭 후 이미지 절약 경로
$mergedPath = 'merged_image.jpg';
// 슬라이스 크기
$width = 200;
$height = 200;
// 슬라이스 수(실제 슬라이스 수에 따라 설정해야합니다.)
$numX = 3;
$numY = 3;

// 합성 캔버스를 만듭니다
$mergedWidth = $width * $numX;
$mergedHeight = $height * $numY;
$mergedImage = imagecreatetruecolor($mergedWidth, $mergedHeight);

// 슬라이스를 하나씩 읽고 병합하십시오
for ($x = 0; $x < $numX; $x++) {
    for ($y = 0; $y < $numY; $y++) {
        $sliceImage = imagecreatefromjpeg($slicePath . 'slice_' . $x . '_' . $y . '.jpg');
        imagecopy($mergedImage, $sliceImage, $x * $width, $y * $height, 0, 0, $width, $height);
        imagedestroy($sliceImage);
    }
}

// 합성 사진을 저장하십시오
imagejpeg($mergedImage, $mergedPath);
imagedestroy($mergedImage);
?>

이 스크립트는 순서대로 이미 얇게 썬 이미지가 있다고 가정하고이를 전체 이미지로 바꾸고 지정된 파일로 출력합니다.

요약

이 기사에서 제공된 PHP 이미지 처리 예제를 통해 필요에 따라 큰 이미지를 여러 개의 작은 이미지로 나누거나 세그먼트 된 이미지를 원본 이미지로 재조합 할 수 있습니다. 이 기술은 프론트 엔드 이미지 로딩 최적화, 게임 맵 분할, 백엔드 이미지 관리 시스템 및 기타 필드에서 널리 사용될 수 있습니다. 실제로 사용하면 개발자는 이미지 크기와 슬라이스 수를 유연하게 조정하여 다양한 비즈니스 요구를 충족시킬 수 있습니다.