我的问题是,我无法查看所有图像或部分像素。
我上面有一个 ImageView 和位图。使用 Canvas 库,我绘制了 imageview 限制。但结果是错误的。为什么不对图像的左边界和下边界进行采样呢?如果我增加画笔大小的话。
图片:http://i.stack.imgur.com/R3Byw.jpg
我将只显示我应用程序这部分的代码
//Init imagebitmap
largeBitmap = Bitmap.createBitmap(200,200, Bitmap.Config.ARGB_8888);
//Init canvas
canvas = new Canvas(largeBitmap);
canvas.drawColor(0xffffffff);
//Set largeBitmap on Image
as.setImageBitmap(largeBitmap);
//Init Pincel
pincel1 = new Paint();
pincel1.setARGB(255, 0, 0, 0);
//Draw Limits
int ancho = canvas.getWidth();
int alto = canvas.getHeight();
canvas.drawLine(0, 0, ancho, 0, pincel1); // Superior
canvas.drawLine(0, alto, ancho, alto, pincel1); // Inferior
canvas.drawLine(0, 0, 0, alto, pincel1); // Izq
canvas.drawLine(ancho, 0, ancho, alto, pincel1); // Drch
xml
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/sv"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_gravity="center_vertical|center_horizontal" >
<HorizontalScrollView
android:id="@+id/hsv"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_gravity="center_vertical|center_horizontal" >
<LinearLayout
android:id="@+id/ll"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_gravity="center_vertical|center_horizontal"
android:gravity="center_vertical|center_horizontal" >
<ImageView
android:id="@+id/imageView1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:contentDescription="@string/app_name"
android:scaleType="center"
tools:context=".SIDetailFragment" />
</LinearLayout>
</HorizontalScrollView>
</ScrollView>
我设置 scrollview 只是为了在一个简单的表单上测试带有 ScrollView 的位图图像
提前致谢!
最佳答案
那是因为你“走得太远”了。与(几乎)编程中的所有内容一样, Canvas 索引是基于 0 的。所以你需要使用ancho -1
和alto - 1
。
canvas.drawLine(0, 0, ancho - 1, 0, pincel1); // Superior
关于android - 我的位图没有显示所有像素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13013614/