IRONSOFTWAREHOME
USANDO IRONWORD

Tutorial de impressão em C#: Guia passo a passo

Curtis Chau
Curtis Chau
Updated: 8 de maio de 2026

Bem-vindo a este tutorial, onde exploraremos como imprimir documentos do Word usando o Microsoft Interop em um Aplicativo de Console C#. Este guia para iniciantes o guiará pelas etapas para imprimir documentos do Microsoft Word programaticamente.

Pré-requisitos

Antes de mergulhar no código, é essencial ter algumas coisas configuradas:

  • Instalação do Microsoft Word: Certifique-se de ter o Microsoft Word instalado no seu sistema. Caso contrário, acesse o site oficial da Microsoft no seu computador ou a loja de aplicativos para instalá-lo.

  • Configuração do Visual Studio: Você deve ter o Visual Studio instalado com a capacidade de criar um Aplicativo de Console. Se você é um iniciante, considere baixar o Visual Studio Community, que é gratuito e suficiente para nossas necessidades.

  • Um Documento do Word: Tenha um documento do Word de exemplo pronto em sua máquina para fins de teste. Este será o documento que enviaremos para a impressora.

Preparando o ambiente

Criar um Novo Aplicativo de Console

  1. Abra o Visual Studio.
  2. Clique em "Criar um novo projeto."
  3. Procure por "Console App" e selecione o template de C# apropriado.
  4. Dê um nome ao seu projeto (por exemplo, "InteropPrintConsoleTutorial") e escolha um local adequado.

Adicionando Referência Interop

Usar Interop requer uma referência à biblioteca Microsoft Office Interop. Veja como adicioná-la:

  1. No Visual Studio, clique com o botão direito no seu projeto Console na Solution Explorer.
  2. Navegue até Adicionar > Referência.
  3. Na janela do Gerenciador de Referências, vá até a aba COM.
  4. Digite "Microsoft Word" na barra de pesquisa para filtrar a lista.
  5. Nos resultados, selecione "Microsoft Word xx.x Object Library" (onde xx.x denota o número da versão).
  6. Clique no botão OK para adicionar a referência.

Você também pode instalá-la usando o NuGet Package Manager.

Você também pode instalar a biblioteca Microsoft.Office.Interop.Word usando o Gerenciador de Pacotes NuGet.

Verificar Configurações do Aplicativo

Garanta que o framework alvo do seu aplicativo seja compatível com a biblioteca Interop. Você pode verificar isso clicando com o botão direito no seu projeto em Solution Explorer, selecionando Propriedades, e então visualizando o framework alvo na aba Aplicativo. Se enfrentar problemas com a versão da biblioteca Interop, considere baixar o pacote ou assembly necessário ou ajustar a versão do framework alvo.

Com o ambiente configurado, agora você pode prosseguir com o processo de codificação.

Compreendendo o Objeto Documento

O objeto documento está no centro dos serviços Interop quando se lida com documentos Word. Este objeto representa um documento Microsoft Word e fornece todas as suas funcionalidades.

Uma tarefa comum é abrir um documento:

using Word = Microsoft.Office.Interop.Word;

// Object needed to avoid passing specific parameters
object oMissing = Type.Missing;

// File path to the Word document you want to open
object fileName = @"C:\path_to_document\document.docx";

// Create a new instance of the Word application
Word.Application wordApp = new Word.Application();

// Open the document with specified parameters
Word._Document wordDoc = wordApp.Documents.Open(
    ref fileName, ref oMissing, ref oMissing, ref oMissing, ref oMissing, 
    ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, 
    ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, 
    ref oMissing);

Os múltiplos parâmetros com ref oMissing podem parecer intimidador, mas são essenciais para o método Open, que espera vários argumentos, a maioria dos quais são opcionais.

Implementando a Funcionalidade de Impressão

Com nosso ambiente configurado e entendendo o objeto documento, é hora de mergulhar na funcionalidade central de imprimir documentos Word.

Impressão Básica de Documento Word

Para imprimir o documento, você pode usar o seguinte método:

// Method to print the document using default printer settings
private void ButtonPrint_Click(object sender, EventArgs e)
{
    wordDoc.PrintOut(); // Sends the document to the default printer
}

Este método envia o documento para a impressora padrão usando as configurações padrão.

Imprimir Documentos Word com Personalizações

