if (run.style != null && run.style.metrics != null) { GlyphMetrics metrics = run.style.metrics; width = metrics.getWidthInPixels() * (offset - run.start + (trailing ? 1 : 0)); } else if (run.tab) { width = (trailing || (offset == length)) ? run.width : 0;
if (run.style != null && run.style.metrics != null) { GlyphMetrics metrics = run.style.metrics; cx = metrics.getWidthInPixels() * (start - run.start); } else if (!run.tab) { int[] piX = new int[1]; if (run.style != null && run.style.metrics != null) { GlyphMetrics metrics = run.style.metrics; cx = metrics.getWidthInPixels() * (end - run.start + 1); } else if (!run.tab) { int[] piX = new int[1];
if (run.style != null && run.style.metrics != null) { GlyphMetrics metrics = run.style.metrics; if (metrics.getWidthInPixels() > 0) { if (trailing != null) { trailing[0] = (xRun % metrics.getWidthInPixels() < metrics.getWidthInPixels() / 2) ? 0 : 1; return untranslateOffset(run.start + xRun / metrics.getWidthInPixels());
run.width = metrics.getWidthInPixels() * Math.max (1, run.glyphCount); run.ascentInPoints = metrics.ascent; run.descentInPoints = metrics.descent;