Помните, что stride
отличается от width
. У вас может быть изображение с 111 (8-битными) пикселями на строку, но каждая строка сохраняется в памяти 112 байтов.
Это сделано для эффективного использования памяти и, как сказал @Ian, хранит данные в int32
.
Я думаю, это не столько фреймворк, сколько вопрос дизайна. Если вы знаете, как построить его объектно-ориентированным способом, вы, в конечном итоге, узнаете, как построить его и в Rails.
Если вы новичок в Rails, ознакомьтесь с Rails Guide по Active Record Ассоциации » и попытайтесь определить модели и ассоциации вашей« системы значков / достижений ».
Кроме того: Нет, я не знаю ни одного готового камня / плагина / учебника, который помог бы вам построить такая система.