home *** CD-ROM | disk | FTP | other *** search
- /* -*-C-*- outrow.h */
- /*-->outrow*/
- /**********************************************************************/
- /******************************* outrow *******************************/
- /**********************************************************************/
-
- void
- outrow(c,yoff) /* copy img_row[] into rasters[] if allocated, else no-op */
- BYTE c; /* current character value */
- UNSIGN16 yoff; /* offset from top row (0,1,...,hp-1) */
- {
- register UNSIGN16 k; /* loop index */
- register UNSIGN32 *p; /* pointer into img_row[] */
- register UNSIGN32 *q; /* pointer into rasters[] */
- register struct char_entry *tcharptr; /* temporary char_entry pointer */
- UNSIGN16 words_per_row; /* number of raster words to copy */
-
- tcharptr = &(fontptr->ch[c]);
- if (tcharptr->rasters != (UNSIGN32*)NULL)
- {
- words_per_row = (UNSIGN16)(tcharptr->wp + 31) >> 5;
- p = tcharptr->rasters + yoff*words_per_row;
- q = img_row;
- for (k = words_per_row; k; --k) /* copy img_row[] into rasters[] */
- *p++ = *q++;
- }
- }
-