RFR: JDK-8324774: Add DejaVu web fonts

Jonathan Gibbons jjg at openjdk.org
Tue Feb 20 19:12:54 UTC 2024


On Tue, 30 Jan 2024 16:13:42 GMT, Hannes Wallnöfer <hannesw at openjdk.org> wrote:

> This change adds the DejaVu web fonts that were previously maintained externally to the open repository so they are available both in JDK API documentation and any API documentation generated with the `javadoc` tool. All files added in this PR are the same as the ones previously maintained externally, with the exception of added license and name/version comments in `dejavu.css`.
> 
> Copying of font files to the generated documentation is done by looking for font file names in `dejavu.css`, so font file names can be changed without changing the code. However, the font file list is hard-coded in `APITest.java`. `CheckLibraryVersions.java` is updated to make sure the name and version in the legal file matches the one in the stylesheet. Of course I also performed manual tests to make sure the font and legal files are copied to the output tree and used correctly in browsers.
> 
> Once #17411 is integrated, `dejavu.css` should also be added to the list of files checked by the new "pass-through" test.

Some suggestions.

I think there should be an option to opt-out  of using these fonts.

src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlDoclet.java line 470:

> 468:             // Extract font file names from CSS file
> 469:             URL cssURL = HtmlConfiguration.class.getResource(DocPaths.RESOURCES.resolve(cssPath).getPath());
> 470:             InputStream in = cssURL.openStream();

Put this in try-with-resources

src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlDoclet.java line 476:

> 474:                 try (BufferedReader reader = new BufferedReader(new InputStreamReader(in))) {
> 475:                     String line;
> 476:                     while ((line = reader.readLine()) != null) {

Consider using `BufferedReader.lines`

https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/io/BufferedReader.html#lines()

-------------

PR Review: https://git.openjdk.org/jdk/pull/17633#pullrequestreview-1891318432
PR Review Comment: https://git.openjdk.org/jdk/pull/17633#discussion_r1496355484
PR Review Comment: https://git.openjdk.org/jdk/pull/17633#discussion_r1496357502


More information about the build-dev mailing list