| Index: third_party/ots/test/README
|
| diff --git a/third_party/ots/test/README b/third_party/ots/test/README
|
| deleted file mode 100644
|
| index f634e069592de9239bd84ed04c06c3926be1ad5d..0000000000000000000000000000000000000000
|
| --- a/third_party/ots/test/README
|
| +++ /dev/null
|
| @@ -1,243 +0,0 @@
|
| -------------------------------------------------------------------------------
|
| -ot-sanitise - TTF/OTF font validator/transcoder
|
| -
|
| -Description:
|
| - ot-sanitise is a program which validates and/or transcodes a truetype or
|
| - opentype font file using the OTS library:
|
| -
|
| - transcoded_font = ValidateAndTranscode(original_font);
|
| - if (validation_error)
|
| - PrintErrorAndExit;
|
| - OutputToStdout(transcoded_font);
|
| -
|
| -Usage:
|
| - $ ./ot-sanitise ttf_or_otf_file [transcoded_file]
|
| -
|
| -Example:
|
| - $ ./ot-sanitise sample.otf transcoded_sample.otf
|
| - $ ./ot-sanitise malformed.ttf
|
| - WARNING at ots/src/ots.cc:158: bad range shift
|
| - ERROR at ots/src/ots.cc:199 (bool<unnamed>::do_ots_process(ots::OpenTypeFile*, ots::OTSStream*, const uint8_t*, size_t))
|
| - Failed to sanitise file!
|
| - $
|
| -
|
| -------------------------------------------------------------------------------
|
| -idempotent - TTF/OTF font transcoder (for OTS debugging)
|
| -
|
| -Description:
|
| - idempotent is a program which validates and transcodes a truetype or opentype
|
| - font file using OTS. This tool transcodes the original font twice and then
|
| - verifies that the two transcoded fonts are identical:
|
| -
|
| - t1 = ValidateAndTranscode(original_font);
|
| - if (validation_error)
|
| - PrintErrorAndExit;
|
| - t2 = ValidateAndTranscode(t1);
|
| - if (validation_error)
|
| - PrintErrorAndExit;
|
| - if (t1 != t2)
|
| - PrintErrorAndExit;
|
| -
|
| - This tool is basically for OTS developers.
|
| -
|
| -Usage:
|
| - $ ./idempotent ttf_or_otf_file
|
| -
|
| -Example:
|
| - $ ./idempotent sample.otf
|
| - $ ./idempotent malformed.ttf
|
| - WARNING at ots/src/ots.cc:158: bad range shift
|
| - ERROR at ots/src/ots.cc:199 (bool<unnamed>::do_ots_process(ots::OpenTypeFile*, ots::OTSStream*, const uint8_t*, size_t))
|
| - Failed to sanitise file!
|
| - $
|
| -
|
| -------------------------------------------------------------------------------
|
| -validator_checker - font validation checker
|
| -
|
| -Description:
|
| - validator_checker is a program which is intended to validate malformed fonts.
|
| - If the program detects that the font is invalid, it prints "OK" and returns
|
| - with 0 (success). If it coulndn't detect any errors, the program then opens
|
| - the transcoded font and renders some characters using FreeType2:
|
| -
|
| - transcoded_font = ValidateAndTranscode(malicious_font);
|
| - if (validation_error)
|
| - Print("OK");
|
| - OpenAndRenderSomeCharacters(transcoded_font); # may cause SIGSEGV
|
| - Print("OK");
|
| -
|
| - If SEGV doesn't raise inside FreeType2 library, the program prints "OK" and
|
| - returns with 0 as well. You should run this tool under the catchsegv or
|
| - valgrind command so that you can easily verify that all transformed fonts
|
| - don't crash the library (see the example below).
|
| -
|
| -Usage:
|
| - $ catchsegv ./validator_checker malicous_ttf_or_otf_file
|
| -
|
| -Example:
|
| - $ for f in malformed/*.ttf ; do catchsegv ./validator-checker "$f" ; done
|
| - OK: the malicious font was filtered: malformed/1.ttf
|
| - OK: the malicious font was filtered: malformed/2.ttf
|
| - OK: FreeType2 didn't crash: malformed/3.ttf
|
| - OK: the malicious font was filtered: malformed/4.ttf
|
| - $
|
| -
|
| -------------------------------------------------------------------------------
|
| -perf - performance checker
|
| -
|
| -Description:
|
| - perf is a program which validates and transcodes a truetype or opentype font
|
| - file N times using OTS, then prints the elapsed time:
|
| -
|
| - for (N times)
|
| - ValidateAndTranscode(original_font);
|
| - Print(elapsed_time_in_us / N);
|
| -
|
| -Usage:
|
| - $ ./perf ttf_or_otf_file
|
| -
|
| -Example:
|
| - $ ./perf sample.ttf
|
| - 903 [us] sample.ttf (139332 bytes, 154 [byte/us])
|
| - $ ./perf sample-bold.otf
|
| - 291 [us] sample-bold.otf (150652 bytes, 517 [byte/us])
|
| -
|
| -------------------------------------------------------------------------------
|
| -side-by-side - font quality checker
|
| -
|
| -Description:
|
| - side-by-side is a program which renders some characters (ASCII, Latin-1, CJK)
|
| - using both original font and transcoded font and checks that the two rendering
|
| - results are exactly equal.
|
| -
|
| - The following Unicode characters are used during the test:
|
| - 0x0020 - 0x007E // Basic Latin
|
| - 0x00A1 - 0x017F // Latin-1
|
| - 0x1100 - 0x11FF // Hangul
|
| - 0x3040 - 0x309F // Japanese HIRAGANA letters
|
| - 0x3130 - 0x318F // Hangul
|
| - 0x4E00 - 0x4F00 // CJK Kanji/Hanja
|
| - 0xAC00 - 0xAD00 // Hangul
|
| -
|
| - This tool uses FreeType2 library.
|
| - Note: This tool doesn't check kerning (GPOS/kern) nor font substitution
|
| - (GSUB). These should be tested in Layout tests if necessary.
|
| -
|
| -Usage:
|
| - $ ./side-by-side ttf_or_otf_file
|
| -
|
| -Example:
|
| - $ ./side-by-side linux/kochi-gothic.ttf # no problem
|
| - $ ./side-by-side free/kredit1.ttf # this is known issue of OTS.
|
| - bitmap metrics doesn't match! (14, 57), (37, 45)
|
| - EXPECTED:
|
| -
|
| - +#######*.
|
| - +##########+
|
| - .###+.#. .#.
|
| - *#* # #*
|
| - ##. # ##
|
| - ## # ##
|
| - ## # ##
|
| - ## #. ##
|
| - ##. #. .##
|
| - ##. #. .##
|
| - *#+ *+ +#*
|
| - *#+ *+ +#*
|
| - *#+ *+ +#*
|
| - *#+ *+ +#*
|
| - *#+ *+ *#*
|
| - *#+ ++ *#+
|
| - +#* +* *#+
|
| - +#* +* *#+
|
| - +#* +* *#+
|
| - +#* +* ##.
|
| - +#* +* ##.
|
| - .## .# ##
|
| - .## .# ##
|
| - .## .# ##
|
| - ## # ##
|
| - ## # ##
|
| - ## # .##
|
| - ## # .##
|
| - ## .#+ +#*
|
| - ## +######*
|
| - ##.+#######*
|
| - *##########*
|
| - +##########+
|
| - #########*
|
| - .########
|
| - +####+
|
| -
|
| -
|
| -
|
| -
|
| -
|
| -
|
| - .*######*
|
| - +##*.*#####
|
| - .##+.#+ +#
|
| - *#* ## #+
|
| - ##*### ##
|
| - ###### ##
|
| - ##+.##+ +##
|
| - ## ##########
|
| - ## +#########
|
| - ## +########
|
| - *#. .########*
|
| - .#* #########.
|
| - +##########+
|
| - +*######*
|
| -
|
| - ACTUAL:
|
| -
|
| - .*##*+
|
| - +##+.##*.
|
| - .#* .##.+#*
|
| - *# ### *#+
|
| - #*######+ .*#+
|
| - #########*. +#*.
|
| - ###########* +#*
|
| - *############+ *#+
|
| - +##############. .##.
|
| - *##############* +#*
|
| - +###############+ *#+
|
| - *###############+ .*#+
|
| - .###############*. +#*.
|
| - +###############* +#*
|
| - *###############+ *#+
|
| - .*###############+ .*#+
|
| - +###############*. +#*
|
| - +###############* **
|
| - *###############+ #+
|
| - .###############* ##
|
| - +############+ ##
|
| - +########* .##
|
| - .######. +###
|
| - +#####+ .*#..#
|
| - +#####* *###..#
|
| - *#####. +#######*
|
| - +#####+ .*########.
|
| - +#####* +#########*
|
| - *#####. +##########+
|
| - +#####+ *#########*.
|
| - .#####* +##########+
|
| - *#####. +##########*
|
| - +#####+ *#########*.
|
| - .#####* +##########+
|
| - *#####+ +##########*
|
| - .#*++#+ *#########*.
|
| - .#+ ## +##########+
|
| - ****###+.##########*
|
| - ##################.
|
| - ###+ *#########+
|
| - ## +########*
|
| - *#+ *########.
|
| - ##.#######+
|
| - +#######*
|
| - *###*.
|
| -
|
| -
|
| - Glyph mismatch! (file: free/kredit1.ttf, U+0021, 100pt)!
|
| - $
|
| -------------------------------------------------------------------------------
|
|
|