|
MayaFlux 1.0.0
Digital-First Multimedia Processing Framework
|
| MAYAFLUX_API bool MayaFlux::Portal::Text::repress | ( | std::shared_ptr< Core::VKImage > & | target, |
| std::string_view | text, | ||
| const PressParams & | params = {}, |
||
| const std::shared_ptr< Buffers::VKBuffer > & | staging = nullptr |
||
| ) |
Re-composite a UTF-8 string into an existing GPU texture.
Uploads in-place when content fits within the existing image dimensions. Reallocates and updates target when content height exceeds image height.
| target | VKImage to update. May be replaced on reallocation. |
| text | UTF-8 string to composite. |
| params | render_bounds, atlas, color. |
| staging | Persistent host-visible staging buffer to upload through. Sized by the caller beforehand (e.g. via Buffers::ensure_image_staging_capacity()) and passed again on every call for the same target to avoid allocating a fresh one each time; nullptr falls back to an internal one-shot staging allocation (the prior behaviour). |
Definition at line 505 of file InkPress.cpp.
References MayaFlux::Journal::API, MayaFlux::Portal::Text::GlyphAtlas::ascender(), MayaFlux::Portal::Text::PressParams::atlas, MayaFlux::Portal::Text::PressParams::background, MayaFlux::Portal::Text::PressParams::color, MayaFlux::Portal::Graphics::get_texture_manager(), MayaFlux::Portal::Text::GlyphAtlas::line_height(), MF_DEBUG, MF_ERROR, MF_WARN, pixels, MayaFlux::Journal::Portal, and MayaFlux::Portal::Text::PressParams::spans.
Here is the call graph for this function: