Excelize v2.7.0

Note di rilascio

Le modifiche più importanti in questa versione sono:

Cambiamento dirompente

  • Requisiti di aggiornamento La versione in lingua Go è 1.16 o successiva, per la migrazione del pacchetto deprecato ioutil
  • Controllo e restituzione dell'errore per nome foglio non valido invece di tagliare caratteri non validi
  • La funzione GetCellStyle non restituisce più lo stile della cella principale dell'intervallo di celle unificate
  • Rinominare 5 tipi di dati esportati e costante di errore:
    • Rinominare PivotTableOption in PivotTableOptions
    • Rinominare FormatHeaderFooter in HeaderFooterOptions
    • Rinominare FormatSheetProtection in SheetProtectionOptions
    • Rinominare SparklineOption in SparklineOptions
    • Rinominare ErrExistsWorksheet in ErrExistsSheet
  • Rimuovi 54 tipi esportati: AutoPageBreaks, BaseColWidth, BlackAndWhite, CodeName, CustomHeight, Date1904, DefaultColWidth, DefaultGridColor, DefaultRowHeight, EnableFormatConditionsCalculation, FilterPrivacy, FirstPageNumber, FitToHeight, FitToPage, FitToWidth, OutlineSummaryBelow, PageLayoutOption, PageLayoutOptionPtr, PageLayoutOrientation, PageLayoutPaperSize, PageLayoutScale, PageMarginBottom, PageMarginFooter, PageMarginHeader, PageMarginLeft, PageMarginRight, PageMarginsOptions, PageMarginsOptionsPtr, PageMarginTop, Published, RightToLeft, SheetFormatPrOptions, SheetFormatPrOptionsPtr, SheetPrOption, SheetPrOptionPtr, SheetViewOption, SheetViewOptionPtr, ShowFormulas, ShowGridLines, ShowRowColHeaders, ShowRuler, ShowZeros, TabColorIndexed, TabColorRGB, TabColorTheme, TabColorTint, ThickBottom, ThickTop, TopLeftCell, View, WorkbookPrOption, WorkbookPrOptionPtr, ZeroHeight e ZoomScale
  • Rimuovi 2 costanti esportate: OrientationPortrait e OrientationLandscape
  • Cambia la firma di 21 funzioni:
    • Cambia l'func (f *File) SetPageLayout(sheet string, opts ...PageLayoutOption) error in func (f *File) SetPageLayout(sheet string, opts *PageLayoutOptions) error
    • Cambia l'func (f *File) GetPageLayout(sheet string, opts ...PageLayoutOptionPtr) error in func (f *File) GetPageLayout(sheet string) (PageLayoutOptions, error)
    • Cambia l'func (f *File) SetPageMargins(sheet string, opts ...PageMarginsOptions) error in func (f *File) SetPageMargins(sheet string, opts *PageLayoutMarginsOptions) error
    • Cambia l'func (f *File) GetPageMargins(sheet string, opts ...PageMarginsOptionsPtr) error in func (f *File) GetPageMargins(sheet string) (PageLayoutMarginsOptions, error)
    • Cambia l'func (f *File) GetSheetIndex(sheet string) int in func (f *File) GetSheetIndex(sheet string) (int, error)
    • Cambia l'func (f *File) SetSheetName(source, target string) in func (f *File) SetSheetName(source, target string) error
    • Cambia l'func (f *File) GetSheetVisible(sheet string) bool in func (f *File) GetSheetVisible(sheet string) (bool, error)
    • Cambia l'func (f *File) DeleteSheet(sheet string) in func (f *File) DeleteSheet(sheet string) error
    • Cambia l'func (f *File) NewSheet(sheet string) int in func (f *File) NewSheet(sheet string) (int, error)
    • Cambia l'func (f *File) NewConditionalStyle(style string) (int, error) in func (f *File) NewConditionalStyle(style *Style) (int, error)
    • Cambia l'func (f *File) NewStyle(style interface{}) (int, error) in func (f *File) NewStyle(style *Style) (int, error)
    • Cambia l'func (f *File) AddChart(sheet, cell, opts string, combo ...string) error in func (f *File) AddChart(sheet, cell string, chart *ChartOptions, combo ...*ChartOptions) error
    • Cambia l'func (f *File) AddChartSheet(sheet, opts string, combo ...string) error in func (f *File) AddChartSheet(sheet string, chart *ChartOptions, combo ...*ChartOptions) error
    • Cambia l'func (f *File) AddShape(sheet, cell, opts string) error in func (f *File) AddShape(sheet, cell string, opts *Shape) error
    • Cambia l'func (f *File) AddPicture(sheet, cell, picture, format string) error in func (f *File) AddPicture(sheet, cell, picture string, opts *GraphicOptions) error
    • Cambia l'func (f *File) AddPictureFromBytes(sheet, cell, opts, name, extension string, file []byte) error in func (f *File) AddPictureFromBytes(sheet, cell, name, extension string, file []byte, opts *GraphicOptions) error
    • Cambia l'func (f *File) AddTable(sheet, hCell, vCell, opts string) error in func (f *File) AddTable(sheet, rangeRef string, opts *TableOptions) error
    • Cambia l'func (sw *StreamWriter) AddTable(hCell, vCell, opts string) error in func (sw *StreamWriter) AddTable(rangeRef string, opts *TableOptions) error
    • Cambia l'func (f *File) AutoFilter(sheet, hCell, vCell, opts string) error in func (f *File) AutoFilter(sheet, rangeRef string, opts *AutoFilterOptions) error
    • Cambia l'func (f *File) SetPanes(sheet, panes string) error in func (f *File) SetPanes(sheet string, panes *Panes) error
    • Cambia l'func (f *File) SetConditionalFormat(sheet, reference, opts string) error in func (f *File) SetConditionalFormat(sheet, rangeRef string, opts []ConditionalFormatOptions) error
  • Introduci una nuova funzione invece delle funzioni esistenti:
    • Utilizza SetSheetProps invece di SetSheetPrOptions e SetSheetFormatPr
    • Utilizza GetSheetProps invece di GetSheetPrOptions e GetSheetFormatPr
    • Utilizza SetSheetView invece di SetSheetViewOptions
    • Utilizza GetSheetView invece di GetSheetViewOptions
    • Utilizza SetWorkbookProps invece di SetWorkbookPrOptions
    • Utilizza GetWorkbookProps invece di GetWorkbookPrOptions
    • Utilizza InsertRows invece di InsertRow per supportare l'inserimento di più righe contemporaneamente
    • Utilizza InsertCols invece di InsertCol per supportare l'inserimento di più colonne contemporaneamente
  • Aggiungi CellTypeFormula, CellTypeInlineString, CellTypeSharedString e rimuovi CellTypeString nell'enumerazione CellType
  • Il parametro è stato modificato per la funzione AddComment, supporta la creazione di testo ricco nei commenti, problema correlato #1204
  • Rimuovi la stampa del registro degli errori interni, verrà restituito un errore quando l'XML deserializza l'errore, aggiungi il valore di ritorno dell'errore per le funzioni GetComments, GetDefaultFont e SetDefaultFont

