Mentre si preleva l'immagine da UIImageController
e si calcola la sua dimensione, c'è una variazione nella dimensione dell'immagine, vale a dire la dimensione dell'immagine nel disco è diversa.Variazione delle dimensioni di UII quando viene prelevata da UIImagePickerController
C'è un modo per ottenere le dimensioni corrette?
Quello che ho cercato -
- Conversione immagine ai dati utilizzando
UIImagePNGReprensentation
&UIImageJPEGReprensentation
. Il problema con questo approccio -
a. Questo approccio consuma memoria, quindi non sembra buono.
b. Le dimensioni variano, posso capire che converte l'immagine in dati e quindi calcola le dimensioni, quindi le dimensioni sono diverse.
Ma qualunque cosa abbia cercato, tutte le risposte accettate riguardano solo questo.
- Utilizzare
ALAssetsLibrary
per ottenere le dimensioni dell'immagine, ma le dimensioni calcolate non corrispondono anche alla dimensione del disco.
Ho usato seguente metodo - assetForURL: resultBlock:^(ALAsset *asset) failureBlock:
- Utilizzando
CGImageRef
metodiCGImageGetBytesPerRow
, ma questo does't anche dare risultato desiderato.
Qualsiasi altro approccio che ho perso?
EDIT -
Così qui sono differenza di dimensioni -
quando controllo la dimensione delle immagini nel Finder - 5.3 MB
quando controllo dimensioni dell'oggetto UIImage utilizzando -
UIImageJPEGRepresentation (immagine . 1,0) - 2,29 MB
Quando controllo la dimensione dell'immagine utilizzando Libreria ALsset - 4.4 MB
Hai preso in considerazione questo fattore https://discussions.apple.com/ thread/5501534? start = 0 & tstart = 0 – itechnician
@itechnician Non sto spostando file tra i sistemi, quello che ho fatto è catturare l'immagine dalla fotocamera dell'iPhone, l'ho importato su Mac, ho controllato la dimensione dell'immagine su mac, ma la dimensione che ho calcolato da UIImage varia molto. – rishi
qual è la dimensione effettiva dell'immagine e la dimensione calcolata, puoi pubblicare anche la variazione – itechnician