2014-10-12 30 views
0

我有一个mat对象,它具有openCV库用于图像处理的图像信息。垫子对象基本上是一个矩阵。我需要将此对象缩放到线性布局的大小,在将其转换为位图后需要将其显示。将图像缩放到线性布局的大小

步骤简要如下: - 1.获取线性布局的高度和宽度。 2.将垫子对象缩放到宽度和高度。 3.将对象转换为位图 4.将位图显示在线性布局上

我在onStart方法中执行所有此操作,其中height和height为0.我在第一步中失败。

如何获得宽度和高度。 也可以在onstart()方法中获得线性布局的坐标。

请帮助

疯狂的想法是首先显示的虚拟图像,得到的布局宽度和高度,然后显示实际图像....我是一个初学者...

+0

scaletype fitxy为imageview ..你试试吧。 – Dhina 2014-10-12 05:40:41

+0

我没有图像视图。我有一个对象,Mat对象。我需要将对象缩放到布局的宽度和高度。 – user2768984 2014-10-12 06:59:15

+0

Mat对象用于openCV。用于图像处理 – user2768984 2014-10-12 07:00:52

回答

0

而是做如下图所示 -

i>Mat图片转换为BitMap。这里是这样做的代码 -

Mat mat; 
// Intialize mat 
Bitmap bitMap = Bitmap.createBitmap(mat.cols(), mat.rows(),Bitmap.Config.ARGB_8888); 
Utils.matToBitmap(mat, bitMap); 

II>在布局文件中,使用在一个LineatLayoutImageView并设置layout_widthfill_heightmatch_parent。这将使用整个线性布局。这里是这样做的代码 -

<ImageView 
    android:id="@+id/image_view" 
    android:contentDescription="@string/description" 
    android:layout_width= "match_parent" 
    android:layout_height="match_parent" /> 

不要忘了在strings.xml添加description

III>放入LinearLayoutBitmap图像,如下所示 -

ImageView imageView = (ImageView) findViewById(R.id.image_view); 
     imageView.setImageBitmap(bitMap); 

使用该代码,则能够在一个LinearLayout以显示图像Mat