رفتن به مطلب
  • 0

عکس گرفتن از پنل و انتخاب عکس از گالری


Kazem Forghani

سوال

سلام

من چند وقت پیش همین مشکل رو دداشتم . یک تاپیک هم زدم که متاسفانه کسی جواب نداد .

یک آموزش هم دیدم که متاسفانه درست نبود .

حالا :

چطوری از پنل و محتویات داخل اون عکس بگیرم ؟

چطوری یک عکس از گالری انتخاب کنم ؟

یک آموزش بود اما جواب نداد .

لینک ارسال
به اشتراک گذاری در سایت های دیگر

8 پاسخ به این سوال تاکنون داده شده است

ارسال‌های توصیه شده

Sub viewAsBitmap (PnlView As View ) As Bitmap

Dim bmp As Bitmap
Dim cvs As Canvas
 
 


bmp.InitializeMutable(PnlView.Width, PnlView.Height)



cvs.Initialize2(bmp) ' Get bitmap canvas ...

Dim args(1) As Object
Dim types(1) As String
Dim obj As Reflector
obj.Target = cvs

args(0) = obj.GetField("canvas") ' Get android.graphics.Canvas field
types(0) = "android.graphics.Canvas"

obj.Target = PnlView
obj.RunMethod4("draw", args, types)
Return bmp
End Sub

این  برای عکس از پنل هست همینو کپی کنید و  برای ورودی  پنل رو براش مشخص کنید خروجی

البته این پایینی اول اجرا میشه بعد بالایی

Sub  Takepic ( Sw As Byte )

 viewAsBitmap(Pnlpdf )

   

Imgcopy.Bitmap=(bmp)

bmp = Imgcopy.Bitmap
Dim out As OutputStream 

  
   out = File.OpenOutput(File.DirRootExternal    ,"Sample.png" ,False)
 


bmp.WriteToStream(out,100,"PNG" )
out.Close 

 

 

 

سلام

ببین کاظم جان کتابخونه Phone  رو فعال کن

بعد یک متغییر از نوع ContentChooser  تعریف کن.

خب یک همچین کدی میشه :

Sub Button1_Click
    Dim PicChooser As ContentChooser
    PicChooser.Initialize("PicChooser")
    PicChooser.Show("image/*", "یک عکس انتخاب کنید")
End Sub
Sub PicChooser_Result(Success As Boolean, Dir As String, FileName As String)
    If Success = True Then
        Dim inp As InputStream
        inp = File.OpenInput(Dir, FileName)
        Dim btm As Bitmap
        btm.Initialize2(inp)
        imageview1.SetBackgroundImage(btm)
    Else
        ToastMessageShow("انجام نشد، دوباره تلاش کنید", True)
    End If
End Sub 

بهترین پاسخ های این موضوع بودند

لینک ارسال
به اشتراک گذاری در سایت های دیگر

ببخشید این تاپیک رو میارم بالا  اما یه سوال دارم .

اگز که مولتی پنل داشته باشیم . چطور با این کدها از پنل مورد نظر عکس بگیریم .

ببینید من الان اومدم توی هر پنل یه باتن گذاشتم . تگ دکمه رو برابر ID گذاشتم . اما این تکه از کد بالا رو نمیدونم چطور بنویسم که روی دکمه هر پنل که کلیک شد از همون پنل عکس بگیره :

	
Sub Button2_Click
viewAsBitmap(Panel2)
Imgcopy.Bitmap=(bmp)
bmp = Imgcopy.Bitmap
Dim out As OutputStream   
out = File.OpenOutput(File.DirRootExternal ,"Sample.png" ,False)
bmp.WriteToStream(out,100,"PNG" )
out.Close 
End Sub

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

Sub viewAsBitmap (PnlView As View ) As Bitmap

Dim bmp As Bitmap
Dim cvs As Canvas
 
 


bmp.InitializeMutable(PnlView.Width, PnlView.Height)



cvs.Initialize2(bmp) ' Get bitmap canvas ...

Dim args(1) As Object
Dim types(1) As String
Dim obj As Reflector
obj.Target = cvs

args(0) = obj.GetField("canvas") ' Get android.graphics.Canvas field
types(0) = "android.graphics.Canvas"

obj.Target = PnlView
obj.RunMethod4("draw", args, types)
Return bmp
End Sub

این  برای عکس از پنل هست همینو کپی کنید و  برای ورودی  پنل رو براش مشخص کنید خروجی

البته این پایینی اول اجرا میشه بعد بالایی

Sub  Takepic ( Sw As Byte )

 viewAsBitmap(Pnlpdf )

   

Imgcopy.Bitmap=(bmp)

bmp = Imgcopy.Bitmap
Dim out As OutputStream 

  
   out = File.OpenOutput(File.DirRootExternal    ,"Sample.png" ,False)
 


bmp.WriteToStream(out,100,"PNG" )
out.Close 
لینک ارسال
به اشتراک گذاری در سایت های دیگر

