Comment convertir un uiimage code> vers
nsdata code> ou
cfdataref code>? J'ai besoin de passer un
cfdataref code> à
abpersonsonetimageatureata code>. P>
4 Réponses :
Cela a fonctionné pour moi, pour une image PNG. Pour d'autres types d'images, je suppose que vous devez simplement trouver l'uiimage correspondant ... Méthode de représentation.
CFDataRef imgDataRef = (CFDataRef)imageData;
Pourquoi utilisez-vous + [nsdata datawithdata:] code>?
Touché. Je suppose que vous pouviez juste faire nsdata * imagétata = uiimagepngrepresentation (image); code>
Vous pouvez utiliser ce et simplement couler ImageData vers CFDataref CODE> P>
CFDataRef = (CFDataRef) imageData;
Nsdata * imagétata = uiimagejpegrepresentation (image, 1.0); est très lente aussi la méthode PNG équivalente. Y a-t-il un moyen rapide ???????
CFDataRef cfdata = CFDataCreate(NULL, [imageData bytes], [imageData length]); For a working example click here.Thank you.
Pour ceux qui se demandent quelle est la différence entre cfdata est "ponté sans frais" avec sa contrepartie de la fondation de cacao,
Nsdata. Ce que cela signifie que le type de base de base est
interchangeable dans la fonction ou les appels de méthode avec le ponte
Objet de fondation. En d'autres termes, dans une méthode où vous voyez une nsdata
* Paramètre, vous pouvez passer dans un CFDataref et dans une fonction où vous voyez un paramètre CFDataref, vous pouvez passer dans une instance NSData. Cette
s'applique également aux sous-classes concrètes de Nsdata. Voir le ponte sans frais
Types Pour plus d'informations sur la pontage sans frais. P>
blockQuote>
Ceci explique pourquoi casting nsdata code> et
cfdata code>, voici l'explication de Apple Docs : P>
nsdata code> à
cfdata code> fonctionne. p>