okular/generators/dvi/TeXFont.h
2024-06-26 12:48:44 +00:00

52 lines
1.3 KiB
C++

// -*- Mode: C++; c-basic-offset: 2; indent-tabs-mode: nil; c-brace-offset: 0; -*-
// TeXFont.h
//
// Part of KDVI - A DVI previewer for the KDE desktop environment
//
// SPDX-FileCopyrightText: 2003 Stefan Kebekus
// SPDX-License-Identifier: GPL-2.0-or-later
#ifndef _TEXFONT_H
#define _TEXFONT_H
#include "TeXFontDefinition.h"
#include "glyph.h"
class TeXFont
{
public:
explicit TeXFont(TeXFontDefinition *_parent)
{
parent = _parent;
}
virtual ~TeXFont();
TeXFont(const TeXFont &) = delete;
TeXFont &operator=(const TeXFont &) = delete;
void setDisplayResolution()
{
for (glyph &g : glyphtable) {
g.shrunkenCharacter = QImage();
}
}
virtual glyph *getGlyph(quint16 character, bool generateCharacterPixmap = false, const QColor &color = Qt::black) = 0;
// Checksum of the font. Used e.g. by PK fonts. This field is filled
// in by the constructor, or set to 0.0, if the font format does not
// contain checksums.
quint32 checksum = 0;
// If the font or if some glyphs could not be loaded, error messages
// will be put here.
QString errorMessage;
protected:
glyph glyphtable[TeXFontDefinition::max_num_of_chars_in_font];
TeXFontDefinition *parent;
};
#endif