mirror of
https://github.com/ultimatepp/ultimatepp.git
synced 2026-07-11 22:03:01 -06:00
uppbox: FontCover utility
git-svn-id: svn://ultimatepp.org/upp/trunk@2355 f0d560ea-af0d-0410-9eb7-867de7ffcac7
This commit is contained in:
parent
f054cae936
commit
77d8f38916
2 changed files with 61 additions and 0 deletions
11
uppbox/FontCover/FontCover.upp
Normal file
11
uppbox/FontCover/FontCover.upp
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
description "Font character coverage generator\377";
|
||||
|
||||
uses
|
||||
CtrlLib;
|
||||
|
||||
file
|
||||
main.cpp;
|
||||
|
||||
mainconfig
|
||||
"" = "GUI";
|
||||
|
||||
50
uppbox/FontCover/main.cpp
Normal file
50
uppbox/FontCover/main.cpp
Normal file
|
|
@ -0,0 +1,50 @@
|
|||
#include <CtrlLib/CtrlLib.h>
|
||||
|
||||
using namespace Upp;
|
||||
|
||||
const char *font[] = {
|
||||
"sans-serif",
|
||||
"Arial",
|
||||
"Arial Unicode MS",
|
||||
"MS UI Gothic",
|
||||
"MS Mincho",
|
||||
"Arial",
|
||||
"AlArabiya"
|
||||
"FreeSerif",
|
||||
"Kochi Mincho",
|
||||
"Kochi Gothic",
|
||||
"Sazanami Mincho",
|
||||
"Sazanami Gothic",
|
||||
"Gulim",
|
||||
"SimSun",
|
||||
"PMingLiU",
|
||||
"Symbol",
|
||||
};
|
||||
|
||||
GUI_APP_MAIN
|
||||
{
|
||||
Progress pi("Font %d");
|
||||
for(int i = 0; i < __countof(font); i++) {
|
||||
if(pi.StepCanceled())
|
||||
return;
|
||||
Font fnt;
|
||||
if(Font::FindFaceNameIndex(font[i]) > 0) {
|
||||
fnt.FaceName(font[i]);
|
||||
dword l = 0;
|
||||
for(int ch = 32; ch < 4096; ch++) {
|
||||
if(GetGlyphInfo(fnt, ch).IsNormal()) {
|
||||
l |= (0x80000000 >> (ch >> 7));
|
||||
ch |= 127;
|
||||
}
|
||||
}
|
||||
dword h = 0;
|
||||
for(int ch = 32; ch < 65536; ch++) {
|
||||
if(GetGlyphInfo(fnt, ch).IsNormal()) {
|
||||
h |= (0x8000000 >> ((dword)ch >> 11));
|
||||
ch |= 2047;
|
||||
}
|
||||
}
|
||||
LOG(AsCString(font[i]) << ", 0x" << FormatIntHex(l) << ", 0x" << FormatIntHex(h) << ',');
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue