برمجة - شبكات - كمبيوتر - منتديات الفريق العربي للبرمجة: سمعت ان Ocx يقوم بضغط الصورة ولكن .... - برمجة - شبكات - كمبيوتر - منتديات الفريق العربي للبرمجة

اذهب للمحتوى

صفحة 1 من 1
  • لا يمكنك بدء موضوع جديد
  • لا يمكنك الرد على هذا الموضوع

سمعت ان Ocx يقوم بضغط الصورة ولكن .... اضف تقييما للموضوع -----

#1     غير متواجد   طلال حامد Icon

  • عضو
  • مجموعة اعضاء
  • مشاركات 145
  • التقييم 0
  • النقاط المتوفرة 6.00
  • 0.00
    النقاط المحصلة
++

تم الارسال 15/07/2008 - 10:19 PM

السلام عليكم ورحمة الله وبركاتة


زكاة العلم نشــرة



أقوم حاليا بعمل برنامج قواعد بيانات وصادفتني مشكلة بسحب الصورة من السكنر الى الـ Picturebox تلقائيا ومن غير تدخل من المستخدم ، والحمد لله قمت بحل هذة المشكلة ولكن المشكلة التي تصادفني الآن هي أن حجم الصورة الشخصية والمستندات يكون حجمها مرتفع مما يسبب في ثقل قاعده البيانات وتأخذ مساحه تخزينية كبيره على المدى الطويل.

سمعت ان OCX يقوم بضغط الصورة ولكن لا اعرف كيف السبيل إلية وكيف يستخدم !!


أريد من لديه خبرة عن ضغط الصورة ألأ يتردد في مساعدتي ( أسأل الله له الجنة )


أرجو المساعدة

شكرا لكم
0

شارك هذا الموضوع

      

#2     غير متواجد   طلال حامد Icon

  • عضو
  • مجموعة اعضاء
  • مشاركات 145
  • التقييم 0
  • النقاط المتوفرة 6.00
  • 0.00
    النقاط المحصلة
++

تم الارسال 17/07/2008 - 07:50 AM

السلام عليكم ورحمة الله وبركاتة

لقد أثلج صدري عندما رأيت 11 رد على الموضوع ، وقلت يا سلااااااااام :lol: ... سأدعو لأحد عشر شخصا بالجنة ولكن أصعقت عندما رأيت هذة المناقشات العقيمة .

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


اما بالنسبة للسورس كود فالبرنامج لم يزل تحت الانشاء والتجربة ولم يكتمل بعد .

تحياتي
0

#3     غير متواجد   نورا مجدى Icon

  • عضو
  • مجموعة اعضاء
  • مشاركات 139
  • التقييم 0
  • النقاط المتوفرة 6.00
  • 0.00
    النقاط المحصلة
++

تم الارسال 17/07/2008 - 01:45 PM

أستخدم FreeImage Library : وهى مفتوحة المصدر http://freeimage.sourceforge.net
0

#4     غير متواجد   System Down Icon

  • عضو شرف والعضو المميز لشهري أكتوبر ونوفمبر
  • مجموعة أعضاء الشرف
  • مشاركات 3301
  • التقييم 148
  • النقاط المتوفرة 17.88
  • 11.88
    النقاط المحصلة
++

تم الارسال 20/07/2008 - 11:20 AM

View Postطلال حامد, on Jul 17 2008, 07:50 AM, said:

السلام عليكم ورحمة الله وبركاتة

لقد أثلج صدري عندما رأيت 11 رد على الموضوع ، وقلت يا سلااااااااام :lol: ... سأدعو لأحد عشر شخصا بالجنة ولكن أصعقت عندما رأيت هذة المناقشات العقيمة .

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


اما بالنسبة للسورس كود فالبرنامج لم يزل تحت الانشاء والتجربة ولم يكتمل بعد .

تحياتي


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

#5     غير متواجد   Ghader Icon

  • عضو
  • مجموعة اعضاء
  • مشاركات 80
  • التقييم 0
  • النقاط المتوفرة 6.00
  • 0.00
    النقاط المحصلة
++

تم الارسال 20/07/2008 - 03:16 PM

