У меня есть принтер этикеток (Brother QL-550), подключенный к Raspberry Pi с использованием чашек. Это работает. У меня также есть настольный компьютер и я добавил этот принтер (это необходимо, потому что иначе Gnome не помнит, какой принтер использовать).

Теперь, когда я пытаюсь распечатать с настольного компьютера, файл там растеризуется, а затем отправляется в Pi с типом файла application/vnd.cups-pdf который попытается снова растеризовать его, что, очевидно, не удается. Итак, как я могу научить настольный компьютер либо не выполнять локальную растеризацию (я бы предпочел это), либо установить правильный тип файла, чтобы Pi перенаправлял двоичные данные непосредственно на USB-принтер?

Для справки, это заголовок файла PPD, который предположительно необходимо исправить:

*FormatVersion: "4.3"
*FileVersion:   "1.1"
*LanguageVersion: English
*LanguageEncoding: ISOLatin1
*PCFileName:    "BRQ550PT.PPD"
*Manufacturer:  "Brother"
*Product:       "(QL-550)"
*cupsVersion:   1.0
*cupsManualCopies: True
*cupsModelNumber:  2
*cupsFilter:    "application/vnd.cups-postscript 100 foomatic-rip"
*cupsFilter:    "application/vnd.cups-pdf 0 foomatic-rip"
*%pprRIP:        foomatic-rip other
*ModelName:     "Brother QL-550"
*ShortNickName: "Brother QL-550 ptouch"
*NickName:      "Brother QL-550 Foomatic/ptouch (recommended)"
*PSVersion:     "(3010.000) 550"
*PSVersion:     "(3010.000) 651"
*PSVersion:     "(3010.000) 652"
*PSVersion:     "(3010.000) 653"
*PSVersion:     "(3010.000) 704"
*PSVersion:     "(3010.000) 705"
*PSVersion:     "(3010.000) 800"
*PSVersion:     "(3010.000) 815"
*PSVersion:     "(3010.000) 850"
*PSVersion:     "(3010.000) 860"
*PSVersion:     "(3010.000) 861"
*PSVersion:     "(3010.000) 862"
*PSVersion:     "(3010.000) 863"
*PSVersion:     "(3010.000) 864"
*PSVersion:     "(3010.000) 870"
*LanguageLevel: "3"
*ColorDevice:   False
*DefaultColorSpace: Gray
*FileSystem:    False
*Throughput:    "1"
*LandscapeOrientation: Plus90
*TTRasterizer:  Type42
*1284DeviceID: "MFG:Brother;MDL:QL-550;CMD:PT-CBP;DRV:Dptouch,R1,M0,TF;"

*driverName ptouch: ""
*driverType F/Filter: ""
*driverObsolete: False


*HWMargins: 4.25 8.50 4.25 8.5
*VariablePaperSize: True
*MaxMediaWidth: 100000
*MaxMediaHeight: 100000
*NonUIOrderDependency: 100 AnySetup *CustomPageSize
*CustomPageSize True: "pop pop pop
<</PageSize [ 5 -2 roll ] /ImagingBBox null>>setpagedevice"
*End
*ParamCustomPageSize Width: 1 points 36 100000
*ParamCustomPageSize Height: 2 points 36 100000
*ParamCustomPageSize Orientation: 3 int 0 0
*ParamCustomPageSize WidthOffset: 4 points 0 0
*ParamCustomPageSize HeightOffset: 5 points 0 0

*FoomaticIDs: Brother-QL-550 ptouch
*FoomaticRIPCommandLine: "gs -q -dBATCH -dPARANOIDSAFER -dQUIET -dNOPA&&
USE -dNOINTERPOLATE -sDEVICE=cups %A%Z -sOutputFile=- - | rastertoptch&&
 dummyjob dummyuser dummytitle 1 &apos;%B&apos;"
*End

[ lots of option setting omitted ]

Теперь, конечно, я могу просто заменить FoomaticRIPCommandLine на "cat" в удаленных системах, и все работает, но я бы хотел решение, которое предоставляет один PPD, который работает как на машинах с прямым подключением, так и на машинах с удаленной печатью.

0