[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[freetype2-demos] master 6387150 2/3: [ftlint] Handle font collections.
From: |
Werner Lemberg |
Subject: |
[freetype2-demos] master 6387150 2/3: [ftlint] Handle font collections. |
Date: |
Thu, 17 Jun 2021 23:41:10 -0400 (EDT) |
branch: master
commit 63871509cdd9162e28cb8b99dd1eed80024ef220
Author: Alexei Podtelezhnikov <apodtele@gmail.com>
Commit: Alexei Podtelezhnikov <apodtele@gmail.com>
[ftlint] Handle font collections.
* src/ftlint.c (main): Increment face_index when possible.
---
ChangeLog | 6 ++++++
src/ftlint.c | 23 +++++++++++++++--------
2 files changed, 21 insertions(+), 8 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index f85e815..6de1ac5 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,11 @@
2021-06-17 Alexei Podtelezhnikov <apodtele@gmail.com>
+ [ftlint] Handle font collections.
+
+ * src/ftlint.c (main): Increment face_index when possible.
+
+2021-06-17 Alexei Podtelezhnikov <apodtele@gmail.com>
+
[ftlint] Introduce quiet mode, remove extension guessing.
With so many supported font formats, it does not make sense to guess
diff --git a/src/ftlint.c b/src/ftlint.c
index c390369..d3c414b 100644
--- a/src/ftlint.c
+++ b/src/ftlint.c
@@ -140,7 +140,7 @@
main( int argc,
char** argv )
{
- int file_index;
+ int file_index, face_index;
unsigned int id;
char* execname;
char* fname;
@@ -217,25 +217,26 @@
/* Now check all files */
- for ( file_index = 1; file_index < argc; file_index++ )
+ for ( face_index = 0, file_index = 1; file_index < argc; file_index++ )
{
fname = argv[file_index];
- printf( "%s:", fname );
+ printf( "%s:\n", fname );
- error = FT_New_Face( library, fname, 0, &face );
+ Next_Face:
+ error = FT_New_Face( library, fname, face_index, &face );
if ( error == FT_Err_Unknown_File_Format )
{
- printf( " unknown format\n" );
+ printf( " unknown format\n" );
continue;
}
else if ( error )
{
- printf( " error = 0x%04x\n" , error );
+ printf( " error = 0x%04x\n" , error );
continue;
}
- printf( quiet ? "\n %s %s:" : "\n %s %s:\n",
+ printf( quiet ? " %s %s:" : " %s %s:\n",
face->family_name, face->style_name );
error = FT_Set_Char_Size( face, ptsize << 6, ptsize << 6, 72, 72 );
@@ -293,10 +294,16 @@
else
printf( " %d fails.\n", Fail );
+ if ( ++face_index == face->num_faces )
+ face_index = 0;
+
FT_Done_Face( face );
+
+ if ( face_index )
+ goto Next_Face;
}
- FT_Done_FreeType(library);
+ FT_Done_FreeType( library );
exit( 0 ); /* for safety reasons */
/* return 0; */ /* never reached */
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [freetype2-demos] master 6387150 2/3: [ftlint] Handle font collections.,
Werner Lemberg <=