【问题标题】:How to convert a string into Image and print that image in a bluetooth printer in Android如何将字符串转换为图像并在 Android 的蓝牙打印机中打印该图像
【发布时间】:2011-11-08 10:47:28
【问题描述】:

在我的应用程序中,当我单击打印按钮时,打印将来自蓝牙打印机,现在我可以打印数据...

但我突然意识到这台(Zebra MZ320 打印机)不支持印地语。

我还需要在打印机中打印印地语数据,所以我唯一的选择是将字符串(印地语)数据转换为图像,然后打印该图像。

为此,我需要知道如何将字符串转换为图像,而且我不想在打印完成时保存该图像,然后我想删除它.​​..

谁能指导我如何实现这一点,我已经开始使用 Base64 编码和解码但没有成功(意味着如何做)。 我正在使用下面的代码将我的字符串转换为图像,但我得到 Skimage 解码器——工厂返回 null

String cpclConfigLabel = "Purchy No:";
             byte[]  configLabel = cpclConfigLabel.getBytes();
             Log.e("Befire Bimta",""+configLabel);

             Bitmap bitmap = BitmapFactory.decodeByteArray(configLabel , 0, configLabel .length);

对于每一个有价值的回复,我都会给予荣誉....

【问题讨论】:

标签: android zebra-printers


【解决方案1】:

您可以使用Base64Encoder.java 或2.2 onwards this

您可以将文本渲染到 TextView 并将其保存到 bmp 中

像这样:

View viewToBeConverted;
// do stuff on the View    
viewToBeConverted.buildDrawingCache(true);
Bitmap bitmap = widget.getDrawingCache(true);
viewToBeConverted.destroyDrawingCache();

见:buildDrawingCache()

【讨论】:

  • hmm 科学怪人是对的,如果你可以在屏幕上渲染文本,你就可以从绘图缓存中得到一个位图。我会寻找其他选择。
  • 我正在使用下面的代码,但我在 BitmapFactory String cpclConfigLabel = "Purchy No:" 中得到了 null;字节[] configLabel = cpclConfigLabel.getBytes(); Log.e("Befire Bimta",""+configLabel);位图位图 = BitmapFactory.decodeByteArray(configLabel , 0, configLabel .length);
  • 如果您可以在 TextView 上呈现印地语文本,则可以在打印机上打印从该 TextView 生成的图像。
  • 好的,但是如果我使用下面的代码 TextView viewToBeConverted = new TextView(this); viewToBeConverted.setText(cpclConfigLabel);位图 viewBitmap = Bitmap.createBitmap(viewToBeConverted.getWidth(), viewToBeConverted.getHeight(),Bitmap.Config.ARGB_8888);画布画布 = 新画布(viewBitmap); viewToBeConverted.draw(canvas);
  • 这个question可以帮助你
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-01-09
  • 2011-12-28
  • 2018-11-14
  • 2015-10-28
  • 2021-11-22
  • 2016-06-23
  • 1970-01-01
相关资源
最近更新 更多