version 1.9, 2014/10/10 14:27:46 |
version 1.10, 2014/10/12 19:31:41 |
Line 47 eqn_box(struct html *p, const struct eqn_box *bp) |
|
Line 47 eqn_box(struct html *p, const struct eqn_box *bp) |
|
if (EQN_MATRIX == bp->type) { |
if (EQN_MATRIX == bp->type) { |
if (NULL == bp->first) |
if (NULL == bp->first) |
goto out; |
goto out; |
assert(EQN_LIST == bp->first->type); |
if (EQN_LIST != bp->first->type) { |
|
eqn_box(p, bp->first); |
|
goto out; |
|
} |
if (NULL == (parent = bp->first->first)) |
if (NULL == (parent = bp->first->first)) |
goto out; |
goto out; |
assert(EQN_PILE == parent->type); |
|
/* Estimate the number of rows, first. */ |
/* Estimate the number of rows, first. */ |
if (NULL == (child = parent->first)) |
if (NULL == (child = parent->first)) |
goto out; |
goto out; |
Line 126 eqn_box(struct html *p, const struct eqn_box *bp) |
|
Line 128 eqn_box(struct html *p, const struct eqn_box *bp) |
|
|
|
if (EQN_PILE == bp->type) { |
if (EQN_PILE == bp->type) { |
assert(NULL == post); |
assert(NULL == post); |
post = print_otag(p, TAG_MTABLE, 0, NULL); |
if (bp->first != NULL && bp->first->type == EQN_LIST) |
} else if (bp->parent && EQN_PILE == bp->parent->type) { |
post = print_otag(p, TAG_MTABLE, 0, NULL); |
|
} else if (bp->type == EQN_LIST && |
|
bp->parent && bp->parent->type == EQN_PILE) { |
assert(NULL == post); |
assert(NULL == post); |
post = print_otag(p, TAG_MTR, 0, NULL); |
post = print_otag(p, TAG_MTR, 0, NULL); |
print_otag(p, TAG_MTD, 0, NULL); |
print_otag(p, TAG_MTD, 0, NULL); |