Sub viewAsBitmap (PnlView As View ) As Bitmap

Dim bmp As Bitmap
Dim cvs As Canvas
 
 


bmp.InitializeMutable(PnlView.Width, PnlView.Height)



cvs.Initialize2(bmp) ' Get bitmap canvas ...

Dim args(1) As Object
Dim types(1) As String
Dim obj As Reflector
obj.Target = cvs

args(0) = obj.GetField("canvas") ' Get android.graphics.Canvas field
types(0) = "android.graphics.Canvas"

obj.Target = PnlView
obj.RunMethod4("draw", args, types)
Return bmp
End Sub

این  برای عکس از پنل هست همینو کپی کنید و  برای ورودی  پنل رو براش مشخص کنید خروجی

البته این پایینی اول اجرا میشه بعد بالایی

Sub  Takepic ( Sw As Byte )

 viewAsBitmap(Pnlpdf )

   

Imgcopy.Bitmap=(bmp)

bmp = Imgcopy.Bitmap
Dim out As OutputStream 

  
   out = File.OpenOutput(File.DirRootExternal    ,"Sample.png" ,False)
 


bmp.WriteToStream(out,100,"PNG" )
out.Close 

برای گرفتن عکس از گالری هست ؟

ببخشید اما اگر یه توضیح مختصر بدید ممنون می شم درباره کد ها.

راستی اندازه گرفته شده چند در چند هست ؟ کیفیت چطوری ؟

لینک ارسال
به اشتراک گذاری در سایت های دیگر

عکس از پنل شما گفتید انگار .. این از پنل شما و هر چی که توش باشه عکس میگیره  کیفیت خوبه مشکلی نداره ..

pnlpdf  اسم پنل من بوده شما هر اسمی داری بده

اینم باید  اول بزنید اینجا دیده نشده Private Imgcopy As ImageView

این پنل ارسال میشه به Sub viewAsBitmap

اینجا میتونید اندازه ای که میخواهید رو بدید این الان روی فول مقیاس خود پنل هست هر چقدر که باشه  bmp.InitializeMutable(PnlView.Width, PnlView.Height)

در نهایت برمیگرده به sub  اول در فایل سیو میکنه "Sample.png"

لینک ارسال
به اشتراک گذاری در سایت های دیگر

عکس از پنل شما گفتید انگار .. این از پنل شما و هر چی که توش باشه عکس میگیره  کیفیت خوبه مشکلی نداره ..

pnlpdf  اسم پنل من بوده شما هر اسمی داری بده

اینم باید  اول بزنید اینجا دیده نشده Private Imgcopy As ImageView

این پنل ارسال میشه به Sub viewAsBitmap

اینجا میتونید اندازه ای که میخواهید رو بدید این الان روی فول مقیاس خود پنل هست هر چقدر که باشه  bmp.InitializeMutable(PnlView.Width, PnlView.Height)

در نهایت برمیگرده به sub  اول در فایل سیو میکنه "Sample.png"

خیلی ممنون

حالا برای انتخاب عکس از گالری می تونید توضیح بدید یا کد بگذارید ؟

فکر کنم فهمیده باشید هدف من چیه.

می خوام یه عکس از گالری انتخاب بشه . بعد در panel نمایش داده بشه . کاربر یه متن روش بنویسه و ذخیره کنه ./

لینک ارسال
به اشتراک گذاری در سایت های دیگر

خیلی ممنون

حالا برای انتخاب عکس از گالری می تونید توضیح بدید یا کد بگذارید ؟

فکر کنم فهمیده باشید هدف من چیه.

می خوام یه عکس از گالری انتخاب بشه . بعد در panel نمایش داده بشه . کاربر یه متن روش بنویسه و ذخیره کنه ./

بله متوجه شدم  منظورتون  چیه من همین کار رو با  pdf  کردم . متاسفانه من  اصلا با گالری کار نکردم اما دیدم  اموزش داره.. البته دوستان دیگه که تجربه دارن حتما پاسخ میدن. شرمنده

لینک ارسال
به اشتراک گذاری در سایت های دیگر

سلام

ببین کاظم جان کتابخونه Phone  رو فعال کن

بعد یک متغییر از نوع ContentChooser  تعریف کن.

خب یک همچین کدی میشه :

Sub Button1_Click
    Dim PicChooser As ContentChooser
    PicChooser.Initialize("PicChooser")
    PicChooser.Show("image/*", "یک عکس انتخاب کنید")
End Sub
Sub PicChooser_Result(Success As Boolean, Dir As String, FileName As String)
    If Success = True Then
        Dim inp As InputStream
        inp = File.OpenInput(Dir, FileName)
        Dim btm As Bitmap
        btm.Initialize2(inp)
        imageview1.SetBackgroundImage(btm)
    Else
        ToastMessageShow("انجام نشد، دوباره تلاش کنید", True)
    End If
End Sub 
لینک ارسال
به اشتراک گذاری در سایت های دیگر

بایگانی شده

این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.

  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.
×
×
  • اضافه کردن...