Há 18 recursos, melhorias e correções de bugs nesta versão. Esta atualização reforça a conversão CAD com seleção ao nível de layout, saída por layout (slides, planilhas, páginas, SVG etc.) e adiciona XAR e CAB como destinos de compressão, além de Mermaid MMD e Drawio como fontes/alvos de diagramas.
O que há de novo nesta versão
| Chave | Categoria | Resumo |
|---|---|---|
| CONVERSIONNET-8437 | Recurso | Adicionar o formato de arquivo Drawio como destino de conversão para documentos de Diagrama |
| CONVERSIONNET-8442 | Recurso | Adicionar o formato de arquivo Mermaid MMD como fonte de conversão para documentos de Diagrama |
| CONVERSIONNET-8445 | Recurso | Adicionar CAB como destino de conversão para documentos de compressão |
| CONVERSIONNET-8459 | Recurso | Adicionar CadLayoutScope ao CadLoadOptions para converter espaço de modelo, layouts de papel ou ambos |
| CONVERSIONNET-8464 | Recurso | Adicionar XAR como fonte e alvo de conversão para documentos de compressão |
| CONVERSIONNET-8460 | Melhoria | Converter cada layout CAD para seu próprio slide, planilha, página Word, imagem HTML/MHTML e região SVG |
| CONVERSIONNET-8461 | Melhoria | Nomear os layouts ausentes quando a seleção de layout CAD não corresponde a nada |
| CONVERSIONNET-8462 | Melhoria | Relatar um LoadOptions.Format não definido como ausente em vez de lançar exceção |
| CONVERSIONNET-8361 | Bug | Formas DOCX com contornos são renderizadas incorretamente ao converter para PDF |
| CONVERSIONNET-8396 | Bug | Converter arquivo de Apresentação para PDF gera cabeçalhos/rodapés inconsistentes |
| CONVERSIONNET-8399 | Bug | Converter arquivo de Apresentação com links de sumário quebrados gera GroupDocsConversionException |
| CONVERSIONNET-8426 | Bug | Conversão de arquivo DWG para PDF por página com configurações de orientação da folha |
| CONVERSIONNET-8427 | Bug | Corrigir NullReferenceException ao converter desenhos CAD sem layout ativo |
| CONVERSIONNET-8428 | Bug | Corrigir conversão dupla de unidades quando um tamanho de página explícito é definido para conversões CAD |
| CONVERSIONNET-8429 | Bug | Corrigir CAD para PDF/UA ignorando CadLoadOptions |
| CONVERSIONNET-8430 | Bug | Corrigir CadDocumentInfo reportando uma página para documentos CAD com múltiplos layouts |
| CONVERSIONNET-8444 | Bug | Problema com miniatura em ambiente Linux para GroupDocs.Conversion |
| CONVERSIONNET-8467 | Bug | EML para PDF: exceção de tipos de unidade incompatíveis |
Alterações na API pública
⚠️ Alterações incompatíveis com versões anteriores – As atualizações a seguir modificam o comportamento público existente. Ajuste seu código adequadamente para evitar erros em tempo de execução.
1. LoadOptions.Format agora devolve null em vez de lançar exceção quando o formato não está definido
Classes afetadas: todas as 28 opções de carregamento tipadas (por exemplo, SpreadsheetLoadOptions, PdfLoadOptions, CadLoadOptions, …)
O que mudou
Ler a propriedade Format antes que um formato seja atribuído antes gerava uma exceção. Agora ela devolve null, permitindo uma simples verificação de nulidade.
Exemplo de migração
var loadOptions = new SpreadsheetLoadOptions();
if (loadOptions.Format == null)
{
// Novo caminho de código – antes inacessível porque o getter lançava exceção.
}
Orientação
Substitua qualquer try/catch em torno de loadOptions.Format por uma verificação de nulidade. Não compare contra FileType.Unknown; o teste correto é == null.
2. Validação de correspondência exata para CadLoadOptions.LayoutNames com relatório detalhado de erro
Classe afetada: CadLoadOptions
O que mudou
LayoutNames agora são comparados exatamente (sensível a maiúsculas/minúsculas) com os nomes de layout do desenho. Se nenhum corresponder, a conversão falha com InvalidLoadOptionsException, que lista os layouts disponíveis e a solicitação que não correspondeu.
Exemplo de migração
using GroupDocs.Conversion.Exceptions;
try
{
using var converter = new Converter("drawing.dwg",
ctx => new CadLoadOptions { LayoutNames = new[] { "layout1" } });
converter.Convert("out.pdf", new PdfConvertOptions());
}
catch (InvalidLoadOptionsException ex)
{
// Exemplo de mensagem:
// "Nenhum nome de layout em CadLoadOptions.LayoutNames corresponde a este desenho, que contém
// Model, Layout1, Layout2. Solicitado: layout1. Os nomes são comparados exatamente, portanto
// um nome que difere apenas em maiúsculas/minúsculas é considerado diferente."
Console.WriteLine(ex.Message);
}
Orientação
- Garanta que os nomes dos layouts estejam escritos corretamente e correspondam ao caso usado no desenho de origem.
- Quando apenas um subconjunto de layouts for necessário, forneça os nomes exatos; entradas que não coincidam são ignoradas, e os layouts correspondentes ainda são renderizados.
3. Desenhos CAD com várias folhas agora produzem uma unidade de saída por folha
Classes afetadas: Converter, PresentationConvertOptions, PdfConvertOptions
O que mudou
Anteriormente, converter um desenho com múltiplos layouts de espaço de papel resultava em uma única imagem/slide achatada. Agora a conversão cria unidades de saída separadas (slides, páginas etc.) para cada layout, dimensionadas de acordo com a configuração de página do layout. Converter.GetDocumentInfo().PagesCount reflete o número de unidades geradas.
Exemplo de migração – conversão
using var converter = new Converter("multi-layout.dwg");
// Três folhas de entrada, três slides de saída – antes um slide achatado.
converter.Convert("drawing.pptx", new PresentationConvertOptions());
Exemplo de migração – consulta ao número de páginas
using var converter = new Converter("multi-layout.dwg");
int sheets = converter.GetDocumentInfo().PagesCount; // Retorna 3 para três layouts
Orientação
- Ajuste o processamento subsequente (por exemplo, paginação da UI, nomeação de arquivos) para lidar com múltiplos arquivos/páginas de saída.
- Para desenhos de única folha o comportamento permanece inalterado.
- A exceção é CAD → PDF/UA‑1, que ainda gera uma única página marcada.
4. Nova propriedade CadLoadOptions.LayoutScope para controlar explicitamente quais espaços são convertidos
Classe afetada: CadLoadOptions
O que mudou
LayoutScope permite especificar se deve carregar Model, Layouts ou Both (padrão).
- Quando
LayoutNamesestá definido,LayoutScopeé ignorado porque nomes explícitos têm precedência. - Selecionar um escopo que não produza folhas para um desenho que contém ao menos uma folha agora lança
InvalidLoadOptionsExceptionem vez de renderizar silenciosamente os espaços padrão.
Exemplo de migração – converter apenas layouts de espaço de papel
using GroupDocs.Conversion;
using GroupDocs.Conversion.Options.Convert;
using GroupDocs.Conversion.Options.Load;
using var converter = new Converter("drawing.dwg",
ctx => new CadLoadOptions { LayoutScope = CadLayoutScope.Layouts });
converter.Convert("layouts.pdf", new PdfConvertOptions());
Orientação
- O código existente que dependia da escolha implícita do backend continua funcionando porque Both permanece como padrão.
- Para excluir o espaço de modelo ou incluí‑lo somente, defina
LayoutScopecomoCadLayoutScope.ModelouCadLayoutScope.Layouts, respectivamente. - Se antes você tentava filtrar layouts fornecendo um array
LayoutNamesvazio, substitua esse padrão por um valor adequado deLayoutScopepara obter um erro claro quando nenhuma folha for selecionada.
Novos recursos
Controle avançado de layout CAD: Selecione layouts CAD específicos, converta cada layout para seu próprio slide, planilha, página, imagem ou região SVG e escolha espaço de modelo, layouts de papel ou ambos com CadLayoutScope. Isso fornece saída precisa por layout e respeita configurações específicas da folha, como orientação e tamanho da página.
Suporte ampliado a arquivos de arquivo: Os formatos XAR e CAB agora estão disponíveis tanto como fonte quanto como destino para documentos de compressão, permitindo conversão fluida de e para esses tipos de arquivo.
Interoperabilidade moderna de diagramas: Arquivos Mermaid MMD podem ser usados como fontes de diagramas, e arquivos Drawio são suportados como destinos de conversão, facilitando a integração de ferramentas de diagramas contemporâneas em seus pipelines de conversão.
Melhorias críticas de estabilidade: Corrigidos falhas de conversão para EML → PDF, contornos de formas DOCX, cabeçalhos/rodapés de apresentações e links de sumário quebrados, geração de miniaturas em Linux e tratamento de orientação de folhas DWG. Essas correções aumentam a confiabilidade em fluxos de trabalho de e‑mail, office, apresentações e CAD.
Exemplo de código
using var converter = new Converter("multi-layout.dwg");
// Três folhas de entrada, três slides de saída – antes um slide achatado.
converter.Convert("drawing.pptx", new PresentationConvertOptions());
Como obter a atualização
NuGet
Install-Package GroupDocs.Conversion -Version 26.8
GroupDocs.Conversion 26.8 on NuGet
Download direto
Nenhum link de download direto é fornecido nas notas de versão.