2010-12-07 7 views

Répondre

2

Il n'y a pas d'API pour ça.

Modifier: Une API a été introduite avec iOS5. Voir la réponse de Kelin.

Vous souhaitez obtenir les données brutes de l'image, compter les valeurs de couleur et dessiner l'histogramme vous-même.

accès aux pixels: How to get pixel data from a UIImage (Cocoa Touch) or CGImage (Core Graphics)?

Utilisez CoreGraphics pour dessiner l'histogramme dans une sous-classe UIView personnalisé.

+0

Je ne suis pas d'accord avec votre affirmation selon laquelle il n'y a pas d'API. Vois ma réponse. – kelin

+0

@kelin Vous avez raison. Cette API a été introduite 1 an après ma réponse. Donc ce n'est pas vraiment en désaccord, mais en train de mettre à jour. J'ai modifié ma réponse et augmenté la vôtre. – tonklon

0

Vous pourriez être intéressé par DSBarChart. Essaie.

+1

Plutôt que de simplement créer un lien vers votre projet open source, pourriez-vous fournir un exemple plus détaillé de la manière dont vous utiliseriez votre projet pour créer un histogramme comme celui-ci? Cela pourrait mieux aider les gens qui regardent votre cadre pour cela. –

2

Vous pouvez calculer l'histogramme à l'aide de Accélérer. Il y a la fonction vImageHistogramCalculation_ARGB8888(). Pour appeler cette fonction, vous devez créer vImage_Buffer à partir de UIImage. Utilisez la fonction vImageBuffer_InitWithCGImage() pour cela.

Pour plus d'informations, vous pouvez ajouter ce cadre à votre projet et lire docs dans les fichiers d'en-tête:

Accelerate.framework/Cadres/vImage.framework/têtes/vImage_Utilities.h Accelerate.framework/Cadres/vImage .framework/Headers/Histogram.h

Questions connexes