首页 > 移动平台 > 详细

Android——蓝牙连接打印机以及打印格式

时间:2015-12-03 02:33:08      阅读:403      评论:0      收藏:0      [点我收藏+]

? ? ? ?我的第一个工作Android项目,刚刚完成使用手机连接打印机然后打印小票的功能,单位买了一个类似车载的打印机,非常小巧,打印机的卖家附送了开发使用的手机连接打印机的代码,非常方便。

代码已经分享到我的git代码库,

https://github.com/hejiawang/PrintDemo

下载地址:

https://codeload.github.com/hejiawang/PrintDemo/zip/master

下载下来基本就能直接用到项目中了,当然,要根据具体业务修改一下了。。。

?

?

? ? ? 里面还有关于打印格式的工具类,能够直接使用,不过使用的时候要注意 ?/n ?符号,不然打印不出格式,比如这个工具类的第二个方法,

/**
	 * 排版居中内容(以‘:‘对齐)
	 * 
	 * 例:姓名:李白
	 *     病区:5A病区
	 *   住院号:11111
	 * 
	 * @param msg
	 * @return
	 */
	public static String printMiddleMsg(LinkedHashMap<String, String> middleMsgMap) {
		sb.delete(0, sb.length());
		String separated = ":";
		int leftLength = (LINE_BYTE_SIZE - getBytesLength(separated)) / 2;
		for (Entry<String, String> middleEntry : middleMsgMap.entrySet()) {
			for (int i = 0; i < (leftLength - getBytesLength(middleEntry.getKey())); i++) {
				sb.append(" ");
			}
			sb.append(middleEntry.getKey() + ":" + middleEntry.getValue());
		}
		return sb.toString();
	}

?

在构建map时,map的值一定要以 ?\n ?结尾,才会打印出相应的格式,、

?

LinkedHashMap<String, String> middleMsgMap = new LinkedHashMap<String, String>();
		middleMsgMap.put("日期  ", "  " + timeData + "\n");
		middleMsgMap.put("时间  ", "  " + timeL + "\n");
		middleMsgMap.put("里程  ", "  " + mileage + "\n");
		middleMsgMap.put("金额  ", "  " + money + "\n");
		middleMsgMap.put("余额  ", "  " + balance + "\n");

		String content = BluetoothPrintFormatUtil.printMiddleMsg(middleMsgMap);
		mService.sendMessage(content + "\n", "GBK");

? ?

?

Android——蓝牙连接打印机以及打印格式

原文:http://hejiawangjava.iteye.com/blog/2261122

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!