# Visão geral da instalação
Guia completo para instalar e configurar o IronPDF em todas as plataformas.
```cs
:title=Get started making PDFs now!
IronPdf.ChromePdfRenderer
.StaticRenderHtmlAsPdf("<p>Hello World</p>")
.SaveAs("pixelperfect.pdf");
```
<hr />
## 1. Requisitos da plataforma
<table class="classic-table hover-cell">
<thead>
<tr>
<th><span>Plataforma</span></th>
<th><span>Versão .NET</span></th>
<th><span>Hardware</span></th>
<th><span>Requisitos adicionais, compatibilidade</span></th>
</tr>
</thead>
<tbody>
<tr>
<td>
<div class="d-flex align-items-center justify-content-center">
<img src="/static-assets/svgs/logo-table_windows.svg" width="64" height="64" alt="" />
</div>
<a href="/get-started/windows/">Windows</a>
</td>
<td rowspan="3"><span>.NET 10, 9, 8, 7, 6, 5, .NET Core, .NET Standard e .NET Framework.</span></td>
<td rowspan="3">
<ul>
<li>Requisitos mínimos: 1 núcleo e 1,75 GB de RAM</li>
<li>Recomendado: 2 núcleos e 8 GB de RAM ou superior</li>
</ul>
</td>
<td>
<ul>
<li>Windows 10, 11 e Windows Server</li>
<li>Visual C++ Redistributable (x86 e x64)</li>
</ul>
</td>
</tr>
<tr>
<td>
<div class="d-flex align-items-center justify-content-center">
<img src="/static-assets/svgs/logo-table_linux.svg" width="64" height="64" alt="" />
</div>
<a href="/get-started/linux/">Linux</a>
</td>
<td>
<ul>
<li>Sistemas Operacionais Linux de 64 bits: Ubuntu 22, Ubuntu 20, Ubuntu 18, Ubuntu 16, Debian 10-11, CentOS 8, Fedora Linux 33, Amazon, AWS, Linux 2</li>
<li>Subprocesso IronCef</li>
<li>Dependências do Chrome</li>
</ul>
</td>
</tr>
<tr>
<td>
<div class="d-flex align-items-center justify-content-center">
<img src="/static-assets/svgs/logo-table_mac.svg" width="64" height="64" alt="" />
</div>
<a href="/get-started/macos/">macOS</a>
</td>
<td><span>Todas as versões do macOS desde 2020</span></td>
</tr>
</tbody>
</table>
<hr />
## 2. Métodos de Instalação
Existem duas maneiras de instalar o IronPDF: modo nativo e mecanismo remoto. Por padrão, o modo nativo é recomendado. Para implantação em servidores de produção usando Docker/Kubernetes, utilize o modo de mecanismo remoto.
<div class="row install-modes g-3">
<div class="col-6">
<div class="install-mode">
<div class="install-mode__header">
<span class="install-mode__title">Modo de mecanismo remoto:</span> <span class="install-mode__subtitle">Processamento separado de PDFs via protocolo gRPC.</span>
</div>
<div class="install-mode__body">
<ul>
<li><strong>Ideal para:</strong> Implantações em nuvem e conteinerizadas, suporte a sistemas operacionais legados.</li>
<li><strong>Pacote:</strong> IronPdf.Slim</li>
<li><strong>Tamanho:</strong> Mais leve, ocupando alguns MB. </li>
<li><strong>Requisitos:</strong> Requer a configuração da conexão com o host.</li>
</ul>
</div>
</div>
</div>
<div class="col-6">
<div class="install-mode install-mode--recommended">
<div class="install-mode__header">
<span class="install-mode__title">Modo nativo (padrão)</span>
<span class="install-mode__subtitle">Tudo é executado localmente em sua aplicação.</span>
<div class="recommended-float">
<img src="/static-assets/svgs/float-recommended.svg" width="151" height="37.8" alt="" />
</div>
</div>
<div class="install-mode__body">
<ul>
<li><strong>Ideal para:</strong> Implementações modernas em Windows, macOS e Linux.</li>
<li><strong>Pacote:</strong> Pacote completo do IronPDF NuGet.</li>
<li><strong>Tamanho:</strong> Arquivo de tamanho considerável (centenas de MB), incluindo os binários do Chrome e do Pdfium.</li>
<li><strong>Requisitos:</strong> Funciona em sistemas operacionais modernos.</li>
</ul>
</div>
</div>
</div>
</div>
<hr />
## 3. Opções de Instalação
A instalação da biblioteca C# PDF leva menos de 5 minutos. Obtenha-o gratuitamente via NuGet ou faça o download direto e comece a usá-lo no Visual Studio imediatamente.
<div class="installation-options__container" data-active-tab="1">
<div class="installation-options__tabs">
<div class="installation-options__tab" data-tab="1">
<span>Pacote NuGet</span>
</div>
<div class="installation-options__tab" data-tab="2">
<span>Download do manual</span>
</div>
<div class="installation-options__tab" data-tab="3">
<span>Motor IronPDF Remoto</span>
</div>
</div>
<div class="installation-options__info" data-tab="1"></div>
<div class="installation-options__info" data-tab="2"></div>
<div class="installation-options__info" data-tab="3"></div>
</div>
<div id="nuget-package-start"></div>
Vá para a [biblioteca IronPDF NuGet](https://www.nuget.org/packages/IronPdf/) (ou Console do Gerenciador de Pacotes no Visual Studio)
1. No Explorador de Soluções, clique com o botão direito do mouse em Referências.
2. Selecione 'Gerenciar Pacotes NuGet' > 'Procurar' > Pesquisar IronPDF
3. Selecione o pacote e instale.
```shell
:ProductInstall
```
<p class="related-link">**RELACIONADO:** <a href="/get-started/advanced-installation-nuget/">Mais pacotes NuGet avançados do IronPDF<i class="fa-solid fa-arrow-right"></i></a></p>
<div id="nuget-package-end"></div>
<div id="manual-download-start"></div>
<ol>
<li>Baixe o pacote DLL do IronPDF para sua plataforma: Windows, Linux, macOS</li>
<li>Descompacte o arquivo ZIP correspondente ao seu sistema operacional em um local dentro do diretório da sua solução.</li>
<li>No Solution Explorer do Visual Studio, clique com o botão direito do mouse em 'Dependências'.</li>
<li>'Adicionar Referência de Projeto' > Selecione 'Procurar' para incluir todas as DLLs extraídas do arquivo zip.</li>
</ol>
<div id="manual-download-end"></div>
<div id="remote-ironpdfengine-start"></div>
[[i:(Observação: Cada versão do IronPDF requer a versão correspondente do IronPDFEngine. Não há suporte entre versões. Por exemplo, o IronPDF 2024.2.2 deve usar o IronPDFEngine 2024.2.2.
)]]
Instale o IronPDF usando o NuGet.
```shell
:InstallCmd Install-Package IronPdf.Slim
```
<div id="remote-ironpdfengine-end"></div>
## 4. Configurações adicionais
<div class="installation-options__container" data-active-tab="1">
<div class="installation-options__tabs">
<div class="installation-options__tab" data-tab="1">
<span>Gerenciar licença</span>
</div>
<div class="installation-options__tab" data-tab="2">
<span>Path & Permission</span>
</div>
<div class="installation-options__tab" data-tab="3">
<span>Motor remoto</span>
</div>
</div>
<div class="additional-configurations__info" data-tab="1"></div>
<div class="additional-configurations__info" data-tab="2"></div>
<div class="additional-configurations__info" data-tab="3"></div>
</div>
<div id="manage-license-start"></div>
Após adquirir ou se inscrever para um período de avaliação de 30 dias do IronPDF, localize a chave de licença enviada para o seu e-mail.
Adicione sua chave de licença no início da sua inscrição.
```csharp
IronPdf.License.LicenseKey = "KEY";
```
Verifique o status da licença.
```csharp
bool valid = IronPdf.License.IsLicensed;
```
<div id="manage-license-end"></div>
<div id="path-permission-start"></div>
Defina a propriedade TempFolderPath do objeto IronPdf.Installation.
```csharp
IronPdf.Installation.TempFolderPath = @"C:\My\Safe\Path";
```
Certifique-se de limpar todas as pastas temporárias e de cache em seus servidores de desenvolvimento e, em seguida, reimplemente uma versão limpa do seu aplicativo após atualizar o caminho.
Definindo a variável de ambiente da pasta temporária no escopo do aplicativo.
```csharp
using IronPdf;
// Adjusts System.IO.Path.GetTempFileName and System.IO.Path.GetTempPath behavior for the application
var MyTempPath = @"C:\Safe\Path\";
Environment.SetEnvironmentVariable("TEMP", MyTempPath, EnvironmentVariableTarget.Process);
Environment.SetEnvironmentVariable("TMP", MyTempPath, EnvironmentVariableTarget.Process);
// Set IronPDF Temp Path
IronPdf.Installation.TempFolderPath = System.IO.Path.Combine(MyTempPath, "IronPdf");
// Your PDF Generation and editing code
var Renderer = new IronPdf.ChromePdfRenderer();
using var Doc = Renderer.RenderHtmlAsPdf("<h1>Html with CSS and Images</h1>");
Doc.SaveAs("example.pdf");
```
Em um servidor com segurança reforçada, conceda ao usuário do IIS (IUSER) permissões de leitura e gravação para a pasta de instalação, bem como para as pastas do Windows e Temp.
<div id="path-permission-end"></div>
<div id="remote-engine-start"></div>
**[IronPDFEngine remoto]** Após instalar o pacote IronPdf.Slim, conecte-se ao contêiner do mecanismo e configure a conexão na inicialização do aplicativo ou antes de chamar qualquer método do IronPDF.
Supondo que o IronPDFEngine esteja sendo executado remotamente em 123.456.7.8:33350:
```csharp
Installation.ConnectToIronPdfHost(
IronPdf.GrpcLayer.IronPdfConnectionConfiguration.RemoteServer("123.456.7.8:33350")
);
```
<p class="related-link">**RELACIONADO:** <a href="/get-started/ironpdfengine/#ironpdfengine-limitations">Limitações do IronPDFEngine<i class="fa-solid fa-arrow-right"></i></a></p>
**[Linux]** Ative o IronPDF para instalar automaticamente todas as dependências necessárias do Linux. A primeira conversão de HTML para PDF pode demorar mais do que o normal.
```csharp
Installation.LinuxAndDockerDependenciesAutoConfig = true;
```
**[Docker]** Pré-inicializar o mecanismo do Chrome para pré-carregar os pré-requisitos e acelerar o primeiro uso no Docker.
```csharp
IronPdf.Installation.Initialize();
```
<p class="related-link">**RELACIONADO:** <a href="/get-started/linux/">Compatibilidade e configuração do IronPDF com Docker no Linux<i class="fa-solid fa-arrow-right"></i></a></p>
<div id="remote-engine-end"></div>
<hr />
## 5. Cenários de Implantação
<div class="row deployment-scenarios g-4">
<div class="col-6">
<div class="deployment-card">
<div class="deployment-card__icon">
<img src="/static-assets/svgs/logo-azure.svg" width="64" height="64" alt="" />
</div>
<div class="deployment-card__info">
<p class="deployment-card__title">Execute e implemente o IronPDF .NET em</p>
<a href="/get-started/azure/" class="deployment-card__link">Função do Azure <i class="fa-solid fa-arrow-right"></i></a>
</div>
</div>
</div>
<div class="col-6">
<div class="deployment-card">
<div class="deployment-card__icon">
<img src="/static-assets/svgs/logo-aws.svg" width="64" height="64" alt="" />
</div>
<div class="deployment-card__info">
<p class="deployment-card__title">Execute e implemente o IronPDF .NET em</p>
<a href="/get-started/aws/" class="deployment-card__link">AWS (EC2, Lambda) <i class="fa-solid fa-arrow-right"></i></a>
</div>
</div>
</div>
<div class="col-6">
<div class="deployment-card">
<div class="deployment-card__icon">
<img src="/static-assets/svgs/logo-linux.svg" width="64" height="64" alt="" />
</div>
<div class="deployment-card__info">
<p class="deployment-card__title">Execute o IronPDF em</p>
<a href="/get-started/ironpdf-docker/" class="deployment-card__link">Contêiner Docker Linux <i class="fa-solid fa-arrow-right"></i></a>
</div>
</div>
</div>
<div class="col-6">
<div class="deployment-card">
<div class="deployment-card__icon">
<img src="/static-assets/svgs/logo-remote.svg" width="64" height="64" alt="" />
</div>
<div class="deployment-card__info">
<p class="deployment-card__title">Execute o IronPDF como um</p>
<a href="/get-started/ironpdfengine-docker/" class="deployment-card__link">Contêiner remoto <i class="fa-solid fa-arrow-right"></i></a>
</div>
</div>
</div>
</div>
<hr />
## Próximos passos
<div class="row g-3">
<div class="col-12 col-md-6 col-xxl-4">
<a href="/tutorials/html-to-pdf/" class="next-step__card">
<div class="next-step__card-info">
<div class="next-step__card-icon">
<i class="fa-duotone fa-solid fa-graduation-cap"></i>
</div>
<span class="next-step__card-text">Guia completo de HTML para PDF em C#</span>
</div>
<p class="next-step__card-cta">Veja o tutorial<i class="fa-solid fa-arrow-right"></i></p>
</a>
</div>
<div class="col-12 col-md-6 col-xxl-4">
<a href="/product-updates/changelog/" class="next-step__card">
<div class="next-step__card-info">
<div class="next-step__card-icon">
<i class="fa-solid fa-clock-rotate-left"></i>
</div>
<span class="next-step__card-text">Registro de alterações: atualizações, marcos importantes, roteiro de desenvolvimento</span>
</div>
<p class="next-step__card-cta">Veja as atualizações do produto<i class="fa-solid fa-arrow-right"></i></p>
</a>
</div>
<div class="col-12 col-md-6 col-xxl-4">
<a href="/troubleshooting/engineering-request-pdf/" class="next-step__card">
<div class="next-step__card-info">
<div class="next-step__card-icon">
<i class="fa-duotone fa-solid fa-wrench"></i>
</div>
<span class="next-step__card-text">Solicitar suporte de engenharia</span>
</div>
<p class="next-step__card-cta">Consulte a seção Solução de Problemas.<i class="fa-solid fa-arrow-right"></i></p>
</a>
</div>
</div>
<hr />
<div class="tutorials-navigation">
<a href="/get-started/quickstart/" class="tutorials-navigation__cta tutorials-navigation__cta--left"><i class="fa-solid fa-chevron-left"></i>Quickstart Guide</a>
<a href="/get-started/ironpdfengine/" class="tutorials-navigation__cta tutorials-navigation__cta--right">Native vs Remote Engine<i class="fa-solid fa-chevron-right"></i></a>
</div>
Existem duas maneiras de instalar o IronPDF: modo nativo e mecanismo remoto. Por padrão, o modo nativo é recomendado. Para implantação em servidores de produção usando Docker/Kubernetes, utilize o modo de mecanismo remoto.
Modo de mecanismo remoto:Processamento separado de PDFs via protocolo gRPC.
Ideal para: Implantações em nuvem e conteinerizadas, suporte a sistemas operacionais legados.
Pacote: IronPdf.Slim
Tamanho: Mais leve, ocupando alguns MB.
Requisitos: Requer a configuração da conexão com o host.
Modo nativo (padrão)Tudo é executado localmente em sua aplicação.
Ideal para: Implementações modernas em Windows, macOS e Linux.
Pacote: Pacote completo do IronPDF NuGet.
Tamanho: Arquivo de tamanho considerável (centenas de MB), incluindo os binários do Chrome e do Pdfium.
Requisitos: Funciona em sistemas operacionais modernos.
3. Opções de Instalação
A instalação da biblioteca C# PDF leva menos de 5 minutos. Obtenha-o gratuitamente via NuGet ou faça o download direto e comece a usá-lo no Visual Studio imediatamente.
Baixe o pacote DLL do IronPDF para sua plataforma: Windows, Linux, macOS
Descompacte o arquivo ZIP correspondente ao seu sistema operacional em um local dentro do diretório da sua solução.
No Solution Explorer do Visual Studio, clique com o botão direito do mouse em 'Dependências'.
'Adicionar Referência de Projeto' > Selecione 'Procurar' para incluir todas as DLLs extraídas do arquivo zip.
Observe: Observação: Cada versão do IronPDF requer a versão correspondente do IronPDFEngine. Não há suporte entre versões. Por exemplo, o IronPDF 2024.2.2 deve usar o IronPDFEngine 2024.2.2.
Instale o IronPDF usando o NuGet.
PM > Install-Package IronPdf.Slim
Install-Package IronPdf.Slim
4. Configurações adicionais
Gerenciar licença
Path & Permission
Motor remoto
Após adquirir ou se inscrever para um período de avaliação de 30 dias do IronPDF, localize a chave de licença enviada para o seu e-mail.
Adicione sua chave de licença no início da sua inscrição.
Certifique-se de limpar todas as pastas temporárias e de cache em seus servidores de desenvolvimento e, em seguida, reimplemente uma versão limpa do seu aplicativo após atualizar o caminho.
Definindo a variável de ambiente da pasta temporária no escopo do aplicativo.
using IronPdf;// Adjusts System.IO.Path.GetTempFileName and System.IO.Path.GetTempPath behavior for the applicationvarMyTempPath = @"C:\Safe\Path\";Environment.SetEnvironmentVariable("TEMP", MyTempPath, EnvironmentVariableTarget.Process);Environment.SetEnvironmentVariable("TMP", MyTempPath, EnvironmentVariableTarget.Process);// Set IronPDF Temp PathIronPdf.Installation.TempFolderPath = System.IO.Path.Combine(MyTempPath, "IronPdf");// Your PDF Generation and editing codevarRenderer = new IronPdf.ChromePdfRenderer();using varDoc = Renderer.RenderHtmlAsPdf("<h1>Html with CSS and Images</h1>");Doc.SaveAs("example.pdf");
using IronPdf;
// Adjusts System.IO.Path.GetTempFileName and System.IO.Path.GetTempPath behavior for the application
var MyTempPath = @"C:\Safe\Path\";
Environment.SetEnvironmentVariable("TEMP", MyTempPath, EnvironmentVariableTarget.Process);
Environment.SetEnvironmentVariable("TMP", MyTempPath, EnvironmentVariableTarget.Process);
// Set IronPDF Temp Path
IronPdf.Installation.TempFolderPath = System.IO.Path.Combine(MyTempPath, "IronPdf");
// Your PDF Generation and editing code
var Renderer = new IronPdf.ChromePdfRenderer();
using var Doc = Renderer.RenderHtmlAsPdf("<h1>Html with CSS and Images</h1>");
Doc.SaveAs("example.pdf");
ImportsIronPdf' Adjusts System.IO.Path.GetTempFileName and System.IO.Path.GetTempPath behavior for the applicationDimMyTempPathAsString = "C:\Safe\Path\"Environment.SetEnvironmentVariable("TEMP", MyTempPath, EnvironmentVariableTarget.Process)Environment.SetEnvironmentVariable("TMP", MyTempPath, EnvironmentVariableTarget.Process)' Set IronPDF Temp PathIronPdf.Installation.TempFolderPath = System.IO.Path.Combine(MyTempPath, "IronPdf")' Your PDF Generation and editing codeDimRendererAs New IronPdf.ChromePdfRenderer()UsingDoc = Renderer.RenderHtmlAsPdf("<h1>Html with CSS and Images</h1>")Doc.SaveAs("example.pdf")EndUsing
Imports IronPdf
' Adjusts System.IO.Path.GetTempFileName and System.IO.Path.GetTempPath behavior for the application
Dim MyTempPath As String = "C:\Safe\Path\"
Environment.SetEnvironmentVariable("TEMP", MyTempPath, EnvironmentVariableTarget.Process)
Environment.SetEnvironmentVariable("TMP", MyTempPath, EnvironmentVariableTarget.Process)
' Set IronPDF Temp Path
IronPdf.Installation.TempFolderPath = System.IO.Path.Combine(MyTempPath, "IronPdf")
' Your PDF Generation and editing code
Dim Renderer As New IronPdf.ChromePdfRenderer()
Using Doc = Renderer.RenderHtmlAsPdf("<h1>Html with CSS and Images</h1>")
Doc.SaveAs("example.pdf")
End Using
Em um servidor com segurança reforçada, conceda ao usuário do IIS (IUSER) permissões de leitura e gravação para a pasta de instalação, bem como para as pastas do Windows e Temp.
[IronPDFEngine remoto] Após instalar o pacote IronPdf.Slim, conecte-se ao contêiner do mecanismo e configure a conexão na inicialização do aplicativo ou antes de chamar qualquer método do IronPDF.
Supondo que o IronPDFEngine esteja sendo executado remotamente em 123.456.7.8:33350:
[Linux] Ative o IronPDF para instalar automaticamente todas as dependências necessárias do Linux. A primeira conversão de HTML para PDF pode demorar mais do que o normal.
Como posso configurar o IronPDFEngine para geração remota de PDFs?
Para configurar o IronPDFEngine para geração remota de PDFs, instale o pacote IronPdf.Slim do NuGet e configure as definições de conexão usando a classe IronPDFConnectionConfiguration . Essa configuração permite que você conecte seu aplicativo à instância do IronPDFEngine remotamente.
Quais são os principais benefícios de usar o IronPDFEngine com minha aplicação?
Utilizar o IronPDFEngine com sua aplicação permite a execução remota de tarefas em PDF, ajudando a evitar problemas de compatibilidade específicos da plataforma, especialmente em sistemas mais antigos e plataformas móveis. Também elimina a necessidade do runtime do .NET durante a execução.
Por que eu optaria por usar o IronPDFEngine em vez da biblioteca PDF nativa?
Você pode optar pelo IronPDFEngine para executar remotamente funções de PDF que exigem alto desempenho, reduzindo problemas de compatibilidade com diferentes sistemas operacionais e melhorando o desempenho ao utilizar um renderizador idêntico ao do Chrome para conversão de HTML em PDF.
O IronPDFEngine suporta escalonamento horizontal?
Não, o IronPDFEngine atualmente não suporta escalonamento horizontal, o que significa que não pode ser balanceado em várias instâncias devido à forma como os binários de arquivos PDF são gerenciados na memória do servidor.
O IronPDFEngine pode ser executado em diferentes sistemas operacionais?
O IronPDFEngine foi projetado para ser executado em sistemas Linux usando contêineres Docker. No entanto, os binários são específicos da plataforma, portanto, você precisa garantir que está usando a versão correta para o seu sistema operacional.
O que devo fazer se meus PDFs gerados estiverem diferentes ao usar o IronPDFEngine?
Os resultados em PDF podem variar ligeiramente devido a diferentes comportamentos do sistema operacional. Para minimizar essas diferenças, certifique-se de estar usando a imagem Docker correta e verifique se há alguma configuração específica do sistema operacional que possa afetar a renderização.
Como posso garantir que meu aplicativo esteja usando a versão correta do IronPDFEngine?
Para garantir a compatibilidade, cada versão do IronPDF requer uma versão correspondente do IronPDFEngine. Certifique-se de atualizar ambos os componentes simultaneamente para evitar problemas de compatibilidade entre versões.
Quais são as limitações ao usar o IronPDFEngine no Windows?
Ao usar o IronPDFEngine no Windows, você precisa de contêineres Linux para Docker e deve garantir que a porta do servidor esteja acessível. Os binários são específicos da plataforma e a migração para contêineres Linux é necessária.
Como configuro o IronPDF para conectar-se a um servidor IronPDFEngine remoto?
Para configurar o IronPDF para um servidor remoto, use Installation.ConnectTo IronPDFHost com o método IronPdf.GrpcLayer.IronPDFConnectionConfiguration.RemoteServer , especificando o endereço IP e a porta do servidor.
Qual pacote devo usar para minimizar o tamanho do aplicativo ao usar o IronPDFEngine?
Você deve usar o pacote IronPdf.Slim do NuGet, pois ele inclui apenas os componentes necessários para executar o IronPDF com o IronPDFEngine, reduzindo assim o tamanho do aplicativo.
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.