이 글에서는 PHP를 사용하여 ico 아이콘을 생성하는 방법을 소개합니다. 도움이 필요한 친구들이 모두 참고할 수 있기를 바랍니다.
ico 아이콘은 모든 웹 사이트에서 사용해야 하며 사용 방법도 매우 간단합니다. 기본적으로 다음 방법이 주된 방법이지만 다른 방법도 있습니다.
<link rel="shortcut icon" href="/favicon.ico" />
일반적으로 ico 아이콘은 웹사이트의 루트 디렉터리에 위치하며, 이에 대한 명확한 규정은 없습니다.
먼저 다음 코드에서 사용할 함수는 주로 이미지 처리 함수입니다.
strtolower、end、imagecreatefromjpeg、imagecreatefromgif、imagecreatefrompng、getimagesize、imagecreatetruecolor、imagecopyresampled、imagejpeg、imagedestroy
1. strtolower 함수
strtolower 함수는 모든 문자열을 소문자로 변환하며 지원되는 버전은 PHP4입니다. 0+, 사용 방법:
<?php echo strtolower('This is strtolower function'); ?>
2. end 함수
end 함수는 배열의 내부 포인터를 마지막 요소로 가리키고 해당 요소의 값을 반환합니다. 지원되는 버전은 PHP4.0+입니다. 사용법:
<?php $info = array('red','yellow','blue','white'); echo end($info); ?>
3. Imagecreatefromjpeg 함수
imagecreatefromjpeg 함수는 jpg 또는 jpeg 형식을 로드하고, 성공하면 이미지 리소스를 반환하고, 실패하면 FALSE를 반환합니다. php.net에 제공된 지침은 다음과 같습니다. 파일 또는 URL에서 새 이미지를 만듭니다. 버전은 4.3 이상을 지원합니다. 사용 방법:
<?php $imgPath = './demo.jpg'; $im = @imagecreatefromjpeg($imgPath); ?>
4. Imagecreatefromgif 함수
사용법과 방법은 imagecreatefromjpeg( ) 기능.
5. Imagecreatefrompng 함수
사용 방법과 방법은 imagecreatefromjpeg() 함수와 유사합니다.
6. getimagesize 함수
getimagesize 함수, 이미지 크기 가져오기, JPC, JP2, JPX, JB2, XBM, WBMP, SWC, TIFF 및 기타 형식 지원, 성공하면 이미지 크기 및 파일 형식 가능 HTML 파일의 IMG 태그에 있는 높이/너비 텍스트 문자열은 false를 반환하고 실패할 경우 경고를 표시합니다. 개인적으로 PHP 버전 5.0 이상을 권장합니다. 사용 방법:
<?php $imgPath = './demo.png'; $info = getimagesize($imgPath); ?>
7. imagecreatetruecolor 함수
imagecreatetruecolor 함수, 새로운 트루 컬러 이미지 생성, 성공 후 이미지 리소스 반환, 실패 후 FALSE 반환. 사용 방법:
<?php $tmp = imagecreatetruecolor($width, $height); ?>
8. Imagecopyresampled 함수
imagecopyresampled 함수는 이미지의 일부를 리샘플링하고 복사하여 크기를 조정하고 한 이미지의 정사각형 영역을 다른 이미지로 복사하여 픽셀 값을 부드럽게 삽입합니다. , 뛰어난 선명도를 유지하면서 이미지 크기가 줄어듭니다.
<?php // 参数注释:目标图象连接资源,源图象连接资源,目标 X 坐标点,目标 Y 坐标点,源的 X 坐标点,源的 Y 坐标点,目标宽度,目标高度,源图象的宽度,源图象的高度 imagecopyresampled($tmp, $image, 0, 0, 0, 0, $newWidth, $newHeight, $width, $height); ?>
9.imagejpeg 기능
imagejpeg 기능, 이미지를 브라우저나 파일로 출력합니다. PHP 버전은 4.0 이상을 지원합니다. 사용 방법:
<?php // 参数注释:图像资源,路径,质量(默认值(-1)使用默认的IJG质量值(约75)) imagejpeg($tmp, $directory . $filename, 100); ?>
10. imagedestroy 함수
imagedestroy 함수는 이미지를 파괴하고 관련 메모리를 해제합니다. PHP 버전은 4.0 이상을 지원합니다. 사용 방법:
<?php imagedestroy('./demo.png'); ?>
총 10개의 기능이 있습니다. 일부 기본 기능은 도입되지 않았습니다. 다음은 ico를 생성하는 코드입니다.
/** * 创建ico图标 * @return string * */ public function icon() { if(request()->isPost()) { //获取图片信息 $postVars = ["image" => trim($_FILES["image"]["name"]), "image_tmp" => $_FILES["image"]["tmp_name"], "image_size" => (int)$_FILES["image"]["size"], "image_dimensions" => (int)$_POST["image_dimensions"]]; //设置图片格式 $validExts = ["jpg", "jpeg", "gif", "png"]; //设置图片文件大小 175kb $max_file_size = 179200; //图片名称和类型 $filenameParts = explode(".", $postVars["image"]); //获取图片格式 $ext = strtolower(end($filenameParts)); //设置图片存储路径 $directory = "./favicon/"; //设置命名格式 $rand = time(); $filename = $rand . $postVars["image_size"]; //判断图片大小 if($postVars["image_size"] <= $max_file_size) { //判断图片格式 if(in_array($ext, $validExts)) { //依据格式使用不同函数 if($ext == "jpg" || $ext == "jpeg") { $image = imagecreatefromjpeg($postVars["image_tmp"]); } else if($ext == "gif") { $image = imagecreatefromgif($postVars["image_tmp"]); } else if($ext == "png") { $image = imagecreatefrompng($postVars["image_tmp"]); } if($image) { list($width, $height) = getimagesize($postVars["image_tmp"]); $newWidth = $postVars["image_dimensions"]; $newHeight = $postVars["image_dimensions"]; $tmp = imagecreatetruecolor($newWidth, $newHeight); //将图像复制到具有新宽度和高度的图像 imagecopyresampled($tmp, $image, 0, 0, 0, 0, $newWidth, $newHeight, $width, $height); //创建100%质量的图像文件 if(is_dir($directory)) { if(is_writable($directory)) { imagejpeg($tmp, $directory . $filename, 100) or die('没有创建文件的权限'); if(file_exists($directory . $filename)) { //重命名 $newFilename = md5(time()); rename($directory . $filename, $directory . $newFilename . ".ico"); return '"http://'.$_SERVER['SERVER_NAME'] . substr($directory, 1).$newFilename.".ico"; } else { echo "指定的文件不可写"; } } else { return '目录:' . $directory . '"无写入权限'; } } else { return '目录: "' . $directory . '"不存在'; } imagedestroy($image); imagedestroy($tmp); } else { return "无法创建图像文件"; } } else { return "图标过大,不能超过175KB"; } } else { return "图片格式只能是后面几种 (jpg, jpeg, gif, png)."; } } else { return view('Index/icon'); } }
추천 학습: "PHP Video Tutorial"
위 내용은 PHP를 사용하여 ICO 아이콘을 생성하는 방법에 대한 간략한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!