Integrando SDKs de Visualizador de Documentos com Armazenamento em Nuvem e Plataformas de Colaboração
← Back to Blog8 min read

Integrando SDKs de Visualizador de Documentos com Armazenamento em Nuvem e Plataformas de Colaboração

Integração de SDKs de visualizador de documentos com armazenamento em nuvem e plataformas de colaboração
Integração de SDKs de visualizador de documentos com armazenamento em nuvem e plataformas de colaboração
Integrar um SDK de visualizador de documentos com armazenamento em nuvem e plataformas de colaboração permite oferecer experiências de documentos contínuas, seguras e pesquisáveis diretamente da sua aplicação .NET. Com Doconut—um visualizador universal de documentos para back‑ends .NET—você pode renderizar PDFs, arquivos Office, desenhos CAD e imagens nativamente, adicionar busca baseada em OCR, habilitar anotações em tempo real e controlar a impressão, tudo mantendo os dados dentro do seu ambiente de nuvem escolhido ou on‑premise. Este guia mostra a desenvolvedores seniores e arquitetos de software como conectar o Doconut ao Azure Blob, Amazon S3 ou Google Cloud Storage, e como expor o visualizador através de portais colaborativos como Microsoft Teams, SharePoint ou espaços de trabalho personalizados baseados em React.


Por que a Visualização de Documentos Nativa da Nuvem é Importante para Aplicações .NET Modernas

Consistência multiplataforma com um único núcleo .NET

As empresas estão abandonando ferramentas de documentos apenas para desktop e adotando experiências web‑first que rodam no Windows. O mecanismo de renderização server‑side do Doconut funciona em .NET 6 e posteriores, garantindo a mesma saída pixel‑perfect independentemente do sistema operacional subjacente. Como o visualizador trabalha com streams, você pode obter um arquivo de qualquer bucket na nuvem, alimentá‑lo diretamente ao componente Doconut e devolver páginas renderizadas ou miniaturas ao cliente sem nunca gravar o arquivo em disco.

Redução de latência e largura de banda

Quando um documento está no Azure Blob Storage, baixar o arquivo completo para o cliente apenas para visualizar a primeira página gera latência desnecessária. O Doconut suporta geração de miniaturas sob demanda, permitindo solicitar uma pré‑visualização de baixa resolução primeiro e buscar a renderização da página completa somente quando o usuário rolar. Esse padrão é especialmente valioso para grandes desenhos CAD (DWG, DXF) que podem ter centenas de megabytes.

Processamento com foco em segurança

Todo o processamento pesado permanece no servidor. Ao usar os recursos de processamento server‑side do Doconut, você mantém PDFs confidenciais, contratos legais ou registros médicos dentro da sua VNet privada ou atrás de um firewall corporativo. Nenhum SaaS de terceiros é chamado, e o visualizador nunca transmite bytes brutos para um motor no navegador—apenas blocos de imagem ou trechos HTML que você gera nos bastidores.


Conectando o Doconut a Serviços Populares de Armazenamento em Nuvem

Abordagem geral de integração

  1. Obtenha o stream do documento – Use o SDK do provedor de nuvem escolhido (Azure Blob, Amazon S3, Google Cloud Storage) para baixar o arquivo em um objeto Stream.
  2. Passe o stream ao Doconut – O visualizador Doconut aceita um stream junto com opções de renderização opcionais. Isso elimina a necessidade de arquivos temporários no servidor web.
  3. Gere um token do visualizador – O Doconut devolve um token que identifica de forma única o documento aberto para a sessão atual. O token pode ser retornado ao front‑end como JSON e usado em solicitações subsequentes de renderização de página ou anotação.
  4. Renderize páginas sob demanda – O front‑end chama o endpoint do Doconut com o token e o número da página desejada; o Doconut devolve uma imagem ou fragmento HTML.

Como o fluxo depende apenas de streams, trocar o código do Azure pelo Amazon S3 ou Google Cloud Storage requer apenas uma alteração na chamada do SDK de nuvem que cria o stream; o restante do pipeline Doconut permanece idêntico.

Tratamento de armazenamento multi‑tenant

Em um DMS SaaS, cada tenant pode ter um bucket ou prefixo separado. Como o Doconut trabalha com streams, você pode resolver o bucket correto em tempo de execução, abrir o documento e manter o token limitado às reivindicações do usuário atual. O cache interno do Doconut (IDistributedCache) pode ser configurado para usar Redis ou Azure Cache for Redis, garantindo que solicitações repetidas da mesma página atinjam a memória em vez de re‑renderizar.


Habilitando Anotação em Tempo Real e OCR em Fluxos de Trabalho Colaborativos

Plugin de anotação: transformando um visualizador estático em um hub de revisão

Doconut inclui um Plugin de Anotação que permite aos usuários destacar texto, adicionar notas adesivas ou desenhar formas à mão livre. Após abrir um documento, você obtém um gerenciador de anotações do visualizador, adiciona ou modifica objetos de anotação e persiste o estado da anotação como XML. Armazenar o XML ao lado do registro do documento habilita históricos de revisão versionados, e carregar o XML em aberturas subsequentes restaura o estado visual exato.

Busca alimentada por OCR para PDFs escaneados

