PHP에서 GD 라이브러리는 이미지를 처리하기위한 강력한 도구로 여러 이미지 형식의 생성, 수정 및 합성을 지원합니다. 실제 애플리케이션에서는 때때로 기존 GD2 이미지 파일에서 이미지를 읽은 다음 선, 텍스트, 모양 등을 그려야합니다. 이 기사는 imageCreatefromgd2 ()를 사용하여 .gd2 형식 이미지를로드하고 그래픽 도면을 위해 imageColorAllocate ()를 결합하는 방법을 자세히 소개합니다.
.gd2 는 압축 및 압축되지 않은 데이터를 지원하는 GD 라이브러리 전용 이미지 형식으로 빠른로드 및 처리에 적합합니다. 이것은 웹 페이지 (예 : JPEG, PNG)의 일반적인 이미지 형식은 아니지만 서버 측 이미지 처리에 유용합니다.
imageCreateFromgd2 (String $ filename)
.gd2 파일에서 이미지 리소스를 만듭니다. GD 이미지 리소스 핸들을 반환합니다.
imageColorAllocate (자원 $ image, int $ red, int $ green, int $ blue)
이미지에 색상을 할당하고 해당 색상의 식별자를 반환하십시오.
Imageline () , ImageEllipse () 및 imagestring () 과 같은 다른 일반적으로 사용되는 기능은 그래픽을 그리거나 텍스트를 추가하는 데 사용될 수 있습니다.
다음은 최종 출력을 PNG 이미지로서 .gd2 파일을로드하고 이미지에 그래프 (빨간색 선과 파란색 타원)를 그리는 방법을 보여주는 완전한 PHP 예제입니다.
<?php
// 설정 GD2 파일 경로(이 파일이 있는지 확인하십시오)
$gd2_file = 'https://m66.net/images/sample.gd2';
// 리모컨을 다운로드하십시오 GD2 로컬 임시 파일에 파일(GD2 직접 읽기는 지원되지 않습니다 URL)
$temp_file = tempnam(sys_get_temp_dir(), 'gd2');
file_put_contents($temp_file, file_get_contents($gd2_file));
// ~에서 GD2 파일 생성 이미지 리소스
$image = imagecreatefromgd2($temp_file);
if (!$image) {
die('이미지 리소스를 만들 수 없습니다,확인하세요 GD2 파일이 유효합니까?。');
}
// 이미지에 색상을 할당합니다
$red = imagecolorallocate($image, 255, 0, 0);
$blue = imagecolorallocate($image, 0, 0, 255);
// 이미지에 직선형 빨간색 선을 그립니다
imageline($image, 10, 10, 200, 200, $red);
// 파란색 타원을 그립니다
imageellipse($image, 150, 100, 100, 50, $blue);
// 설정输出为 PNG 영상
header('Content-Type: image/png');
imagepng($image);
// 자원을 자유롭게합니다
imagedestroy($image);
unlink($temp_file);
?>
imageCreateFromgd2 ()는 URL을 직접 읽을 수 없으므로 파일을 먼저 다운로드하여 로컬 임시 파일로 저장해야합니다.
GD2 이미지는 유효한 형식이거나로드가 실패해야합니다.
이미지를 출력하기 전에 올바른 컨텐츠 유형 헤더를 설정해야합니다.
브라우저는 직접 렌더링을 지원하지 않기 때문에 PNG, JPEG 및 기타 형식을 출력 할 것을 권장합니다.
이미지 워터 마킹 시스템 : 서버 측의 기존 이미지에 식별 또는 날짜를 동적으로 추가합니다.
이미지 편집 플랫폼 : 사용자가 업로드 한 이미지는 일시적으로 .gd2 형식으로 저장되어 표시 될 수 있습니다.
데이터 시각화 : 배경 논리에 따라 데이터 그래픽을 그립니다.