Le téléchargement de question d'image (UIImageJPEGRepresentation vs UIImagePNGRepresentation)
Je l'ai stocké quelques photos à l'aide de Safari "Hold + Enregistrer l'Image" pour ma Bibliothèque de Photos dans le simulateur. Lorsque je choisis une image de la bibliothèque, je dois le convertir en JPEG ou PNG, donc je peux le télécharger sur le serveur. Problème est que la taille de l'image d'origine est d'environ 200 KO, mais l'image après la conversion en PNG est d'environ 2 MO. Je suis en utilisant UIImagePNGRepresentation
pour convertir UIImage
objet de NSData
puis l'affichage de l'image.
- Ce qui me manque ici? Pourquoi la taille de l'image est plus grande que sa taille d'origine? Comment puis-je éviter cela?
- Quelle est la différence entre
UIImageJPEGRepresentation
etUIImagePNGRepresentation
? Qui doit être utilisé (recommandé)? - Puis-je déterminer le type de l'image téléchargée à partir de la photo de la bibliothèque?
- Quel est le type par défaut des images capturées par l'appareil photo de l'iPhone?
OriginalL'auteur Mustafa | 2009-01-30
Vous devez vous connecter pour publier un commentaire.
Je suppose que l'image d'origine est stockée en tant que fichier JPEG.
PNG est conçu pour stocker des choses comme des captures d'écran et de tracé de ligne. Il n'est pas conçu pour stocker des choses comme des photos.
Tout le type de compression utilisé, le format PNG utilise une compression sans perte, de sorte que l'image sera exactement la même que l'image d'origine. Le format JPEG utilise la compression avec perte, l'image résultante est une approximation de l'original.
Si vous prenez une perte JPEG et ensuite de l'enregistrer comme une image PNG puis il va augmenter en taille, souvent en grande quantité comme vous l'avez vu.
La solution à votre problème est de ne rien faire de vos images avant de les télécharger. Ils seront déjà PNG, GIF ou JPEG images. C'est ce que vous devez télécharger.
Le format des images enregistrées par l'appareil photo de l'iPhone est JPEG.
Son comme vous avez probablement besoin de faire un peu de lecture sur PNG et JPEG généralement.
Comment puis-je obtenir le résultat de téléchargement de l'image dans son format d'origine?
Je ne suis pas doué sur le développement sur iPhone, j'ai peur. Mais j'imagine qu'il vous suffit de charger le fichier, convertir NSData et télécharger. Je serais surpris si vous avez encore besoin de toucher le JPEG/PNG classes juste à télécharger les données dans le fichier. Désolé je ne peux pas être plus d'aide.
J'ai rapidement peu de Googling suggère que je suis probablement mal à propos de vous, pas besoin de UIImageJPEGRepresentation forums.macrumors.com/showthread.php?t=558573
Merci pour le partage de l'information.
OriginalL'auteur andynormancx
Au sujet de votre troisième point, vous pouvez déterminer le type d'image chargée à partir de la bibliothèque de votre image sélecteur de délégué méthode comme suit:
OriginalL'auteur nurider