diff options
author | Caolán McNamara <caolanm@redhat.com> | 2011-08-12 23:35:07 +0100 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2011-08-15 09:20:40 +0100 |
commit | 9892df24a508dcc33cd82ffa6bb664ab82cb0c70 (patch) | |
tree | dc9a336ea0b0cc363f151d2c1eca3ef8ded3a2e5 | |
parent | 28f5e1b27c4150847cc4c2654c55d2881574a81a (diff) |
turn on cairo rendering of vertical text
-rw-r--r-- | qadevOOo/testdocs/vertical-testcase.odt | bin | 0 -> 18060 bytes | |||
-rw-r--r-- | vcl/unx/generic/fontmanager/fontconfig.cxx | 4 | ||||
-rw-r--r-- | vcl/unx/generic/gdi/salgdi3.cxx | 10 |
3 files changed, 7 insertions, 7 deletions
diff --git a/qadevOOo/testdocs/vertical-testcase.odt b/qadevOOo/testdocs/vertical-testcase.odt Binary files differnew file mode 100644 index 000000000000..cd279c8115ad --- /dev/null +++ b/qadevOOo/testdocs/vertical-testcase.odt diff --git a/vcl/unx/generic/fontmanager/fontconfig.cxx b/vcl/unx/generic/fontmanager/fontconfig.cxx index 6bf7edee2489..be91349eadc4 100644 --- a/vcl/unx/generic/fontmanager/fontconfig.cxx +++ b/vcl/unx/generic/fontmanager/fontconfig.cxx @@ -870,7 +870,7 @@ public: { FcPatternDestroy(mpPattern); } - virtual void *GetPattern(void * face, bool bEmbolden, bool bVerticalLayout) const + virtual void *GetPattern(void * face, bool bEmbolden, bool /*bVerticalLayout*/) const { FcValue value; value.type = FcTypeFTFace; @@ -879,8 +879,10 @@ public: FcPatternAdd (mpPattern, FC_FT_FACE, value, FcTrue); FcPatternDel(mpPattern, FC_EMBOLDEN); FcPatternAddBool(mpPattern, FC_EMBOLDEN, bEmbolden ? FcTrue : FcFalse); +#if 0 FcPatternDel(mpPattern, FC_VERTICAL_LAYOUT); FcPatternAddBool(mpPattern, FC_VERTICAL_LAYOUT, bVerticalLayout ? FcTrue : FcFalse); +#endif return mpPattern; } FcPattern* mpPattern; diff --git a/vcl/unx/generic/gdi/salgdi3.cxx b/vcl/unx/generic/gdi/salgdi3.cxx index f03bc353a740..023f64bb5e7c 100644 --- a/vcl/unx/generic/gdi/salgdi3.cxx +++ b/vcl/unx/generic/gdi/salgdi3.cxx @@ -454,9 +454,9 @@ void X11SalGraphics::DrawCairoAAFontString( const ServerFontLayout& rLayout ) &text_extents); xdiff = -text_extents.x_advance/nHeight; - //deliberate bug here for temp render-like-X11-impl, - //nWidth should be nHeight below - xdiff += font_extents.descent/nWidth; + //to restore an apparent bug in the original X11 impl, replace + //nHeight with nWidth below + xdiff += font_extents.descent/nHeight; } cairo_matrix_translate(&m, xdiff, ydiff); } @@ -834,9 +834,7 @@ void X11SalGraphics::DrawServerFontLayout( const ServerFontLayout& rLayout ) { // draw complex text ServerFont& rFont = rLayout.GetServerFont(); - const bool bVertical = rFont.GetFontSelData().mbVertical; - - if( !bVertical && isCairoRenderable(rFont) ) + if( isCairoRenderable(rFont) ) DrawCairoAAFontString( rLayout ); else { |