home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #18 / NN_1992_18.iso / spool / comp / windows / openloo / 3459 < prev    next >
Encoding:
Internet Message Format  |  1992-08-14  |  4.8 KB

  1. Path: sparky!uunet!stanford.edu!rutgers!ub!acsu.buffalo.edu!usenet
  2. From: hull@acsu.buffalo.edu (Jon Hull)
  3. Newsgroups: comp.windows.open-look
  4. Subject: Re: ps->raster conversion under OW3.0?
  5. Message-ID: <Bsz4F3.1Kx@acsu.buffalo.edu>
  6. Date: 14 Aug 92 12:37:51 GMT
  7. Sender: nntp@acsu.buffalo.edu
  8. Organization: State University of New York at Buffalo / CEDAR Research Group
  9. Lines: 219
  10. Nntp-Posting-Host: antares.cs.buffalo.edu
  11.  
  12. Attached is the version of ps2bits that we have.
  13. Our problem is that it doesn't render proportionally
  14. spaced fonts like Times-Roman properly.
  15. The horizontal spacing is all messed up.
  16. Courier seems to work fine.  We haven't seen a seg fault problem.
  17. A sample ps file is also attached.
  18.  
  19. Any advice on fixing this would be appreciated.
  20. Thanks,
  21. Jon Hull
  22. hull@cs.buffalo.edu
  23. ====================
  24. #! /bin/sh
  25. # @(#)ps2bits 1.5.1 90/08/22
  26. # ps2bits - PostScript to Rasterfile converter.
  27. #
  28.  
  29. USAGE="Usage: `basename ${0}` [-in s] [-out s] [-dpi x y] [-size w h] [-gray | -color | -truecolor]"
  30. OUT="pspage"
  31. IN="%stdin"
  32. DPIX=300
  33. DPIY=300
  34. XSIZE=8.5
  35. YSIZE=11
  36. DEPTH=1
  37.  
  38. export OPENWINHOME LD_LIBRARY_PATH FONTPATH
  39. FONTPATH=$FONTPATH:$OPENWINHOME/lib/fonts
  40. OPENWINHOME="${OPENWINHOME-/usr/openwin}"
  41. LD_LIBRARY_PATH=${OPENWINHOME}/lib
  42.  
  43. if [ ! -f $OPENWINHOME/etc/NeWS/redbook.ps ]; then
  44.     echo "`basename $0`: xnews is not installed correctly in $OPENWINHOME" 1>&2
  45.     echo "    (set \$OPENWINHOME to where it is installed...)" 1>&2
  46.     exit 1
  47. fi
  48.  
  49. while [ ${#} -gt 0 ]; do
  50.     case "${1}" in
  51.     -truecolor)    shift;
  52.         DEPTH=24
  53.     ;;
  54.     -color)    shift;
  55.         # Currently this gives a StaticGray colormap - I'm still
  56.         # looking for a mechanism to get ahold of a StaticColor 
  57.         # or PsuedoColor colormap when running -nodev
  58.         DEPTH=8
  59.     ;;
  60.     -gray)    shift;
  61.         DEPTH=8
  62.     ;;
  63.     -out)    shift;
  64.         OUT=${1} shift
  65.     ;;
  66.     -in)    shift;
  67.         IN=${1} shift
  68.     ;;
  69.     -size)    shift;
  70.         XSIZE=${1} shift;
  71.         YSIZE=${1} shift
  72.     ;;
  73.     -dpi)    shift;
  74.         DPIX=${1} shift;
  75.         DPIY=${1} shift
  76.     ;;
  77.     *)    echo ${USAGE};
  78.         exit 0
  79.     ;;
  80.     esac
  81. done
  82.  
  83. $OPENWINHOME/bin/xnews -nodev -init "
  84.     /beginpackage where {
  85.     pop
  86.     currentshared
  87.     true setshared
  88.  
  89.     /NeWSops 50000 dict dup begin
  90.  
  91.         /PackageType    1 def
  92.         /PackageName    /NeWSops def
  93.         /MajorVersion    3 def
  94.         /MinorVersion    0 def
  95.  
  96.         initNeWSoperators
  97.         systemdict /initNeWSoperators undef
  98.  
  99.         /random { rand -16 bitshift 16#7fff div } def
  100.  
  101.         /FatalError { % string => (doesn't return)
  102.         console exch writestring
  103.         console flushfile
  104.         shutdownserver
  105.         } def
  106.  
  107.         /currentpacking false def
  108.         /setpacking { pop } def
  109.         (${OPENWINHOME}/etc/NeWS/basics.ps)   (r) file cvx exec
  110.         (${OPENWINHOME}/etc/NeWS/redbook.ps)  (r) file cvx exec
  111.         (${OPENWINHOME}/etc/NeWS/misc.ps)     (r) file cvx exec
  112.         (${OPENWINHOME}/etc/NeWS/statdict.ps) (r) file cvx exec
  113.     end definepackage beginpackage
  114.     setshared
  115.     } if
  116.  
  117.     500 dict begin    % start userdict
  118.     false setautobind
  119.         true  setprintermatch
  120.     /bind {} def
  121.  
  122.     /showpage { copypage erasepage initgraphics } def
  123.     /_pageno 0 def
  124.     /copypage {
  125.         /_pageno _pageno 1 add store
  126.         (${OUT}.)
  127.         _pageno 100 lt { (0) append } if
  128.         _pageno 10 lt { (0) append } if
  129.         _pageno 3 string cvs append
  130.         clippath writecanvas
  131.     } def
  132.  
  133.  
  134.     ${DPIX} ${XSIZE} mul ${DPIY} ${YSIZE} mul ${DEPTH}
  135.     [ ${DPIX} 72 div 0 0 ${DPIY} 72 div neg 0 7 index ]
  136.     null buildimage setcanvas
  137.     erasepage initgraphics
  138.  
  139.     (${IN}) (r) file cvx exec
  140.     shutdownserver
  141. "
  142. =============================
  143. %!PS-Adobe-1.0
  144. %%CreationDate: Tue Aug 11 04:56:48 1992
  145. %%Pages: (atend)
  146. %%DocumentFonts: (atend)
  147.  
  148. /X{exch}def
  149. /r{rmoveto}def
  150. /m{moveto}def
  151. /l{lineto}def
  152. /rl{rlineto}def
  153. /lc{yc X xc X l st}def
  154. /mc{yc X xc X m}def
  155. /el{gs /a X def a div 1 X scale cp np a xc 2 div 0 360 arc st gr}def
  156. /ar{cp 7 2 roll np xc 5 1 roll atan 3 1 roll atan X arc st}def
  157. /sp{yc X xc X 6 2 roll yc X xc X 6 2 roll yc X xc X 6 2 roll ct}def
  158. /st{stroke}def
  159. /gs{gsave}def
  160. /gr{grestore}def
  161. /cp{currentpoint}def
  162. /np{newpath}def
  163. /ct{curveto}def
  164. /m0{0 0 moveto}def
  165. /BP{/devps-save save def m0}def
  166. /EP{
  167. clear devps-save restore
  168. showpage}def
  169. /res 10.000000 def
  170. /V{res neg div 792 add
  171. currentpoint pop X
  172. m}def
  173. /H{res div
  174. currentpoint X pop
  175. moveto}def
  176. /h{res div 0 r}def
  177. /v{res neg div 0 X r}def
  178. /xc{res div}def
  179. /yc{res neg div 792 add}def
  180. /S{X H show}def
  181. /psize 10 def
  182. /height 1 def
  183. /slant 0 def
  184. /FF{findfont X dup 12 div setlinewidth /psize X def
  185.     [psize 0 psize height mul slant sin slant cos div mul psize height mul 0 0]
  186.     makefont setfont}def
  187. /shade{gs
  188.  /dy X def
  189.  /dx X def
  190.  np m
  191.  setgray
  192.  0 dy rl
  193.  dx 0 rl
  194.  0 dy neg rl
  195.  dx neg 0 rl
  196.  closepath
  197.  fill
  198. gr}def
  199. 1 setlinecap
  200. /R{/Times-Roman FF}def
  201. %%EndProlog
  202. 10 R
  203. %%Page: 1 1
  204. BP
  205. /slant 0 def
  206. /height 1.000000 def
  207. 10 R
  208. 960 V
  209. 10 R
  210. 584(This)S
  211. 792(is)S
  212. 889(a)S
  213. 963(simple)S
  214. 1260(ditro)S
  215. 1449 H
  216.     (f)show 10 -.5 mul h (f)show
  217. 10 R
  218. 1540(\256le)S
  219. 1698(that)S
  220. 1878(will)S
  221. 2064(demonstrate)S
  222. 2582(the)S
  223. 2734(horizontal)S
  224. 3169(spacing)S
  225. 3504(problem.)S
  226. 7920 V
  227. EP
  228. %%Trailer
  229. %%DocumentFonts: Times-Roman
  230. %%Pages: 1
  231.