آموزش چرخش عکس در برنامه نویسی اندروید
سلام دوستان در این سری از آموزش برنامه نویسی اندروید به آموزش چرخش عکس در برنامه نویسی اندروید می پردازیم به صورت دقیق ما یک عکس به چندین طرف مختلف می چرخانیم این کار بسیار ساده است در ادامه با ما همراه باشید.
در ابتدای کار شما در فایل layout خود یک Imageview قرار دهید همانند زیر
1 2 3 4 5 6 7 8 9 10 11 12 13 | <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_margin="30dp" android:gravity="center" android:orientation="vertical"> <ImageView android:id="@+id/image_rotate" android:layout_width="fill_parent" android:layout_height="200dp" android:scaleType="centerCrop" /> </LinearLayout> |
آیدی ImageView را برابر با image_rotate قرار دهید.
سپس در بخش MainActivity.java کد زیر را قرار دهید.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | package ir.programchi; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.graphics.Matrix; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.widget.ImageView; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.rotate_image); ImageView imageView = (ImageView) findViewById(R.id.image_rotate); Bitmap myImg = BitmapFactory.decodeResource(getResources(), R.drawable.pexels_photo_large); Matrix matrix = new Matrix(); matrix.postRotate(45); Bitmap rotated = Bitmap.createBitmap(myImg, 0, 0, myImg.getWidth(), myImg.getHeight(), matrix, true); imageView.setImageBitmap(rotated); |
در بالا با استفاده از matrix می توانیم عکس خودمان را بچرخانیم برای اینکار ابتدا عکس را از پوشه drawable گرفته و به صورت bitmap در میاریم سپس میزان چرخشی را که می خواهیم به ماتریکس می دهیم و سپس دوباره فایل bitmap را ایجاد می کنیم دقت کنید باید اندازه اصلی یعنی طول و عرض عکس را داشته باشیم تا بتوانیم آن را بچرخانیم و در آخر با استفاده از متود setImageBitmap عکس که از نوع bitmap بود را در ImageView قرار میدهیم به همین سادگی در صورتی که می خواهید عکس رو در زاویه ی دیگه بچرخانید مقدار 45 درجه را به هر عددی که دوست دارید تغییر دهید به طور مثال 180 درجه عکس را برعکس می کند.
این آموزش هم مثل آموزش های قبل به پایان رسید.
دوستان دقت کنید استفاده از مطالب سایت فقط برای کاربرانی که می خواهند آن را در برنامه خود استفاده کنند مجاز بوده و هرگونه کپی برداری از محتوای سایت حرام است.
موفق و موید باشید.
سلام دوست عزیز ممنون از پست های جالبی که قرار میدید من یک اپ ساختم که از گالری عکس میگیره و بعضی عکس هارو درست نشون میده و بعدی عکس هارو ۴۵ درجه کج میکنه ک کشیده نشون میده باید چیکار کنم که درست بشه ؟! دقت کنید عکس هایی که عمودی میگیرم درست نشون میده ولی افقی با دوربین عکس میگیره داخل imageView عکس کشیده شده و بر عکس نشون میده ممنون میشم راهنمایی کنید