iPhone iOS, как программно генерировать граватар, подобный тому, который используется при переполнении стека из уникального идентификатора пользователя? - PullRequest
2 голосов
/ 07 марта 2012

Я работаю над медицинским приложением, на которое могут распространяться требования HIPAA , и я думаю о хорошем способе уникальной идентификации нескольких пользователей в приложении без используя имена или картинки. На ум приходит концепция цветного графического аватара , подобная той, что используется в StackOverflow.

Есть ли какая-нибудь библиотека, которую я могу использовать для такого рода динамического создания графики? Я заинтересован в том, чтобы получить UIImage-представление граватара.

Часть требований приложения может заключаться в отправке сообщений другим пользователям, и я думаю, что возможность динамически генерировать граватар из идентификатора пользователя является гораздо лучшим вариантом, чем беспокойство об отправке / получении / кэшировании обычных пользовательских аватаров.

Спасибо за ваши мысли!

1 Ответ

3 голосов
/ 08 марта 2012

Вы можете найти подробную информацию о создании граватационных изображений здесь

Если вы хотите сделать это из iOS, вам понадобится способ сгенерировать хэш идентификатора пользователя. Вот категория для добавления метода хеширования MD5 к классу NSString .

Если вы добавите категорию NSString по ссылке выше в ваш проект, вы можете затем хешировать идентификатор пользователя и создатьURL, который сгенерирует уникальное граватарное изображение для вашего пользователя, например:

int userID = 123456;

NSString *hashedUserID = [[NSString stringWithFormat:@"%i", userID] MD5];
NSString *gravatarURLString = [NSString stringWithFormat:@"http://www.gravatar.com/avatar/%@?d=identicon", hashedUserID];
NSURL *gravatarURL = [NSURL URLWithString:gravatarURLString];

Затем вы можете создать NSURLRequest с этим URL, чтобы запросить изображение и отобразить его в вашем приложении.

...