Caratteristiche notevoli

  • Aggiunte nuove funzioni GetDataValidations e GetConditionalFormats per ottenere convalide dei dati e formati condizionali, problema correlato #827
  • Aggiunte nuove funzioni ProtectWorkbook e UnprotectWorkbook per il supporto della protezione delle cartelle di lavoro
  • Aggiungi la nuova funzione "SetSheetCol" per impostare le celle delle colonne del foglio di lavoro, problema correlato #1247
  • Aggiungi la nuova funzione GetColStyle per ottenere stili di colonna, problema correlato #1293
  • Aggiungi la nuova funzione SetSheetBackgroundFromBytes per impostare l'immagine di sfondo in base ai dati dell'immagine, problema correlato #1405
  • Aggiungi la nuova variabile di esportazione IndexedColorMapping
  • Aggiungi 20 tipi di esportazione: AutoFilterListOptions, AutoFilterOptions, Chart, ChartAxis, ChartDimension, ChartLegend, ChartLine, ChartMarker, ChartPlotArea, ChartSeries, ChartTitle, ConditionalFormatOptions, PaneOptions, Panes, GraphicOptions, Shape, ShapeColor, ShapeLine, ShapeParagraph e TableOptions
  • Nuovo supporto per 2 funzioni formula: AGGREGATE e SUBTOTAL
  • Le funzioni Save, Write e WriteTo ora accettano le opzioni di salvataggio, problema correlato #744
  • Il supporto della funzione AddChart specifica se la linea del grafico a linee è liscia, problema correlato #1290
  • La funzione AddChart supporta l'impostazione del colore personalizzato della linea nei grafici, problema correlato #1345
  • La funzione AddChart supporta lo stile del carattere personalizzato dell'asse del grafico, problema correlato #320
  • La funzione AddChart supporta la creazione di grafici a linee 3D
  • Le funzioni SetColWidth, GetColWidth, SetColVisible, GetColVisible, SetColStyle e GetColStyle ora supportano la concorrenza sicura
  • Verrà restituito un errore quando si imposta l'ID di stile inesistente, problema correlato #1323
  • Verrà restituito un errore quando si imposta la riga del flusso senza numeri di riga ascendenti, per evitare potenziali errori, problema correlato #1139
  • Lo stream writer applicherà lo stile in RowOpts per ogni cella, problema correlato #1354
  • Il supporto dello stream writer per impostare riquadri, problema correlato #1047
  • Il supporto dello stream writer per impostare la cella di testo RTF in linea
  • Il supporto dello stream writer per inserire l'interruzione di pagina
  • Nuovi 7 errori esportati: Sono stati aggiunti ErrUnprotectWorkbook, ErrUnprotectWorkbookPassword, ErrStreamSetPanes, ErrSheetNameBlank, ErrSheetNameInvalid, ErrSheetNameLength e ErrSheetNameSingleQuote
  • Introduci 5 nuovi tipi di dati di esportazione: HeaderFooterOptions, PageLayoutMarginsOptions, PageLayoutOptions, SheetPropsOptions e ViewOptions
  • Supporto per impostare le colonne di riepilogo in modo che vengano visualizzate a destra dei dettagli in una struttura
  • Supporto per impostare e ottenere il colore del carattere con tema e tinta, problema correlato #1369
  • Supporta l'acquisizione del valore della cella che contiene una data nel formato ISO 8601
  • Supporta l'impostazione e ottieni il colore del carattere con il colore indicizzato
  • Supporta l'aggiornamento dello stile della colonna durante l'inserimento o l'eliminazione di colonne
  • La funzione Close della cartella di lavoro ora supporta la pulizia dei file temporanei dello stream writer
  • La funzione AddPicture ora consente di inserire immagini in formato SVG

