현재 위치: > 최신 기사 목록> ImageWBMP 함수 및 imageCreate 함수 사용의 예

ImageWBMP 함수 및 imageCreate 함수 사용의 예

gitbox 2025-05-29

PHP 이미지 처리 기능에서 ImageCreateImageWBMP는 각각 이미지 리소스와 출력 이미지를 WBMP 형식으로 생성하는 데 사용되는 두 가지 일반적인 기능입니다. WBMP (무선 비트 맵) 형식은 무선 장치의 흑백 이미지 형식입니다. 사용 시나리오가 점차 감소하고 있지만 오래된 장치와 호환되는 일부 경량 시스템이나 시나리오에서도 여전히 유용합니다. 이 기사는이 두 기능을 효율적으로 사용하여 필요에 맞는 이미지를 생성하는 방법을 자세히 소개합니다.

1. 기본 기능 소개

imagecreate

ImageCreate 함수는 지정된 너비와 높이의 이미지 캔버스를 만드는 데 사용됩니다. 기본 구문은 다음과 같습니다.

 $img = imagecreate(int $width, int $height);

후속 작업에 대한 이미지 리소스 핸들을 반환합니다. 참고 :이 기능은 흑백 이미지와 같은 간단한 이미지 구조를 생성하는 데 적합한 팔레트 이미지 (진정한 색상 이미지가 아님)를 만듭니다.

imagewbmp

ImageWBMP 함수는 이미지 리소스를 WBMP 형식으로 출력합니다. 구문은 다음과 같습니다.

 imagewbmp(GdImage $image, ?string $file = null, int $foreground = 0);
  • $ 이미지 : imageCreate 에서 만든 이미지 리소스.

  • $ 파일 : 선택 사항, 출력 경로를 지정하십시오. NULL 인 경우 브라우저에 직접 출력됩니다.

  • $ 전경 : 전경 지수를 지정합니다 (선택 사항).

2. 효율적인 조합 사용 방법

다음은 ImageCreateImageWBMP를 사용하여 이미지를 효율적으로 생성하는 완전한 예입니다.

 <?php
// 헤더 정보를 설정하십시오 WBMP 유형
header("Content-Type: image/vnd.wap.wbmp");

// 넓은 것을 만듭니다100높은50이미지
$width = 100;
$height = 50;
$img = imagecreate($width, $height);

// 색상을 할당합니다:첫 번째 색상은 일반적으로 배경색입니다
$white = imagecolorallocate($img, 255, 255, 255); // 배경색
$black = imagecolorallocate($img, 0, 0, 0);       // 전경 색상

// 대각선을 그립니다
imageline($img, 0, 0, $width - 1, $height - 1, $black);

// 출력 이미지
imagewbmp($img);

// 자원을 파괴하십시오
imagedestroy($img);
?>

이 코드는 대각선에 검은 선이있는 흰색 배경 이미지를 직접 출력하며 형식은 WBMP이며 검증 코드 다이어그램 생성, QR 코드 기본 이미지 등과 같은 가벼운 이미지 처리 작업에 매우 적합합니다.

3. 브라우저 대신 파일로 출력

WBMP 이미지를 브라우저로 직접 출력하는 대신 파일에 WBMP 이미지를 저장하려면 대상 경로 매개 변수를 전달하십시오.

 imagewbmp($img, '/var/www/gitbox.net/images/sample.wbmp');

서버에는 쓰기 권한이 있어야합니다. 그렇지 않으면 파일 쓰기 실패가 발생합니다.

4. 효율성 향상에 대한 몇 가지 제안

  • 색상 배분 감소 : WBMP는 흑백 형식이므로 불필요한 메모리 사용을 피하기 위해 두 가지 색상 만 사용하십시오.

  • 가능한 빨리 리소스를 릴리스하십시오 : 메모리 누출을 피하기 위해 imageStroy () 를 통해 이미지 리소스를 제 시간에 해제하십시오.

  • 이미지 크기의 합리적인 제어 : WBMP는 주로 대형 캔버스가 필요하지 않고 가벼운 이미지 장면에서 주로 사용됩니다.

  • 캐시 처리 : 생성 된 WBMP 이미지는 중복 생성을 피하고 응답 속도를 향상시키기 위해 캐시 할 수 있습니다.

5. 네트워크 리소스 또는 동적 데이터 결합

동적 데이터에서 이미지를 생성하고 사용자 다운로드를 제공해야한다고 가정 해 봅시다.

 https://gitbox.net/gen_image.php?text=Hello

gen_image.php 에서 매개 변수를 읽은 후 텍스트를 그립니다.

 $text = $_GET['text'] ?? 'Default';

// 이미지를 만듭니다
$img = imagecreate(120, 30);
$white = imagecolorallocate($img, 255, 255, 255);
$black = imagecolorallocate($img, 0, 0, 0);

// 텍스트를 그립니다
imagestring($img, 5, 5, 8, $text, $black);

// 출력은입니다 WBMP
header("Content-Type: image/vnd.wap.wbmp");
imagewbmp($img);
imagedestroy($img);

결론

WBMP 형식은 현대 개발에서 자주 사용되지 않지만 특정 분야에서는 여전히 실질적인 중요성입니다. PHP는 imageCreate를 ImageCreate 와 결합하여 가벼운 흑백 이미지를 빠르게 생성하여 낮은 대역폭 및 낮은 메모리 환경에서 이미지 디스플레이 요구를 충족시킬 수 있습니다. 이 두 기능을 효율적으로 사용하는 핵심은 기본 동작을 이해하고, 자원을 합리적으로 할당하며, 출력 방법과 이미지 복잡성을 제어하는 ​​것입니다.