آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

کم کردن حجم عکس از url

MyNewName  11 سال پیش  11 سال پیش
+2 0

سلام

یه اپ دارم که عکس هارو از url میخونه 

اما حجم و سایز عکس ها زیاده

چطوری میتونم حجمش رو کم کنم بعد نمایش بدم ؟ آخه به شدت باعث کند شدن نرم افزار شده

با تشکر

 برای این سوال 3 پاسخ وجود دارد.
پاسخ به سوال 
MeY3am  11 سال پیش
+4 0

شما به راحتی میتونید عکس هارو به Bitmap تبدیل کنید و با استفاده از Option این کار رو انجام بدین:

 BitmapFactory.Options options = new BitmapFactory.Options();
                        options.inSampleSize = 5;
                        Bitmap bitmap = BitmapFactory.decodeFile(bitmapFile, options);
                        imageView.setImageBitmap(bitmap);

یعنی با استفاده از قطعه کد

 options.inSampleSize = 5;

می تونید سایز عکس رو مثلأ تا 5 برابر کوچک کنید ( این عدد متغیر هستش) و از پردازش سنگین عکس ها جلوگیری میشه و حافظه بطور بهینه آشغال میشه و یه نکته مهم اینکه دیگه با خطای OutOfMemoryError روبرو نمی شوید !

+1 0
این کارو کردم عکس ها کم کیفیت شد اما فشار کم نشد (11 سال پیش)
پاسخ به سوال 
سپهر  11 سال پیش
+3 0

میتونید عکستون رو bitmap کنید و اون رو داخل یک فایل به صورت فشرده ذخیره کنید

   FileOutputStream fOut = null;

                            file = new File(dir, fileName);
                            fOut = new FileOutputStream(file);
                            bitmap.compress(Bitmap.CompressFormat.PNG, 100, fOut);
                            fOut.flush();
                            fOut.close();
0 0
حالا چطوری لودش کنیم ؟ (11 سال پیش)
پاسخ به سوال 
MiRHaDi  11 سال پیش
+3 0

سلام
شما دو راه دارید . راهی که دوستان فرمودند بعد از دانلود عکس سایز آن را کوچک میکند تا حافظه گوشی کمتر اشغال شود و نرم افزار کند نشود.
ولی راه کاملتر این هست که سمت سرور شما عکس را کوچک کنید و بعد بفرستید که ضمن اینکه نرم افزار کند نمیشود پهنای باند اینترنت هم خورده نمی شود.اگر فایلها در سرور شما نمی باشد هم میتوانید با یک webservise این کار را بکنید و با فرستادن عرض و طول مد نظر و آدرس اینترنتی عکس آن را تبدیل کرده و برنامه دریافت کند . برای پایین آمدن بار سرور هم میتوانید از کش درون سرور استفاده نمایید
موفق باشید

0 0
ممنون به نظرتون هر عکس رو با 5-6 کیلوبایت اوکی کنیم ردیف میشه ؟ الان حجم هر عکس روی 70-80 کیلو بایت هست (11 سال پیش)
0 0
پیشنهاد می کنم شما یه تفعلی به توابع داخل کلاس android.os.Debug بزن، که از وضعیت دقیق memory دستگاه و برنامه، در حین انجام این عملیات مطلع بشی. اون موقع می تونید براحتی تصمیم بگیری که چقدر size و resolution رو کم کنی. (11 سال پیش)

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