Excelize v2.9.1
- Lançado em: 13 de maio de 2025
- Lançamento do GitHub: https://github.com/xuri/excelize/releases/tag/v2.9.1
Notas de versão
As mudanças mais notáveis nesta versão são:
Quebrando mudanças
- Os requisitos foram atualizados: a versão da linguagem Go deve ser 1.23 ou superior para a atualização do pacote de dependência
golang.org/x/crypto
- O tipo de dado de
DataValidationType
,DataValidationErrorStyle
,DataValidationOperator
,PictureInsertType
foi alterado deint
parabyte
- A função
SetCellInt
agora exige um parâmetro do tipoint64
, resolvendo o problema #2068 - Ao adicionar objetos de desenho, como imagens, gráficos, formas e controles de formulário, a configuração de deslocamento não afetará mais o tamanho do objeto de desenho, resolvendo o problema #2001
Recursos notáveis
- Foram adicionados os novos campos
GapWidth
eOverlap
ao tipo de dadoChart
- Adicionados novos campos
ShowDataTable
eShowDataTableKeys
no tipo de dadosChartPlotArea
- Foi adicionado o novo campo
Alignment
ao tipo de dadoChartAxis
- Foi adicionado o novo campo
DataLabel
ao tipo de dadoChartSeries
- Foi adicionado o novo campo
PageOrder
ao tipo de dadoPageLayoutOptions
- Foram adicionadas 2 novas variáveis de erro exportadas:
ErrPageSetupAdjustTo
eErrStreamSetColStyle
- Foram adicionados 2 novos enumeradores exportados:
HeaderFooterImagePositionType
eIgnoredErrorsType
- Foram adicionados 2 novos tipos de dados exportados:
CalcPropsOptions
eHeaderFooterImageOptions
- Foram adicionadas 2 novas funções:
SetCalcProps
eGetCalcProps
para definir e obter as propriedades de cálculo da planilha - Foram adicionados os novos valores de enumeração
CultureNameJaJP
,CultureNameKoKR
eCultureNameZhTW
, que suportam a aplicação de formato numérico para os anos do calendário japonês, do calendário coreano Danki e do ano da República da China, resolver o problema #1885 - Foi adicionada a nova função
AddHeaderFooterImage
para suportar a inclusão de imagens no cabeçalho e rodapé, resolver o problema #1395 - Foi adicionada a nova função
AddIgnoredErrors
para suportar a ignorar erros em um intervalo de células, resolver o problema #2046 - Foi adicionada a nova função
SetColStyle
para o writer de streaming, que suporta a definição de estilo das colunas, resolver o problema #2075 - As funções
AddChart
eAddChartSheet
agora suportam definir a direção e a rotação do texto dos eixos do gráfico, resolver o problema #2025 - As funções
AddChart
eAddChartSheet
agora suportam definir a largura do espaço entre as barras e a sobreposição para gráficos de colunas e barras, resolver o problema #2033 - As funções
AddChart
eAddChartSheet
agora suportam definir o formato do rótulo de dados das séries do gráfico, resolver o problema #2052 - As funções
AddChart
eAddChartSheet
suportam a definição de tabelas de dados para gráficos, resolver o problema #2117 - A função
AddFormControl
suporta o conjunto de links de células para caixa de seleção, resolver o problema #2113 - A função
SetPageLayout
agora suporta definir a ordem das páginas no layout - A função
DeletePicture
agora suporta a remoção de uma imagem ancorada a uma célula, resolver o problema #2059 - Será retornado um erro se o valor da opção da função
SetPageLayout
for inválido - Foi adicionado o suporte para ajustar a validação de dados em várias planilhas, resolver o problema #2072
- Foi adicionado o suporte para a aplicação de formato numérico com marcador de hash e espaço reservado para zero, resolver o problema #2058
- Foi adicionado o suporte para a aplicação de formato numérico com o símbolo
?
- Suporte para inserir um objeto de desenho de âncora de célula quando o posicionamento for especificado como "oneCell", resolver o problema #2002
Correções de bugs
- Corrigido um bug de regressão na versão 2.9.0, em que a planilha gerada pelo writer de streaming era corrompida ao ser aberta, resolvendo o problema #2015
- Corrigido o problema de criação redundante do preenchimento do tipo
none
, conforme problema #2014 - Corrigido o problema de ausência dos estilos de borda vertical e horizontal em alguns casos, conforme problema #2048
- Corrigido o problema em que os estilos de borda na formatação condicional não eram aplicados em alguns casos, conforme problema #2061
- Corrigido o pânico ocorrido em alguns casos ao obter tabelas dinâmicas, resolvendo os problemas #1954 e #2051
- Corrigida a função
GetStyle
, que não conseguia obter o formatoVertAlign
- Corrigido o cálculo incorreto das subexpressões na função
CalcCellValue
em alguns casos, resolvendo o problema #2083 - Corrigido o problema de remoção incorreta de imagens em alguns casos, causado por erro na detecção de referência de imagem
- Corrigido o problema em que o estilo padrão da célula não era sobrescrito pelo estilo de linha não nulo definido pelo writer de streaming
- Corrigido o problema de criação redundante do elemento
cols
pelo writer de streaming - Corrigir pânico ao definir fonte de título do gráfico, resolvendo o problema #2102
- Corrigir pânico ao excluir cadeia de cálculo em alguns casos
- Corrigir resultado incorreto do cálculo da fórmula causado por erro de análise de fórmula compartilhada, resolvendo o problema #2056
- Corrigir pasta de trabalho corrompida gerada quando o tamanho de um arquivo ZIP64 interno excede 4GB
- Corrigir erro de nome de planilha no nome definido após renomear planilha, resolvendo o problema #2126
Otimização de performance
- Utilizada a biblioteca de deepcopy
github.com/tiendc/go-deepcopy
, que é 3 vezes mais rápida, em substituição àgithub.com/mohae/deepcopy
, resolver o problema #2029 - Corrigir regressão de desempenho na versão 2.9.0, reduzir alocação de memória de valor de célula de corte para células em branco
- Melhore o desempenho do cálculo de fórmula quando a fórmula contiver referência de coluna e linha inteira
- Aceleração do iterador de linhas em cerca de 20%, redução da alocação de memória em cerca de 10%
Diversas
- O módulo de dependências foi atualizado
- Testes unitários e godoc atualizados
- Site de documentação com multilíngue: árabe, alemão, inglês, espanhol, francês, italiano, japonês, coreano, português, russo, chinês simplificado e chinês tradicional, que foi atualizado
- excelize-wasm Atualização do pacote NPM para suporte a WebAssembly / JavaScript
- excelize Atualização do pacote PyPI para Python
Obrigado
Obrigado a todos os colaboradores do Excelize. Abaixo está uma lista de contribuidores que possuem contribuições de código nesta versão:
- @wushiling50
- @imirkin (Ilia Mirkin)
- @Juneezee (Eng Zer Jun)
- @Arpelicy
- @zhuhaicity (ZhuHaiCheng)
- @xxf0512 (xxf)
- @gypsy1234
- @mengpromax (MengZhongYuan)
- @hly-717
- @kurtinge (Kurt Inge Smådal)
- @IvanHristov98 (Ivan Hristov)
- @artur-chopikian (Artur Chopikian)
- @romanshevelev (Roman Shevelev)
- @LZCZ
- @hm3248
- @moisespsena (Moises P. Sena)
- @paolobarbolini (Paolo Barbolini)
- @timesince
- @shcabin
- @tgulacsi (Tamás Gulácsi)
- @R3dByt3 (R3dByt3)
- @Now-Shimmer