لم اسمع من قبل عن هذه الاو سى اكس
ولم اعتقد فى وجودها يوما فطريقة تخزين الصور على الكمبيوتر تعتمد على تنسيق الملف وأقل مساحة يمكن ان تكون بأعلى درجة نقاء للصورة مع أقل مساحة ممكنة هى تنسيقات الـ (JPG) وكلما قمت بتقليل جودة الصورة كلما قلت مساحتها وكلما قللت من مساحة الصورة ــ طولها وعرضهاــ كلما قلت مساحتها أما ما تتكلم عنه فقد يكون برنامج صغيير يقوم بتغير نسب الطول والعرض وبالتالى تقلل من حجمها

كما اننى لا انصحك بضغط الصور قبل حفظها لانه ببساطة شديدة سيتطلب ذلك فكها قبل عرضها مما سيقلل كفائة برنامجك وسرعة عمله على جهاز المستخدم
اما بخصوص تغيير مساحة الصورة أى طولها وعرضها دون تغيير جودتها والذى يقلل من مساحتها التخزينية فهو بسيط جدا ويمكنك كتابتة بنفسك أو نسخه إلى برنامجك مباشرة واستخدامه بعد فهم اكواده التى هى فى غاية البساطة واعتقد انها لا تحتاج لشرح والكود كالتالى :
		Dim SoSo As System.Drawing.Image
		Try
			SoSo = Image.FromFile("C:\001.bmp")
			Dim bm As New Bitmap(SoSo)
			'قم مربع الصورة اى حاصل ضرب الطول فى العرض وقمت بالضرب فيه حتى تكون الصورة بحجم ورقة ااايه فور ويمكنك تغييره كما ترغب
			Dim x As Int32 = (bm.Width / (bm.Width + bm.Height)) * (1700) 'variable for new width size
			Dim y As Int32 = (bm.Height / (bm.Width + bm.Height)) * (1700) 'variable for new height size
			Dim width As Integer = Val(x) 'image width. 
			Dim height As Integer = Val(y) 'image height
			Dim thumb As New Bitmap(width, height)
			Dim g As Graphics = Graphics.FromImage(thumb)
			g.InterpolationMode = Drawing2D.InterpolationMode.HighQualityBicubic
			g.DrawImage(bm, New Rectangle(0, 0, width, height), New Rectangle(0, 0, bm.Width, _
	bm.Height), GraphicsUnit.Pixel)
			g.Dispose()
			thumb.Save("C:\001.jpg", System.Drawing.Imaging.ImageFormat.Jpeg)
			bm.Dispose()
			thumb.Dispose()
		Catch ex As Exception
			LMsg.Text = ex.Message
		End Try

0

#6     غير متواجد   طلال حامد Icon

  • عضو
  • مجموعة اعضاء
  • مشاركات 145
  • التقييم 0
  • النقاط المتوفرة 6.00
  • 0.00
    النقاط المحصلة
++

تم الارسال 24/07/2008 - 01:21 AM

السلام عليكم ورحمة الله وبركاتة


اخي العزيز : System Down كلامك صحيح .. وأنا أكره هذا الاسلوب أيضا ولكن لانني في موقف محرج جدا ( آسف للغاية الشديدة :blush: )

اخي العزيز Ghader مشكور على الكود الرائع وأنا حاليا أستخدم نفس الطريقة ولكن بصيغة أخرى ، ولكن أنا كنت أسأل عن ظغط الصورة ولكن إنسى الأمر ...


بكل صراحة لقد إنتهيت من عمل نموذج به حفظ الصورة في قاعده البيانات مع تقليل حجمها وامكانية البحث واستخراج البيانات مرة اخرى وإمكانية جلب الصورة من الاسكنر الى إداة الـ Picturebox من غير تدخل من المستخدم وإمكانية طباعه الصورة .

هذا المثال مستخدم مع قاعده بيانات أكسس 2003 ، والمثال مضبوط 100% ويعمل بالشكل السليم ( مع ملاحظت انني لم أقوم بإصطياد الاخطاء حتى الآن .. لأنني اريد أن أيقن ان المثال يعمل بالشكل السليم أولا )

