delphi4arab منتديات دلفي للعرب
على ماذا يعتمد تصوير الشاشة على شكل فيديو'avi' - نسخة قابلة للطباعة

+- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum)
+-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3)
+--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15)
+--- الموضوع : على ماذا يعتمد تصوير الشاشة على شكل فيديو'avi' (/showthread.php?tid=4940)



على ماذا يعتمد تصوير الشاشة على شكل فيديو'avi' - rabihpascal - 22-02-2013

السلام عليكم

على ماذا يعتمد تصوير الشاشة على شكل فيديو'avi'
اي ماهية الوظائف والاجراءات المتبعة .
وشكرا.


على ماذا يعتمد تصوير الشاشة على شكل فيديو'avi' - ALmuhhnad - 23-02-2013

السلام عليكم ورحمة الله وبركاتة
ليس لدي جواب لكني ساعطيك ما لدي ...

من ناحية الفكرة العامة :
سبق وان رأيت سروس كود برنامج لتصوير الشااشة ... كان يقوم بإلتقاط صور باقل من جز من الثانية ....
وبعد ان تضغط زر إنهاء التصوير يمت دمج الصور باحد الاكود

اما من ناحية اوامر التصوير ... حصلت على هذه الطريقة لاخذ صورة لشاشتك ووضعها في مكون TImage
ارفقت مثال ...

اتمنى اني افدتك ... والسلام عليكم ورحمة الله وبركاتة


على ماذا يعتمد تصوير الشاشة على شكل فيديو'avi' - rabihpascal - 23-02-2013

شكرا جزيلا اخي الكريم .
لقد جربت سابقا الطريقة الاولى اي اخذ صور متتابعة
لكنها تبطىء من سرعة الجهاز عداك عن التقطيع في مؤشر الفأرة
عسى ان تكون الطريقة الجديدة انجع
شكرا.


على ماذا يعتمد تصوير الشاشة على شكل فيديو'avi' - ALmuhhnad - 23-02-2013

اخي يوجد شيء اسمه Thread وهو سريع جداً مقارنة ان تضع الامر بـ Timer وعند استعماله ضع الامر Sleep لكي يكون الامر
جيد ولا يحصل اي تهنيق او بطئ بالجهاز ( لم اجرب الطريقة لكني اعرف ان الـ Thread سيرع جداً Smile )

إقتباس :عداك عن التقطيع في مؤشر الفأرة
اضن هذه الحالة طبيعيه مع جميع برامج التصوير عدا التي تستعمل طرق ملتوية .. لجعل مؤشر الماوس لا يقطع اثناء التصوير

بالنسبة للـ Thread لا املك الخبيرة الكافية التي تخولني لشرحه لك Smile ... ابحث بالمنتدى ستجد مواضيع تتكلم عنه ..

تحياتي

والسلام عليكم


على ماذا يعتمد تصوير الشاشة على شكل فيديو'avi' - SMP3 - 25-02-2013

تعديل بسيط لدعم التقاط مؤشر الفأرة
PHP كود :
var
  
DC : HDC;
  
Re : TRect;
  
WidthWin, HeightWin : Integer;
  
BitmapScreen : TBitmap;
  
rPos:TPoint;
  
cInfo :TCursorInfo;

begin

  DC 
:= GetDC(GetDesktopWindow);
  
WidthWin := GetDeviceCaps(DC, HORZRES);
  
HeightWin := GetDeviceCaps(DC, VERTRES);
  
img1.Width := WidthWin;
  
img1.Height := HeightWin;
  
cInfo.cbSize := SizeOf(cInfo);
  
GetCursorInfo(cInfo);
  
GetCursorPos(rPos);
  
BitBlt(img1.Canvas.Handle,0,0,img1.Width,img1.Height,
  
DC,0,0,SRCCOPY);
  
DrawIcon(img1.Canvas.Handle,rPos.X,rPos.Y,cInfo.hCursor);
  
ReleaseDC(GetDesktopWindow,DC);

end;