google有自己提供的api支持手机和打印机链接同一个局域网来打印东西,非常的方便
1、打印网页
PrintManager printManager = (PrintManager)mContext.getSystemService(Context.PRINT_SERVICE);
//打印任务的名字
String jobName = getString(R.string.app_name) + " 处方打印";
//这里需要webview创建PrintDocumentAdapter
PrintDocumentAdapter printAdapter = webView.createPrintDocumentAdapter();
PrintAttributes.Builder builder = new PrintAttributes.Builder();
//选择A5纸张横向打印
builder.setMediaSize(PrintAttributes.MediaSize.ISO_A5.asLandscape());
printManager.print(jobName, printAdapter,builder.build());
上面的方法需要个你当前的webview,将当前的webview传给他他们,执行上面的方法就会跳转到系统的打印页面,非常简单
2、打印图片
try {
PrintHelper printHelper = new PrintHelper(this);
printHelper.printBitmap("jobName", BitmapFactory.decodeStream(getAssets().open("timg.jpg")));
} catch (IOException e) {
e.printStackTrace();
}
直接传给该方法一个bitmap,就直接跳转到预览打印页面,你就可以选择相应的打印机进行打印了