diff -upr /cygdrive/c/Users/Henner/Downloads/OOSource/OOH680_m12/vcl/source/gdi/outdev3.cxx source/gdi/outdev3.cxx --- /cygdrive/c/Users/Henner/Downloads/OOSource/OOH680_m12/vcl/source/gdi/outdev3.cxx 2008-01-31 10:01:07.000000000 +0000 +++ source/gdi/outdev3.cxx 2008-04-07 06:23:41.893000000 +0000 @@ -191,6 +191,9 @@ using namespace ::vcl; // ======================================================================= + + + //#ifdef USE_NEW_RTL_IMPLEMENTATION @@ -3828,6 +3831,7 @@ ImplFontMetricData::ImplFontMetricData( mnDStrikeoutSize = 0; mnDStrikeoutOffset1 = 0; mnDStrikeoutOffset2 = 0; + mnMinKashida = 0; } // ----------------------------------------------------------------------- @@ -7458,6 +7462,29 @@ FontMetric OutputDevice::GetFontMetric( // ----------------------------------------------------------------------- +long OutputDevice::GetMinKashida() const +{ + DBG_TRACE( "OutputDevice::GetMinKashida()" ); + DBG_CHKTHIS( OutputDevice, ImplDbgCheckOutputDevice ); + if( mbNewFont && !ImplNewFont() ) + return 0; + + ImplFontEntry* pEntry = mpFontEntry; + ImplFontMetricData* pMetric = &(pEntry->maMetric); + return ImplDevicePixelToLogicWidth( pMetric->mnMinKashida ); +} +// ----------------------------------------------------------------------- + +long OutputDevice::GetMinKashida( const Font& rFont ) const +{ + // select font, query Kashida, select original font again + Font aOldFont = GetFont(); + const_cast(this)->SetFont( rFont ); + long aKashida = GetMinKashida(); + const_cast(this)->SetFont( aOldFont ); + return aKashida; +} + // TODO: best is to get rid of this method completely ULONG OutputDevice::GetKerningPairCount() const {