<span><span><span class="hljs-meta"><?php</span></span><span>
<span class="hljs-comment">/*
이 예제 기사는 방법을 설명합니다 imagepalettecopy 그리고 imagecreate 기능을 조합하여 사용합니다,
并通过实例代码展示其응용 프로그램 시나리오그리고技巧。
*/</span>
</span><span><span class="hljs-meta">?></span></span><span>
----------------------------------------
</span><span><span class="hljs-comment"># 방법 imagepalettecopy 그리고 imagecreate 기능을 조합하여 사용합니다?실제 사례를 공유하십시오</span></span><span>
</span><span><span class="hljs-comment">## 하나、`imagecreate` 그리고 `imagepalettecopy` 소개</span></span><span>
- **`</span><span><span class="hljs-title function_ invoke__">imagecreate</span></span><span>(</span><span><span class="hljs-keyword">int</span></span><span> </span><span><span class="hljs-variable">$width</span></span><span>, </span><span><span class="hljs-keyword">int</span></span><span> </span><span><span class="hljs-variable">$height</span></span><span>)`**
用于创建하나个基于调色板的图像(색인 색상 이미지),색상 수가 제한된 사진을 처리하는 데 적합합니다。
返回值是하나个图像资源句柄。
- **`</span><span><span class="hljs-title function_ invoke__">imagepalettecopy</span></span><span>(resource </span><span><span class="hljs-variable">$dst</span></span><span>, resource </span><span><span class="hljs-variable">$src</span></span><span>)`**
</span><span><span class="hljs-comment">## 둘、응용 프로그램 시나리오</span></span><span>
</span><span><span class="hljs-number">1</span></span><span>. **같은 스타일의 대량 썸네일 생성**
</span><span><span class="hljs-number">2</span></span><span>. **인덱스 이미지의 팔레트 동기화**
여러 인덱스 이미지를 병합하거나 나중에 비교 해야하는 경우,调色板保持하나致非常重要。
</span><span><span class="hljs-comment">## 삼、코드 예제</span></span><span>
```php
</span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// 소스 이미지를 만듭니다(색인 색상)</span></span><span>
</span><span><span class="hljs-variable">$src</span></span><span> = </span><span><span class="hljs-title function_ invoke__">imagecreate</span></span><span>(</span><span><span class="hljs-number">200</span></span><span>, </span><span><span class="hljs-number">200</span></span><span>);
</span><span><span class="hljs-variable">$red</span></span><span> = </span><span><span class="hljs-title function_ invoke__">imagecolorallocate</span></span><span>(</span><span><span class="hljs-variable">$src</span></span><span>, </span><span><span class="hljs-number">255</span></span><span>, </span><span><span class="hljs-number">0</span></span><span>, </span><span><span class="hljs-number">0</span></span><span>);
</span><span><span class="hljs-variable">$green</span></span><span> = </span><span><span class="hljs-title function_ invoke__">imagecolorallocate</span></span><span>(</span><span><span class="hljs-variable">$src</span></span><span>, </span><span><span class="hljs-number">0</span></span><span>, </span><span><span class="hljs-number">255</span></span><span>, </span><span><span class="hljs-number">0</span></span><span>);
</span><span><span class="hljs-variable">$blue</span></span><span> = </span><span><span class="hljs-title function_ invoke__">imagecolorallocate</span></span><span>(</span><span><span class="hljs-variable">$src</span></span><span>, </span><span><span class="hljs-number">0</span></span><span>, </span><span><span class="hljs-number">0</span></span><span>, </span><span><span class="hljs-number">255</span></span><span>);
</span><span><span class="hljs-comment">// 배경을 빨간색으로 채우십시오</span></span><span>
</span><span><span class="hljs-title function_ invoke__">imagefill</span></span><span>(</span><span><span class="hljs-variable">$src</span></span><span>, </span><span><span class="hljs-number">0</span></span><span>, </span><span><span class="hljs-number">0</span></span><span>, </span><span><span class="hljs-variable">$red</span></span><span>);
</span><span><span class="hljs-comment">// 대상 이미지를 만듭니다(색인 색상)</span></span><span>
</span><span><span class="hljs-variable">$dst</span></span><span> = </span><span><span class="hljs-title function_ invoke__">imagecreate</span></span><span>(</span><span><span class="hljs-number">200</span></span><span>, </span><span><span class="hljs-number">200</span></span><span>);
</span><span><span class="hljs-title function_ invoke__">imagepalettecopy</span></span><span>(</span><span><span class="hljs-variable">$dst</span></span><span>, </span><span><span class="hljs-variable">$src</span></span><span>);
</span><span><span class="hljs-title function_ invoke__">imagefill</span></span><span>(</span><span><span class="hljs-variable">$dst</span></span><span>, </span><span><span class="hljs-number">0</span></span><span>, </span><span><span class="hljs-number">0</span></span><span>, </span><span><span class="hljs-variable">$blue</span></span><span>);
</span><span><span class="hljs-comment">// 비교를위한 출력 사진</span></span><span>
</span><span><span class="hljs-title function_ invoke__">header</span></span><span>(</span><span><span class="hljs-string">"Content-Type: image/png"</span></span><span>);
</span><span><span class="hljs-comment">// 대상 이미지 만 여기에서 출력됩니다,보기 위해 필요에 따라 두 개의 이미지를 저장할 수 있습니다</span></span><span>
</span><span><span class="hljs-title function_ invoke__">imagepng</span></span><span>(</span><span><span class="hljs-variable">$dst</span></span><span>);
</span><span><span class="hljs-comment">// 자원을 자유롭게합니다</span></span><span>
</span><span><span class="hljs-title function_ invoke__">imagedestroy</span></span><span>(</span><span><span class="hljs-variable">$src</span></span><span>);
</span><span><span class="hljs-title function_ invoke__">imagedestroy</span></span><span>(</span><span><span class="hljs-variable">$dst</span></span><span>);
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>
ImageCreate 와 ImagePalettecopy 의 조합을 통해 여러 인덱스 이미지 중 동일한 색상 팔레트를 쉽게 공유하여 동일한 색상을 수동으로 할당하는 중복 작업을 피할 수 있습니다. 이 방법은 배치 처리, 색상 팔레트 동기화 및 시각적 균일 성 유지와 같은 시나리오에서 매우 실용적입니다. 이러한 기능의 사용을 마스터하면 PHP 이미지 처리 프로젝트에서 색상 데이터를보다 효율적으로 관리하는 데 도움이됩니다.
<span></span>