コード例 #1
0
        private void Imprimir(ref PdfDocument document, int indexPagina, string texto, int TamanhoFonte, bool negrito,
                              int x, int y, AlinhamentoColuna alinhamento)
        {
            var font      = new XFont(FONTE_PADRAO, TamanhoFonte, negrito ? XFontStyle.Bold : XFontStyle.Regular);
            var brush     = XBrushes.Black;
            var pagina    = document.Pages[indexPagina];
            var retangulo = new XRect(x, y, pagina.Width, font.Height);

            using (var gfx = XGraphics.FromPdfPage(pagina))
            {
                var cabecalho = texto;
                gfx.DrawString(cabecalho, font, brush, retangulo, alinhamento == AlinhamentoColuna.Centralizado
                                                                                                                                  ? XStringFormats.TopCenter
                                                                                                                                  : alinhamento == AlinhamentoColuna.Esquerda
                                                                                                                                  ? XStringFormats.TopLeft :
                               XStringFormats.Default);
            }
        }
コード例 #2
0
        private void ImprimirRetangulo(ref PdfDocument document, int indexPagina, int x, int y, Coluna coluna, string texto,
                                       AlinhamentoColuna alinhamento, bool destaque = false, int altura = 15)
        {
            texto = texto.ToUpper();
            var font   = new XFont(FONTE_PADRAO, 7, destaque ? XFontStyle.Bold : XFontStyle.Regular);
            var brush  = XBrushes.Black;
            var pagina = document.Pages[indexPagina];

            using (XGraphics gfx = XGraphics.FromPdfPage(pagina))
            {
                var largura = coluna.TamanhoColuna;

                var retangulo = new XRect(x, y, largura, altura);

                if (alinhamento != AlinhamentoColuna.Centralizado)
                {
                    retangulo.X += 3;
                    retangulo.Y += 3;
                }

                var pen = new XPen(XColors.Black, 0.5);

                gfx.DrawRectangle(pen, destaque ? XBrushes.LightSteelBlue : XBrushes.White, x, y, largura, altura);

                switch (alinhamento)
                {
                case AlinhamentoColuna.Centralizado:
                    gfx.DrawString(texto, font, brush, retangulo, XStringFormats.Center);
                    break;

                case AlinhamentoColuna.Esquerda:
                    gfx.DrawString(texto, font, brush, retangulo, XStringFormats.TopLeft);
                    break;

                default:
                    gfx.DrawString(texto, font, brush, x + largura - texto.Length * 5, y + (altura / 2) + 2);
                    break;
                }
            }
        }