private List <PdfObject> SetNonStrokingGeneral(PdfLiteral oper, List <PdfObject> operands) { if (operands.Count == 4) { PdfNumber r = (PdfNumber)operands[0]; PdfNumber g = (PdfNumber)operands[1]; PdfNumber b = (PdfNumber)operands[2]; BaseColor color = new BaseColor(r.FloatValue, g.FloatValue, b.FloatValue); GrayColor grayColor = this.Convert_RGB_To_Grayscale(color); return(new List <PdfObject>() { new PdfNumber(grayColor.Gray), new PdfLiteral("g") }); } else { //PdfDictionary o = _modifier.ResourceDictionary.GetAsDict(PdfName.COLORSPACE); //PdfObject po = o.GetDirectObject(operands[0] as PdfName); return(new List <PdfObject>() { new PdfNumber(GrayColor.GRAYBLACK.Gray), new PdfLiteral("g") }); } }
private List <PdfObject> SetStrokingGeneral(PdfLiteral oper, List <PdfObject> operands) { if (operands.Count == 4) { PdfNumber r = (PdfNumber)operands[0]; PdfNumber g = (PdfNumber)operands[1]; PdfNumber b = (PdfNumber)operands[2]; BaseColor color = new BaseColor(r.FloatValue, g.FloatValue, b.FloatValue); GrayColor grayColor = this.Convert_RGB_To_Grayscale(color); return(new List <PdfObject>() { new PdfNumber(grayColor.Gray), new PdfLiteral("G") }); } else { return(new List <PdfObject>() { new PdfNumber(GrayColor.GRAYBLACK.Gray), new PdfLiteral("G") }); } }
private void ReadColors(BinaryReader reader, Swatch swatch, int count, short version) { for (int i = 0; i < count; i++) { var space = (ColorSpace)reader.ReadInt16(); var item1 = reader.ReadUInt16(); var item2 = reader.ReadUInt16(); var item3 = reader.ReadUInt16(); var item4 = reader.ReadUInt16(); ColorBase color = null; switch (space) { case ColorSpace.RGB: color = new RgbColor(Convert.ToByte(item1 / 256), Convert.ToByte(item2 / 256), Convert.ToByte(item3 / 256)); break; case ColorSpace.HSB: color = new HsvColor(item1 / 65535f, item2 / 65535f, item3 / 65535f); break; case ColorSpace.Grayscale: color = new GrayColor(item1 / 10000f); break; case ColorSpace.CMYK: color = new CmykColor(1f - (item1 / 65535f), 1f - (item2 / 65535f), 1f - (item3 / 65535f), 1f - (item4 / 65535f)); break; case ColorSpace.WideCMYK: color = new CmykColor(item1 / 10000f, item2 / 10000f, item3 / 10000f, item4 / 10000f); break; case ColorSpace.Lab: color = new LabColor((short)(item1 / 100), (short)(item2 / 100), (short)(item3 / 100)); break; default: break; } if (version == 2) { reader.ReadBytes(2); var nameLength = reader.ReadInt16() * 2; if (nameLength > 0) { var nameBuffer = reader.ReadBytes(nameLength); color.Name = Encoding.BigEndianUnicode.GetString(nameBuffer, 0, nameLength - 2); } } swatch.Colors.Add(color); } }
public override void ExecuteResult(ControllerContext context) { var Response = context.HttpContext.Response; var list1 = ReportList().ToList(); if (!list1.Any()) { Response.Write("no data found"); return; } Response.ContentType = "application/pdf"; Response.AddHeader("content-disposition", "filename=OrgLeaders.pdf"); doc = new Document(PageSize.LETTER, 36, 36, 36, 36); var w = PdfWriter.GetInstance(doc, Response.OutputStream); w.PageEvent = pageEvents; doc.Open(); dc = w.DirectContent; foreach (var o in list1) { var t = StartPageSet(o); var color = BaseColor.BLACK; foreach (var m in RollsheetModel.FetchOrgMembers(o.OrgId, null) .Where(om => om.MemberTypeId != MemberTypeCode.Member)) { if (color == BaseColor.WHITE) { color = new GrayColor(240); } else { color = BaseColor.WHITE; } AddRow(t, m.PeopleId, m.Name, m.Email, m.HomePhone, m.CellPhone, m.WorkPhone, m.MemberType, color); } doc.Add(t); } pageEvents.EndPageSet(); doc.Close(); }
public override void ExecuteResult(ControllerContext context) { var Response = context.HttpContext.Response; var list1 = ReportList().ToList(); if (!list1.Any()) { Response.Write("no data found"); return; } Response.ContentType = "application/pdf"; Response.AddHeader("content-disposition", "filename=foo.pdf"); doc = new Document(PageSize.LETTER, 36, 36, 36, 36); var w = PdfWriter.GetInstance(doc, Response.OutputStream); w.PageEvent = pageEvents; doc.Open(); dc = w.DirectContent; var haddata = false; foreach (var o in list1) { var t = StartPageSet(o); var color = BaseColor.BLACK; foreach (var m in RollsheetModel.FetchOrgMembers(o.OrgId, null)) { if (color == BaseColor.WHITE) { color = new GrayColor(240); } else { color = BaseColor.WHITE; } AddRow(t, m, color); haddata = true; } doc.Add(t); } if (!haddata) { doc.Add(new Phrase("\nno data")); } pageEvents.EndPageSet(); doc.Close(); }
private List <PdfObject> SetNonStrokingRGB(PdfLiteral oper, List <PdfObject> operands) { // convert RGB to Grayscale GrayColor color = this.Convert_RGB_To_Grayscale( ((PdfNumber)operands[0]).FloatValue, ((PdfNumber)operands[1]).FloatValue, ((PdfNumber)operands[2]).FloatValue); return(new List <PdfObject>() { new PdfNumber(color.Gray), new PdfLiteral("g") }); }
private List <PdfObject> SetStrokingCMYK(PdfLiteral oper, List <PdfObject> operands) { // convert CMYK to Grayscale GrayColor color = this.Convert_CMYK_To_Grayscale( ((PdfNumber)operands[0]).FloatValue, ((PdfNumber)operands[1]).FloatValue, ((PdfNumber)operands[2]).FloatValue, ((PdfNumber)operands[3]).FloatValue); return(new List <PdfObject>() { new PdfNumber(color.Gray), new PdfLiteral("G") }); }
private ColorBase ReadColorBlock(BinaryReader reader) { var value1 = 0f; var value2 = 0f; var value3 = 0f; var value4 = 0f; var colorMode = Encoding.ASCII.GetString(reader.ReadBytes(4)); ColorBase color; switch (colorMode) { case "RGB ": value1 = reader.ReadSingle(); value2 = reader.ReadSingle(); value3 = reader.ReadSingle(); color = new RgbColor(Convert.ToByte(255 * value1), Convert.ToByte(255 * value2), Convert.ToByte(255 * value3)); break; case "CMYK": value1 = reader.ReadSingle(); value2 = reader.ReadSingle(); value3 = reader.ReadSingle(); value4 = reader.ReadSingle(); color = new CmykColor(value1, value2, value3, value4); break; case "Gray": value1 = reader.ReadSingle(); color = new GrayColor(value1); break; case "LAB ": value1 = reader.ReadSingle(); value2 = reader.ReadSingle(); value3 = reader.ReadSingle(); color = new LabColor(value1 * 100, value2, value3); break; default: throw new InvalidDataException($"Unsupported color mode '{colorMode}'."); } var colorSpace = (ColorType)reader.ReadInt16(); return(color); }
public override void ExecuteResult(ControllerContext context) { var Response = context.HttpContext.Response; Response.ContentType = "application/pdf"; Response.AddHeader("content-disposition", "filename=FamilyReport.pdf"); dt = Util.Now; doc = new Document(PageSize.LETTER.Rotate(), 36, 36, 64, 64); var w = PdfWriter.GetInstance(doc, Response.OutputStream); w.PageEvent = pageEvents; doc.Open(); dc = w.DirectContent; t = new PdfPTable(1); t.WidthPercentage = 100; t.DefaultCell.Padding = 0; t.HeaderRows = 1; t.AddCell(StartPageSet()); t.DefaultCell.Border = Rectangle.TOP_BORDER; t.DefaultCell.BorderColor = BaseColor.BLACK; t.DefaultCell.BorderColorTop = BaseColor.BLACK; t.DefaultCell.BorderWidthTop = 2.0f; var q = DbUtil.Db.PeopleQuery(qid); var q2 = from p in q let person = p group p by p.FamilyId into g let hhname = g.First().Family.HeadOfHousehold.Name2 orderby hhname select new { members = from m in g.First().Family.People where !m.DeceasedDate.HasValue select new { order = m.PositionInFamilyId * 1000 + (m.PositionInFamilyId == 10 ? m.GenderId : 1000 - (m.Age ?? 0)), // order = g.Any(p => p.PeopleId == m.PeopleId) ? 1 : // m.PositionInFamilyId, person = m } }; foreach (var f in q2) { var ft = new PdfPTable(HeaderWids); ft.DefaultCell.SetLeading(2.0f, 1f); ft.DefaultCell.Border = Rectangle.NO_BORDER; ft.DefaultCell.Padding = 5; var fn = 1; var color = BaseColor.BLACK; foreach (var p in f.members.OrderBy(m => m.order)) { if (color == BaseColor.WHITE) { color = new GrayColor(240); } else { color = BaseColor.WHITE; } AddRow(ft, p.person, fn, color); fn++; } t.AddCell(ft); } if (t.Rows.Count > 1) { doc.Add(t); } else { doc.Add(new Phrase("no data")); } pageEvents.EndPageSet(); doc.Close(); }
public override void ExecuteResult(ControllerContext context) { var Response = context.HttpContext.Response; Response.ContentType = "application/pdf"; Response.AddHeader("content-disposition", "filename=foo.pdf"); dt = Util.Now; doc = new Document(PageSize.LETTER.Rotate(), 36, 36, 64, 64); var w = PdfWriter.GetInstance(doc, Response.OutputStream); var roles = DbUtil.Db.CurrentRoles(); var i = (from o in DbUtil.Db.Organizations where o.LimitToRole == null || roles.Contains(o.LimitToRole) where o.OrganizationId == orgid select new { o.OrganizationName, o.LeaderName, o.FirstMeetingDate }).SingleOrDefault(); w.PageEvent = new HeadFoot { HeaderText = $"Recent Attendee Report: {i.OrganizationName} - {i.LeaderName} ({(i.FirstMeetingDate.HasValue ? "since " + i.FirstMeetingDate.FormatDate() : "no First Meeting Date set")})", FooterText = "Recent Attendee Report" }; doc.Open(); var q = Attendees(orgid.Value); if (!orgid.HasValue || i == null || !q.Any()) { doc.Add(new Phrase("no data")); } else { var mt = new PdfPTable(1); mt.SetNoPadding(); mt.HeaderRows = 1; float[] widths = new float[] { 4f, 6f, 7f, 2.6f, 2f, 3f }; var t = new PdfPTable(widths); t.DefaultCell.Border = PdfPCell.NO_BORDER; t.DefaultCell.VerticalAlignment = PdfPCell.ALIGN_TOP; t.DefaultCell.SetLeading(2.0f, 1f); t.WidthPercentage = 100; t.AddHeader("Name", boldfont); t.AddHeader("Address", boldfont); t.AddHeader("Phone/Email", boldfont); t.AddHeader("Last Att.", boldfont); t.AddHeader("Birthday", boldfont); t.AddHeader("Status", boldfont); mt.AddCell(t); var color = BaseColor.BLACK; bool?v = null; foreach (var p in q) { if (color == BaseColor.WHITE) { color = new GrayColor(240); } else { color = BaseColor.WHITE; } t = new PdfPTable(widths); t.SetNoBorder(); t.DefaultCell.VerticalAlignment = Element.ALIGN_TOP; t.DefaultCell.BackgroundColor = color; if (v != p.visitor) { t.Add($" ------ {(p.visitor ? "Guests and Previous Members" : "Members")} ------", 6, bigboldfont); } v = p.visitor; t.Add(p.Name, font); var ph = new Paragraph(); ph.AddLine(p.Address, font); ph.AddLine(p.Address2, font); ph.AddLine(p.CSZ, font); t.AddCell(ph); ph = new Paragraph(); ph.AddLine(p.HomePhone.FmtFone("H"), font); ph.AddLine(p.CellPhone.FmtFone("C"), font); ph.AddLine(p.Email, font); t.AddCell(ph); t.Add(p.LastAttend.FormatDate(), font); t.Add(p.Birthday, font); t.Add(p.AttendType, font); t.CompleteRow(); t.Add("", font); t.Add(p.AttendStr, 4, monofont); t.AddRight($"{p.AttendPct:n1}{(p.AttendPct.HasValue ? "%" : "")}", font); mt.AddCell(t); } doc.Add(mt); } doc.Close(); }
public override void ExecuteResult(ControllerContext context) { var Response = context.HttpContext.Response; Response.ContentType = "application/pdf"; Response.AddHeader("content-disposition", "filename=foo.pdf"); dt = Util.Now; doc = new Document(PageSize.LETTER.Rotate(), 36, 36, 64, 64); var w = PdfWriter.GetInstance(doc, Response.OutputStream); var i = (from m in DbUtil.Db.Meetings where m.MeetingId == mtgid select new { m.Organization.OrganizationName, m.Organization.LeaderName, m.MeetingDate }).SingleOrDefault(); w.PageEvent = new HeadFoot { HeaderText = $"Attendee Report: {i.OrganizationName} - {i.LeaderName} {i.MeetingDate:g}", FooterText = "Attendee Report" }; doc.Open(); var q = Attendees(mtgid.Value); if (!mtgid.HasValue || i == null || !q.Any()) { doc.Add(new Phrase("no data")); } else { var mt = new PdfPTable(1); mt.SetNoPadding(); mt.HeaderRows = 1; float[] widths = { 4f, 6f, 7f, 2.6f, 2f, 3f }; var t = new PdfPTable(widths); t.DefaultCell.Border = PdfPCell.NO_BORDER; t.DefaultCell.VerticalAlignment = PdfPCell.ALIGN_TOP; t.DefaultCell.SetLeading(2.0f, 1f); t.WidthPercentage = 100; t.AddHeader("Name", boldfont); t.AddHeader("Address", boldfont); t.AddHeader("Phone/Email", boldfont); t.AddHeader("Last Att.", boldfont); t.AddHeader("Birthday", boldfont); t.AddHeader("Status", boldfont); mt.AddCell(t); var color = BaseColor.BLACK; foreach (var p in q) { if (color == BaseColor.WHITE) { color = new GrayColor(240); } else { color = BaseColor.WHITE; } t = new PdfPTable(widths); t.DefaultCell.Border = PdfPCell.NO_BORDER; t.DefaultCell.VerticalAlignment = PdfPCell.ALIGN_TOP; t.DefaultCell.SetLeading(2.0f, 1f); t.DefaultCell.BackgroundColor = color; t.WidthPercentage = 100; t.Add(p.Name, font); var ph = new Paragraph(); ph.AddLine(p.Address, font); ph.AddLine(p.Address2, font); ph.AddLine(p.CSZ, font); t.AddCell(ph); ph = new Paragraph(); ph.AddLine(p.HomePhone.FmtFone("H"), font); ph.AddLine(p.CellPhone.FmtFone("C"), font); ph.AddLine(p.Email, font); t.AddCell(ph); t.Add(p.LastAttend.FormatDate(), font); t.Add(p.Birthday, font); t.Add(p.Status, font); t.CompleteRow(); t.Add("", font); t.Add(p.AttendStr, 4, monofont); t.AddRight($"{p.AttendPct:n1}{(p.AttendPct.HasValue ? "%" : "")}", font); mt.AddCell(t); } doc.Add(mt); } doc.Close(); }
public override void ExecuteResult(ControllerContext context) { var Response = context.HttpContext.Response; Response.ContentType = "application/pdf"; Response.AddHeader("content-disposition", "filename=RosterList.pdf"); doc = new Document(PageSize.LETTER, 36, 36, 36, 36); var w = PdfWriter.GetInstance(doc, Response.OutputStream); w.PageEvent = pageEvents; doc.Open(); dc = w.DirectContent; if (qid != null) { var color = BaseColor.BLACK; var o = ReportList().First(); var t = StartPageSet(o); var q = DbUtil.Db.PeopleQuery(qid.Value); var q2 = from p in q let rr = p.RecRegs.FirstOrDefault() join m in RollsheetModel.FetchOrgMembers(o.OrgId, null) on p.PeopleId equals m.PeopleId into j from m in j.DefaultIfEmpty() orderby p.Name2 select new MemberInfo { ActiveOther = rr.ActiveInAnotherChurch ?? false, ThisChurch = rr.Member ?? false, Address = p.PrimaryAddress, Address2 = p.PrimaryAddress2, CityStateZip = p.CityStateZip5, CellPhone = p.CellPhone, HomePhone = p.HomePhone, MemberStatus = p.MemberStatus.Description, MemberType = m.MemberType, FamMemberThis = p.Family.People.Any(f => f.PositionInFamilyId == 10 && f.MemberStatusId == MemberStatusCode.Member), Name = p.Name, Medical = rr.MedicalDescription, PeopleId = p.PeopleId, Parents = DbUtil.Db.ParentNamesAndCells(p.PeopleId), Age = p.Age }; foreach (var m in q2) { if (color.Equals(BaseColor.WHITE)) { color = new GrayColor(240); } else { color = BaseColor.WHITE; } AddRow(t, m, color); } if (t.Rows.Count > 1) { doc.Add(t); } else { doc.Add(new Phrase("no data")); } } else { foreach (var o in ReportList()) { var t = StartPageSet(o); var color = BaseColor.BLACK; var q = from om in DbUtil.Db.OrganizationMembers where om.OrganizationId == o.OrgId where (om.Pending ?? false) == false where om.MemberTypeId != MemberTypeCode.InActive let rr = om.Person.RecRegs.FirstOrDefault() orderby om.Person.Name2 select new MemberInfo { ActiveOther = rr.ActiveInAnotherChurch ?? false, ThisChurch = rr.Member ?? false, Address = om.Person.PrimaryAddress, Address2 = om.Person.PrimaryAddress2, CityStateZip = om.Person.CityStateZip5, CellPhone = om.Person.CellPhone, HomePhone = om.Person.HomePhone, MemberStatus = om.Person.MemberStatus.Description, MemberType = om.MemberType.Description, FamMemberThis = om.Person.Family.People.Any(f => f.PositionInFamilyId == 10 && f.MemberStatusId == MemberStatusCode.Member), Name = om.Person.Name, Medical = rr.MedicalDescription, PeopleId = om.PeopleId, Parents = DbUtil.Db.ParentNamesAndCells(om.PeopleId), Age = om.Person.Age }; foreach (var m in q) { if (color == BaseColor.WHITE) { color = new GrayColor(240); } else { color = BaseColor.WHITE; } AddRow(t, m, color); } doc.Add(t); } } pageEvents.EndPageSet(); doc.Close(); }
/// <summary> /// Constructor for <see cref="GrayStrokingColorOperator"/>. /// </summary> /// <param name="color">The color to use.</param> public GrayStrokingColorOperator(GrayColor color) { Color = color; }
public override void ExecuteResult(ControllerContext context) { var Response = context.HttpContext.Response; var list1 = ReportList(orgid, div, schedule, name); if (list1.Count() == 0) { Response.Write("no data found"); return; } Response.ContentType = "application/pdf"; Response.AddHeader("content-disposition", "filename=foo.pdf"); doc = new Document(PageSize.LETTER, 36, 36, 36, 36); var w = PdfWriter.GetInstance(doc, Response.OutputStream); w.PageEvent = pageEvents; doc.Open(); dc = w.DirectContent; foreach (var o in list1) { var t = StartPageSet(o); var color = BaseColor.BLACK; var q = from om in DbUtil.Db.OrganizationMembers where om.OrganizationId == o.OrgId where (om.Pending ?? false) == false where om.MemberTypeId != MemberTypeCode.InActive let rr = om.Person.RecRegs.FirstOrDefault() orderby om.Person.Name2 select new MemberInfo { ActiveOther = rr.ActiveInAnotherChurch ?? false, ThisChurch = rr.Member ?? false, Address = om.Person.PrimaryAddress, Address2 = om.Person.PrimaryAddress2, CityStateZip = om.Person.CityStateZip5, CellPhone = om.Person.CellPhone, HomePhone = om.Person.HomePhone, MemberStatus = om.Person.MemberStatus.Description, MemberType = om.MemberType.Description, FamMemberThis = om.Person.Family.People.Any(f => f.PositionInFamilyId == 10 && f.MemberStatusId == MemberStatusCode.Member), Name = om.Person.Name, Medical = rr.MedicalDescription, PeopleId = om.PeopleId, Parents = DbUtil.Db.ParentNamesAndCells(om.PeopleId), Age = om.Person.Age }; foreach (var m in q) { if (color == BaseColor.WHITE) { color = new GrayColor(240); } else { color = BaseColor.WHITE; } AddRow(t, m, color); } doc.Add(t); } pageEvents.EndPageSet(); doc.Close(); }