我必须使用具有特定IP地址的打印机打印pdf文件.我能够打印特定的文本,但我想打印文件或HTML解析文本.
我的代码:
try {
Socket sock = new Socket("192.168.0.131", 9100);
PrintWriter oStream = new PrintWriter(sock.getOutputStream());
oStream.println("HI,test from Android Device");
oStream.println("\n\n\n");
oStream.close();
sock.close();
} catch (UnknownHostException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)
还请说明投票的原因
编辑
很多人都建议PDL,但如何将pdf转换为PDL?
我想打印到Bixolon SPP-R200,就像我听说的那样,它是用android设置的更容易的移动蓝牙打印机之一.但是我不知道如何开始.
我想首先我必须通过蓝牙连接到打印机 - 为此我假设我采用原生的Android蓝牙API?
我可能需要某种SDK来向打印机发送数据 - 我在这里读到,有一个SDK,但浏览bixolon页面并没有产生任何结果(即没有SDK) - 我写信支持,但我是不要期待很快回答......
我想我还有其他问题(例如:你在.Net CF中可以将位图发送到打印机吗?)与该打印机的SDK紧密相关 - 如果它存在的话......
我是通过以下方式通过串口直接将收据打印到POS打印机,
SerialPort port = new SerialPort("com6", 9100, Parity.None, 8, StopBits.One);
port.Open();
port.Write("Some Text");
port.Close();
Run Code Online (Sandbox Code Playgroud)
我的问题是我将如何使用上述方法打印位图图像?任何帮助将不胜感激.
我还没有决定使用Microsoft POS for.net,因为它很慢并且需要时间来初始化打印机,客户不喜欢等待.
谢谢.
我一直试图获得一张图片,但到目前为止我还没有成功.
该打印机是本地制造的2英寸热敏打印机,打印分辨率为8点/ mm,384点/线,203 dpi.
该打印机基于具有"NXP 2388 ARM v7 Microproc."的板,其内存闪存大小为512 KB,RAM:128 KB,接收缓冲区大小为16KB.
我一直关注这个问题.
问题:我尝试打印的图像是576x95 res.

打印图像(有一些错误LED点亮并调试蜂鸣器噪音:D)但图像的方向是垂直的而不是水平打印; 也是在页面的最左侧,图像的顶部被截断
假设在这里我没有通过一些标志(同时使"数据包")与我拥有的打印机兼容.
我之前没有从事蓝牙打印,所以任何帮助都很明显:)
我现有的主要活动:
public class MainActivity extends Activity
{
// will show the statuses
TextView myLabel;
// will enable user to enter any text to be printed
EditText myTextbox;
EditText devName;
public TableLayout tl2;
String devid;
String[] pName;
String[] LODQTY;
String[] rte;
String[] stk;
String[] oQty;
String[] oVal;
String[] fQty;
BitSet dots;
int mWidth;
int mHeight;
String mStatus;
String TAG = …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用 Xamarin 原生 android 从蓝牙打印机 (INTERMEC PB51) 打印。
我已经根据以下链接编写了代码。
我的代码如下。
private static byte[] SELECT_BIT_IMAGE_MODE = { 0x1B, 0x2A, 33, (byte)255, 0 };
Run Code Online (Sandbox Code Playgroud)
制作位图如下。
Bitmap sigImage = BitmapFactory.DecodeResource(Resources, Resource.Drawable.icn_logo_jpg);
Run Code Online (Sandbox Code Playgroud)
创建蓝牙插座。
BluetoothSocket socket = null;
BufferedReader inReader = null;
BufferedWriter outReader = null;
string bt_printer = address; //AdminSettings.PrinterMACAddr;
if (string.IsNullOrEmpty(bt_printer)) bt_printer = "00:13:7B:49:D1:8C";
BluetoothDevice mmDevice = BluetoothAdapter.DefaultAdapter.GetRemoteDevice(bt_printer);
UUID applicationUUID = UUID.FromString("00001101-0000-1000-8000-00805F9B34FB");
socket = mmDevice.CreateRfcommSocketToServiceRecord(applicationUUID);
socket.Connect();
Run Code Online (Sandbox Code Playgroud)
调用方式
PrintImage(bitMap, socket);
Run Code Online (Sandbox Code Playgroud)
创建打印方法
public void PrintImage(Bitmap bitmap, BluetoothSocket _socket)
{
try
{
if …Run Code Online (Sandbox Code Playgroud) 嘿大家所以我试图在Android上构建一个小样本打印应用程序,似乎无法打印现有的pdf.有很多关于使用画布创建自定义文档的文档,但我已经有了该文档.基本上我只是希望能够读取pdf文档并将其作为文件输出流直接发送到要打印的打印机.任何帮助表示赞赏.