|
From: | Patrick Cheung |
Subject: | [ft] About using FT_Open_Face with std::ifstream |
Date: | Thu, 27 Jul 2006 16:49:42 +0800 |
void stream_close(FT_Stream stream) {
// Nothing to do
}
{
// ...
std::ifstream ifs;
ifs.open("C:\\WINDOWS\\Fonts\\arial.ttf", std::ios::in | std::ios::binary);
FT_StreamDesc desc;
desc.pointer = (void*)&ifs;
FT_StreamRec stream;
memset(&stream, 0, sizeof(FT_StreamRec));
stream.base = 0;
stream.size = 367112; // I dun't know how to get size from std::ifstream, i just view it in file properties
stream.pos = 0;
stream.descriptor = desc;
stream.read = stream_load;
stream.close = stream_close;
FT_Open_Args args;
memset(&args, 0, sizeof(FT_Open_Args));
args.flags = FT_OPEN_STREAM;
args.stream = &stream;
error = FT_Open_Face(library, &args, 0, &face);
// got error 2 ???
}
What is the error about? Anything I have missed? Sorry for the question if someone has asked this before.
Thank you for your attention.
Regards,
Patrick Cheung
[Prev in Thread] | Current Thread | [Next in Thread] |