python:写prt头文件

一、prt头文件参数

1、Signature

常取:0x00005555

2、XDPI

图像X方向分辨率dot per inch,常取360 720

3、YDPI

图像Y方向分辨率,常取400 800 1200 1600

4、BytesPerLine

图像一行每个通道的数据量(字节 or 8位)

5、Height

单位是像素点dot

图像的行数row就是图像的高Height

设图像的实际大小Height_Real,单位是mm

mm和inch的转换关系是:25.4mm = 1 inch

row = Height_Real / 25.4 * YDPI

6、Width

单位是像素点dot

图像的列数col就是图像的宽Width

设图像的实际大小Width_Real,单位是mm

mm和inch的转换关系是:25.4mm = 1 inch

col = Width_Real / 25.4 * YDPI

7、PaperMode

0 :Normal

1 :Plc mode (张晔纸箱机)

8、Colors

图像的通道数

9、BitsPerColor

灰度级别,每个喷嘴对应的数据

10、Level

0

11、Tag0

0

12、Tag1

0

二、将头文件参数写入

头文件的数据类型都是24位,DWORD

而Python的bytes类型的数据是8位

所以要将头文件的各个参数var按8位8位的分开取出来rev1 rev2 rev3 rev4

然后从低位到高位进行排布:bytes[rev4,rev3,rev2,rev1]

def rev(var):
    rev1=(var&0xff000000)>>24
    rev2=(var&0x00ff0000)>>16
    rev3=(var&0x0000ff00)>>8
    rev4=(var&0x000000ff)
    return rev1,rev2,rev3,rev4

file = open('D:/Desktop/python_test/Makeprt.prt','wb+')
var=0x11223344
rev1,rev2,rev3,rev4=rev(var)
file.write(bytes([rev4,rev3,rev2,rev1]))
file.close()
print('file write successfully')

你可能感兴趣的:(python,上位机)