سؤال

هل يعرف أحد كيفية استخدام Win32 Bitblt () باستخدام Ruby؟ يبدو أنك تحتاج إلى استخدام الوجهة DC (سياق الجهاز) وكيف يمكن أن تعقب روبي ذلك؟ يمكنني استخدام GetPixel () وهو بطيء حقا حتى للحصول على 100 بكسل (يستغرق حوالي 10 ثوان). شكرا.

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

المحلول

وظيفة كارل الثانية الأخرى: استخدم Screenshot Win32 http://github.com/jarmo/win32shothot.

نصائح أخرى

ماذا عن كتابة جميع رمز معالجة الصور الخاص بك في C ++ ك Win32 قابل للتنفيذ وإطلاقه كعملية منفصلة أو استدعاءها من Ruby باستخدام Win32api. صف دراسي؟ من المنطقي أن تفعل ذلك بهذه الطريقة بدلا من كتابة الطلقات في Ruby والتي لن تؤدي أبدا أيضا.

أود فقط أن أشير إلى أنني أرى شيئا مشابها. getpixel بطيئة للغاية في نظام التشغيل Vista. لقد قررت أن هذا هو الحال عند استخدام هذا الشيء Aero. إذا قمت بتعيين سمة سطح المكتب إلى أحد الإعدادات "الكلاسيكية"، فهي سريعة مرة أخرى. وتقدير OP لمدة ~ 10 ثوان غير خاطئ، صدق ذلك أم لا. انها حقا بطيئة للغاية.

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

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

مثال واحد سيكون Wxruby..

أخشى أنني لست على دراية به، ولكن ربما يقدم بالفعل بعض أساليب فائدة الاستيلاء على الشاشة.

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