الجداول المستخدمة بقاعدة البيانات هي :
t1 وهو يقوم بحفظ رقم الموظف واسمة
t2 وهو يقوم بحفظ صورة الموظف ورقمة
العلاقة بين الجدولين هي (One to One )

قمت بفصل الصورة من جدول t1 الاول ووضعها بجدول t2 لكي لا يحدث بطي بعمليات البحث .


المشكلة هنا ... انني لا اريد إستخدام المثال بالاكسس بل اريده إستخدامة مع SQL SERVER 2000 ..

لقد قمت بتصميم قاعده بيانات بال SQL SERVER 2000 لكن كانت النتيجة كالآتي :

يقوم بحفظ البيانات بجدول t1 ولا يحفظ الصورة بجدول t2

أخواني لقد ارفقة المثال لكي تعم الفائدة للجميع ويستفيددوا الاخوان من هذة الاكواد .. واتمنى من ذوي الخبرة أن يسعفونا ويعطونا مشكلة عدم حفظ البيانات بالاس كيو ال سرفر

ادخلت ثلاث موظفين بقاعدة البيانات وارقامهم كالتالي يمكنك البحث ورؤية النتيجة
الموظف الأول رقمه (1)
الموظف الثاني رقمة (2)
الموظف الثالث رقمة (3)

تحياتي

ملف مرفق(ملفات)


0

#7     غير متواجد   Ghader Icon

  • عضو
  • مجموعة اعضاء
  • مشاركات 80
  • التقييم 0
  • النقاط المتوفرة 6.00
  • 0.00
    النقاط المحصلة
++

تم الارسال 24/07/2008 - 12:35 PM

الامر
SaveDatabase(Application.StartupPath & "\photo\" & TextBox1.Text & ".jpg")
ده مينفعش مع الاس كيو ال لان الاس كيو ال هى داتا بيز معرفة للويندوز لا يتم التعامل معها عن طريق الباس
استخدم امر (insert) عادى جداً ذى امر حفظ البيانات النصية والرقمية وبدلاً من اخذ الداتا من تكست قم باخد الصورة من البكتشر بوكس

نصيحة من اخوك لا تقم بحفظ الصور او اى ملفات داخل قاعدة البيانات ولكن قم بانشاء مجلد بجوار قاعدة البيانات وقم بحفظ دليل الصورة فى قاعدة البيانات لسببين
الاول علشان قاعدة البيانات متتقلش معاك فى الاستعلامات
الثانى علشان قاعدة البيانات يبقى سهل اصلاحها لو حصلها دامج مع العلم انها صعب يحصلها دامج لو قمت بحفظ الملفات خارجها
والله الموفق
0

#8     غير متواجد   طلال حامد Icon

  • عضو
  • مجموعة اعضاء
  • مشاركات 145
  • التقييم 0
  • النقاط المتوفرة 6.00
  • 0.00
    النقاط المحصلة
++

تم الارسال 24/07/2008 - 08:18 PM

هلا اخوي

تصدق سويت اللي قلت عليه من الاول لكن يعطيني خطأ .. مو راضي يقبل صيغة البكتشر بوكس في جملة الانسيرت
0

#9     غير متواجد   Ghader Icon

  • عضو
  • مجموعة اعضاء
  • مشاركات 80
  • التقييم 0
  • النقاط المتوفرة 6.00
  • 0.00
    النقاط المحصلة
++

تم الارسال 26/07/2008 - 08:48 AM

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

تحياتى لك وللجميع

تم تعديل هذه المشاركة بواسطةGhader: 26/07/2008 - 08:49 AM

0

شارك هذا الموضوع


صفحة 1 من 1
  • لا يمكنك بدء موضوع جديد
  • لا يمكنك الرد على هذا الموضوع

( 1 ) عضو يشاهد هذا الموضوع
( 0 ) الأعضاء, ( 1 ) الزوار, ( 0 ) عضو بدخول مخفي




لإفضل مشاهدة للمنتدى إستخدم مستعرض فايرفوكس
Free PageRank Checker

 الآن ... إستايل خاص لمن يملك هاتف iPhone  ... لتنزيل البرنامج  اضغط هنا