Se quiser introduzir um diálogo de impressão, personalizar configurações de impressora ou até imprimir múltiplas páginas, você precisará de uma abordagem mais detalhada:

// Method to print the document with custom settings
private void ButtonPrintWithSettings_Click(object sender, EventArgs e)
{
    // Number of copies to print
    object copies = "1";

    // Page range to print, e.g., pages 1 to 3
    object pages = "1-3";

    // Print the document with specified copies and page range
    wordDoc.PrintOut(Copies: ref copies, Pages: ref pages);
}

No código-fonte acima, especificamos o intervalo de páginas e o número de cópias, mas as personalizações potenciais são vastas.

Personalizando Configurações de Impressão

A capacidade de modificar configurações de impressão é o que diferencia o controle programático. Seja para ajustar as configurações da impressora, definir uma impressora específica, ou até imprimir silenciosamente o documento, tudo está ao alcance com Interop.

Impressão Silenciosa

A impressão silenciosa é sobre enviar o documento para a impressora sem quaisquer interações do usuário:

// Object to determine whether to print in the background or not
object background = false;

// Print the document silently (no user interactions)
wordDoc.PrintOut(Background: ref background);

Especificando uma Impressora

Para imprimir um documento em uma impressora específica que não seja a padrão:

// Set the active printer to a specified printer by name
wordApp.ActivePrinter = "Printer Name";

// Print the document using the specified printer
wordDoc.PrintOut();

Configurações Avançadas de Impressora

Além de apenas especificar a impressora, pode ser necessário ajustar as configurações da impressora:

// Creates a PrintDialog to allow the user to choose printer settings
PrintDialog printDialog = new PrintDialog();
if (printDialog.ShowDialog() == DialogResult.OK)
{
    // Sets the Word application's active printer to the user's choice
    wordApp.ActivePrinter = printDialog.PrinterSettings.PrinterName;
    
    // Prints the document using user's selected printer settings
    wordDoc.PrintOut();
}

Dessa forma, o usuário pode ajustar manualmente configurações como orientação, impressão duplex, e mais.

Apresentando IronWord

Embora o Microsoft Interop forneça funcionalidades para gerenciar documentos Word, não é tão robusto e eficiente quanto deveria ser para uso comercial sério. Entra em cena IronWord—uma alternativa superior ao Interop para processamento de arquivos DOCX do Word. IronWord permite leitura, escrita e manipulação perfeita de arquivos Excel em C#. Saiba mais sobre como começar com IronWord.

IronXL for .NET: A biblioteca Excel para C#

Conclusão

Neste tutorial, exploramos os passos envolvidos em utilizar o Microsoft Interop para imprimir documentos Word programaticamente em um Aplicativo Console em C#. Vimos como mostrar o diálogo de impressão, definir configurações de impressão personalizadas e controlar vários aspectos da impressão, como escolher uma impressora especificada ou definir um intervalo de páginas. Embora o Interop ofereça capacidades fundamentais, vale a pena notar que existem alternativas potentes como IronWord.

Curtis Chau
Redator Técnico

Curtis Chau é bacharel em Ciência da Computação (Universidade Carleton) e se especializa em desenvolvimento front-end, com experiência em Node.js, TypeScript, JavaScript e React. Apaixonado por criar interfaces de usuário intuitivas e esteticamente agradáveis, Curtis gosta de trabalhar com frameworks modernos e criar manuais bem estruturados e visualmente atraentes.

...
Leia mais

Artigos relacionados

Key in blue circle

Obtenha sua chave de avaliação gratuita de 30 dias instantaneamente.

Your trial license will be sent to your email address

Sem limitações. 100% desbloqueado. Sem cartão de crédito.

bullet_checkedNão é necessário cartão de crédito nem criação de conta.Sem limitações. 100% desbloqueado. Sem cartão de crédito.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Agende sua demonstração ao vivo gratuita.
Booking Badge

Aprovado por milhões de engenheiros em todo o mundo.

Logotipos dos clientes da Iron Software
Agende sua consulta sem compromisso.
Preencha o formulário abaixo ou envie um e-mail para sales@ironsoftware.com
Os seus dados serão sempre mantidos em sigilo.
Aprovado por milhões de engenheiros em todo o mundo.
Logotipos dos clientes da Iron Software
Obtenha sua chave de avaliação gratuita de 30 dias instantaneamente.
Não é necessário cartão de crédito nem criação de conta.