summaryrefslogtreecommitdiffstats
path: root/tools/image_generator (unfollow)
Commit message (Collapse)AuthorFilesLines
2019-06-03Use icu4j instead of its deprecated legacy alias icu4j-hostPaul Duffin1-1/+1
Bug: 134379140 Test: m droid Change-Id: I71c2ac392361b3c6dfa693194c05116422335e55
2018-11-29ImageGenerator: ignore the duplicate localesxunchang1-8/+14
Some language variants have the duplicated translations. Therefore, we can compare the translated string for each locale to the default text string for that language. And the duplicated ones will be skipped to save some space. Bug: 74397117 Test: generate and check the image Change-Id: If51fa8fe700350c06f084f0e74d3698b82d6f177
2018-11-29ImageGenerator: Handle special characters in xml filesxunchang1-13/+34
In specific, the apostrophe appears as "\'"; and a new line appears as "\n\n". We need to handle these two cases accordingly. Bug: 74397117 Test: generate and check the image Change-Id: I67b1ebce7494e4a685a0c7334da58dc6df2ccb29
2018-11-28ImageGenerator: switch to BreakIterator from icu libraryxunchang2-62/+24
The icu library takes care of the line boundary, so that we don't need to worry about if the given language is logogram. Bug: 74397117 Test: Generate and check the image Change-Id: I1447f51b178c0fca83c5497d2f5b8e4009ca7f64
2018-11-26ImageGenerator: add an option to specify the supported localesTianjie Xu1-4/+42
A smaller list of locales helps to reduce the size of the generated images; and mitigate the additional space requirement on the tight boot image for some devices. The caller of the program will be responsible for providing the locale list. Also add a verbose option and switch to logger. Bug: 74397117 Test: generate and check the image Change-Id: I7b7cee681ccdc6e13fdd0575cf02f8add2ad9a2d
2018-11-26Handle rendering problem for the word "Android" and punctuationsTianjie Xu1-24/+134
The word "Android" is not translated. As a result, some locales fail to render this word and some punctuations, leading to holes in the middle of the text. In these cases, we will need to fall back to the default font and re-measure the text width. For now, we haven't handled the mix of latin and logogram languages; and we can blacklist the problematic ones first. Bug: 74397117 Test: generate and inspect the image Change-Id: I07d22c0dae2e31eb74f2954e354cd39a42c22f14
2018-11-15Adjust the background text image width to reduce its sizeTianjie Xu1-26/+81
We can adjust the image width with respect to the maximum width of the wrapped text. This will remove some black margins and reduce the final size of the images, especially for those with short strings, e.g. "recovery_error". Also, add an option to centrally align the text; and fix a boundary check in the recovery resource test. Bug: 74397117 Test: Generate and check the image Change-Id: Ib6cf61a9c99c4aeede16751dc0adfa23ce3f5424
2018-11-13image generator: format the java fileTianjie Xu1-469/+482
Format the file with google-java-format --aosp. This makes the presubmit hook happy. Bug: 74397117 Test: mma Change-Id: Ie342ed11449414b63f2d1ae781023e940b136bcb
2018-11-06image_generator: Fix the warnings on import order.Tao Bao1-13/+11
[platform/bootable/recovery] tools/image_generator/ImageGenerator.java:36: Wrong order for java.util.StringTokenizer import. Use Ctrl+Shift+O (Eclipse) or Ctrl+Alt+O (Intellij) to sort imports. https://source.android.com/setup/code-style#order-import-statementsERRORS: [platform/bootable/recovery] tools/image_generator/ImageGenerator.java:43: Wrong order for org.apache.commons.cli.CommandLine import. Use Ctrl+Shift+O (Eclipse) or Ctrl+Alt+O (Intellij) to sort imports. https://source.android.com/setup/code-style#order-import-statementsERRORS: [platform/bootable/recovery] tools/image_generator/ImageGenerator.java:50: Extra separation in import group before 'org.w3c.dom.Document' Test: `mmma -j bootable/recovery` Test: `repo upload` no longer gives warnings. Change-Id: If24c6b7ca33b9223b3e326a48885c24c35b5fa68
2018-11-01Make the text image readable under recoveryTianjie Xu1-14/+123
Encode the width, height and locale of the localized image as pixels so that recovery can locate the correct range of the image from a concatenated png file. Also address a few todoes including wrapping the CJK text, making a catch-all type for all languages. Test: view the generated image under locale test Change-Id: Icd3997eb4e992e76ef72526787d64c406f606970
2018-10-29Switch to use commandline parserTianjie Xu3-15/+72
The commandline parser adds some flexibility to the argument parsing. It also makes the help message more descriptive. Bug: 74397117 Test: generate a image, checks the help message Change-Id: Ib238658a9a6fa8806f1b0dde419c8fb970e7cb37
2018-10-13Use a host java program to generate the background textTianjie Xu4-0/+438
This program uses java.awt.Graphics2D to generate the background text files used under recovery mode. And thus we don't need to do the manual work by running emulators with different dpi. The program takes the following parameters: 1. imageWidth: The number of pixels per line; and the text strings will be wrapped accordingly. 2. textName: The description of the text string, e.g. "recovery_erasing", "recovery_installing_security" 3. fontDirectory: The directory that contains all the support .ttf | .ttc files, e.g. $OUT/system/fonts/ 4. resourceDirectory: The resource directory that contains all the translated strings in xml format, e.g. bootable/recovery/tools/recovery_l10n/res/ 5. outputFilename: Path to the generated image. Bug: 74397117 Test: checks the generated png files Change-Id: Ia5506a0a4f5da1ebfd7090345eb246f44b265075