سؤال

أريد فك شفرة ملفات JPEG و على غير مضغوط فك الانتاج في BMP/RGB الشكل.أنا باستخدام جنو/لينكس و C/C++.

كان لي نظرة على libjpeg, ولكن هناك لا يبدو أن يكون أي خير الوثائق المتاحة.لذا أسئلتي هي:

  1. أين هي الوثائق على libjpeg?
  2. يمكن أن تشير إلى أخرى ج-على أساس jpeg-الضغط المكتبات ؟
هل كانت مفيدة؟

المحلول

وثائق libjpeg يأتي مع التعليمات البرمجية المصدر.منذ كنت لم تكن قد وجدت بعد:

تحميل شفرة المصدر أرشيف فتح الملف libjpeg.doc.إنه سهل ملف ASCII, لا مستند word ، لذلك أفضل فتحه في المفكرة أو آخر ASCII محرر.

هناك بعض البعض .ملفات doc كذلك.معظمهم ليست مثيرة للاهتمام على الرغم من.

للأسف لا أستطيع أن يوصي أي مكتبة أخرى إلى جانب libjpeg.لقد حاولت عدة بدائل ، ولكن Libjpeg دائما.من السهل جدا للعمل مع وبمجرد الانتهاء من أساسيات عمله.كما انها الأكثر اكتمالا والأكثر استقرارا jpeg المكتبة هناك.

نصائح أخرى

MagickWand هو C API ImageMagick:

http://imagemagick.org/script/magick-wand.php

أنا لم تستخدم, ولكن الوثائق تبدو واسعة جدا.

يجب أن تحقق "كيو تي" QImage.وقد سهل واجهة يجعل هذه المهمة سهلة حقا.الإعداد بسيطة جدا لكل منصة.

إذا Qt مبالغة ، يمكنك محاولة السحر++ http://www.imagemagick.org/Magick++/.وهو يدعم عمليات مماثلة و هو أيضا مناسبة تماما لهذا النوع من المهام.آخر مرة كنت عليه, لقد عانيت قليلا مع تبعيات على ويندوز لكن لا أذكر الكثير من المتاعب على لينكس.

عن السحر++'s صورة الطبقة وظيفة ربما تريد هو getConstPixels.

لدي التعليمات البرمجية التي يمكنك نسخ ( أو مجرد استخدامه كمرجع ) على تحميل صورة jpeg باستخدام libjpeg المكتبة.

يمكنك تصفح الكود هنا: http://code.google.com/p/kgui/source/browse/trunk/kguiimage.cpp

فقط ابحث عن وظيفة LoadJPGImage.

رمز الإعداد التعامل مع c++ الملزمة من DataHandle فئة عن تحميل الصورة ، صورة يمكن أن تكون أخطاء ملفات أو البيانات بالفعل في الذاكرة أو أيا كان.

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

Pbm صيغ يمكن أن تكون بسيطة مثل ASCII عادي رأس تليها RGB البيانات في ASCII أو الثنائية.وهي تهدف إلى أن تكون بسيطة بما فيه الكفاية للاستخدام دون الحاجة مكتبة لتنفيذ.

JPEG معتمد في netpbm قبل القراءة والكتابة الفلاتر التي يتم تنفيذها على أعلى libjpeg.

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