mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-06-11 18:20:43 +09:00
LibPDF: Allow show_text to return errors
Errors can (and do) occur when trying to render text, and so far we've silently ignored them, making us think that all is well when it isn't. Letting show_text return errors will allow us to inform the user about these errors instead of having to hiding them.
This commit is contained in:
parent
14c0bae704
commit
db9fa7ff07
Notes:
sideshowbarker
2024-07-17 22:55:25 +09:00
Author: https://github.com/rtobar
Commit: db9fa7ff07
Pull-request: https://github.com/SerenityOS/serenity/pull/17446
Reviewed-by: https://github.com/linusg
2 changed files with 5 additions and 4 deletions
|
@ -483,7 +483,7 @@ RENDERER_HANDLER(text_next_line)
|
|||
RENDERER_HANDLER(text_show_string)
|
||||
{
|
||||
auto text = MUST(m_document->resolve_to<StringObject>(args[0]))->string();
|
||||
show_text(text);
|
||||
TRY(show_text(text));
|
||||
return {};
|
||||
}
|
||||
|
||||
|
@ -510,7 +510,7 @@ RENDERER_HANDLER(text_show_string_array)
|
|||
auto shift = next_shift / 1000.0f;
|
||||
m_text_matrix.translate(-shift * text_state().font_size * text_state().horizontal_scaling, 0.0f);
|
||||
auto str = element.get<NonnullRefPtr<Object>>()->cast<StringObject>()->string();
|
||||
show_text(str);
|
||||
TRY(show_text(str));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -724,7 +724,7 @@ PDFErrorOr<void> Renderer::set_graphics_state_from_dict(NonnullRefPtr<DictObject
|
|||
return {};
|
||||
}
|
||||
|
||||
void Renderer::show_text(DeprecatedString const& string)
|
||||
PDFErrorOr<void> Renderer::show_text(DeprecatedString const& string)
|
||||
{
|
||||
auto& text_rendering_matrix = calculate_text_rendering_matrix();
|
||||
|
||||
|
@ -748,6 +748,7 @@ void Renderer::show_text(DeprecatedString const& string)
|
|||
auto delta_x = glyph_position.x() - original_position.x();
|
||||
m_text_rendering_matrix_is_dirty = true;
|
||||
m_text_matrix.translate(delta_x / text_rendering_matrix.x_scale(), 0.0f);
|
||||
return {};
|
||||
}
|
||||
|
||||
PDFErrorOr<NonnullRefPtr<Gfx::Bitmap>> Renderer::load_image(NonnullRefPtr<StreamObject> image)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue