2011. 2. 25. 17:53 PROGRAMMING
[JAVA] 이미지 리사이즈용 소스, 썸네일 만들기, THUMBNAIL, IMAGE, RESIZE

사용법은 패스~

import [패키지];

File fileSource=new File("C:\ORIGINAL\","SOURCE.JPG");
File fileThumb=new File("C:\TEST\","AHNDOORI.JPG");  
ImageUtil.resizeImage(fileSource,fileThumb,128,96);

 

package [패키지];

import java.io.File;
import java.io.IOException;
import java.awt.Image;
import java.awt.image.BufferedImage;
import java.awt.image.PixelGrabber;
import javax.imageio.ImageIO;
import javax.swing.ImageIcon;

public class ImageUtil{
 public static final int RATIO=0;
 public static final int SAME=-1;

 // 소스파일, 타겟파일, 최대값
 public static void resizeImage(File src,File dest,int boxsize) throws IOException{
  int width=0;
  int height=0;
  Image srcImg=setImage(src);
  int srcWidth=srcImg.getWidth(null);
  int srcHeight=srcImg.getHeight(null);

  if(srcWidth>srcHeight){
   width=boxsize;
   height=(int) ((double) boxsize/(double) srcWidth);
  }else if(srcWidth<srcHeight){
   width=(int) ((double) boxsize/(double) srcHeight);
   height=boxsize;
  }else {
   width=boxsize;
   height=boxsize;
  }

  try{
   if(srcWidth<=boxsize && srcHeight<=boxsize) resizeImage(src, dest, -1, -1);
   else resizeImage(src, dest, width, height);
  }catch(IOException e){
   throw e;
  }
 }

 // 소스파일, 타겟파일, 넓이, 높이
 public static void resizeImage(File src,File dest,int width,int height) throws IOException{
  Image srcImg=setImage(src);

  int srcWidth=srcImg.getWidth(null);
  int srcHeight=srcImg.getHeight(null);
  int destWidth=-1, destHeight=-1;

  if(width==SAME) destWidth=srcWidth;
  else if(width>0) destWidth=width;

  if(height==SAME) destHeight=srcHeight;
  else if(height>0) destHeight=height;

  if(width==RATIO && height==RATIO){
   destWidth=srcWidth;
   destHeight=srcHeight;
  }else if(width==RATIO){
   double ratio=((double) destHeight)/((double) srcHeight);
   destWidth=(int) ((double) srcWidth*ratio)-1;
  }else if(height==RATIO){
   double ratio=((double) destWidth)/((double) srcWidth);
   destHeight=(int) ((double) srcHeight*ratio)-1;
  }

  Image imgTarget=srcImg.getScaledInstance(destWidth,destHeight,Image.SCALE_SMOOTH);
  int pixels[]=new int[destWidth*destHeight];
  PixelGrabber pg=new PixelGrabber(imgTarget, 0, 0, destWidth, destHeight, pixels, 0, destWidth);
  try{
   pg.grabPixels();
  }catch(InterruptedException e){
   throw new IOException(e.getMessage());
  }
  BufferedImage destImg=new BufferedImage(destWidth, destHeight, BufferedImage.TYPE_INT_RGB);
  destImg.setRGB(0, 0, destWidth, destHeight, pixels, 0, destWidth);
  ImageIO.write(destImg, "jpg", dest);
 }

 private static Image setImage(File src) throws IOException{
  Image srcImg=null;
  String suffix=src.getName().substring(src.getName().lastIndexOf('.')+1).toLowerCase();
  if(suffix.equals("bmp")) srcImg=ImageIO.read(src);
  else srcImg=new ImageIcon(src.toURI().toURL()).getImage();
  return srcImg;
 }

}

2011. 1. 4. 17:49 ETC
메신저용 GIF 애니메이션 이모티콘 모음

 얼음

 뭐냐

 

 따봉



 ㅜ.ㅜ

 



 

















 가드를 올리세요



 판다 브레이크댄스









 말인지 개인지 정체가 불분명

2010. 7. 23. 17:34 ANDROID IOS
[iPhone/Xcode] 어플 도큐먼트에 이미지 파일 저장/로드

앱 자체에 이미지를 저장하고 로드하는 방법입니다.

각각의 앱에는 지정된 도큐먼트 디렉토리가 할당됩니다.

디렉토리를 얻어오고 파일명을 지정하여 저장/로드 하는 코드입니다.



경로형식 /Users/kaudo/Library/Application Support/iPhone Simulator/4.0.1/Applications/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX/Documents/


이미지 저장

NSArray *aryPath=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES);

NSString *strPathBackground=[NSString stringWithFormat:@"%@/kaudo.jpg",[aryPath objectAtIndex:0]];

NSData *imageData = [NSData dataWithData:UIImageJPEGRepresentation(imgBackground,80)];

[imageData writeToFile:strPathBackground atomically:YES];


이미지 로드

NSArray *aryPath=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES);

