【问题标题】:AndroidPlot: Is it possible to plot directly to Bitmap (never draw/show on screen)?AndroidPlot:是否可以直接绘制到位图(从不在屏幕上绘制/显示)?
【发布时间】:2013-01-11 16:46:44
【问题描述】:

我在使用 AndroidPlot 将各种绘图绘制到显示器上以及将绘图捕获到画布上并保存为 JPG 文件方面取得了巨大成功。感谢所有相关人员提供了一个很棒的实用程序!

我一直在努力解决在后台创建绘图并将其保存到位图的需求(从未将其绘制到屏幕上或在屏幕上显示) - 用于记录目的。

我被难住了! 可以这样做还是我找错树了?

...任何提示、提示或建议将不胜感激! 谢谢

【问题讨论】:

  • 已经在这里回答了:stackoverflow.com/questions/7532458/…
  • 这是否不需要您按 sn-p 绘制到屏幕(如下)? “...要从缓存中受益,您必须通过调用 getDrawingCache() 请求绘图缓存并将其绘制在屏幕上...”如 .setDrawingCacheEnabled() 方法中所述。 ???我想在屏幕上捕捉一个没有绘图的情节。或者我是否完全错过了某些东西(就在我的鼻子前面)?

标签: android bitmap plot draw androidplot


【解决方案1】:

编辑:我错了 - EvZ 提到的解决方案非常有效。我测试了自己并且能够从以编程方式创建的 XYPlot 生成位图。我通过编写一个由 Button 和 ImageView 组成的简单应用程序进行了测试。当按下按钮时,XYPlot 实例的 redraw() 方法被调用并检索它的位图。这是按钮处理程序的样子:

public void onClick(View view) {
  plot.setDrawingCacheEnabled(true);
  plot.buildDrawingCache(true);
  Bitmap cache = plot.getDrawingCache();
  Bitmap b = Bitmap.createBitmap(cache);
  plot.redraw();
  displayImg.setImageBitmap(b);
  plot.setDrawingCacheEnabled(false); // clear drawing cache
}

要确保的一件事是在使用按钮之前为绘图实例分配大小:

// creates a 200x200 bitmap:
plot.layout(0, 0, 200, 200);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-12-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-04
    • 1970-01-01
    • 1970-01-01
    • 2014-01-18
    相关资源
    最近更新 更多