"Fossies" - the Fresh Open Source Software Archive  

Source code changes of the file "swindow/SFont.cpp" between
yudit-3.0.1.tar.gz and yudit-3.0.2.tar.gz

About: yudit is an Unicode plain-text editor that can do True Type font rendering, printing, transliterated keyboard input and handwriting recognition with no dependencies on external engines.

SFont.cpp  (yudit-3.0.1):SFont.cpp  (yudit-3.0.2)
skipping to change at line 379 skipping to change at line 379
{ {
mm.t0 = m.t0 + currw; mm.t0 = m.t0 + currw;
} }
im.draw (canvas, pen, mm, comp, glyph.isLR()); im.draw (canvas, pen, mm, comp, glyph.isLR());
baseWidth = currw; baseWidth = currw;
baseOK = true; baseOK = true;
break; break;
} }
currw = 0.0; currw = 0.0;
} }
// Try ligatures composed with ZWJ
// commented out as this is done in im for OldHUngarian and OldItalic
#if 0
if (false && !baseOK && comp > 0x7fffffff) {
unsigned int liglen = getLigatureUnicode(comp, 0);
if (liglen > 0) {
SS_UCS4* chars = new SS_UCS4[liglen];
CHECK_NEW (chars);
getLigatureUnicode (comp, chars);
unsigned int j;
for (i=0; i<fontVector.size(); i++) {
SFontImpl im = fontVector[i];
for (j=0; j<liglen; j++) {
if (chars[j] == SD_CD_ZWJ) {
if (j%2 != 1) break;
continue;
}
if (j%2 != 0) break;
if (!im.width (chars[j], &currw)) {
break;
}
}
if (j < liglen) continue;
baseWidth = 0;
for (j=0; j<liglen; j++) {
SS_UCS4 ch = glyph.isLR() ? chars[j]
: chars[liglen-j-1];
if (ch == SD_CD_ZWJ) continue;
unsigned int progress = 0;
im.width (ch, &currw);
baseWidth += currw;
SS_Matrix2D mm = m;
if (im.needSoftMirror (ch, glyph.isLR())) {
mm.x0 = -m.x0; // try to indicate mirroring
if (im.isTTF())
{
mm.t0 = m.t0 + currw;
}
}
mm.t0 = mm.t0 + progress;
// im.draw (canvas, pen, mm, ch, glyph.isLR());
progress += currw;
}
baseOK = true;
}
delete [] chars;
}
}
#endif
} }
else else
{ {
/* Try all fonts on it */ /* Try all fonts on it */
for (i=0; i<fontVector.size(); i++) for (i=0; i<fontVector.size(); i++)
{ {
SFontImpl im = fontVector[i]; SFontImpl im = fontVector[i];
if (im.draw (canvas, pen, m, comp, glyph.isLR())) if (im.draw (canvas, pen, m, comp, glyph.isLR()))
{ {
im.width (comp, &baseWidth); im.width (comp, &baseWidth);
 End of changes. 1 change blocks. 
0 lines changed or deleted 49 lines changed or added

Home  |  About  |  Features  |  All  |  Newest  |  Dox  |  Diffs  |  RSS Feeds  |  Screenshots  |  Comments  |  Imprint  |  Privacy  |  HTTP(S)