Migliora la compatibilità

  • Lo scrittore di flussi scrive il tipo di stringa in linea per il valore della cella stringa, problema correlato #1377
  • Salta le righe vuote durante il salvataggio del foglio di calcolo per ridurre le dimensioni del file, problema correlato #1383

Correzioni di bug

  • Risolto il problema relativo al formato dei numeri decimali con il formato dei numeri integrato, risolvere il problema #1328, #1368 e #1373
  • Risolto il problema relativo al formato del numero AM/PM in alcuni casi, risolvere il problema #1338
  • Risolvi il panico quando si eliminano i commenti causati da limiti di sezione fuori intervallo, risolvere il problema #1343
  • Risolvi il panico quando ottieni il valore della cella in alcuni casi, risolvere il problema #1384 e #1415
  • Risolto il problema di analisi del formato numerico predefinito con una lunga stringa di cifre, risolvere il problema #1360
  • Risolto il problema con la creazione di un foglio con un nome vuoto che causava un file danneggiato, risolvere il problema #1361
  • Risolto il problema con il contenuto dell'immagine ottenuto che era vuoto dopo l'inserimento dell'immagine
  • In alcuni casi è stato risolto il problema relativo alla corruzione della cartella di lavoro dopo l'inserimento di colonne/righe
  • Elimina la formula condivisa nella catena di calcolo durante la scrittura di una cella di formula, per correggere in alcuni casi il danneggiamento della cartella di lavoro
  • Normalizza il nome del foglio per correggere la regressione del comportamento tra 2.6.0 e 2.6.1, risolvere il problema #1365
  • Risolvi il problema relativo al risultato del calcolo della formula della funzione OR
  • Correggere l'errore relativo all'inserimento di colonne o righe nel foglio di lavoro che contiene un intervallo di celle unito a una cella
  • Correggere l'errore nell'ottenere l'intervallo di celle unite nel foglio di lavoro che contiene un intervallo di celle unite
  • Risolto il problema con il valore incompleto delle celle di testo RTF in alcuni casi
  • Caratteri XML di escape per lo scrittore di flussi da evitare con file corrotto, risolvere il problema #1391
  • Correggere l'errore del risultato della funzione ADDRESS della formula con il nome del foglio di lavoro vuoto, risolvere il problema #1396
  • Risolto il problema relativo all'inserimento dell'immagine in alcuni casi, risolvere il problema #1404

Prestazione

  • Migliora le prestazioni per l'unione delle celle dello stream writer, il costo in termini di tempo diminuisce di oltre il 90% e riduce l'utilizzo della memoria al massimo di circa l'86%
  • Miglioramento delle prestazioni per la funzione SetRow dello stream writer, riduzione dell'utilizzo della memoria e aumento della velocità di circa il 19%

Varie

  • Il modulo delle dipendenze è stato aggiornato
  • Unit test e godoc aggiornati
  • Utilizzo del nome specializzato in variabili e funzioni
  • Sito Web di documentazione multilingue: arabo, tedesco, spagnolo, inglese, francese, russo, cinese, giapponese e coreano, che è stato aggiornato

Crediti

Grazie a tutti i contributori di Excelize. Di seguito è riportato un elenco di contributori che hanno contribuito al codice in questa versione:

  • @cdenicola (Cooper de Nicola)
  • @chenliu1993
  • @davidborry
  • @patsak (Kostya Privezentsev)
  • @dafengge0913
  • @Beeb0p (Artem Tarasenko)
  • @invzhi
  • @zhangzitao (Zitao)
  • @jtwatson (Joseph Watson)
  • @carbin-gun (charles.deng)
  • @harrison3000 (Harrison)
  • @strivek (GaoFei)
  • @gonghaibinx
  • @martinmr (Martin Martinez Rivera)
  • @zclark (Zach Clark)
  • @March0715 (March)
  • @renxiaotu
  • @devloppper
  • @jianxinhou
  • @nesstord
  • @Bayzet (Bayzet Tlyupov)
  • @guoweikuang (郭伟匡)
  • @qinyuguang (Gin)
  • @liron-l (Liron Levin)

results matching ""

    No results matching ""