if (chunk.isStroked()) {
PdfChunk nextChunk = line.getChunk(chunkStrokeIdx + 1);
if (chunk.isSeparator()) {
width = glueWidth;
Object[] sep = (Object[])chunk.getAttribute(Chunk.SEPARATOR);
DrawInterface di = (DrawInterface)sep[0];
Boolean vertical = (Boolean)sep[1];
if (vertical.booleanValue()) {
di.draw(graphics, baseXMarker, yMarker + descender, baseXMarker + line.getOriginalWidth(), ascender - descender, yMarker);
}
else {
di.draw(graphics, xMarker, yMarker + descender, xMarker + width, ascender - descender, yMarker);
}
}
if (chunk.isTab()) {
if (chunk.isAttribute(Chunk.TABSETTINGS)) {
TabStop tabStop = chunk.getTabStop();
if (tabStop != null) {
tabPosition = tabStop.getPosition() + baseXMarker;
if (tabStop.getLeader() != null)
tabStop.getLeader().draw(graphics, xMarker, yMarker + descender, tabPosition, ascender - descender, yMarker);
} else {
tabPosition = xMarker;
}
} else {
//Keep deprecated tab logic for backward compatibility...
Object[] tab = (Object[])chunk.getAttribute(Chunk.TAB);
DrawInterface di = (DrawInterface)tab[0];
tabPosition = ((Float)tab[1]).floatValue() + ((Float)tab[3]).floatValue();
if (tabPosition > xMarker) {
di.draw(graphics, xMarker, yMarker + descender, tabPosition, ascender - descender, yMarker);
}
}
float tmp = xMarker;
xMarker = tabPosition;
tabPosition = tmp;