summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZhe Wang <wangzcdl@apache.org>2012-09-07 04:33:47 +0000
committerMiklos Vajna <vmiklos@suse.cz>2013-05-23 10:13:56 +0200
commit07d4398a4a3e25ade493aca0e6b3e480c1a14014 (patch)
tree3b24a6bb83f48bec1b4ae70859dd41e8ef921cee
parent08a9b322ae0069d563730cfd7d61f2dfa0af3a26 (diff)
fdo#33281, i#120627 [From Symphony]the text on the Y axis is reversed when export ppt file to PDF format.
* subversion/main/vcl/source/gdi/pdfwriter_impl.cxx []Change nXOffset value from the distance of axis Y between two points to the distance between two points. Patch by: Tang Meng<tmyl2010@gmail.com> Suggested by: Wang Zhe <kingwisemmx@gmail.com> Found by: Tang Meng <tmyl2010@gmail.com> Review by: Wang Zhe <kingwisemmx@gmail.com> (cherry picked from commit 58b6a6161e7edd10d33fdb67510e7d68440128f9) Signed-off-by: Miklos Vajna <vmiklos@suse.cz>
-rw-r--r--vcl/source/gdi/pdfwriter_impl.cxx7
1 files changed, 6 insertions, 1 deletions
diff --git a/vcl/source/gdi/pdfwriter_impl.cxx b/vcl/source/gdi/pdfwriter_impl.cxx
index 6676cfbcb4ab..cc22fc8480a0 100644
--- a/vcl/source/gdi/pdfwriter_impl.cxx
+++ b/vcl/source/gdi/pdfwriter_impl.cxx
@@ -7136,7 +7136,12 @@ void PDFWriterImpl::drawVerticalGlyphs(
}
aDeltaPos += (m_pReferenceDevice->PixelToLogic( Point( (int)((double)nXOffset/fXScale), 0 ) ) - m_pReferenceDevice->PixelToLogic( Point() ) );
if( i < rGlyphs.size()-1 )
- nXOffset += rGlyphs[i+1].m_aPos.Y() - rGlyphs[i].m_aPos.Y();
+ // [Bug 120627] the text on the Y axis is reversed when export ppt file to PDF format
+ {
+ long nOffsetX = rGlyphs[i+1].m_aPos.X() - rGlyphs[i].m_aPos.X();
+ long nOffsetY = rGlyphs[i+1].m_aPos.Y() - rGlyphs[i].m_aPos.Y();
+ nXOffset += (int)sqrt(double(nOffsetX*nOffsetX + nOffsetY*nOffsetY));
+ }
if( ! rGlyphs[i].m_nGlyphId )
continue;