Skip to content

Bump com.github.tommyettinger:textratypist from 2.0.3 to 2.1.5 - #80

Closed
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/gradle/com.github.tommyettinger-textratypist-2.1.5
Closed

dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/gradle/com.github.tommyettinger-textratypist-2.1.5

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Sep 29, 2025

Copy link
Copy Markdown
Contributor

Bumps com.github.tommyettinger:textratypist from 2.0.3 to 2.1.5.

Release notes

Sourced from com.github.tommyettinger:textratypist's releases.

2.1.1 "Copy That"

2.1.1 is a single-issue bugfix for 2.1.0, and is identical to 2.1.0 except for a fix to the Font copy constructor so it actually copies all fields it should copy. Following are the release notes for 2.1.0, with the section about the previously-known-bug updated. You should use 2.1.1 instead of 2.1.0 .

This release adds some long-awaited features! Scaling now can make any glyph any size, from close to 0% all the way up to arbitrarily large sizes, with any float in between as an option too! The syntax [%150] can now handle much more than just multiples of 25%, and can do things like [%111.234] without breaking a sweat. This change is associated with the previous "special modes," which before couldn't be used at the same time as a scale factor, and now they can.

Because [%?black outline] was so commonly used in earlier versions, it has been made into a standard type of markup, making it so a black outline can be toggled on any text, with or without modes or scaling, using [#] . There are ways to change the color of the outline using modes. Now the new syntax for modes is available alongside the older syntax for compatibility; you can use [?shadow] to enable drop shadow mode, in addition to the older [%?shadow] and [%^shadow] modes. Now small caps mode isn't allowed to overlap with other modes (black outline takes its place as the overlap-capable "mode-like state"), so [%^shadow] acts the same as [?shadow] or [%?shadow].

There are also quite a few new modes! In addition to black and white outline modes, there are blue, red, and yellow outlines possible, with the option to change their colors per-font. There are two new "fancy underline" modes, context and suggest, which use green slashes and gray angles, respectively. There are the new neon and halo modes, as well, which make the text white or black (respectively) and use the usual text color to form a partly-transparent "glowing" area around each letter. For these last two, if the text color is red, neon mode makes a red glow around white text (something like a neon tube in a sign), and halo mode makes a red glow around black text.

Justified text is a new experimental feature, and is mostly meant for use with TextraLabel (not so much TypingLabel at this point). You can set the justification setting on a Layout, like label.layout.setJustification(Justify.SPACES_ON_PARAGRAPH), then call Font.justify(Layout) at some time after the label has its final targetWidth set (which can be set by scene2d.ui's widget sizing code).

TypingLabel can now appendText() after it has finished its animation, which starts up the animation again for the new content. This was one of the more-requested features, so hopefully it works to everyone's satisfaction!

Material Design icons are available to put into your Fonts using methods in KnownFonts. These are nice productivity-oriented icons from Google and Android.

Several annoying bugs have been fixed. Now scaled text tries to keep the same baseline as non-scaled text, which helps readability. Unicode characters after 0xF800 no longer have a mysterious blue fancy underline for no clear reason. There are some known minor bugs here, which should get fixed rather soon (the copy constructor doesn't copy some configuration done per-Font, for one thing). (EDIT: this has been fixed!) Major bugs are also always a possibility. Allocations of Float values have been sharply reduced at runtime, but if your code is allocating Font objects, you should really be using FWSkin and Styles types instead of creating Fonts from BitmapFonts repeatedly.

OK, that's a lot. I hope it works well for you!

2.1.0 "A La Mode"

This release adds some long-awaited features! Scaling now can make any glyph any size, from close to 0% all the way up to arbitrarily large sizes, with any float in between as an option too! The syntax [%150] can now handle much more than just multiples of 25%, and can do things like [%111.234] without breaking a sweat. This change is associated with the previous "special modes," which before couldn't be used at the same time as a scale factor, and now they can.

Because [%?black outline] was so commonly used in earlier versions, it has been made into a standard type of markup, making it so a black outline can be toggled on any text, with or without modes or scaling, using [#] . There are ways to change the color of the outline using modes. Now the new syntax for modes is available alongside the older syntax for compatibility; you can use [?shadow] to enable drop shadow mode, in addition to the older [%?shadow] and [%^shadow] modes. Now small caps mode isn't allowed to overlap with other modes (black outline takes its place as the overlap-capable "mode-like state"), so [%^shadow] acts the same as [?shadow] or [%?shadow].

There are also quite a few new modes! In addition to black and white outline modes, there are blue, red, and yellow outlines possible, with the option to change their colors per-font. There are two new "fancy underline" modes, context and suggest, which use green slashes and gray angles, respectively. There are the new neon and halo modes, as well, which make the text white or black (respectively) and use the usual text color to form a partly-transparent "glowing" area around each letter. For these last two, if the text color is red, neon mode makes a red glow around white text (something like a neon tube in a sign), and halo mode makes a red glow around black text.

Justified text is a new experimental feature, and is mostly meant for use with TextraLabel (not so much TypingLabel at this point). You can set the justification setting on a Layout, like label.layout.setJustification(Justify.SPACES_ON_PARAGRAPH), then call Font.justify(Layout) at some time after the label has its final targetWidth set (which can be set by scene2d.ui's widget sizing code).

TypingLabel can now appendText() after it has finished its animation, which starts up the animation again for the new content. This was one of the more-requested features, so hopefully it works to everyone's satisfaction!

Material Design icons are available to put into your Fonts using methods in KnownFonts. These are nice productivity-oriented icons from Google and Android.

Several annoying bugs have been fixed. Now scaled text tries to keep the same baseline as non-scaled text, which helps readability. Unicode characters after 0xF800 no longer have a mysterious blue fancy underline for no clear reason. There are some known minor bugs here, which should get fixed rather soon (the copy constructor doesn't copy some configuration done per-Font, for one thing). Major bugs are also always a possibility. Allocations of Float values have been sharply reduced at runtime, but if your code is allocating Font objects, you should really be using FWSkin and Styles types instead of creating Fonts from BitmapFonts repeatedly.

OK, that's a lot. I hope it works well for you!

1.0.0 "How Big? DAT Big."

This release is a really significant one! 1.0.0 ! About 10 and a half months since the last release, sorry about that! So, what's new...

The knownFonts/ folder is almost completely different now, and you should download any fonts you took from KnownFonts again. But this time, only a few are .fnt ! Most are .dat files, with a similar .png file associated and of course a license file you should distribute. These .dat files are compressed .json files, with the compression a somewhat-rudimentary LZ-based binary type that's GWT-compatible. The main advantage of these fonts is that they can be produced consistently, without needing significant adaptation per-font, descent fiddling, underline stretching, strikethrough shifting, and so on differently for each font. We also have a standard, msdf, and sdf version for every .dat font! You can still download the old .fnt fonts from https://github.com/tommyettinger/fonts , but you can make fonts for the future (as .json or .dat, which behave the same here pretty much) using https://github.com/tommyettinger/fontwriter . Unfortunately, fontwriter is windows-only for now, unless someone wants to build its main dependency, msdf-atlas-gen , for MacOS and/or Linux. Thankfully, .fnt files still work if that's all you can make, plus there are more .dat fonts here to use without building anything.

FWSkin is new! This is an extended Skin that loads both .fnt files and .dat/.json files produced by fontwriter (hence the FW). You can also load FreeType fonts in a Skin .json using FreeTypist, which is like the FreeTypeSkin from the Stripe library, but extending FWSkin instead of just Skin. FWSkin and its relatives load normal libGDX skin.json files, including loading the normal scene2d.ui styles, but they create Font objects whenever they create BitmapFont objects, and also create styles for TextraTypist widgets (which are nested in the Styles class here) when they create styles for scene2d.ui widgets. If you are using Skin now, you should be able to instantly drop in FWSkin in its place, or FreeTypistSkin if you need FreeType support. FreeTypist is just two files, so you don't really need the .jar files here, and can just copy the two source files if you want...

There are an alternate set of emoji, including one using line art instead of full-color, from OpenMoji. There are a few new fonts, such as the dark medieval-looking Grenze, and more variants on DejaVu Sans and Serif. There's a TextraLabel-based ListBox, which corresponds to scene2d.ui List, and allows putting emoji or other icons into ListBox items. (A SelectBox should be possible soon). When curly-brace markup such as {EFFECT} isn't a valid option (such as in I18N files), you can use [-EFFECT] to mean the same thing. Distance field font crispness should be much better, especially if you resize the distance fields using the current Viewport when resize() gets called. If crispness is a problem, you can always set a distance field font's crispness with Font.setCrispness(float), such as to 0.5f for softer edges or 2.0f for harder ones.

There's probably more I'm forgetting. There were lots of small bug-fixes enacted when I went through every test and updated them, but it's also possible something wasn't sufficiently tested and a bug snuck through. That's for a later release! Enjoy the new features now, though!

0.6.2 "Paging Dr. Frankenstein"

This release mostly patches up existing features from the 0.6.x line that had various bugs. For instance, the first TextureRegion in any atlas couldn't be looked up by name before, but now it can. There was a moderately-complex bug where multiple newlines didn't always appear; now they are sized correctly and so do appear as they should. There were various visual issues, particularly with vertical position, with emoji in Fonts created from BitmapFonts (such as those in many skins); these all seem to be fixed. There was an incredibly complicated bug where building a JAR and running it on Java 8 wouldn't load emoji that used the [+🎷] syntax, but would load the [+saxophone] syntax. This bug also happened up to and including Java 17, but didn't happen on the recent Java 18. Don't worry, I fixed that one. My head still hurts thinking about it.

... (truncated)

Commits

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [com.github.tommyettinger:textratypist](https://github.com/tommyettinger/textratypist) from 2.0.3 to 2.1.5.
- [Release notes](https://github.com/tommyettinger/textratypist/releases)
- [Commits](https://github.com/tommyettinger/textratypist/commits)

---
updated-dependencies:
- dependency-name: com.github.tommyettinger:textratypist
  dependency-version: 2.1.5
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file java Pull requests that update Java code labels Sep 29, 2025
@dependabot @github

dependabot Bot commented on behalf of github Oct 20, 2025

Copy link
Copy Markdown
Contributor Author

Superseded by #85.

@dependabot dependabot Bot closed this Oct 20, 2025
@dependabot
dependabot Bot deleted the dependabot/gradle/com.github.tommyettinger-textratypist-2.1.5 branch October 20, 2025 16:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file java Pull requests that update Java code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants