Kaydet (Commit) beaba5f1 authored tarafından Mark Hung's avatar Mark Hung

tdf#43671 set emphasis mark of vcl::Font (opengl).

Change-Id: Ib61765b495c867bcb461ee7324eb7b92ed4da864
Reviewed-on: https://gerrit.libreoffice.org/62631
Tested-by: Jenkins
Reviewed-by: 's avatarMark Hung <marklh9@gmail.com>
üst 17cd7dd7
......@@ -11,22 +11,24 @@
#include <com/sun/star/rendering/PanoseWeight.hpp>
#include <com/sun/star/rendering/XSpriteCanvas.hpp>
#include <canvas/canvastools.hxx>
#include "ogl_canvasfont.hxx"
#include "ogl_textlayout.hxx"
using namespace ::com::sun::star;
namespace oglcanvas
{
CanvasFont::CanvasFont( const rendering::FontRequest& rFontRequest,
const uno::Sequence< beans::PropertyValue >& /*extraFontProperties*/,
const uno::Sequence< beans::PropertyValue >& extraFontProperties,
const geometry::Matrix2D& fontMatrix ) :
CanvasFontBaseT( m_aMutex ),
maFontRequest( rFontRequest ),
mnEmphasisMark(0),
maFontMatrix( fontMatrix )
{
::canvas::tools::extractExtraFontProperties(extraFontProperties, mnEmphasisMark);
}
uno::Reference< rendering::XTextLayout > SAL_CALL CanvasFont::createTextLayout( const rendering::StringContext& aText,
......
......@@ -50,8 +50,11 @@ namespace oglcanvas
const css::geometry::Matrix2D& getFontMatrix() const { return maFontMatrix; }
sal_uInt32 getEmphasisMark() const { return mnEmphasisMark; }
private:
css::rendering::FontRequest maFontRequest;
sal_uInt32 mnEmphasisMark;
css::geometry::Matrix2D maFontMatrix;
};
}
......
......@@ -701,6 +701,9 @@ namespace oglcanvas
aFont.SetWeight( static_cast<FontWeight>(rFontRequest.FontDescription.FontDescription.Weight) );
aFont.SetItalic( (rFontRequest.FontDescription.FontDescription.Letterform<=8) ? ITALIC_NONE : ITALIC_NORMAL );
if (pFont->getEmphasisMark())
aFont.SetEmphasisMark(FontEmphasisMark(pFont->getEmphasisMark()));
// adjust to stretched font
if(!::rtl::math::approxEqual(rFontMatrix.m00, rFontMatrix.m11))
{
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment