هو Qimage قادرة على فتح وإعادة تصنيع صور 16 بت نقية؟

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

  •  12-09-2019
  •  | 
  •  

سؤال

أعتقد أن العنوان يشرح بالفعل ما أريد أن أعرفه.
هل هناك طريقة ممكنة لفتح وحفظ الصور مع 16 بت مع كيو تي؟ وأنا لا أقصد 3 * 8 = 24 بت أو 4 * 8 = 32bit، ما هو نفسه تماما صورة 8 بت نقية، أقصد نقية 16 بت ل R، G و B.

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

المحلول

على عكس ما يقوله باتريون، لا يوجد 16 بت لكل تنسيق مكون في QImage. وبعد أكثر ما تستطيع الحصول عليه هو QImage::Format_ARGB32 في 8 بت لكل مكون. حتى إذا كنت تستخدم 8 بت مفهرسا، فإن جداول الألوان لا تدعم أكثر من 8 بت لكل مكون. وعلاوة على ذلك، فإن QImageIOHandler فئة تعمل من حيث QImage, ، لذلك لا يمكنك إنشاء مكون إضافي تنسيق صورة مخصص للعمل مع 16 بت لكل مكون من مكونات اللون، لسوء الحظ.

نصائح أخرى

يمكنك استخدام libpng (PNG ++) لهذا الغرض.

Qimage :: تنسيق عدم تعريف 16 بت نقية ولكن يمكن تحديد 10 بت.
QImage::Format_A2RGB30_Premultiplied (http://doc.qt.io/qt-5/qimage.html.)، يمكن أن تستخدم RGB 10 بت لكل قناة (0 ... 1).
ولكن إذا استخدمت QImage::setPixel لا يزالون يستخدمون 8 بت لكل قناة لتحديد بكسل من QColor.

كما ذكر آخرون بالفعل، لا يوجد تنسيق مع 16 بت لكل مكون مدعوم في QT الآن.

ومع ذلك، فهناك طلب تم فتحه لتنفيذ هذا، مع مرفق التصحيح: https://bugreports.qt.io/browse/qtbug-45858.

لست متأكدا ما هو حالة هذا، وإذا سيتم دمجها.

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