iOS设备控制打印机输出文本
本文转载至 http://tec.5lulu.com/detail/108krn1e6e66m8sbd.html
让我们来看看是如何实现的吧,首先要知道打印机的ip地址,然后用socket通过打印机的ip地址进行传送要打印的内容,并传送让打印机打印的指令即可。
代码如下:
.h 里面
- #import
- #import "AsyncSocket.h"
- @interface ViewController : UIViewController
- {
- AsyncSocket *asyncSocket;
- }
- @end
.m里面
- #import "ViewController.h"
- @interface ViewController ()
- @end
- @implementation ViewController
- - (void)viewDidLoad {
- [super viewDidLoad];
- // NSError *err = nil;
- // if(![asyncSocket connectToHost:@"192.168.1.105" onPort:18011 error:&err])
- // {
- // asyncSocket = [[AsyncSocket alloc] initWithDelegate:self];
- //
- // [asyncSocket setRunLoopModes:[NSArray arrayWithObject:NSRunLoopCommonModes]];
- //
- // if (![self SocketOpen:@"192.168.1.105" port:18011])
- // {
- // NSMutableString *sendString=[NSMutableString stringWithCapacity:1000];
- // [sendString appendString:@"非警务健身房"];
- // NSData *cmdData = [sendString dataUsingEncoding:NSUTF8StringEncoding];
- //
- // [asyncSocket writeData:cmdData withTimeout:-1 tag:0];
- // }
- // NSLog(@"Error: %@", err);
- // }
- }
- -(IBAction)haha:(id)sender{
- asyncSocket=nil;
- NSError *err = nil;
- if(![asyncSocket connectToHost:@"192.168.1.105" onPort:18011 error:&err])
- {
- asyncSocket = [[AsyncSocket alloc] initWithDelegate:self];
- [asyncSocket setRunLoopModes:[NSArray arrayWithObject:NSRunLoopCommonModes]];
- if (![self SocketOpen:@"192.168.1.105" port:18011])
- {
- NSMutableString *sendString=[NSMutableString stringWithCapacity:100000];
- [sendString appendString:@"Socket测试成功!!!!"];
- NSData *cmdData = [sendString dataUsingEncoding:NSUTF8StringEncoding];
- [asyncSocket writeData:cmdData withTimeout:-1 tag:0];
- }
- NSLog(@"Error: %@", err);
- }
- }
- - (void)onSocket:(AsyncSocket *)sock didConnectToHost:(NSString *)host port:(UInt16)port
- {
- NSLog(@"onSocket:%p didConnectToHost:%@ port:%hu", sock, host, port);
- [sock readDataWithTimeout:1 tag:0];
- }
- -(void) onSocket:(AsyncSocket *)sock didReadData:(NSData *)data withTag:(long)tag
- {
- }
- - (void)onSocket:(AsyncSocket *)sock didSecure:(BOOL)flag
- {
- NSLog(@"onSocket:%p didSecure:YES", sock);
- }
- - (void)onSocket:(AsyncSocket *)sock willDisconnectWithError:(NSError *)err
- {
- NSLog(@"onSocket:%p willDisconnectWithError:%@", sock, err);
- }
- - (void)onSocketDidDisconnect:(AsyncSocket *)sock
- {
- //断开连接了
- NSLog(@"onSocketDidDisconnect:%p", sock);
- }
- - (void)didReceiveMemoryWarning {
- [super didReceiveMemoryWarning];
- }
- - (void)viewDidUnload {
- asyncSocket=nil;
- }
- //打开
- - (NSInteger)SocketOpen:(NSString*)addr port:(NSInteger)port
- {
- if (![asyncSocket isConnected])
- {
- [asyncSocket connectToHost:addr onPort:port withTimeout:-1 error:nil];
- NSLog(@"connect to Host:%@ Port:%d",addr,port);
- }
- return 0;
- }
其他的方法,还有利用UIPrintInteractionController,不过这需要打印机设置中有AirPrinter。
转载于:https://www.cnblogs.com/Camier-myNiuer/p/4083047.html
iOS设备控制打印机输出文本相关推荐
- 输出文本(pre\code\kbd\var...)
输出文本 HTML元素提供了如下输出信息标签: <code> : 表示代码字体,即显示源代码. <pre> :表示预定义格式的源代码,既保留源代码现实中的空格大小. <t ...
- iOS 连接打印机 ESC/POS 指令打印 打印图片二维码
最近公司给商户做的App 允许App把卖出的商品信息通过打印机 打印标签 所以了解了一下iOS 和 打印机 之间的交互 (Ps:用的不是UIPrinter 那个扫面打印机 发送信息打印的那个框架) 主 ...
- 用ExayX在VS2019上输出文本有误的解决方案
在输出的文本前加_T 下面为成功例子 #include <graphics.h> // 引用 EasyX 图形库 #include <Windows.h>int main(vo ...
- [Win32]重绘的基本概念以及简单的文本输出文本输出
1. 客户区的完整概念: 即应用程序窗口中没有被标题栏.边框.菜单栏.工具栏.状态栏和滚动条占据的中间的一片区域,用户可以在这片区域内绘制任意信息 注意!我们不能假定它有特定的尺寸或者是它的尺寸不会发 ...
- 有关HP LaserJet M132 打印机 打印文本 整体偏右 解决办法
有关HP LaserJet M132 打印机 打印文本 整体偏右 解决办法 问题 解决(初始化) 关机状态下,按住向右方向键和取消键不放手再开机,开机显示HP时两个按键还是按住不要放手等待屏幕显示出现 ...
- JAVA 调用打印机输出PDF文件
想利用java程序打印一些文件.做以下测试: 一.环境 要调用打印机输出文件,首先本地得有一个能正常使用的打印机.我电脑安装的是虚拟打印机. 二.java代码 一).打印输出的实体类 import j ...
- Unity调用打印机打印文本或者图片
Unity调用打印机打印文本或者图片 通过windows命令行使用记事本打印文本 private void PrintTxt(){//picPath=Application.streamingAsse ...
- MFC:如何利用C++使得输出文本颜色、字体多变
最近在使用MFC开发依款小程序,程序需要[根据一系列的条件来输出具有不同字体格式的文本],比如:蓝色.红色.楷体等. 在网上搜索了很多方法,均没法实现. 经过自己的仔细琢磨,终于找到了解决办法. [解 ...
- 玩转PDF虚拟打印机添加文本功能
pdfFactory Pro是一款非常容易上手的虚拟打印机,利用这款虚拟打印机,可以完成很多特殊的任务,如文件加密.添加文本.快照等等. 相信很多小伙伴们在打印的时候突然想起来某些地方需要" ...
最新文章
- 绘制ROC 曲线 计算 AUC PR曲线(精准率 召回率)示例
- deb和rmp的安装
- 笔记-高项案例题-2018年上-计算题
- asp.net C# 实现上传Excel文件导入数据到SQL Server 数据库
- 沃森变频器故障12_维修电工浅谈:常见的变频器故障及处理
- Android 电视 文件目录,通用的安卓智能电视截屏及图片目录文件获取方法
- springcloud官方文档_通俗易懂!Spring Cloud简介:官方文档翻译版
- 3皮卡丘眨眼代码_活见久,皮卡丘居然是一门编程语言
- xampp浏览php出现乱码,dvwa+xampp搭建显示乱码的问题及解决方案
- 安卓mysql插入数据_【11-25求助】关于Android 的SQLite数据库插入数据报错问题
- java 1000到9999_java – 可以0.99999999999乘以四舍五入到1.0?
- MySql noinstall-5.1.34-win32 配置
- Shell之分支结构和循环结构
- [转]常见hash算法的原理
- c语言编程n元一次方程,解n元一次方程
- 2022年工作室暑期培训
- Python实现Hart协议
- keepalived
- java星星图案总结
- C语言射击类打飞机小游戏
热门文章
- flutter引入高德地图_Flutter笔记-调用原生IOS高德地图sdk
- Qt文档阅读笔记-Broadcast Receiver Example解析
- SQL笔记-检索出ID为Int或Long中不连续的第一个点
- Qt文档阅读笔记-Qt4 Lower-Level API扩展Qt Applications(Qt4中Plugin的使用)解析与实例
- Java基础入门笔记-构造方法的继承
- client中周期性边界_FLUENT创建周期性边界条件方法
- 单片机自动调光C语言,51单片机触控调光程序C语言
- oracle file参数,oracle的参数以及pfile和spfile
- c 语言多参数函数,C/C++实现多参数函数编程
- jsp单选按钮传值传递jsp_一篇彻底搞懂jsp