SFont.cpp
1//========================================================================
2//
3// SFont.cpp
4//
5// Copyright 2001-2002 Glyph & Cog, LLC
6//
7//========================================================================
8
9#include <aconf.h>
10
11#ifdef USE_GCC_PRAGMAS
12#pragma implementation
13#endif
14
15#include "SFont.h"
16
17//------------------------------------------------------------------------
18
19SFontEngine::SFontEngine(Display *displayA, Visual *visualA, int depthA,
20 Colormap colormapA) {
21 display = displayA;
22 visual = visualA;
23 depth = depthA;
24 colormap = colormapA;
25}
26
27SFontEngine::~SFontEngine() {
28}
29
30void SFontEngine::useTrueColor(int rMaxA, int rShiftA, int gMaxA, int gShiftA,
31 int bMaxA, int bShiftA) {
32 trueColor = gTrue;
33 rMax = rMaxA;
34 rShift = rShiftA;
35 gMax = gMaxA;
36 gShift = gShiftA;
37 bMax = bMaxA;
38 bShift = bShiftA;
39}
40
41void SFontEngine::useColorCube(Gulong *colorsA, int nRGBA) {
42 trueColor = gFalse;
43 colors = colorsA;
44 nRGB = nRGBA;
45 rMax = gMax = bMax = nRGB - 1;
46}
47
48Gulong SFontEngine::findColor(int r, int g, int b) {
49 int r1, g1, b1;
50 Gulong pix;
51
52 r1 = ((r & 0xffff) * rMax) / 0xffff;
53 g1 = ((g & 0xffff) * gMax) / 0xffff;
54 b1 = ((b & 0xffff) * bMax) / 0xffff;
55 if (trueColor) {
56 pix = (r1 << rShift) + (g1 << gShift) + (b1 << bShift);
57 } else {
58 pix = colors[(r1 * nRGB + g1) * nRGB + b1];
59 }
60 return pix;
61}
62
63//------------------------------------------------------------------------
64
65SFontFile::SFontFile() {
66}
67
68SFontFile::~SFontFile() {
69}
70
71//------------------------------------------------------------------------
72
73SFont::SFont() {
74}
75
76SFont::~SFont() {
77}
78
79GBool SFont::getCharPath(CharCode c, Unicode u, GfxState *state) {
80 return gFalse;
81}