Add initial font metrics and equation rendering.
This commit is contained in:
parent
c2027801be
commit
5ddd54dd6d
24 changed files with 868 additions and 63 deletions
|
@ -4,23 +4,24 @@ if(UNIX)
|
|||
find_package(Freetype QUIET)
|
||||
if(Freetype_FOUND)
|
||||
set(PLATFORM_UNIT_TEST_FILES
|
||||
fonts/TestFreeTypeFontEngine.cpp
|
||||
TestFreeTypeFontEngine.cpp
|
||||
)
|
||||
endif()
|
||||
else()
|
||||
set(PLATFORM_UNIT_TEST_FILES
|
||||
fonts/TestDirectWriteFontEngine.cpp
|
||||
TestDirectWriteFontEngine.cpp
|
||||
)
|
||||
endif()
|
||||
|
||||
set(MODULE_NAME fonts)
|
||||
|
||||
list(APPEND UNIT_TEST_FILES
|
||||
TestFontReader.cpp
|
||||
${PLATFORM_UNIT_TEST_FILES}
|
||||
)
|
||||
|
||||
set(FONTS_UNIT_TEST_FILES
|
||||
fonts/TestFontReader.cpp
|
||||
${PLATFORM_UNIT_TEST_FILES}
|
||||
PARENT_SCOPE
|
||||
)
|
||||
|
||||
set(FONTS_UNIT_TEST_DEPENDENCIES
|
||||
fonts
|
||||
PARENT_SCOPE
|
||||
)
|
||||
set(UNIT_TEST_TARGET_NAME ${MODULE_NAME}_unit_tests)
|
||||
|
||||
add_executable(${UNIT_TEST_TARGET_NAME} ${CMAKE_SOURCE_DIR}/test/test_runner.cpp ${UNIT_TEST_FILES})
|
||||
target_link_libraries(${UNIT_TEST_TARGET_NAME} PUBLIC test_utils fonts)
|
||||
set_property(TARGET ${UNIT_TEST_TARGET_NAME} PROPERTY FOLDER test/${MODULE_NAME})
|
|
@ -9,6 +9,7 @@
|
|||
#include "SvgWriter.h"
|
||||
#include "SvgShapeElements.h"
|
||||
#include "File.h"
|
||||
#include "FontItem.h"
|
||||
|
||||
TEST_CASE(TestDirectWriteFontEngine, "fonts")
|
||||
{
|
||||
|
@ -33,4 +34,17 @@ TEST_CASE(TestDirectWriteFontEngine, "fonts")
|
|||
File file(TestUtils::getTestOutputDir(__FILE__) / "out.svg");
|
||||
file.writeText(doc_string);
|
||||
|
||||
}
|
||||
|
||||
TEST_CASE(TestDirectWriteFontEngine_GlyphMetrics, "fonts")
|
||||
{
|
||||
DirectWriteFontEngine font_engine;
|
||||
font_engine.initialize();
|
||||
|
||||
FontItem font("Verdana", 16);
|
||||
|
||||
const auto advance = font_engine.getHorizontalAdvance(font, "abc");
|
||||
MLOG_INFO("Advance is: " << advance);
|
||||
|
||||
REQUIRE(advance != 0.0);
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue