示例#1
0
        /**
         * <summary>Begins a content row.</summary>
         */
        private void BeginRow(
            )
        {
            rowEnded = false;

            ContentScanner.GraphicsState state = baseComposer.State;

            double rowY = boundBox.Height;

            if (rowY > 0)
            {
                rowY += lineSpace.GetValue(state.Font != null ? state.Font.GetLineHeight(state.FontSize) : 0);
            }
            currentRow = new Row(rowY);
            if (xAlignment == XAlignmentEnum.Justify)
            {
                /*
                 * TODO: This temporary hack forces PrimitiveComposer.showText() to insert word space
                 * adjustments in case of justified text; when the row ends, it has to be updated with the
                 * actual adjustment value.
                 */
                currentRow.WordSpaceAdjustment = baseComposer.Add(new SetWordSpace(.001));
            }
            else if (state.WordSpace != 0)
            {
                baseComposer.SetWordSpace(0);
            }
        }