Mar
23
昨天说明了如何给驱动增加一个自定义页面。未免以后需要多次修改驱动,临时写了一个简单的脚本方便使用。目前该脚本只能对指定的EPSON-LQ-300K+.ppd.gz驱动有用。若你希望用于其他驱动,请自行修改Driver变量。注意,该脚本只能修改页面大小,而不能增加自定义页面,要增加的话,请参考昨天的文章吧。
脚本如下:
使用方法:
附件:
脚本如下:
引用
#!/bin/bash
# Modify EPSON-LQ-300K+ Drivers
function usage
{
echo "Usage: $0 "
echo " e.g. $0 595 842"
exit 1
}
if [ $# -lt 2 ];then
usage
fi
Driver='EPSON-LQ-300K+.ppd'
gunzip "$Driver".gz
width=$(cat $Driver |grep A7|grep '*ImageableArea'|awk '{print $5}')
height=$(cat $Driver |grep A7|grep '*ImageableArea'|awk '{print $6}'|sed 's/"//')
sed -i "/A7/s/$width $height/$1 $2/" $Driver
if [ $? = 0 ];then
echo "Driver has modified sucessfully!"
else
echo "Something is wrong!"
fi
gzip $Driver
# Modify EPSON-LQ-300K+ Drivers
function usage
{
echo "Usage: $0
echo " e.g. $0 595 842"
exit 1
}
if [ $# -lt 2 ];then
usage
fi
Driver='EPSON-LQ-300K+.ppd'
gunzip "$Driver".gz
width=$(cat $Driver |grep A7|grep '*ImageableArea'|awk '{print $5}')
height=$(cat $Driver |grep A7|grep '*ImageableArea'|awk '{print $6}'|sed 's/"//')
sed -i "/A7/s/$width $height/$1 $2/" $Driver
if [ $? = 0 ];then
echo "Driver has modified sucessfully!"
else
echo "Something is wrong!"
fi
gzip $Driver
使用方法:
引用
# ./modify.sh 595 846
Driver has modified sucessfully!
# zcat EPSON-LQ-300K+.ppd.gz |grep A7
*DefaultPageSize: A7
*PageSize A7/A7: "<>setpagedevice"
*DefaultPageRegion: A7
*PageRegion A7/A7: "<>setpagedevice"
*DefaultImageableArea: A7
*ImageableArea A7/A7: "0 0 595 846"
*DefaultPaperDimension: A7
*PaperDimension A7/A7: "595 846"
Driver has modified sucessfully!
# zcat EPSON-LQ-300K+.ppd.gz |grep A7
*DefaultPageSize: A7
*PageSize A7/A7: "<>setpagedevice"
*DefaultPageRegion: A7
*PageRegion A7/A7: "<>setpagedevice"
*DefaultImageableArea: A7
*ImageableArea A7/A7: "0 0 595 846"
*DefaultPaperDimension: A7
*PaperDimension A7/A7: "595 846"
附件:
下载文件