public void Gerar() { if (_FoiGerado) { throw new InvalidOperationException("O Danfe já foi gerado."); } IdentificacaoEmitente.Logo = _LogoObject; var tabela = new TabelaProdutosServicos(ViewModel, EstiloPadrao); while (true) { DanfePagina p = CriarPagina(); tabela.SetPosition(p.RetanguloCorpo.Location); tabela.SetSize(p.RetanguloCorpo.Size); tabela.Draw(p.Gfx); p.Gfx.Stroke(); p.Gfx.Flush(); if (tabela.CompletamenteDesenhada) { break; } } PreencherNumeroFolhas(); _FoiGerado = true; }
private DanfePagina CriarPagina() { DanfePagina p = new DanfePagina(this); Paginas.Add(p); p.DesenharBlocos(Paginas.Count == 1); p.DesenharCreditos(); // Ambiente de homologação // 7. O DANFE emitido para representar NF-e cujo uso foi autorizado em ambiente de // homologação sempre deverá conter a frase “SEM VALOR FISCAL” no quadro “Informações // Complementares” ou em marca d’água destacada. if (ViewModel.TipoAmbiente == 2) { p.DesenharAvisoHomologacao(); } return(p); }