private bool CSS_read_style_params(ByteClass buf, ref int ct, int max, CSS_styles CSS_style, CSS_params CSS_param, ArrayList font_list, ArrayList color_list) { int num2; ByteClass class2 = new ByteClass(); int index = ct; bool quote = false; while (ct < max) { if (buf.b[ct] == 0x7d) { max = ct; break; } ct++; } while (buf.b[index] == 0x7b) { index++; } Label_0F0F: while ((index < max) && (buf.b[index] != 0x7d)) { bool flag2; double num3; this.read_value_CSS(buf, ref index, max, class2, -1111, quote); if (index < (buf.len - 1)) { while (((buf.b[index] == 0x3a) || (buf.b[index] == 0x3b)) || (((buf.b[index] >= 0) && (buf.b[index] <= 0x20)) && (index < (buf.len - 1)))) { index++; } } new ByteClass(); if (class2.byteCmpi((string)CSS_param.names[0]) == 0) { this.read_value_CSS(buf, ref index, max, class2, -1111, true); num2 = 0; bool flag = false; while ((num2 < CSS_param.font_list_num) && (num2 < this.MAX_FONTS)) { if (class2.byteCmpi((string)font_list[num2]) == 0) { flag = true; break; } num2++; } if (!flag) { font_list.Add(class2.ByteToString()); CSS_style.ablaze.b[0] = 1; CSS_style.font_family = (byte)CSS_param.font_list_num; CSS_param.font_list_num++; } else { CSS_style.ablaze.b[0] = 1; CSS_style.font_family = (byte)num2; } continue; } if (class2.byteCmpi((string)CSS_param.names[1]) == 0) { this.read_color(buf, ref index, max, class2); index += class2.len; num2 = 0; flag2 = false; while ((num2 < CSS_param.color_list_num) && (num2 < this.MAX_COLORS)) { if (class2.byteCmpi(color_list[num2].ToString()) == 0) { flag2 = true; break; } num2++; } if (!flag2) { color_list.Add(class2.ByteToString()); class2.Clear(); CSS_style.ablaze.b[1] = 1; CSS_style.color = (byte)CSS_param.color_list_num; CSS_param.color_list_num++; } else { CSS_style.ablaze.b[1] = 1; CSS_style.color = (byte)num2; } continue; } if (class2.byteCmpi((string)CSS_param.names[2]) == 0) { this.read_value_CSS(buf, ref index, max, class2, -1111, quote); if (class2.byteCmpi("bold") == 0) { CSS_style.ablaze.b[2] = 1; CSS_style.font_weight = 1; } if (class2.byteCmpi("normal") == 0) { CSS_style.ablaze.b[2] = 1; CSS_style.font_weight = 0; } continue; } if (class2.byteCmpi((string)CSS_param.names[3]) == 0) { this.read_value_CSS_tolower(buf, ref index, max, class2, -1111); num3 = this.ToFloat(class2); if (class2.IndexOfBegin("px") != -1) { num3 *= 0.75; } else if (class2.IndexOfBegin("em") != -1) { num3 *= 12; } else if (class2.byteCmp("xx-small") == 0) { num3 = 8; } else if (class2.byteCmp("x-small") == 0) { num3 = 10; } else if (class2.byteCmp("small") == 0) { num3 = 12; } else if (class2.byteCmp("medium") == 0) { num3 = 14; } else if (class2.byteCmp("large") == 0) { num3 = 18; } else if (class2.byteCmp("x-large") == 0) { num3 = 24; } else if (class2.byteCmp("xx-large") == 0) { num3 = 36; } else if (class2.IndexOfBegin("%") != -1) { num3 = (num3 * 12) / 100; } if ((num3 > this.FONT_SIZE_MIN) && (num3 < this.FONT_SIZE_MAX)) { CSS_style.ablaze.b[3] = 1; CSS_style.font_size = (byte)(num3 * 2); } continue; } if ((class2.byteCmpi((string)CSS_param.names[4]) == 0) || (class2.byteCmpi("align") == 0)) { this.read_value_CSS_tolower(buf, ref index, max, class2, -1111); if (((class2.b[0] == 0x6c) || (class2.b[0] == 0x72)) || ((class2.b[0] == 0x63) || (class2.b[0] == 0x6a))) { CSS_style.ablaze.b[4] = 1; CSS_style.text_align = class2.b[0]; } continue; } if (class2.byteCmpi((string)CSS_param.names[5]) == 0) { this.read_value_CSS(buf, ref index, max, class2, -1111, quote); if (class2.byteCmpi("italic") == 0) { CSS_style.ablaze.b[5] = 1; CSS_style.font_style = 0x69; } continue; } if (class2.byteCmpi((string)CSS_param.names[6]) == 0) { this.read_value_CSS_tolower(buf, ref index, max, class2, -1111); num3 = (int)(this.ToFloat(class2) * 20f); if (class2.IndexOfBegin("px") != 0) { num3 = (int)(num3 / 1.333299994468689); } if ((num3 >= 0) && (num3 <= 250)) { CSS_style.ablaze.b[6] = 1; CSS_style.margin_top = (byte)num3; } continue; } if ((class2.byteCmpi((string)CSS_param.names[7]) == 0) || (class2.byteCmpi("background") == 0)) { if (!this.read_color(buf, ref index, max, class2)) { continue; } index += class2.len; num2 = 0; flag2 = false; while ((num2 < CSS_param.color_list_num) && (num2 < this.MAX_COLORS)) { if (class2.byteCmpi(color_list[num2].ToString()) == 0) { flag2 = true; break; } num2++; } if (!flag2) { color_list.Add(class2.ByteToString()); class2.Clear(); CSS_style.ablaze.b[7] = 1; CSS_style.background_color = (byte)CSS_param.color_list_num; CSS_param.color_list_num++; } else { CSS_style.ablaze.b[7] = 1; CSS_style.background_color = (byte)num2; } continue; } if (class2.byteCmpi((string)CSS_param.names[8]) == 0) { int num4 = 1; int num5 = 1; for (int i = 0; ((num4 != 0) || (num5 != 0)) && (i < 10); i++) { this.read_value_CSS(buf, ref index, max, class2, -1111, quote); num4 = num5; num5 = class2.b[0]; if (class2.byteCmpi("italic") == 0) { CSS_style.ablaze.b[5] = 1; CSS_style.font_style = 0x69; } if (class2.byteCmpi("bold") == 0) { CSS_style.ablaze.b[2] = 1; CSS_style.font_weight = 1; } if (class2.IndexOfBegin("px") != 0) { num3 = this.ToFloat(class2); num3 = (int)(num3 * 0.75); if ((num3 > this.FONT_SIZE_MIN) && (num3 < this.FONT_SIZE_MAX)) { CSS_style.ablaze.b[3] = 1; CSS_style.font_size = (byte)(num3 * 2); } } if (class2.IndexOfBegin("pt") != 0) { num3 = this.ToFloat(class2); if ((num3 > this.FONT_SIZE_MIN) && (num3 < this.FONT_SIZE_MAX)) { CSS_style.ablaze.b[3] = 1; CSS_style.font_size = (byte)(num3 * 2); } } if (class2.byteCmpi((string)CSS_param.names[1]) == 0) { while ((buf.b[index] == 0x3a) || (buf.b[index] == 0x20)) { index++; } this.read_color(buf, ref index, max, class2); index += class2.len; num2 = 0; flag2 = false; while ((num2 < CSS_param.color_list_num) && (num2 < this.MAX_COLORS)) { if (class2.byteCmpi(color_list[num2].ToString()) == 0) { flag2 = true; break; } num2++; } if (!flag2) { color_list.Add(class2.ByteToString()); class2.Clear(); CSS_style.ablaze.b[1] = 1; CSS_style.color = (byte)CSS_param.color_list_num; CSS_param.color_list_num++; } else { CSS_style.ablaze.b[1] = 1; CSS_style.color = (byte)num2; } } } } else if (class2.byteCmpi((string)CSS_param.names[9]) == 0) { this.read_value_CSS_tolower(buf, ref index, max, class2, -1111); num3 = (int)this.ToFloat(class2); if (num3 > 0) { CSS_style.ablaze.b[9] = 1; CSS_style.top = (byte)num3; } } else { if (class2.byteCmpi((string)CSS_param.names[10]) == 0) { this.read_value_CSS_tolower(buf, ref index, max, class2, -1111); num3 = (int)this.ToFloat(class2); if (num3 > 0) { CSS_style.ablaze.b[10] = 1; CSS_style.left = (byte)num3; } goto Label_0F0F; } if (class2.byteCmpi((string)CSS_param.names[11]) == 0) { this.read_value_CSS_tolower(buf, ref index, max, class2, -1111); num3 = (int)this.ToFloat(class2); if (num3 > 0) { CSS_style.ablaze.b[11] = 1; CSS_style.width = (byte)num3; if (class2.IndexOf("%") != -1) { CSS_style.width_in_percent = true; } else { CSS_style.width_in_percent = false; } } goto Label_0F0F; } if (class2.byteCmpi((string)CSS_param.names[12]) == 0) { this.read_value_CSS(buf, ref index, max, class2, -1111, quote); if (class2.byteCmpi("underline") == 0) { CSS_style.ablaze.b[12] = 1; CSS_style.text_decoration = 0x75; } if (class2.byteCmpi("none") == 0) { CSS_style.ablaze.b[12] = 1; CSS_style.text_decoration = 110; } if (class2.byteCmpi("line-through") == 0) { CSS_style.ablaze.b[12] = 1; CSS_style.text_decoration = 0x73; } goto Label_0F0F; } if (class2.byteCmpi((string)CSS_param.names[13]) == 0) { this.read_value_CSS(buf, ref index, max, class2, -1111, quote); if (class2.byteCmpi("sub") == 0) { CSS_style.ablaze.b[13] = 1; CSS_style.vertical_align = 0x62; } if (class2.byteCmpi("super") == 0) { CSS_style.ablaze.b[13] = 1; CSS_style.vertical_align = 0x72; } goto Label_0F0F; } if (class2.byteCmpi((string)CSS_param.names[14]) == 0) { this.read_value_CSS(buf, ref index, max, class2, -1111, quote); if (class2.byteCmpi("avoid") == 0) { CSS_style.ablaze.b[14] = 1; CSS_style.page_break_before = 0; } else if (class2.len > 0) { CSS_style.ablaze.b[14] = 1; CSS_style.page_break_before = 1; } goto Label_0F0F; } if (class2.byteCmpi((string)CSS_param.names[15]) == 0) { this.read_value_CSS(buf, ref index, max, class2, -1111, quote); if (class2.byteCmpi("avoid") == 0) { CSS_style.ablaze.b[15] = 1; CSS_style.page_break_after = 0; } else if (class2.len > 0) { CSS_style.ablaze.b[15] = 1; CSS_style.page_break_after = 1; } goto Label_0F0F; } if (class2.byteCmpi((string)CSS_param.names[0x10]) == 0) { this.read_value_CSS(buf, ref index, max, class2, -1111, quote); if (class2.byteCmpi("none") == 0) { CSS_style.ablaze.b[0x10] = 1; CSS_style.list_style_type = 1; } else if (class2.byteCmpi("disc") == 0) { CSS_style.ablaze.b[0x10] = 1; CSS_style.list_style_type = 2; } else if (class2.byteCmpi("circle") == 0) { CSS_style.ablaze.b[0x10] = 1; CSS_style.list_style_type = 3; } else if (class2.byteCmpi("square") == 0) { CSS_style.ablaze.b[0x10] = 1; CSS_style.list_style_type = 4; } else if (class2.byteCmpi("lower-roman") == 0) { CSS_style.ablaze.b[0x10] = 1; CSS_style.list_style_type = 5; } else if (class2.byteCmpi("upper-roman") == 0) { CSS_style.ablaze.b[0x10] = 1; CSS_style.list_style_type = 6; } else if (class2.byteCmpi("lower-alpha") == 0) { CSS_style.ablaze.b[0x10] = 1; CSS_style.list_style_type = 7; } else if (class2.byteCmpi("upper-alpha") == 0) { CSS_style.ablaze.b[0x10] = 1; CSS_style.list_style_type = 8; } else if (class2.byteCmpi("arabic") == 0) { CSS_style.ablaze.b[0x10] = 1; CSS_style.list_style_type = 9; } goto Label_0F0F; } if (class2.byteCmpi((string)CSS_param.names[0x11]) == 0) { this.read_value_CSS_tolower(buf, ref index, max, class2, -1111); num3 = (int)(this.ToFloat(class2) * 20f); if (class2.IndexOfBegin("px") != 0) { num3 = (int)(num3 / 1.3333); } if ((num3 >= 0) && (num3 <= 250)) { CSS_style.ablaze.b[0x11] = 1; CSS_style.margin_bottom = (byte)num3; } goto Label_0F0F; } if (class2.byteCmpi("style") == 0) { quote = true; while ((((buf.b[index] == 0x3a) || (buf.b[index] == 0x20)) || (buf.b[index] == 0x3d)) && (index < max)) { index++; } } } } ct = index; for (num2 = 0; num2 < this.STYLES_KNOW; num2++) { if (CSS_style.ablaze.b[num2] == 1) { return true; } } return false; }