Commit Graph

24 Commits

Author SHA1 Message Date
Vincent Sanders
3b4dea6241 Update framebuffer frontend to cope with split operations table headers 2014-10-16 22:33:44 +01:00
Vincent Sanders
17be8cf216 Put the font operations table alongside all the other core API
The netsurf core is driven from numerous operation tables most of
which are now set through a common netsurf_register() interface. The
font and plotting interfaces are currently separate and unlike all the
other operation tables are modified for differing contexts.

This change moves the font operations alongside all the other
operations table and remove unnecessary interaction with the renderers
font internals. Further this also removes the need for css internals
to be visible in frontends.
2014-10-13 11:56:31 +01:00
Michael Drake
5487000874 Give internal font more meaningful name.
s/core/ns-sans/
2014-09-02 09:42:56 +01:00
Vincent Sanders
98a4985b30 generate internal font from glyph data on demand 2014-08-17 23:49:06 +01:00
Michael Drake
c0548fc472 Optimise glyph scaling. 2014-08-01 23:05:03 +01:00
Michael Drake
8945e314c8 Simplify glyph scaling slightly. 2014-08-01 14:33:40 +01:00
Michael Drake
ac067e3238 Simplify style handling. 2014-08-01 12:26:57 +01:00
Michael Drake
6b7e073c58 Add support for double-size rendering of internal font for headings. 2014-08-01 09:50:31 +01:00
Michael Drake
35c8da4ecf Remove unused #define. 2014-08-01 09:49:57 +01:00
Michael Drake
dfc095bd90 Display U+FFFD for characters > U+FFFF. 2014-06-24 13:26:39 +01:00
Michael Drake
cd159b6775 Don't display certain invisible characters.
Fixes display of U+200E code points all over Google
  search results.
2014-06-18 13:13:44 +01:00
Michael Drake
15ba60f305 Remove some debug. 2014-05-06 21:58:49 +01:00
Michael Drake
4cbc56ebc1 Add Unicode support to internal font.
+ Now contains more glpyhs (was previously limited to cp-1252).
  + When a glyph is unavailable, the codepoint is now rendered.
  + Added glyph data file.
  + Added converter to generate the font's .c file from the data.

TODO:

  The generated file is currently checked into the repo, but it
  should be generated as part of the build process, in the
  build-* directory.

  To update the generated source file, first build the converter:

      $ gcc -O2 -Wall framebuffer/convert_font.c -lm \
          -o build-Linux-framebuffer/tools/convert_font

  And then use it to generate the souce file:

      $ build-Linux-framebuffer/tools/convert_font \
         framebuffer/res/fonts/glyph_data \
         framebuffer/GEN_font_internal.c -v

  The converter's usage is:

     convert_font [options] <in_file> <out_file>

  See convert_font --help for more details.
2014-05-06 21:31:05 +01:00
Vincent Sanders
886a3106db move utf8 local conversion operations to table 2014-02-01 22:17:36 +00:00
Vincent Sanders
7cb0619fe8 fix dumb typos from utf8 error return refactor 2014-01-28 22:39:25 +00:00
Vincent Sanders
654da2ffb5 move utf8 conversion routines to use nserror instead of their own error enum 2014-01-28 21:40:13 +00:00
Michael Drake
4fa77f9686 Add font_finalise. 2013-10-23 21:32:16 +01:00
Vincent Sanders
ee6e6eec05 move options include 2013-05-28 14:16:10 +01:00
Michael Drake
3148f8a6c3 Make compatible with new nsfont_split expectations. Only splits on spaces. 2013-02-10 18:26:59 +00:00
Michael Drake
2e4bb2d020 Round to nearest point between chars in nsfont_position_in_string, instead of rounding down. 2012-07-31 20:41:27 +01:00
Michael Drake
ebebdfda4b Fix framebuffer build.
svn path=/trunk/netsurf/; revision=13222
2011-12-02 17:46:57 +00:00
Michael Drake
b7f812d5a2 Replace old internal font with new one. New font
has bold, italic and italic&bold variants.  Change
internal font's encoding from CP437 to CP1252,
since it has more useful glyphs for web browsing.

svn path=/trunk/netsurf/; revision=9957
2010-02-06 22:32:39 +00:00
John Mark Bell
2565a37a52 Refactor text plotter and other font functions to remove dependency on CSS.
svn path=/trunk/netsurf/; revision=8641
2009-07-21 10:59:53 +00:00
Vincent Sanders
36b5deef09 Make framebuffer port use libnsfb
svn path=/trunk/netsurf/; revision=8122
2009-06-28 18:32:47 +00:00