Contratos, recibos ou imagens médicas escaneados geralmente chegam como PDFs apenas de imagem. O Search Plugin do Doconut executa OCR automaticamente no servidor quando habilitado na configuração do visualizador. O motor de OCR reside dentro da pilha server‑side, de modo que o texto extraído nunca sai do seu ambiente protegido. Quando o OCR termina, você pode chamar a API de busca para obter números de página e retângulos delimitadores correspondentes, que a UI pode destacar. Como o OCR roda no servidor, você também pode indexar o texto extraído no Azure Cognitive Search, Elasticsearch ou qualquer outro serviço de busca para oferecer pesquisa full‑text instantânea em todo o repositório.

Colaboração através de tokens compartilhados

Em integrações com Teams ou SharePoint, costuma‑se gerar um token de curta duração que codifica o ID do documento, permissões do usuário e um timestamp. A string de token retornada pela chamada OpenDocument do Doconut pode ser encapsulada em um JWT ou armazenada em uma entrada de cache. Quando outro usuário clica no link compartilhado, o mesmo token é usado para re‑hidratar o visualizador, preservando anotações e camadas de OCR para todos os envolvidos.


Conversão Segura Server‑Side e Impressão Controlada com Doconut

Muitas empresas precisam converter arquivos Word, Excel ou CAD em PDF para arquivamento, ou impor uma política de “imprimir‑apenas‑se‑aprovado”. O Converter Plugin do Doconut trata desses cenários sem exigir Microsoft Office ou serviços de terceiros. Você invoca a API de conversão no servidor, passando o caminho do arquivo fonte (ou stream) e o formato de saída desejado. A conversão ocorre totalmente no back‑end, produzindo um PDF que pode ser armazenado no seu repositório de documentos.

Com o PDF disponível, você pode habilitar Impressão Controlada diretamente na UI do visualizador. O Doconut expõe um método para definir permissões de impressão para um token de documento específico. Quando o usuário clica no botão de imprimir, o Doconut verifica a flag e ou renderiza um stream de imagem imprimível ou devolve uma mensagem amigável “impressão desativada”. Essa abordagem elimina a necessidade de JavaScript customizado para bloquear a caixa de diálogo de impressão do navegador.

Auditoria de atividade de impressão

Como a solicitação de impressão passa pelo middleware do Doconut, você pode conectar ao pipeline de logging do ASP.NET Core para capturar quem imprimiu o quê e quando. Armazene a entrada de auditoria em uma tabela SQL ou encaminhe‑a para um sistema SIEM para relatórios de conformidade—crucial para soluções de tecnologia jurídica ou saúde onde cada acesso a documento deve ser rastreável.


Melhores Práticas para Escala e Desempenho em Ambientes Multiplataforma

  1. Aproveite o cache distribuído – O cache interno de tiles de página do Doconut pode ser suportado por Redis, Azure Cache ou qualquer implementação de IDistributedCache. Inclua o hash da versão do documento nas chaves de cache para evitar servir imagens desatualizadas após uma conversão.
  2. Use jobs em background para conversão em lote – Ao integrar um grande arquivo, enfileire tarefas de conversão com Hangfire ou Azure Functions. A classe do visualizador Doconut funciona com workers IHostedService porque aceita streams e devolve tokens sem precisar de um contexto HTTP.
  3. Ajuste a resolução da imagem por dispositivo – Dispositivos móveis se beneficiam de um ImageResolution menor (150‑200 DPI), enquanto estações de trabalho podem solicitar 300 DPI para detalhes CAD. Ajuste a resolução com base na string do user‑agent ou em uma configuração client‑side.
  4. Habilite carregamento preguiçoso de anotações – Armazene o XML de anotações em uma tabela separada e carregue‑o somente quando o usuário abrir o painel de anotações. Isso reduz a carga inicial e acelera a renderização da primeira página.
  5. Monitore a pegada de memória – Renderizar páginas CAD em alta resolução pode consumir muita memória. Configure o GC do .NET para usar modo server em produção (<gcServer enabled="true"/>) e defina um timeout razoável para evitar jobs de renderização que não terminam.
  6. Aplique um CDN para assets estáticos – Os bundles JavaScript e CSS do visualizador são estáticos. Sirva‑os a partir do Azure CDN, CloudFront ou Cloudflare para reduzir milissegundos no carregamento inicial, especialmente para equipes distribuídas globalmente.

Seguindo essas diretrizes, você pode suportar milhares de usuários simultâneos em diferentes continentes mantendo a latência abaixo de 200 ms para a primeira página—uma meta que muitos portais corporativos almejam.


Começando Rápido com o Trial Gratuito da Doconut

A maneira mais rápida de avaliar o Doconut é baixar o trial gratuito no site oficial, adicionar o pacote NuGet a um novo projeto ASP.NET Core e seguir o guia de início rápido. Em poucos minutos você terá um visualizador funcional que pode buscar documentos no Azure Blob, habilitar anotações, executar busca baseada em OCR e realizar conversão segura server‑side. Para instruções passo a passo, visite a documentação da Doconut e comece a construir sua experiência de documentos nativa da nuvem hoje mesmo.

Pronto para transformar seus fluxos de trabalho de documentos? Inscreva‑se no trial gratuito da Doconut agora e veja como é fácil entregar experiências de documentos seguras, pesquisáveis e colaborativas em qualquer aplicação .NET.

#document viewer#.NET#cloud integration#collaboration#OCR#visualizador de documentos#integração em nuvem#colaboração