Bugzilla – Attachment 77143 Details for
Bug 62846
Incorrect glyph to Unicode mappings in PDFs (Graphite)
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch so that trailing multicharacter glyph is correctly mapped to multiple Unicode characters
fix-trailing-multichar-glyph.patch (text/plain), 1.27 KB, created by
Jonathan
on 2013-03-28 06:00:13 UTC
(
hide
)
Description:
Patch so that trailing multicharacter glyph is correctly mapped to multiple Unicode characters
Filename:
MIME Type:
Creator:
Jonathan
Created:
2013-03-28 06:00:13 UTC
Size:
1.27 KB
patch
obsolete
>diff --git a/vcl/source/gdi/pdfwriter_impl.cxx b/vcl/source/gdi/pdfwriter_impl.cxx >index 70ccd94..c48ee02 100644 >--- a/vcl/source/gdi/pdfwriter_impl.cxx >+++ b/vcl/source/gdi/pdfwriter_impl.cxx >@@ -7772,14 +7772,17 @@ void PDFWriterImpl::drawLayout( SalLayout& rLayout, const String& rText, bool bT > aUnicodes.push_back( rText.GetChar( sal::static_int_cast<xub_StrLen>(pCharPosAry[i]) ) ); > pUnicodesPerGlyph[i] = 1; > // try to handle ligatures and such >- if( i < nGlyphs-1 ) >+ if( i < nGlyphs ) > { >- nChars = pCharPosAry[i+1] - pCharPosAry[i]; >+ if( i < nGlyphs-1 ) >+ nChars = pCharPosAry[i+1] - pCharPosAry[i]; >+ else >+ nChars = rText.Len() - pCharPosAry[i]; > // #i115618# fix for simple RTL+CTL cases > // TODO: sanitize for RTL ligatures, more complex CTL, etc. > if( nChars < 0 ) > nChars = -nChars; >- else if( nChars == 0 ) >+ else if( nChars == 0 ) > nChars = 1; > pUnicodesPerGlyph[i] = nChars; > for( int n = 1; n < nChars; n++ )
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Actions:
View
Attachments on
bug 62846
: 77143 |
77144
|
77575
|
77964
|
77996
|
77997
|
115088
|
115108
|
136057
|
136058