Skip to content

Releases: JujuAdams/Scribble

8.4.0 alpha 1

29 Jan 17:04
Compare
Choose a tag to compare
8.4.0 alpha 1 Pre-release
Pre-release
  • Adds [indent] formatting tag
  • Adds markdown formatting functions - scribble_markdown_set_styles() to set up style format, and scribble_markdown_format() to apply it

8.3.0

22 Jan 21:15
Compare
Choose a tag to compare

Documentation here.

 

New features:

  • Adds .scale() method to text elements to apply a scaling factor before text layout, applied multiplicatively with [scale] tags
  • Adds .randomize_animation() to make all animated effects more chaotic (inc. typists, .reveal(), and [shake] etc.)
  • Adds .function_on_complete() to typists
  • Adds .refresh() and scribble_refresh_all() to make it easier to keep macro'd strings up-to-date
  • Adds [r2l] and [l2r] tags to hint at text direction
  • Adds .pin_guide_width() to control pin width without actually doing text wrapping (useful for handling R2L layouts)
  • Adds SCRIBBLE_FLUSH_RETURNS_SELF for you crazy people who want that

Bug Fixes:

  • Character delay now doesn't apply to the final character in a string unless there is a typist event after it
  • Character delay now has highest priority in the event queue meaning typist events are executed after the character delay has completed
  • U+200E and U+200F now correctly hint at text direction
  • Fixes Thai rendering incorrectly from time to time

8.2.0

13 Jan 20:06
Compare
Choose a tag to compare

Documentation here.

 

New features:

  • Kerning pairs are now loaded from standard fonts and MSDF fonts automatically. You can modify kerning pairs with scribble_kerning_pair_set(), including adding kerning pairs to spritefonts
  • Adds SCRRIBLE_USE_KERNING to turn off the above behaviour if you don't like it!
  • Adds macros, added via scribble_add_macro(). Macros can be used to inject substrings into the Scribble parser
  • Scribble now creates zero global variables, keeping your debugger neat and tidy
  • Adds SCRIBBLE_THAI_GRAVE_ACCENTS_ARE_ZWSP to help with localisation
  • Adds SCRIBBLE_UNDO_UNICODE_SUBSTITUTIONS to clean up text that Google Docs or MS Word has butchered
  • .get_bbox() returned struct now contains the original x/y argument provided to the method

Bug Fixes:

  • Fixes animations freezing if many copies of the same text element are drawn
  • Regions are now scanned in reverse to work around an issue with region heights sometimes being a bit too tall
  • Removes that annoying Warning! Model generator found hanging line data debug message
  • Fixes crash in scribble_font_get_glyph_ranges()
  • Fixes crash when drawing an empty string with a Krutidev font
  • Minor improvements to error reporting

8.1.0

02 Dec 22:55
Compare
Choose a tag to compare

Documentation here.

 

New features:

  • Adds [typistSound] and [typistSoundPerChar] inline command tags. These operate identically to the equivalent typist .sound() and .sound_per_char() methods. The command tags will only take effect when a typist is being used to draw a text element
  • Setting the height of a space character now adjusts the line height for a font. No more adding .line_height() to every text element!
  • MSDF fonts with missing spaces will now have a space character automatically generated. You can adjust the width of the space character by using scribble_glyph_set() (as you would when modifying any character)
  • Adds SCRIBBLE_ATTEMPT_FONT_SCALING_FIX to control occasionally problematic automatic fixing of font downscaling issues

Bug Fixes:

  • Fixes colours sometimes being reversed on Opera GX
  • .blend() now affects .msdf_border()
  • Font loading-related crashes are now handled slightly more gracefully
  • Arabic aleph+lam ligature no longer joins left when it shouldn't
  • Devanagari no longer trips over whitespace and other non-printable characters

8.0.9

09 Oct 11:41
Compare
Choose a tag to compare

Documentation here.

 

  • Fixes forced line height causing inconsistent y-offsets for glyphs
  • Protects against crashes when SCRIBBLE_FIT_TO_BOX_ITERATIONS to set to 0
  • Fixes bounding box getters not updating when regenerating the model
  • Fixes off-by-one in scribble_font_scale()
  • Fixes scribble_font_bake_shader() not working for fonts with glyphs from multiple texture pages

8.0.8

08 Sep 16:29
Compare
Choose a tag to compare

Documentation here.

 

  • Improves debug messages when a character is missing from a font
  • Fixes sprites occasionally breaking Devanagari rendering
  • Fixes sprites being wrongly positioned when used with right-to-left scripts (Arabic and Hebrew)
  • Fixes nukta rendering when using Devanagari
  • Fixes Chinese punctuation inelegantly wrapping to new lines
  • Fixes hiragana and katakana not being considered as CJK glyphs
  • Fixes mixed script usage with Devanagari

8.0.7

04 Sep 15:04
Compare
Choose a tag to compare

Documentation here.

 

  • Many performance improvements
  • Fixes hamza and tatweel/kashida being unsupported when rendering Arabic
  • Fixes non-breaking spaces rendering incorrectly in most fonts
  • Fixes use of in-line sprites breaking Devanagari (Hindi) rendering
  • Fixes .fit_to_box() not functioning properly when words are too long for the box

Known Issues:

  • In-line sprites are occasionally incorrectly positioned during right-to-left rendering (Arabic and Hebrew)

8.0.5

14 Aug 10:11
Compare
Choose a tag to compare

Documentation here.

 

Changes from 8.0.4:

  • Calling a method after .draw() now throws a helpful error message
  • Fixes many .fit_to_box() issues, including incorrect sizing and right-to-left script incompatibilities
  • Fixes spaces being set to zero width occasionally
  • Fixes text effects being lost when backgrounding the app on Android
  • Fixes .skip() not working when applied before new text is drawn with a typist
  • Fixes crash when rendering ओ in Krutidev fonts
  • Adds scribble_font_delete() and scribble_font_exists()
  • scribble_font_rename() is now safer
  • Fixes another nasty edge case garbage collection bug

8.0.4

26 Jun 10:27
Compare
Choose a tag to compare

Change log against v7.1 here.

Documentation here.

 

Changes from 8.0.3:

  • Fixes support on Xbox Series X/S
  • Fixes alpha blending when using MSDF fonts
  • Fixes typists when used with MSDF fonts

8.0.3

31 May 20:43
Compare
Choose a tag to compare

Change log against v7.1 here.

Documentation here.

 

Changes from 8.0.2:

  • Fixes alpha blending via .blend()
  • Fixes premultiplied alpha behaviour in shaders
  • Adds .skew() text element method
  • Adds macros to allow for inline sprites/surfaces to be automatically scaled down to fit a line of text