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

ذخیره تصویر ویرایش شده در اکتیویتی یا پنل


alii

سوال

سلام

 

بخدا چند شب و روز که گرفتار ذخیره عکسی که ویرایش شده است درگیرشم سیو میکنه بجاش ی صفحه سیاه و خالی :zoor::'( 

 

کسی سورسی یا کدی که این مشکل ما حل بشه داره که من امشبو بخوابم ؟ :S

 

من از کد زیر استفاده میکنم که هیچ چیز جز صفحه سیاه و خالی با حجم صفر بایت ذخیره نمیکنه

Sub Button3_Click
Dim Obj1, Obj2 As Reflector
	Dim bmp As Bitmap
Dim c As Canvas


If File.ExternalWritable = True Then

Dim random As String = Rnd("1","1000")
Obj1.Target = Obj1.GetActivityBA
Obj1.Target = Obj1.GetField("vg")
bmp.InitializeMutable(Panel1.Width, Panel1.Height) ' اگه پنل یکه میخای عکس بگیری پنل یک اگه نیست هر پنلی ک میخای اسمشو بده
c.Initialize2(bmp)
Dim args(1) As Object
Dim types(1) As String
Obj2.Target = c
Obj2.Target = Obj2.GetField("canvas")
args(0) = Obj2.Target
types(0) = "android.graphics.Canvas"
Obj1.RunMethod4("draw", args, types)
Dim Out As OutputStream
Out = File.OpenOutput(File.DirRootExternal,"عکس" & random & ".PNG" , False)
bmp.WriteToStream(Out,100,"PNG")
Msgbox("ذخیره شد","ذخیره")
Else
Msgbox("مشکل در دسترسی به حافظه موبایل","خطا در ذخیره ی عکس")
End If

End Sub

:S:crazy::S:crazy::'( :'( :'(:roomNemishe: :roomNemishe: :( :( :(

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

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

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

نرو زیر بیا بالا

 

:D

سلام :)

علی عزیزم، خیلی خیلی دوست دارم و عزیز عزیز عزیزی برام :)

این پست رو پاک میکنم، اسم تایپکت رو هم ویرایش کردم که یه وقت پلمپ نشی داداشی :gol:

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

سلام.

عکس رو از کجا آوردید که میخواید ذخیره اش کنید؟

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

از گالری خود گوشی؟

اون که ذخیره هست؟؟

یعنی یه تغییراتی روش اعمال کردین الان میخواین ذخیرش کنید؟ چجوریاس :eynak:

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

اره از گالری عکس رو میگیرم روش تغییرات ایجاد میکنم بعد ذخیره شه  که سیاه ذخیره میکنه

Sub Globals
	Private ImageView1 As ImageView
	Private Button1 As Button
	Private Button2 As Button
	Dim onoff As Boolean
	Dim p As PinchZoomAndMove
	Private ListView1 As ListView
	Private Panel1 As Panel
'
End Sub

Sub Activity_Create(FirstTime As Boolean)
	Activity.LoadLayout("1")
	
		
	 p.Initialize(ImageView1,"img1","img",1,2.5,3,False,Me)
    p.CanZoom=True
	p.CanMove = True
'basic4android.org

ListView1.Color = Colors.LightGray
	ListView1.ScrollingBackgroundColor = Colors.LightGray
	ListView1.SingleLineLayout.Label.TextColor = Colors.Black
	ListView1.AddSingleLine("ax1")
	ListView1.AddSingleLine("ax2")
    ListView1.AddSingleLine("save")

End Sub

Sub Activity_Resume
	If onoff = True Then
	onoff=False
	ImageView1.Visible = True
	ImageView1.Bitmap = LoadBitmapSample(File.DirRootExternal, "1.jpg",ImageView1.Width, ImageView1.Height)
	End If

End Sub

Sub Activity_Pause (UserClosed As Boolean)
End Sub

Sub Button1_Click
	camera(File.DirRootExternal, "1.jpg")
End Sub

Sub Button2_Click
	Gallery(File.DirRootExternal, "1.jpg")
End Sub


Sub camera(Directory As String, PictureName As String)
	Dim i As Intent
	onoff = True
	i.Initialize("android.media.action.IMAGE_CAPTURE", "" )
	i.PutExtra("crop", "true") 'crop ON
	i.PutExtra("aspectX", 0) 'crop aspects
	i.PutExtra("aspectY", 0) 'crop aspects
	i.PutExtra("outputX", 200) 'crop size
	i.PutExtra("outputY", 150) 'crop size
	i.PutExtra("output", ParseUri("file://" & File.Combine(Directory, PictureName))) 'output folder you set OpenCam(File.DirRootExternal, "1.jpg")
	StartActivity(i)      
End Sub

Sub ParseUri(FileName As String) As Object
 Dim r As Reflector
 Return r.RunStaticMethod("android.net.Uri", "parse", Array As Object(FileName), Array As String("java.lang.String"))

End Sub



Sub Gallery(Directory As String, PictureName As String)
	Dim i As Intent
	onoff = True
	i.Initialize(i.ACTION_PICK, "")
	i.SetType("image/*")
    i.PutExtra("output", ParseUri("file://" & File.Combine(Directory, PictureName))) 'output folder you set OpenCam(File.DirRootExternal, "1.jpg")
	i.PutExtra("crop", "true") 'crop ON
	i.PutExtra("aspectX", 0) 'crop aspects
	i.PutExtra("aspectY", 0) 'crop aspects
	i.PutExtra("outputX", 200) 'crop size
	i.PutExtra("outputY", 150) 'crop size
	StartActivity(i)

End Sub



Sub ListView1_ItemClick (Position As Int, Value As Object)
	
	Select Value
		Case "ax1"
			Panel1.SetBackgroundImage(LoadBitmapSample(File.DirAssets, "ax1.jpg", 100%x, 100%y))
			Panel1.Invalidate
		Case "ax2"
			Panel1.SetBackgroundImage(LoadBitmapSample(File.DirAssets, "ax2.jpg", 100%x, 100%y))
			Panel1.Invalidate
			Case "save"
			
 Dim Obj1, Obj2 As Reflector
	Dim bmp As Bitmap
Dim c As Canvas
If File.ExternalWritable = True Then

Dim random As String = Rnd("1","1000")
Obj1.Target = Obj1.GetActivityBA
Obj1.Target = Obj1.GetField("vg")
bmp.InitializeMutable(Panel1.Width, Panel1.Height) ' اگه پنل یکه میخای عکس بگیری پنل یک اگه نیست هر پنلی ک میخای اسمشو بده
c.Initialize2(bmp)
Dim args(1) As Object
Dim types(1) As String
Obj2.Target = c
Obj2.Target = Obj2.GetField("canvas")
args(0) = Obj2.Target
types(0) = "android.graphics.Canvas"
Obj1.RunMethod4("draw", args, types)
Dim Out As OutputStream
Out = File.OpenOutput(File.DirRootExternal,"عکس" & random & ".PNG" , False)
bmp.WriteToStream(Out,100,"PNG")
Msgbox("ذخیره شد","ذخیره")
Else
Msgbox("مشکل در دسترسی به حافظه موبایل","خطا در ذخیره ی عکس")
End If
	End Select
   End Sub

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

یه چیزی...

من کدارو نگاه نکردم ولی فکر کنم این مشکل واسه منم یبار پیش اومده بود.

عکس رو وقتی ذخیره میکنید اسکنش میکنید که بیاد دوباره تو گالری؟

یا همون عسکو به کامپیوتر انتقال بدین ببنید باز سیاهه یانه.

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

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

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

بایگانی شده

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

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

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