RasterException的任何解决方案:传递的参数无效? (将RasterImage转换为Bitmap时)

时间:2016-06-06 06:29:10

标签: java android bitmap leadtools-sdk

我正在开发一个Android应用程序,并尝试将RasterImage转换为位图图像,以绘制给定点的线。但我在转换时遇到异常。我正在使用LEADTOOLS DICOM SDK版本18。下面是我正在使用的代码

private void drawingfunction(float x, float y, float xend, float yend, int color) {
    try{
         RasterImage _loadedImage;
         RaterImageViewer secondviewer;
         Bitmap newpic;
         newpic=RasterImageConverter.convertToBitmap(_loadedImage2, ConvertToImageOptions.NONE.getValue());
         newpic = Bitmap.createBitmap(_loadedImage2.getWidth(), _loadedImage2.getHeight(), Config.ARGB_8888);
         Canvas c = new Canvas(newpic);
         c = new Canvas(newpic);
         secondviewer.draw(c);
         Paint p = new Paint();
         p.setColor(color);
         c.drawLine(x, y, xend, yend, p);
         secondviewer.setImageBitmap(newpic);
        }
        catch(Exception ex)
        {
           Toast.makeText(getApplicationContext(),ex.toString(),Toast.LENGTH_SHORT).show();
        }
}

1 个答案:

答案 0 :(得分:0)

我们在我们的v18 Android工具包附带的ViewerDemo中测试了与您类似的代码,但它没有显示类似的问题。如果您想尝试我们的测试,请从这个项目开始: LEADTOOLS_Android_18 \例子\的Android \ ViewerDemo 然后修改文件ViewerDemoActivity.java中的setImage()函数,使其变为如下:

private void setImage(RasterImage image) {
  try {
     int bpp = image.getBitsPerPixel();
     RasterByteOrder order = image.getOrder();
     Bitmap newpic=RasterImageConverter.convertToBitmap(image, ConvertToImageOptions.NONE.getValue());

     newpic = Bitmap.createBitmap(image.getWidth(), image.getHeight(), Config.ARGB_8888);
     Canvas c = new Canvas(newpic);
     c = new Canvas(newpic);
     mViewer.draw(c);
     Paint p = new Paint();
     p.setColor(0xFFFF0000);
     c.drawLine(20, 20, 200, 200, p);

     mViewer.setImageBitmap(newpic);
  } catch(Exception ex) {
     Messager.showError(this, ex.getMessage(), "");
  }
}

我们尝试了不同的图像,包括彩色和16位灰度Dicom图像,它们都有效。 如果问题仍在您身边,请将触发它的实际图像通过电子邮件发送给LEAD支持,并提供有关您用于测试的项目的更多详细信息。