CodeIgniter 한국사용자포럼 BETA
빠르고, 유연한 PHP Framework!

CI 코드


이미지 등분하기_helper      
마냐 0 2,226 0 0 2010-06-18 16:02:49
function divide_image($imgPath, $x, $y) {
	$path = pathinfo($imgPath);
	$imgDir  = $path['dirname'];
	$imgExt  = '.'.$path['extension'];
	$imgName = $path['filename'];

	if (!file_exists($imgDir.'/'.$imgName.'_C0'.$imgExt)) {
		$CI =& get_instance();
		$CI->load->library('image_lib');

		$size = getimagesize($imgPath);

		$cw = $size[0];
		$ch = $size[1] / $y;
		
		$pw = $cw / $x;
		$ph = $ch;

		$p = 1;
		for ($i=0; $i<$y; $i++) {
			$imgCrop = $imgDir.'/'.$imgName.'_C'.$i.$imgExt;
			$config = array(
				'source_image'	 => $imgPath,
				'new_image'		 => $imgCrop,
				'create_thumb'	 => true,
				'thumb_marker'	 => false,
				'maintain_ratio' => false,
				'width'			 => $cw,
				'height'		 => $ch,
				'x_axis'		 => 0,
				'y_axis'		 => $i * $ch
			);
			$CI->image_lib->initialize($config);
			if ($CI->image_lib->crop()) {
				for ($j=0; $j<$x; $j++) {
					$config = array(
						'source_image'	 => $imgCrop,
						'new_image'		 => $imgDir.'/'.$imgName.'_P'.$p.$imgExt,
						'create_thumb'	 => true,
						'thumb_marker'	 => false,
						'maintain_ratio' => false,
						'width'			 => $pw,
						'height'		 => $ph,
						'x_axis'		 => $j * $pw,
						'y_axis'		 => 0
					);
					$CI->image_lib->initialize($config); 
					$CI->image_lib->crop();
					$p++;
				}
			}
		}
	}

	$imgDir = str_replace(DATA_PATH, DATA_DIR, $imgDir);

	$pcount = $x * $y;
	$plist = array();
	for ($i=1; $i<=$pcount; $i++) {
		$plist[$i]->img = $imgDir.'/'.$imgName.'_P'.$i.$imgExt;
		$plist[$i]->key = $i;
	}

	return $plist;
}

divide_image(DATA_PATH.'/image.jpg', 3, 6);


- 상수소개 
DATA_PATH = $_SERVER['DOCUMENT_ROOT'];
DATA_DIR = '/';

- 예제
1) http://www.tested.co.kr 메인페이지 배경
2) http://www.tested.co.kr/exper/puzzle

  목록  

번호 제   목 글쓴이 날짜 조회 추천수
580 CodeIgniter SimpleXML library [0] 타로 2012-02-05 29 0
577 CI 와 Smarty 템플릿의 결합 [2] 불의회상 2012-01-26 156 0
573 Okada Design Blog 소개 [3] 타로 2012-01-12 272 0
568 woctopus 계정관리도구 [2] milosz 2012-01-09 211 0
566 업로드된 이미지 정사각형으로 썸네일 만드는 함수 [3] 불의회상 2012-01-06 221 0
554 코드 이그나이터를 접하고 처음으로 만들어본 객체 입.. [6] 내일은 2011-11-11 1246 0
528 모델코드 생성기 [25] 불의회상 2011-10-13 1144 1
525 ci memo + tank_auth [2] milosz 2011-10-04 943 0
512 포럼소스를 2.0.1 버전에 맞게 수정하였습니다. [2] 탱크 2011-04-02 3546 2
509 CI 메뉴얼 CHM 버전(영문 2.0) [1] 브라이언 2011-03-30 1242 0
508 CI 메뉴얼 CHM 버전 [0] 브라이언 2011-03-30 1382 0
494 ci memo [8] pam 2011-02-20 1971 1
489 CI 압축 프로그램 [2] 준이 2010-12-27 1636 0
482 듬직이님의 헬퍼 ip 부분 추가. [0] 나이유미 2010-11-22 1998 0
475 SELECT() 사용 시 문제점 [2] 마냐 2010-09-16 2742 0
473 CI의 사용자 인증 소스파일 [2] corean 2010-09-12 3142 0
471 CI 1.7.2 한글 언어팩 1.1 [1] cleansugar 2010-08-26 2220 0
470 Upload 라이브러리 수정본 [0] sisco 2010-07-28 2398 0
464 iScaffold [4] 준이 2010-07-26 1980 0
458 이미지 등분하기_helper [0] 마냐 2010-06-18 2226 0