كيفية رسم وحدات البكسل من المخزن المؤقت للعرض؟

StackOverflow https://stackoverflow.com//questions/9664033

  •  12-12-2019
  •  | 
  •  

سؤال

هل يوجد أي مثال لرمز Qt الذي يعرض الصورة من المخزن المؤقت لعرض الأحرف غير الموقعة؟يتوافق كل بايت في المخزن المؤقت مع لون البكسل ذو المقياس الرمادي.يتغير محتوى المخزن المؤقت للعرض في وقت التشغيل على فترات زمنية محددة.أحتاج إلى تغيير محتوى المخزن المؤقت للعرض بأسرع ما يمكن، بحيث تبدو الصورة وكأنها تتحرك.سؤالي هو كيفية رسم وحدات البكسل من المخزن المؤقت بسرعة كبيرة؟لا أحتاج إلى حفظ الصورة، أريد فقط عرضها.الرجاء المساعدة

هل كانت مفيدة؟

المحلول

QImage يوفر أ البناء للتهيئة باستخدام unsigned char متعادل.لعرضه يمكنك استخدام QGraphicsView مع QGraphicsScene.في كل مرة تتغير فيها بيانات المخزن المؤقت، يمكنك استدعاء فتحة مشابهة لتلك التالية:

void updateImage()
{
     // I assume an 1024x768 image
     QImage img(buffer, 1024, 768, QImage::Format_Indexed8);
     scene->clear();
     scene->addPixmap(QPixmap::fromImage(img));
     graphicsView->update(); 
}

يمكنك أيضًا استخدام QPixmaploadFromData من أجل تحميل الصورة البيكسلية مباشرة من مصفوفة char غير الموقعة وتجنب QImage خطوة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top