2
몇 달 전 나는 PHP to Retina
과 non
망막 이미지로 업로드 된 이미지를 변환하기 위해 다음 스크립트를 작성했습니다. 이 스크립트로 작업하던 아이폰 앱은 PNG 이미지 만 사용 했으므로 PNG로 작업 할 스크립트를 작성했습니다.PHP로 JPEG에서 망막 이미지를 만드는 방법
$filename = dirname(__FILE__)."/uploads/" . $_FILES['myFile']['name'];
$filename = str_replace('.png', '_retina.png', $filename);
file_put_contents($filename, file_get_contents($_FILES['myFile']['tmp_name']));
$image_info = getimagesize($filename);
$image = imagecreatefrompng($filename);
$width = imagesx($image);
$height = imagesy($image);
$new_width = $width/2.0;
$new_height = $height/2.0;
$new_image = imagecreatetruecolor($new_width, $new_height);
imagealphablending($new_image, false);
imagesavealpha($new_image, true);
$color = imagecolortransparent($new_image, imagecolorallocatealpha($new_image, 0, 0, 0, 127));
imagefill($new_image, 0, 0, $color);
imagecopyresampled($new_image, $image, 0, 0, 0, 0, $new_width, $new_height, $width, $height);
$new_filename = str_replace('_retina.png', '.png', $filename);
imagepng($new_image, $new_filename);
이제는 동일한 스크립트가 필요하지만 Jpeg 이미지와 함께 사용해야합니다. 아이폰 앱은 더 높은 해상도로 이미지를로드하므로 Jpeg를 선택했습니다. 그러나 나는 그 일을하는 방법을 알아낼 수 없습니다.
내가 지금까지 시도했습니다 무엇 :
- 은 JPEG 버전
imagepng
을 교체 JPEG 버전 - 으로
imagecreatefrompng
교체
는 사람이 동작하는 예제 또는 유용한 링크를 가지고 있는가 나를 올바른 방향으로 인도 할 수 있을까요?
투명성이없는 경우 저는 단지 'imagejpeg'을 사용합니다. –
@ MaximKhan-Magomedov 아, 기다려, 오프 그 jpeg 및 메신저 투명성 명령을 사용하여 그게 뭐죠? – RTB
PNG로 만들면 여전히 투명성을 가지고 작업 할 수 있다고 생각합니다. 그것은 회색으로 바뀔 것입니다 (나는 생각합니다). 마지막에 imagejpeg를 호출하여 저장합니다. –