Releases: JujuAdams/Scribble
Releases · JujuAdams/Scribble
8.4.0 alpha 1
- Adds
[indent]
formatting tag - Adds markdown formatting functions -
scribble_markdown_set_styles()
to set up style format, andscribble_markdown_format()
to apply it
8.3.0
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()
andscribble_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
andU+200F
now correctly hint at text direction- Fixes Thai rendering incorrectly from time to time
8.2.0
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
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
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
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
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
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()
andscribble_font_exists()
scribble_font_rename()
is now safer- Fixes another nasty edge case garbage collection bug