0014-quartztext-fix-relative-font-size-handling.patch 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. From 0c8633b1b61274c527c25cd8ab71d6034a3ea2be Mon Sep 17 00:00:00 2001
  2. From: =?UTF-8?q?Felix=20Paul=20K=C3=BChne?= <fkuehne@videolan.org>
  3. Date: Sun, 4 Aug 2013 19:50:19 +0200
  4. Subject: [PATCH 14/17] quartztext: fix relative font size handling
  5. ---
  6. modules/text_renderer/quartztext.c | 17 ++++++++++++++---
  7. 1 file changed, 14 insertions(+), 3 deletions(-)
  8. diff --git a/modules/text_renderer/quartztext.c b/modules/text_renderer/quartztext.c
  9. index 4b25caa..eb5da4a 100644
  10. --- a/modules/text_renderer/quartztext.c
  11. +++ b/modules/text_renderer/quartztext.c
  12. @@ -205,7 +205,7 @@ static int Create(vlc_object_t *p_this)
  13. p_sys->psz_font_name = var_CreateGetString(p_this, "quartztext-font");
  14. p_sys->i_font_opacity = 255;
  15. p_sys->i_font_color = VLC_CLIP(var_CreateGetInteger(p_this, "quartztext-color") , 0, 0xFFFFFF);
  16. - p_sys->i_font_size = GetFontSize(p_filter);
  17. + p_sys->i_font_size = GetFontSize(p_filter);
  18. p_filter->pf_render_text = RenderText;
  19. p_filter->pf_render_html = RenderHtml;
  20. @@ -317,7 +317,7 @@ static int RenderText(filter_t *p_filter, subpicture_region_t *p_region_out,
  21. b_bold = b_uline = b_italic = FALSE;
  22. VLC_UNUSED(p_chroma_list);
  23. - p_sys->i_font_size = GetFontSize(p_filter);
  24. + p_sys->i_font_size = GetFontSize(p_filter);
  25. // Sanity check
  26. if (!p_region_in || !p_region_out)
  27. @@ -950,7 +950,18 @@ static offscreen_bitmap_t *Compose(int i_text_align,
  28. static int GetFontSize(filter_t *p_filter)
  29. {
  30. - return p_filter->fmt_out.video.i_height / DEFAULT_REL_FONT_SIZE;
  31. + int i_size = 0;
  32. +
  33. + int i_ratio = var_CreateGetInteger( p_filter, "quartztext-rel-fontsize" );
  34. + if( i_ratio > 0 )
  35. + i_size = (int)p_filter->fmt_out.video.i_height / i_ratio;
  36. +
  37. + if( i_size <= 0 )
  38. + {
  39. + msg_Warn( p_filter, "invalid fontsize, using 12" );
  40. + i_size = 12;
  41. + }
  42. + return i_size;
  43. }
  44. static int RenderYUVA(filter_t *p_filter, subpicture_region_t *p_region,
  45. --
  46. 1.8.3.4 (Apple Git-47)