You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Close#49
Breaking changes:
- Mkvpropedit.delete_fonts_of_mkv have been renamed Mkvpropedit.delete_all_fonts_of_mkv
- Mkvpropedit.path doesn't exist anymore. Now, use MKVUtils.MKVTOOLNIX_FOLDER to set the folder of mkvtoolnix.
- Mkvpropedit class have been renamed MKVPropedit.
May be a directory containing font files or a single font file. You can specify more than one
42
-
additional-fonts.
43
-
If it is a directory, it won't search recursively for fonts
38
+
May be a directory containing font files or a single font file. You can specify more than one additional-fonts. If it is a directory, it won't search recursively for fonts
Path to font directory, which will be recursively searched for fonts.
46
41
--exclude-system-fonts
47
42
If specified, FontCollector won't use the system font to find the font used by an .ass file.
48
43
--collect-draw-fonts
49
-
If specified, FontCollector will collect the font used by the draw. For more detail when this
50
-
is usefull, see: https://github.com/libass/libass/issues/617
44
+
If specified, FontCollector will collect the font used by the draw. For more detail when this is usefull, see: https://github.com/libass/libass/issues/617
51
45
--dont-convert-variable-to-collection
52
46
If specified, FontCollector won't convert variable font to a font collection. see: https://github.com/libass/libass/issues/386
MKV font validator for Advanced SubStation Alpha file.
74
+
75
+
options:
76
+
-h, --help
77
+
show this help message and exit
78
+
-mkv MKV
79
+
The video file to be verified. Must be a Matroska file.
80
+
-mkvtoolnix MKVTOOLNIX
81
+
Path to the MKVToolNix folder if not in variable environments.
82
+
--need-draw-fonts
83
+
If specified, MKVFontValidator will report a error if a font used in a draw isn't muxed to the mkv. For more detail when this is usefull, see: https://github.com/libass/libass/issues/617
84
+
--delete-fonts-not-used, -d
85
+
If specified, MKVFontValidator will remove the fonts that aren't used by the subtitle(s) of the mkv file.
86
+
--logging [LOGGING], -log [LOGGING]
87
+
Destination path of log. If it isn't specified, it will be YYYY-MM-DD--HH-MM-SS_mkvfontvalidator.log.
73
88
```
74
89
## Variable Font
75
90
Since [Libass](https://github.com/libass/libass/issues/386) does not support [variable font](https://docs.microsoft.com/en-us/typography/opentype/spec/otvaroverview), this tool will automatically generate a [OpenType Font Collection](https://docs.microsoft.com/en-us/typography/opentype/spec/otff#font-collections). The generated collection is designed to simulate how [VSFilter](https://en.wikipedia.org/wiki/DirectVobSub)/[GDI](https://en.wikipedia.org/wiki/Graphics_Device_Interface) handles variable font.
f"Used on lines: {' '.join(str(line) forlineinusage_data.ordered_lines)}"
67
-
)
68
-
else:
69
-
log_msg=""
70
-
iffont_result.need_faux_bold:
71
-
log_msg=f"Faux bold used for '{style.fontname}' (requested weight {style.weight}-{(font_weight_to_name(style.weight))}, got {font_result.font_face.weight}-{(font_weight_to_name(font_result.font_face.weight))})."
72
-
eliffont_result.mismatch_bold:
73
-
log_msg=f"Mismatched weight for '{style.fontname}' (requested weight {style.weight}-{(font_weight_to_name(style.weight))}, got {font_result.font_face.weight}-{(font_weight_to_name(font_result.font_face.weight))})."
74
-
iffont_result.mismatch_italic:
75
-
log_msg=f"Mismatched italic for '{style.fontname}' (requested {''ifstyle.italicelse'non-'}italic, got {''iffont_result.font_face.is_italicelse'non-'}italic)."
76
-
77
-
iflog_msg:
78
-
_logger.warning(
79
-
f"{log_msg}\n"
80
-
f"Used on lines: {' '.join(str(line) forlineinusage_data.ordered_lines)}"
f"Used on lines: {' '.join(str(line) forlineinusage_data.ordered_lines)}"
57
+
)
58
+
else:
59
+
log_msg=""
60
+
iffont_result.need_faux_bold:
61
+
log_msg=f"Faux bold used for '{style.fontname}' (requested weight {style.weight}-{(font_weight_to_name(style.weight))}, got {font_result.font_face.weight}-{(font_weight_to_name(font_result.font_face.weight))})."
62
+
eliffont_result.mismatch_bold:
63
+
log_msg=f"Mismatched weight for '{style.fontname}' (requested weight {style.weight}-{(font_weight_to_name(style.weight))}, got {font_result.font_face.weight}-{(font_weight_to_name(font_result.font_face.weight))})."
64
+
iffont_result.mismatch_italic:
65
+
log_msg=f"Mismatched italic for '{style.fontname}' (requested {''ifstyle.italicelse'non-'}italic, got {''iffont_result.font_face.is_italicelse'non-'}italic)."
66
+
67
+
iflog_msg:
68
+
_logger.warning(
69
+
f"{log_msg}\n"
70
+
f"Used on lines: {' '.join(str(line) forlineinusage_data.ordered_lines)}"
0 commit comments