PDA

View Full Version : تغییر Opacity یک PictureBox به مانند سایه



pouyansaraf
چهارشنبه 19 مرداد 1390, 16:28 عصر
سلام

تا اینجا که گشتم همه دوستان وقتی میخواهند سایه بندازند زیر یک picturebox ، با تغییر نور عکس این کار را میکردند که درست نیست
برنامه ای در codeproject پیدا کردم که اینکار را میکرد ولی فقط روی سطوح تک رنگ مثل عکس زیر
7361073613
چون همون اول بک گراند عکس سایه را از بک گراند فرم میگیرد
colToFadeTo = Me.BackColor

ولی در نرم افزار microsoftword2007 به بالا مانند شکل زیر بکگراند میتواند یک عکس باشد یا پترن داشته باشد
73612
http://barnamenevis.org/images/misc/pencil.png
اگر راهی هست ممنون میشم کد ارائه بدین

omid-vbAuto
چهارشنبه 19 مرداد 1390, 22:02 عصر
من هم دنبال همچین کاری هستم.

راه حل اولیه اتفاده از فلش .

راه حل دوم می تونیم با vb اینکار رو کرد اما دو کار دیگه رو باید انجام داد:
1- چرخش عکس
2-برش کردن عکس

اگر این کارو تو vb بکنیم عالی میشه.حتی می تونیم این افکت ها رو رو نوشته ها هم اعمال کنیم.

pouyansaraf
پنج شنبه 20 مرداد 1390, 02:44 صبح
73629
با رنگ های مختلف بکگراند مشکل نداره فقط اگر بکگراند عکس باشد خوب در نمی آید
دوستان یه کمکی بکنند
من از تابع زیر استفاده میکنم
شاید بهتر باشد از توابع گرافیکی استفاده کنم که زیاد وارد نیستم
Private Function Lighter(ByVal imgLight As Image, ByVal level As Integer, ByVal nRed As Integer, ByVal nGreen As Integer, ByVal nBlue As Integer) As Image
Dim graphics_1 As Graphics = Graphics.FromImage(imgLight)

Dim pLight As New Pen(Color.FromArgb(210, nRed, nGreen, nBlue), imgLight.Width * 2)

graphics_1.DrawLine(pLight, -1, -1, imgLight.Width, imgLight.Height)

graphics_1.Save()

graphics_1.Dispose()

Return imgLight

End Function

omid-vbAuto
پنج شنبه 20 مرداد 1390, 17:48 عصر
73629
با رنگ های مختلف بکگراند مشکل نداره فقط اگر بکگراند عکس باشد خوب در نمی آید
دوستان یه کمکی بکنند
من از تابع زیر استفاده میکنم
شاید بهتر باشد از توابع گرافیکی استفاده کنم که زیاد وارد نیستم
Private Function Lighter(ByVal imgLight As Image, ByVal level As Integer, ByVal nRed As Integer, ByVal nGreen As Integer, ByVal nBlue As Integer) As Image
Dim graphics_1 As Graphics = Graphics.FromImage(imgLight)

Dim pLight As New Pen(Color.FromArgb(210, nRed, nGreen, nBlue), imgLight.Width * 2)

graphics_1.DrawLine(pLight, -1, -1, imgLight.Width, imgLight.Height)

graphics_1.Save()

graphics_1.Dispose()

Return imgLight

End Function


سلام

من از کد زیر استفاده کردم اما تغییری مشاهده نشد!





Lighter(PictureBox1.Image, 40, 5, 230, 240)

pouyansaraf
جمعه 21 مرداد 1390, 17:03 عصر
سورس بهمراه EXE در شاخه DEBUGE

حالا چطور میشه یک واتر مارک TEXT و IMAGE روی عکس انداخت

لینک دانلود:

http://www.4shared.com/file/qt2_zoJB/mh_albumecomplet.html

omid-vbAuto
جمعه 21 مرداد 1390, 19:40 عصر
سورس بهمراه EXE در شاخه DEBUGE

حالا چطور میشه یک واتر مارک TEXT و IMAGE روی عکس انداخت

لینک دانلود:

http://www.4shared.com/file/qt2_zoJB/mh_albumecomplet.html


با سلام


کدهاتون یه ایرادی داره.و اون اینه که وقتی سایز فرم رو تغییر می دی عکس ها داغون میشن.

pouyansaraf
جمعه 21 مرداد 1390, 19:57 عصر
میتونی یه عکس بگیری بزاری؟

omid-vbAuto
جمعه 21 مرداد 1390, 23:02 عصر
میتونی یه عکس بگیری بزاری؟

73722



73723



73724




73725

Saman_12
شنبه 22 مرداد 1390, 05:21 صبح
نمی دونم منظورتون رو درست فهمیدم یا نه!

AlgorithmX
شنبه 22 مرداد 1390, 05:28 صبح
می تونید هم به راحتی تمام از Wpf استفاده کنید و میزان opacity کنترل رو دستکاری کنید!

pouyansaraf
شنبه 22 مرداد 1390, 10:08 صبح
با سلام


کدهاتون یه ایرادی داره.و اون اینه که وقتی سایز فرم رو تغییر می دی عکس ها داغون میشن. عزیز دل برادر
من کد رو دارم میگم
اگر بخوای که پروژه اصلی را استفاده کنی باید anchor های درست انتخاب کنی واسه picturebox ها
و Design خولی استفاده بشه





می تونید هم به راحتی تمام از Wpf استفاده کنید و میزان opacity کنترل رو دستکاری کنید!

حق با شماست
ولی فکر کنم تو تالار vb دارم پست میدم نه wpf


saman_12
قیافش که فکر کنم همونه الان باید یک طراحی کنم نمیتونم باهاش کار کنم
ولی تا بعد از ظهر باهاش کار میکنم و اطلاع میدم
ممنون
شاید جند تا سوال پیش بیاد
ممنون میشم بازم جواب بدید

omid-vbAuto
شنبه 22 مرداد 1390, 19:40 عصر
من کد رو دارم میگم
اگر بخوای که پروژه اصلی را استفاده کنی باید anchor های درست انتخاب کنی واسه picturebox ها
و Design خولی استفاده بشه

مجیدجان ،دلبندم .مشکل که از انکور نیست.البته قصدجسارت به برنامتون نداشتم.می خواستم این مشکل حل بشه.