/* Write a style to a stream in a compatible way */ HTStyle *HTStyleWrite(HTStyle *style, NXStream * stream) { int tab; NXTextStyle *p = style->paragraph; NXPrintf(stream, "%s %s %f %d\n", style->SGMLTag, style->font ?[style->font name] : NONE_STRING, style->fontSize, p != 0); if (p) { NXPrintf(stream, "\t%f %f %f %f %d %f %f\t%d\n", p->indent1st, p->indent2nd, p->lineHt, p->descentLine, p->alignment, style->spaceBefore, style->spaceAfter, p->numTabs); for (tab = 0; tab < p->numTabs; tab++) NXPrintf(stream, "\t%d %f\n", p->tabs[tab].kind, p->tabs[tab].x); } return style; }
HTStyleSheet * HTStyleSheetWrite(HTStyleSheet * self, NXStream * stream) { int numStyles = 0; HTStyle * style; for(style=self->styles; style; style=style->next) numStyles++; NXPrintf(stream, "%d\n", numStyles); if (TRACE) fprintf(stderr, "StyleSheet: Writing %d styles\n", numStyles); for (style=self->styles; style; style=style->next) { NXPrintf(stream, "%s ", style->name); (void) HTStyleWrite(style, stream); } return self; }