我试图用Python脚本将图像发送到打印机进行打印。我对这门语言没有太多的经验,并且从其他一些人那里得到了一些提示,而且我目前遇到了一个问题,就是我一直收到一个错误,说PIL中的一个文件丢失了。我的代码是:
from PIL import Image
from PIL.ExifTags import TAGS
import socket
import sys
from threading import Thread
def print_bcard(HOST):
print 'Printing business card'
card_pic = Image.open("/home/nao/recordings/cameras/bcard.jpg")
HOST = '192.168.0.38'
PORT = 9100
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((HOST, PORT))
f = open(str(card_pic), 'rb') #open in binary
l = f.read(1024)
while (l):
s.send(l)
l = f.read(1024)
f.close()
s.close()
print_bcard('192.168.0.38')
我一直得到的错误是:
^{pr2}$有没有人知道发生了什么,或者如果不知道,不用PIL访问照片的另一种方式?谢谢。在
我想问题是你用PIL打开图片:
card_pic = Image.open("/home/nao/recordings/cameras/bcard.jpg")
而不是在这里打开文件:
f = open(str(card_pic), 'rb') #open in binary
但是
str(card_pic)
试图将PIL-image对象转换为字符串,它没有返回文件名。 改为试试这一行:f = open("/home/nao/recordings/cameras/bcard.jpg", 'rb')
如果你想读一个文件名的话。相反,您将它加载到一个PIL
Image
中,然后将图像传递给fileopen()
函数,这没有任何意义。在尝试:
相关问题 更多 >
编程相关推荐