NSString *strPathBackground=[NSString stringWithFormat:@"%@/kaudo.jpg",[aryPath objectAtIndex:0]];

imageView.image=[[UIImage allocinitWithContentsOfFile:strPathBackground];



2010. 7. 21. 16:31 ANDROID IOS
[MAC/XCODE] 아이폰 시뮬레이터(iPhone Simulator)에 이미지/사진 넣기
개발하다가 이미지피커라도 만들면 테스트할 이미지가 없어서 난감해요.
그러면 아이폰에 직접 올려서 테스트하던가 (이건아니죠.)
시뮬레이터에 이미지를 넣은 후에 테스트하던가


1. 넣을 이미지를 드래그해서 시뮬레이터에 놓습니다.


2. 드래그하면 사파리에서 열어주는데, 사진에 대고 몇초간 마우스버튼을 누릅니다.


3. 그러면 저장할지 물어보는 메뉴가 나옵니다. 저장하세요.


4. 앨범에 가보면 사진이 나옵니다. 저장했는데 저장안될때도 있습니다.


2009. 11. 30. 22:12 WINDOWS
[WINDOWS/IIS] IIS(인터넷 정보 서비스)에서 확장자 없는 이미지 표시, 윈도우2008, Windows Server

Windows 2008에서 IIS사용.
확장자 없는 이미지는 엑박이 뜨는 불쌍사가 발생,


각 사이트나 웹서버의 'MIME 형식' 에서 '.*'을 추가해야 합니다.

파일 이름 확장명: .*
MIME 형식: application/octet-stream

아파치같은애들은 기본적으로 등록되어있지만 IIS에 없을줄이야

2009. 6. 22. 12:33 ETC
kaudo.com 배경 사진
2009. 6. 16. 16:08 PROGRAMMING
php로 thumbnail만들기
옛날에 쓰던 고대코드
당근 gd2는 깔려있어야 작동합니다. 출력은 jpg로 하게 되어있습니다.
원래는 apm환경에서 쓰던건데 방금 windows php에서 테스트해보고 올립니다.
사용법:
Thumbnail(넓이,높이,대상파일,출력파일(지정안해도됨));
Thumbnail(120,120,$dir.$newFilename);
소스:
function Thumbnail($Width,$Height,$File,$FileName=false){
	//Created by Kaudo www.kaudo.com
	global$File_type;
	$ImageSize=ShrinkImage(max($Width,$Height),$File);
	if(!$FileName && strpos($File,".")<0) $FileName=$File."_thumb";
	elseif(!$FileName) $FileName=substr($File,0,strrpos($File,"."))."_thumb.jpg";
	$ImageInfo=getimagesize($File);
	if($ImageInfo[0]==$Width && $ImageInfo[1]==$Height) copy($File,$FileName);
	else{
		$Image=imagecreatetruecolor($ImageSize[0],$ImageSize[1]);
		if($ImageInfo[2]==1) $Source=imagecreatefromgif($File);
		elseif($ImageInfo[2]==2) $Source=imagecreatefromjpeg($File);
		elseif($ImageInfo[2]==6) $Source=imagecreatefromwbmp($File);
		imagecopyresized($Image,$Source,0,0,0,0,$ImageSize[0],$ImageSize[1],$ImageInfo[0],$ImageInfo[1]);
		imagejpeg($Image,$FileName);}}

function ShrinkImage($Max,$Name){
	//Created by Kaudo www.kaudo.com
	if($Name) $Img=GetImageSize($Name);
	if($Img[0]>$Max || $Img[1]>$Max){
		$Value=$Max/$Img[0];
		for($i=0;$i<2;$i++) $Imgs[$i]=round($Img[$i]*$Value);
		if($Imgs[1]>$Max){
			$Value=$Max/$Img[1];
			for($i=0;$i<2;$i++) $Imgs[$i]=round($Img[$i]*$Value);}
	}else $Imgs=$Img;
	$Imgs[2]=$Img[0];
	$Imgs[3]=$Img[1];
	return $Imgs;}

최근에 올라온 글

최근에 달린 댓글