30 return strcmp(fi1.
name, fi2.
name) == 0;
36 for (
int i = 0; i < fs1.
size; ++i) {
59 if (fread(&size,
sizeof(size), 1, f) != 1)
return false;
62 char* font_name =
new char[size + 1];
64 if (fread(font_name,
sizeof(*font_name), size, f) != size)
return false;
65 font_name[size] =
'\0';
74 if (fwrite(&size,
sizeof(size), 1, f) != 1)
return false;
75 if (fwrite(fi.
name,
sizeof(*fi.
name), size, f) != size)
return false;
81 inT32 vec_size, kern_size;
82 if (fread(&vec_size,
sizeof(vec_size), 1, f) != 1)
return false;
85 if (vec_size == 0)
return true;
87 for (
int i = 0; i < vec_size; ++i) {
91 fread(&kern_size,
sizeof(kern_size), 1, f) != 1) {
114 if (fwrite(&vec_size,
sizeof(vec_size), 1, f) != 1)
return false;
115 inT16 x_gap_invalid = -1;
116 for (
int i = 0; i < vec_size; ++i) {
120 if (fwrite(&(x_gap_invalid),
sizeof(x_gap_invalid), 1, f) != 1 ||
121 fwrite(&(x_gap_invalid),
sizeof(x_gap_invalid), 1, f) != 1 ||
122 fwrite(&kern_size,
sizeof(kern_size), 1, f) != 1) {
128 fwrite(&kern_size,
sizeof(kern_size), 1, f) != 1) {
141 if (fread(&fs->
size,
sizeof(fs->
size), 1, f) != 1)
return false;
145 for (
int i = 0; i < fs->
size; ++i) {
146 if (fread(&fs->
configs[i],
sizeof(fs->
configs[i]), 1, f) != 1)
return false;
154 if (fwrite(&fs.
size,
sizeof(fs.
size), 1, f) != 1)
return false;
155 for (
int i = 0; i < fs.
size; ++i) {
156 if (fwrite(&fs.
configs[i],
sizeof(fs.
configs[i]), 1, f) != 1)
return false;