Diff
checker
텍스트
텍스트
이미지
문서
Excel
폴더
Legal
Enterprise
데스크톱
요금제
로그인
데스크톱 앱 다운로드
텍스트 비교
두 텍스트 파일의 차이점을 찾아보세요
도구
기록
실시간 편집
변경 없는 행 숨기기
줄바꿈 비활성화
레이아웃
나란히 보기
합쳐 보기
비교 단위
스마트
단어
글자
구문 강조
언어 선택
제외
텍스트 변환
첫 변경으로
수정
Diffchecker Desktop
가장 안전하게 Diffchecker를 사용하는 방법. 데스크톱 앱을 사용하면 비교 데이터가 외부로 전송되지 않습니다!
데스크톱 앱 받기
resize.image.class.php
생성일
5년 전
비교 결과 만료 없음
초기화
내보내기
공유
설명
2 삭제
행
총
삭제
글자
총
삭제
이 기능을 계속 사용하려면 업그레이드해 주세요
Diff
checker
Pro
요금제 보기
94 행
복사
42 추가
행
총
추가
글자
총
추가
이 기능을 계속 사용하려면 업그레이드해 주세요
Diff
checker
Pro
요금제 보기
131 행
복사
<?php
<?php
/**
/**
* @title J51 Thumbs Gallery
* @title J51 Thumbs Gallery
* @version 1.1
* @version 1.1
* @website http://www.joomla51.com
* @website http://www.joomla51.com
* @copyright Copyright (C) 2012 Joomla51.com. All rights reserved.
* @copyright Copyright (C) 2012 Joomla51.com. All rights reserved.
* @license GNU/GPL, see LICENSE.php
* @license GNU/GPL, see LICENSE.php
Credits: Bit Repository
Credits: Bit Repository
Source URL: http://www.bitrepository.com/web-programming/php/resizing-an-image.html
Source URL: http://www.bitrepository.com/web-programming/php/resizing-an-image.html
------------------------------------------------------------------------------------
------------------------------------------------------------------------------------
*/
*/
class Resize_Image
class Resize_Image
{
{
var $image_to_resize;
var $image_to_resize;
var $new_width;
var $new_width;
var $new_height;
var $new_height;
var $save;
var $save;
function resize()
function resize()
{
{
if( !file_exists( $this -> image_to_resize ) )
if( !file_exists( $this -> image_to_resize ) )
{
{
exit( "File " . $this -> image_to_resize . " does not exist." );
exit( "File " . $this -> image_to_resize . " does not exist." );
}
}
$info = GetImageSize( $this -> image_to_resize );
$info = GetImageSize( $this -> image_to_resize );
if( empty( $info ) )
if( empty( $info ) )
{
{
exit( "The file " . $this -> image_to_resize . " doesn't seem to be an image." );
exit( "The file " . $this -> image_to_resize . " doesn't seem to be an image." );
}
}
$width = $info[ 0 ];
$width = $info[ 0 ];
$height = $info[ 1 ];
$height = $info[ 1 ];
$mime = $info[ 'mime' ];
$mime = $info[ 'mime' ];
$type = substr( strrchr( $mime, '/' ), 1 );
$type = substr( strrchr( $mime, '/' ), 1 );
switch( $type )
switch( $type )
{
{
case 'jpeg':
case 'jpeg':
$image_create_func = 'ImageCreateFromJPEG';
$image_create_func = 'ImageCreateFromJPEG';
$image_save_func = 'ImageJPEG';
$image_save_func = 'ImageJPEG';
$new_image_ext = 'jpg';
$new_image_ext = 'jpg';
break;
break;
case 'png':
case 'png':
$image_create_func = 'ImageCreateFromPNG';
$image_create_func = 'ImageCreateFromPNG';
$image_save_func = 'ImagePNG';
$image_save_func = 'ImagePNG';
$new_image_ext = 'png';
$new_image_ext = 'png';
break;
break;
case 'bmp':
case 'bmp':
$image_create_func = 'ImageCreateFromBMP';
$image_create_func = 'ImageCreateFromBMP';
$image_save_func = 'ImageBMP';
$image_save_func = 'ImageBMP';
$new_image_ext = 'bmp';
$new_image_ext = 'bmp';
break;
break;
case 'gif':
case 'gif':
$image_create_func = 'ImageCreateFromGIF';
$image_create_func = 'ImageCreateFromGIF';
$image_save_func = 'ImageGIF';
$image_save_func = 'ImageGIF';
$new_image_ext = 'gif';
$new_image_ext = 'gif';
break;
break;
case 'vnd.wap.wbmp':
case 'vnd.wap.wbmp':
$image_create_func = 'ImageCreateFromWBMP';
$image_create_func = 'ImageCreateFromWBMP';
$image_save_func = 'ImageWBMP';
$image_save_func = 'ImageWBMP';
$new_image_ext = 'bmp';
$new_image_ext = 'bmp';
break;
break;
case 'xbm':
case 'xbm':
$image_create_func = 'ImageCreateFromXBM';
$image_create_func = 'ImageCreateFromXBM';
$image_save_func = 'ImageXBM';
$image_save_func = 'ImageXBM';
$new_image_ext = 'xbm';
$new_image_ext = 'xbm';
break;
break;
default: $image_create_func = 'ImageCreateFromJPEG';
default: $image_create_func = 'ImageCreateFromJPEG';
$image_save_func = 'ImageJPEG';
$image_save_func = 'ImageJPEG';
$new_image_ext = 'jpg';
$new_image_ext = 'jpg';
}// New Image
}// New Image
복사
복사됨
복사
복사됨
$image_c = ImageCreateTrueColor( $this -> new_width, $this -> new_height );
//
$image_c = ImageCreateTrueColor( $this -> new_width, $this -> new_height );
// Set a maximum height and width
$new_width = $this -> new_width;
$new_height = $this -> new_height;
//$ratio_orig = $width/$height;
//if ($new_width/$new_height > $ratio_orig) {
// $new_width = (int)$new_height*$ratio_orig;
//} else {
// $new_height = $new_width/$ratio_orig;
//}
// resize
$crop = true;
if($crop){
//if($width < $new_width or $height < $new_height) return "Picture is too small!";
$ratio = max($new_width/$width, $new_height/$height);
$height = $new_height / $ratio;
$x = ($width - $new_width / $ratio) / 2;
$width = $new_width / $ratio;
}
else{
//if($width < $new_width and $height < $new_height) return "Picture is too small!";
$ratio = min($new_width/$width, $new_height/$height);
$new_width = $width * $ratio;
$new_height = $height * $ratio;
$x = 0;
}
$image_c = ImageCreateTrueColor( $new_width, $new_height );
if ($type=='png') {
if ($type=='png') {
imagealphablending($image_c, false);
imagealphablending($image_c, false);
imagesavealpha($image_c, true);
imagesavealpha($image_c, true);
}
}
$new_image = $image_create_func( $this -> image_to_resize );
$new_image = $image_create_func( $this -> image_to_resize );
if ($type=='png') {
if ($type=='png') {
imagealphablending($new_image, true);
imagealphablending($new_image, true);
}
}
복사
복사됨
복사
복사됨
ImageCopyResampled( $image_c, $new_image, 0, 0, 0, 0, $this -> new_width, $this -> new_height, $width, $height );
//
ImageCopyResampled( $image_c, $new_image, 0, 0, 0, 0, $this -> new_width, $this -> new_height, $width, $height );
//ImageCopyResampled( $image_c, $new_image, 0, 0, 0, 0, $new_width, $new_height, $width, $height );
ImageCopyResampled( $image_c, $new_image, 0, 0, $x, 0, $new_width, $new_height, $width, $height );
$process = $image_save_func( $image_c, $this->save );
$process = $image_save_func( $image_c, $this->save );
복사
복사됨
복사
복사됨
// Free up the memory.
imagedestroy($image);
imagedestroy($newImage);
return array( 'result' => $process, 'new_file_path' => $this->save );
return array( 'result' => $process, 'new_file_path' => $this->save );
}
}
}
}
?>
?>
저장된 비교 결과
원본
파일 열기
<?php /** * @title J51 Thumbs Gallery * @version 1.1 * @website http://www.joomla51.com * @copyright Copyright (C) 2012 Joomla51.com. All rights reserved. * @license GNU/GPL, see LICENSE.php Credits: Bit Repository Source URL: http://www.bitrepository.com/web-programming/php/resizing-an-image.html ------------------------------------------------------------------------------------ */ class Resize_Image { var $image_to_resize; var $new_width; var $new_height; var $save; function resize() { if( !file_exists( $this -> image_to_resize ) ) { exit( "File " . $this -> image_to_resize . " does not exist." ); } $info = GetImageSize( $this -> image_to_resize ); if( empty( $info ) ) { exit( "The file " . $this -> image_to_resize . " doesn't seem to be an image." ); } $width = $info[ 0 ]; $height = $info[ 1 ]; $mime = $info[ 'mime' ]; $type = substr( strrchr( $mime, '/' ), 1 ); switch( $type ) { case 'jpeg': $image_create_func = 'ImageCreateFromJPEG'; $image_save_func = 'ImageJPEG'; $new_image_ext = 'jpg'; break; case 'png': $image_create_func = 'ImageCreateFromPNG'; $image_save_func = 'ImagePNG'; $new_image_ext = 'png'; break; case 'bmp': $image_create_func = 'ImageCreateFromBMP'; $image_save_func = 'ImageBMP'; $new_image_ext = 'bmp'; break; case 'gif': $image_create_func = 'ImageCreateFromGIF'; $image_save_func = 'ImageGIF'; $new_image_ext = 'gif'; break; case 'vnd.wap.wbmp': $image_create_func = 'ImageCreateFromWBMP'; $image_save_func = 'ImageWBMP'; $new_image_ext = 'bmp'; break; case 'xbm': $image_create_func = 'ImageCreateFromXBM'; $image_save_func = 'ImageXBM'; $new_image_ext = 'xbm'; break; default: $image_create_func = 'ImageCreateFromJPEG'; $image_save_func = 'ImageJPEG'; $new_image_ext = 'jpg'; }// New Image $image_c = ImageCreateTrueColor( $this -> new_width, $this -> new_height ); if ($type=='png') { imagealphablending($image_c, false); imagesavealpha($image_c, true); } $new_image = $image_create_func( $this -> image_to_resize ); if ($type=='png') { imagealphablending($new_image, true); } ImageCopyResampled( $image_c, $new_image, 0, 0, 0, 0, $this -> new_width, $this -> new_height, $width, $height ); $process = $image_save_func( $image_c, $this->save ); return array( 'result' => $process, 'new_file_path' => $this->save ); } } ?>
수정본
파일 열기
<?php /** * @title J51 Thumbs Gallery * @version 1.1 * @website http://www.joomla51.com * @copyright Copyright (C) 2012 Joomla51.com. All rights reserved. * @license GNU/GPL, see LICENSE.php Credits: Bit Repository Source URL: http://www.bitrepository.com/web-programming/php/resizing-an-image.html ------------------------------------------------------------------------------------ */ class Resize_Image { var $image_to_resize; var $new_width; var $new_height; var $save; function resize() { if( !file_exists( $this -> image_to_resize ) ) { exit( "File " . $this -> image_to_resize . " does not exist." ); } $info = GetImageSize( $this -> image_to_resize ); if( empty( $info ) ) { exit( "The file " . $this -> image_to_resize . " doesn't seem to be an image." ); } $width = $info[ 0 ]; $height = $info[ 1 ]; $mime = $info[ 'mime' ]; $type = substr( strrchr( $mime, '/' ), 1 ); switch( $type ) { case 'jpeg': $image_create_func = 'ImageCreateFromJPEG'; $image_save_func = 'ImageJPEG'; $new_image_ext = 'jpg'; break; case 'png': $image_create_func = 'ImageCreateFromPNG'; $image_save_func = 'ImagePNG'; $new_image_ext = 'png'; break; case 'bmp': $image_create_func = 'ImageCreateFromBMP'; $image_save_func = 'ImageBMP'; $new_image_ext = 'bmp'; break; case 'gif': $image_create_func = 'ImageCreateFromGIF'; $image_save_func = 'ImageGIF'; $new_image_ext = 'gif'; break; case 'vnd.wap.wbmp': $image_create_func = 'ImageCreateFromWBMP'; $image_save_func = 'ImageWBMP'; $new_image_ext = 'bmp'; break; case 'xbm': $image_create_func = 'ImageCreateFromXBM'; $image_save_func = 'ImageXBM'; $new_image_ext = 'xbm'; break; default: $image_create_func = 'ImageCreateFromJPEG'; $image_save_func = 'ImageJPEG'; $new_image_ext = 'jpg'; }// New Image //$image_c = ImageCreateTrueColor( $this -> new_width, $this -> new_height ); // Set a maximum height and width $new_width = $this -> new_width; $new_height = $this -> new_height; //$ratio_orig = $width/$height; //if ($new_width/$new_height > $ratio_orig) { // $new_width = (int)$new_height*$ratio_orig; //} else { // $new_height = $new_width/$ratio_orig; //} // resize $crop = true; if($crop){ //if($width < $new_width or $height < $new_height) return "Picture is too small!"; $ratio = max($new_width/$width, $new_height/$height); $height = $new_height / $ratio; $x = ($width - $new_width / $ratio) / 2; $width = $new_width / $ratio; } else{ //if($width < $new_width and $height < $new_height) return "Picture is too small!"; $ratio = min($new_width/$width, $new_height/$height); $new_width = $width * $ratio; $new_height = $height * $ratio; $x = 0; } $image_c = ImageCreateTrueColor( $new_width, $new_height ); if ($type=='png') { imagealphablending($image_c, false); imagesavealpha($image_c, true); } $new_image = $image_create_func( $this -> image_to_resize ); if ($type=='png') { imagealphablending($new_image, true); } //ImageCopyResampled( $image_c, $new_image, 0, 0, 0, 0, $this -> new_width, $this -> new_height, $width, $height ); //ImageCopyResampled( $image_c, $new_image, 0, 0, 0, 0, $new_width, $new_height, $width, $height ); ImageCopyResampled( $image_c, $new_image, 0, 0, $x, 0, $new_width, $new_height, $width, $height ); $process = $image_save_func( $image_c, $this->save ); // Free up the memory. imagedestroy($image); imagedestroy($newImage); return array( 'result' => $process, 'new_file_path' => $this->save ); } } ?>
비교하기