Removed old font parts
This commit is contained in:
95
archive/FontMeasure.hpp
Normal file
95
archive/FontMeasure.hpp
Normal file
@ -0,0 +1,95 @@
|
||||
// Copyright (c) 2022 Dominic Masters
|
||||
//
|
||||
// This software is released under the MIT License.
|
||||
// https://opensource.org/licenses/MIT
|
||||
|
||||
#pragma once
|
||||
#include "dawnlibs.hpp"
|
||||
#include "assert/assert.hpp"
|
||||
|
||||
namespace Dawn {
|
||||
struct FontLineMeasure {
|
||||
/** What (real character) index the line starts at */
|
||||
int32_t start;
|
||||
/** How many (real) characters the line is in length */
|
||||
int32_t length;
|
||||
};
|
||||
|
||||
struct FontMeasure {
|
||||
public:
|
||||
/** How many raw chars are in the string */
|
||||
int32_t length;
|
||||
|
||||
/** How many real characters (non whitespace) are in the string */
|
||||
int32_t realLength;
|
||||
|
||||
/** The real character info for each line */
|
||||
std::vector<struct FontLineMeasure> lines;
|
||||
|
||||
/** Dimensions of the string */
|
||||
float_t width, height;
|
||||
|
||||
/** Height of a single line */
|
||||
float_t lineHeight;
|
||||
|
||||
/**
|
||||
* Internal method that adds a line to the text buffer process.
|
||||
*
|
||||
* @param start Start character index for the next line.
|
||||
* @param len Length of the next line.
|
||||
*/
|
||||
void addLine(int32_t start, int32_t length);
|
||||
|
||||
/**
|
||||
* Returns the width of this measured string.
|
||||
*
|
||||
* @return Width of the pre measured string.
|
||||
*/
|
||||
float_t getWidth();
|
||||
|
||||
/**
|
||||
* Returns the height of the measured string.
|
||||
*
|
||||
* @return Height of the pre measured string.
|
||||
*/
|
||||
float_t getHeight();
|
||||
|
||||
/**
|
||||
* Returns the count of quads on the given line.
|
||||
*
|
||||
* @param line Which line to get the count of quads for.
|
||||
* @return Count of quads on that line.
|
||||
*/
|
||||
int32_t getQuadsOnLine(size_t line);
|
||||
|
||||
/**
|
||||
* Returns the index, of which quad is the first quad on the given line.
|
||||
*
|
||||
* @param line Line to get the quad index of.
|
||||
* @return The quad index of that line.
|
||||
*/
|
||||
int32_t getQuadIndexOnLine(size_t line);
|
||||
|
||||
/**
|
||||
* Returns the height of the count of lines provided.
|
||||
*
|
||||
* @param lineCount Count of lines to get the height of.
|
||||
* @return Height of the given count of lines.
|
||||
*/
|
||||
float_t getHeightOfLineCount(size_t lineCount);
|
||||
|
||||
/**
|
||||
* Returns the count of lines in this string.
|
||||
*
|
||||
* @return Count of lines.
|
||||
*/
|
||||
size_t getLineCount();
|
||||
|
||||
/**
|
||||
* Returns the count of quads in this string.
|
||||
*
|
||||
* @return Total count of quads.
|
||||
*/
|
||||
int32_t getQuadCount();
|
||||
};
|
||||
}
|
Reference in New Issue
Block a user