IRONSOFTWAREHOME

Como usar o IronWord no AWS Lambda

Kye Stuart
Kye Stuart
Updated: 4 de junho de 2026

Este artigo fornece um guia completo para configurar uma função AWS Lambda usando o IronWord. Você aprenderá como configurar o IronWord para criar e manipular documentos do Word em um ambiente AWS Lambda.

Instalação

Como este exemplo irá ler/gravar documentos do Word em um bucket do S3, o pacote NuGet AWSSDK.S3 é necessário.

Utilizando o pacote ZIP do IronWord no AWS Lambda

Ao usar o pacote ZIP do IronWord , é importante definir um caminho de implantação temporário, pois o AWS Lambda possui um sistema de arquivos somente leitura, com exceção da pasta /tmp/. Você precisa configurar o IronWord para usar esta pasta para seus arquivos de tempo de execução:

var awsTmpPath = @"/tmp/";
C#

Integrando o IronWord com a AWS

Criar um projeto AWS Lambda

Utilize o Visual Studio para criar um projeto AWS Lambda em contêiner:

  1. Instale o AWS Toolkit para Visual Studio.
  2. Selecione o projeto AWS Lambda (.NET Core - C#)
  3. Selecione o modelo .NET 8 (Imagem de Contêiner) e conclua a configuração.
  4. Selecione a imagem do contêiner como o tipo de implantação.

Adicionar dependências de pacotes

Adicione os pacotes IronWord e AWSSDK.S3 ao seu projeto via NuGet. A biblioteca IronWord funciona perfeitamente no AWS Lambda com a configuração correta. Execute o seguinte comando para instalar o IronWord em seu projeto AWS sem problemas:

PM > Install-Package IronWord

Atualize o Dockerfile do seu projeto para usar a imagem base do Lambda .NET 8 e copie os artefatos de compilação:

DE public.ecr.aws/lambda/dotnet:8

EXECUTE dnf update -y

DIRETÓRIO DE TRABALHO /var/tarefa

COPIAR "bin/Release/lambda-publish".
Text

Modifique o código do manipulador de funções.

Abaixo está um exemplo de função Lambda que cria um documento Word simples, salva-o como um arquivo .docx e o carrega para um bucket S3.

using Amazon.Lambda.Core;
using Amazon.S3;
using Amazon.S3.Model;
using IronWord;
using IronWord.Models;
using System.Text;

// Assembly attribute to enable the Lambda function's JSON input to be converted into a .NET class.
[assembly: LambdaSerializer(typeof(Amazon.Lambda.Serialization.SystemTextJson.DefaultLambdaJsonSerializer))]

namespace IronWordAwsLambda;

public class Function
{
    private static readonly IAmazonS3 _s3Client = new AmazonS3Client(Amazon.RegionEndpoint.APSoutheast1);

    public async Task FunctionHandler(ILambdaContext context)
    {
        var awsTmpPath = @"/tmp/";
        License.LicenseKey = "YOUR-LICENSE-KEY"; // Replace if you have one

        string filename = Guid.NewGuid() + ".docx";
        string localPath = Path.Combine(awsTmpPath, filename);
        string bucketName = "your-s3-bucket-name";
        string objectKey = $"IronWordAwsLambda/{filename}";

        try
        {
            // Create Word Document
            var doc = new WordDocument();
            Paragraph paragraph = new Paragraph(new TextContent("Hello from IronWord on AWS Lambda!"));
            doc.AddParagraph(paragraph);
            doc.SaveAs(localPath);

            context.Logger.LogLine("Word document created.");

            // Upload to S3
            byte[] fileBytes = await File.ReadAllBytesAsync(localPath);
            await UploadToS3Async(bucketName, objectKey, fileBytes);

            context.Logger.LogLine($"Document uploaded to S3: {bucketName}/{objectKey}");
        }
        catch (Exception ex)
        {
            context.Logger.LogLine($"[ERROR] {ex.Message}");
        }
    }

    private async Task UploadToS3Async(string bucketName, string objectKey, byte[] fileBytes)
    {
        using var stream = new MemoryStream(fileBytes);
        var request = new PutObjectRequest
        {
            BucketName = bucketName,
            Key = objectKey,
            InputStream = stream,
            ContentType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"
        };
        await _s3Client.PutObjectAsync(request);
    }
}

Aumentar a memória e o tempo limite

Como o processamento de documentos pode consumir muita memória, aumente a memória da sua função Lambda para pelo menos 512 MB e o tempo limite para 300 segundos no arquivo aws-lambda-tools-defaults.json:

{
  "function-memory-size": 512,
  "function-timeout": 300
}
JSON

Se você se deparar com erros como "Runtime exited with error: signal: killed", aumente a memória ou otimize seu código.

Publicar

Para publicar sua função Lambda:

  • Clique com o botão direito do mouse no seu projeto no Visual Studio.
  • Selecione Publicar no AWS Lambda... Siga o assistente e configure as definições conforme necessário.

Experimente!

Invoque a função Lambda através do Console do AWS Lambda ou do Visual Studio. Após a execução, verifique seu bucket S3 para encontrar o documento do Word recém-criado.

Perguntas frequentes

O que é o IronWord e como ele pode aprimorar o processamento de documentos do Word no AWS Lambda?

O IronWord é uma ferramenta poderosa para processar documentos do Word e, quando integrado ao AWS Lambda, oferece gerenciamento de documentos escalável e eficiente, permitindo automatizar e otimizar tarefas relacionadas a documentos do Word.

Como faço para integrar o IronWord com o AWS Lambda?

Para integrar o IronWord com o AWS Lambda, você precisa configurar o pacote IronWord em seu ambiente AWS Lambda, configurar as permissões necessárias e implantar o código da sua função que utiliza os recursos do IronWord para processamento de documentos.

Quais são os benefícios de usar o IronWord no AWS Lambda?

Utilizar o IronWord no AWS Lambda permite aproveitar a arquitetura sem servidor para o processamento de documentos do Word, proporcionando escalabilidade, custo-benefício e gerenciamento de infraestrutura reduzido.

Posso automatizar tarefas em documentos do Word usando o IronWord no AWS Lambda?

Sim, você pode automatizar várias tarefas em documentos do Word, como criação, modificação e conversão, usando o IronWord em funções do AWS Lambda.

É possível processar documentos Word extensos com o IronWord no AWS Lambda?

O IronWord foi projetado para lidar com eficiência com documentos Word grandes e, quando usado com o AWS Lambda, pode processar documentos de forma escalável, dependendo da configuração do Lambda.

Que tipo de operações em documentos do Word o IronWord pode executar no AWS Lambda?

O IronWord pode executar diversas operações em documentos do Word, incluindo edição, formatação, extração de texto e conversão de documentos para diferentes formatos, tudo dentro de um ambiente AWS Lambda.

Há algum pré-requisito para implantar o IronWord no AWS Lambda?

Antes de implantar o IronWord no AWS Lambda, certifique-se de ter uma conta da AWS, estar familiarizado com a configuração do AWS Lambda e ter configurado todas as funções e permissões do IAM necessárias.

Como o IronWord lida com atualizações e manutenção no AWS Lambda?

O IronWord é atualizado regularmente para garantir compatibilidade e melhorias de desempenho. Em um ambiente AWS Lambda, você pode atualizar facilmente seu pacote de implantação com a versão mais recente do IronWord para manter a funcionalidade ideal.

Que tipo de suporte está disponível para usar o IronWord com o AWS Lambda?

A Iron Software fornece documentação e suporte para auxiliar os usuários na integração e utilização do IronWord no AWS Lambda, garantindo que você possa aproveitar efetivamente seus recursos para suas necessidades de processamento de documentos.

What should I do if I encounter errors while using IronWord on AWS Lambda?

If you encounter errors like 'Runtime exited with error: signal: killed,' try increasing the memory allocation or optimizing your code for better performance.

Kye Stuart
Redator Técnico

Kye Stuart une sua paixão por programação e sua habilidade de escrita na Iron Software. Formado em implantação de software pela Yoobee College, ele agora transforma conceitos tecnológicos complexos em conteúdo educacional claro. Kye valoriza o aprendizado contínuo e abraça novos desafios tecnológicos.

...
Leia mais

Pronto para começar?

Nuget Downloads 56,401Versão:2026.9recém-lançado

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.
Biblioteca NuGet C# para PDF
Instalar com NuGet

Versão: 2026.9

PM > Install-Package IronWord
nuget.org/packages/IronWord/
  1. No Solution Explorer, clique com o botão direito do mouse em Referências e selecione Gerenciar Pacotes NuGet.
  2. Selecione Procurar e pesquise "IronWord".
  3. Selecione o pacote e instale.
DLL de PDF em C#
Baixar DLL

Versão: 2026.9

  1. Baixe e descompacte o IronWord em um local como ~/Libs dentro do diretório da sua solução.
  2. No Solution Explorer do Visual Studio, clique com o botão direito do mouse em Referências. Selecione Procurar e digite "IronWord.dll".

Licenças a partir de US$ 749

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.