po1725 Posted July 10, 2012 at 02:32 PM Report #468188 Posted July 10, 2012 at 02:32 PM Boas é possivel com o c# construir uma página em branco e adicionar nela multiplas fonts, cabeçalho e corpo para imprimir? até agora o que consegui foi: private void btnImprimir_Click(object sender, EventArgs e) { //printDialog1.Document = printDocument1; //string Texto=textBox1.Text; //if (printDialog1.ShowDialog() == DialogResult.OK) //{ // this.printDocument1.Print(); //} PrintDocument Documento; Documento = new PrintDocument(); Documento.DocumentName = "algo"; Documento.PrintPage += new PrintPageEventHandler(this.printDocument1_PrintPage); printPreviewDialog1.Document = Documento; printPreviewDialog1.ShowDialog(); Documento.Dispose(); } private void printDocument1_PrintPage(object sender, PrintPageEventArgs ev) { Font FontTitulo = new Font("Calibri",14,FontStyle.Bold); Font FontSubTitulo = new Font("Calibri", 12, FontStyle.Bold); string Titulo="TITULO\n" +"Subtitulo"; int y; StringFormat formatacao= new StringFormat(); formatacao.LineAlignment = StringAlignment.Center; formatacao.Alignment = StringAlignment.Center; y = ev.MarginBounds.Y; ev.Graphics.DrawString(Titulo, FontTitulo, Brushes.Black, ClientRectangle, formatacao); ev.Graphics.DrawString(Titulo, FontTitulo, Brushes.Black, ClientRectangle, formatacao); } alguém sabe resolver este mistério?
po1725 Posted July 17, 2012 at 12:42 PM Author Report #468994 Posted July 17, 2012 at 12:42 PM já achei uma forma penso eu , tanbém encontrei o Chilkat.NET. e o Aspose.NET que fazem isso mas infelismente é pago ( e bem pago ) ev.Graphics.DrawString(Titulo, FontTitulo, Brushes.Black, ClientRectangle, formatacaoCentro); ev.Graphics.DrawString(SubTitulo, FontSubTitulo, Brushes.Black, ClientRectangle, formatacaoCentro); ev.Graphics.DrawLine(Pens.Black, 10, 10, 700, 10); ev.Graphics.DrawString("aaaaaaaaaaaaaaaaaaaaaaa", FontTitulo, Brushes.Black, ClientRectangle, formatacaoEsquerda); como escolho a posição onde fica o texto penso k o ClientRectangle seja a localização onde o texto será posto e o Graphics.DrawLine(Pens.Black, a, b, c, d); o que é o ClientRectangle e DrawLine(a,b,c e d) ?
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now