void lt_XMLTags::write(ByteStream &bs,bool const top) const { if(name.length()) { GUTF8String tag="<"+name; for(GPosition pos=args;pos;++pos) { tag+=GUTF8String(' ')+args.key(pos)+GUTF8String("=\42")+args[pos].toEscaped()+GUTF8String("\42"); } GPosition tags=content; if(tags||raw.length()) { tag+=">"; bs.writall((const char *)tag,tag.length()); tag="</"+name+">"; if(raw.length()) { bs.writestring(raw); } for(;tags;++tags) { content[tags].write(bs); } }else if(!raw.length()) { tag+="/>"; } bs.writall((const char *)tag,tag.length()); } if(top) { bs.writall("\n",1); } }
void DjVuNavDir::encode(ByteStream & str) { GCriticalSectionLock lk(&lock); for(int i=0;i<page2name.size();i++) { GUTF8String & name=page2name[i]; str.writall((const char*)name, name.length()); str.writall("\n", 1); }; }
void DjVuPalette::encode_rgb_entries(ByteStream &bs) const { const int palettesize = palette.size(); { // extra nesting for windows for (int c=0; c<palettesize; c++) { unsigned char p[3]; p[2] = palette[c].p[0]; p[1] = palette[c].p[1]; p[0] = palette[c].p[2]; bs.writall((const void*)p, 3); } } }
void DjVuANT::encode(ByteStream &bs) { GUTF8String raw=encode_raw(); bs.writall((const char*) raw, raw.length()); }