Enscript의 줄 내에서 수직 텍스트 정렬 옵션이 있습니까?
텍스트 스크립트:
push (@parts_section_array, sprintf(border("#")."%4s".'~bggray{0.85}'." Part Number %9s Description %16s Qty. ". '~font{DejaVuSansMono-Bold10}' ."Unit Price Ext. Price %4s Cost".'~font{default}~bggray{1.0}'." ".border("|")."\n",
"", "", "", ""));
또는 텍스트는 다음과 같습니다.
~bggray{0.85} Part Number Description Qty. ~font{DejaVuSansMono-Bold10} Unit Price Ext. Price Cost ~font{default}~bggray{1.0}
굽기 코드:
enscript -q \
-f DejaVuSansMono@10 \
-e~ \
--no-header \
-s 4.3 \
--margins=10:2:14:10 \
-L 73 "${pi}" \
-o - \
| ps2pdf - "$BOOK_DIR"/"${filename}.pdf"
답변1
다른 방법을 찾을 수 없는 경우 생성된 PostScript를 언제든지 편집할 수 있습니다. 내 버전에서는 enscript
출력 시작 부분에 배경을 그리기 위해 호출되는 함수의 정의를 넣습니다.bgs
/bgs { % x y height blskip gray str -> - show string with bg color
/str exch def
/gray exch def
/blskip exch def
/height exch def
/y exch def
/x exch def
gsave
x y blskip sub str stringwidth pop height Box
gray setgray
fill
grestore
x y M str s
} def
x y ... Box
상자의 y 좌표를 높이려면 해당 선을 변경해야 합니다 height*0.2
. 예를 들면 다음과 같습니다.
x y height .2 mul add blskip sub str stringwidth pop height Box
sed
파이프라인 이전에 스크립트를 추가하여 이를 수행합니다 ps2pdf
.
enscript ... |
sed '/^\/bgs /,/^}/{
/x y blskip/s//x y height .2 mul add blskip/
}' |
ps2pdf ...
enscript
약간 다른 정의가 생성될 수 있으므로 먼저 비교하십시오 .