Add support for bitmap fonts
git-svn-id: https://nuttx.svn.sourceforge.net/svnroot/nuttx/trunk@1408 7fd9a85b-ad96-42d3-883c-3090e2eb8679
This commit is contained in:
parent
8e18d445ce
commit
da642ce6a9
|
@ -589,8 +589,11 @@
|
|||
* Added some rasterizers to the graphics library
|
||||
|
||||
0.3.20 2008-xx-xx Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
* Initial release of a tiny windowing system for NuttX (not well tested at initial check-in)
|
||||
* Initial release of a tiny windowing system for NuttX
|
||||
* Add fixed precision sin() and cos() (not well tested at initial check-in)
|
||||
* Add an X11-based simulated framebuffer driver
|
||||
* The simulated target now has an option (CONFIG_SIM_WALLTIME) that will let the simulation
|
||||
run in more-or-less realtime.
|
||||
* Added more more extensive window support: frames, toolbars, etc.
|
||||
* Added support for bitmap fonts
|
||||
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
<tr align="center" bgcolor="#e4e4e4">
|
||||
<td>
|
||||
<h1><big><font color="#3c34ec"><i>NuttX RTOS</i></font></big></h1>
|
||||
<p>Last Updated: November 28, 2008</p>
|
||||
<p>Last Updated: December 3, 2008</p>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
@ -1205,11 +1205,13 @@ buildroot-0.1.2 2007-11-06 <spudmonkey@racsa.co.cr>
|
|||
|
||||
<pre><ul>
|
||||
nuttx-0.3.20 2008-xx-xx Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
* Initial release of a tiny windowing system for NuttX (not well tested at initial check-in)
|
||||
* Initial release of a tiny windowing system for NuttX
|
||||
* Add fixed precision sin() and cos() (not well tested at initial check-in)
|
||||
* Add an X11-based simulated framebuffer driver
|
||||
* The simulated target now has an option (CONFIG_SIM_WALLTIME) that will let the simulation
|
||||
run in more-or-less realtime.
|
||||
* Added more more extensive window support: frames, toolbars, etc.
|
||||
* Added support for bitmap fonts
|
||||
|
||||
pascal-0.1.3 2008-xx-xx Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
|
||||
|
|
|
@ -60,10 +60,14 @@ include nxtk/Make.defs
|
|||
DEPPATH += --dep-path nxtk
|
||||
CFLAGS += ${shell $(TOPDIR)/tools/incdir.sh "$(CC)" $(TOPDIR)/graphics/nxtk}
|
||||
|
||||
ASRCS = $(NXGLIB_ASRCS) $(NXBE_ASRCS) $(NX_ASRCS) $(NXTK_ASRCS)
|
||||
include nxfonts/Make.defs
|
||||
DEPPATH += --dep-path nxfonts
|
||||
CFLAGS += ${shell $(TOPDIR)/tools/incdir.sh "$(CC)" $(TOPDIR)/graphics/nxfonts}
|
||||
|
||||
ASRCS = $(NXGLIB_ASRCS) $(NXBE_ASRCS) $(NX_ASRCS) $(NXTK_ASRCS) $(NXFONTS_ASRCS)
|
||||
AOBJS = $(ASRCS:.S=$(OBJEXT))
|
||||
|
||||
CSRCS = $(NXGLIB_CSRCS) $(NXBE_CSRCS) $(NX_CSRCS) $(NXTK_CSRCS)
|
||||
CSRCS = $(NXGLIB_CSRCS) $(NXBE_CSRCS) $(NX_CSRCS) $(NXTK_CSRCS) $(NXFONTS_CSRCS)
|
||||
COBJS = $(CSRCS:.c=$(OBJEXT))
|
||||
|
||||
SRCS = $(ASRCS) $(CSRCS)
|
||||
|
@ -72,9 +76,9 @@ OBJS = $(AOBJS) $(COBJS)
|
|||
BIN = libgraphics$(LIBEXT)
|
||||
|
||||
ifeq ($(CONFIG_NX_MULTIUSER),y)
|
||||
VPATH = nxglib:nxbe:nxmu:nxtk
|
||||
VPATH = nxglib:nxbe:nxmu:nxtk:nxfonts
|
||||
else
|
||||
VPATH = nxglib:nxbe:nxsu:nxtk
|
||||
VPATH = nxglib:nxbe:nxsu:nxtk:nxfonts
|
||||
endif
|
||||
|
||||
all: mklibgraphics
|
||||
|
|
|
@ -0,0 +1,106 @@
|
|||
/****************************************************************************
|
||||
* include/nuttx/nxfonts.h
|
||||
*
|
||||
* Copyright (C) 2008 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
*
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
* 3. Neither the name NuttX nor the names of its contributors may be
|
||||
* used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
||||
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
||||
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
||||
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
|
||||
* AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#ifndef __INCLUDE_NUTTX_NXFONTS_H
|
||||
#define __INCLUDE_NUTTX_NXFONTS_H
|
||||
|
||||
/****************************************************************************
|
||||
* Included Files
|
||||
****************************************************************************/
|
||||
|
||||
#include <nuttx/config.h>
|
||||
#include <sys/types.h>
|
||||
|
||||
/****************************************************************************
|
||||
* Pre-processor definitions
|
||||
****************************************************************************/
|
||||
|
||||
/****************************************************************************
|
||||
* Public Types
|
||||
****************************************************************************/
|
||||
|
||||
struct nx_fontmetic_s
|
||||
{
|
||||
uint32 stride : 2; /* Width of one font row in bytes */
|
||||
uint32 width : 6; /* Width of the font in bits */
|
||||
uint32 height : 6; /* Height of the font in rows */
|
||||
uint32 lxoffs : 6; /* Lower left-hand corner X-offset in pixels */
|
||||
uint32 yxoffs : 6; /* Lower left-hand corner y-offset in pixels */
|
||||
uint32 unused : 6;
|
||||
};
|
||||
|
||||
struct nx_fontbitmap_s
|
||||
{
|
||||
struct nx_fontmetic_s metric; /* Character metrics */
|
||||
FAR const ubyte *bitmap; /* Pointer to the character bitmap */
|
||||
};
|
||||
|
||||
struct nx_fontset_s
|
||||
{
|
||||
uint32 ascent : 6; /* Pixels above base (max) */
|
||||
uint32 descent : 6; /* Pixels below base (max) */
|
||||
uint32 first : 8; /* First font code */
|
||||
uint32 nfonts : 8; /* number of fonts */
|
||||
uint32 unused : 4;
|
||||
FAR const struct nx_fontbitmap_s *fonts;
|
||||
};
|
||||
|
||||
/****************************************************************************
|
||||
* Public Data
|
||||
****************************************************************************/
|
||||
|
||||
#undef EXTERN
|
||||
#if defined(__cplusplus)
|
||||
# define EXTERN extern "C"
|
||||
extern "C" {
|
||||
#else
|
||||
# define EXTERN extern
|
||||
#endif
|
||||
|
||||
EXTERN struct nx_fontset_s g_7bitfonts;
|
||||
#if CONFIG_NXFONTS_CHARBITS >= 8
|
||||
EXTERN struct nx_fontset_s g_8bitfonts;
|
||||
#endif
|
||||
|
||||
/****************************************************************************
|
||||
* Public Function Prototypes
|
||||
****************************************************************************/
|
||||
|
||||
#undef EXTERN
|
||||
#if defined(__cplusplus)
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* __INCLUDE_NUTTX_NXFONTS_H */
|
Loading…
Reference in New Issue