Mar 23

[原]修改驱动自定义页面大小的脚本 晴

linuxing , 12:27 , 编程 » Bash , 评论(0) , 引用(0) , 阅读(21036) , Via 本站原创 | |
   昨天说明了如何给驱动增加一个自定义页面。未免以后需要多次修改驱动,临时写了一个简单的脚本方便使用。目前该脚本只能对指定的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.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"

附件:
Tags: ,
发表评论
表情
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
打开HTML
打开UBB
打开表情
隐藏
记住我
昵称   密码   游客无需密码
网址   电邮   [注册]