2010-10-08 15 views
5

Sto ottenendo l'elenco dei contatti dalla Rubrica in quanto alcuni contatti hanno immagini che sono prese con la fotocamera sono di dimensioni molto grandi. Sto visualizzando i contatti con le loro immagini in formato 3x3 righe e colonne. Il problema è dovuto all'enorme dimensione delle immagini che richiede tempo per caricare le immagini. Qualcuno mi suggerisce come comprimerle. Ho cercato di comprimere in un modo:Come comprimere un'immagine scattata dalla fotocamera in iphone sdk?

if ([imageData length] > 0) 
{ 
    int len = [imageData length]; 
    if(len > 9000) 
    { 
     UIImage *theImage = [UIImage imageWithData:imageData]; 
     imageData = UIImageJPEGRepresentation(theImage,0.5); 
     printf("\n image data length in condition...%d",[imageData length]); 
     imageViewL.image = [UIImage imageWithData:imageData]; 
    } 
    else 
    { 
     imageViewL.image = [UIImage imageWithData:imageData]; 
    } 
} 

Benche sua prendendo tempo per caricare.

L'aiuto di qualcuno sarà molto apprezzato.

Grazie a tutti, Monish.

risposta

11

è possibile ridimensionare l'immagine catturata dalla fotocamera iPhone utilizzando le seguenti righe di codice

-(UIImage *)scaleImage:(UIImage *)image toSize:(CGSize)newSize 
{ 
    UIGraphicsBeginImageContext(newSize); 
    [image drawInRect:CGRectMake(0, 0, newSize.width, newSize.height)]; 
    UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext(); 
    UIGraphicsEndImageContext();  
    return newImage; 
} 

e quindi chiamare questo metodo come questo

UIImage *image = [self scaleImage:your image toSize:CGSizeMake(320.0,480.0)]; 
+0

sua davvero lavorando bene ... tanx alot .. !! –

Problemi correlati