Excelize v2.7.0

Notes de version

Les changements les plus notables de cette version sont:

Compatibilité

  • Exigences de mise à niveau La version linguistique de Go est 1.16 ou ultérieure, pour la migration du package d'obsolescence ioutil
  • Vérification et retour d'erreur pour un nom de feuille non valide au lieu de supprimer les caractères non valides
  • La fonction GetCellStyle ne renvoie plus le style de cellule maître de la plage de cellules de fusion
  • Renommez 5 types de données exportées et la constante d'erreur:
    • Renommez PivotTableOption en PivotTableOptions
    • Renommez FormatHeaderFooter en HeaderFooterOptions
    • Renommez FormatSheetProtection en SheetProtectionOptions
    • Renommez SparklineOption en SparklineOptions
    • Renommez ErrExistsWorksheet en ErrExistsSheet
  • Supprimer 54 types exportés: 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 et ZoomScale
  • Supprimer 2 constantes exportées: OrientationPortrait et OrientationLandscape
  • Changer la signature de 21 fonctions:
    • Changer func (f *File) SetPageLayout(sheet string, opts ...PageLayoutOption) error en func (f *File) SetPageLayout(sheet string, opts *PageLayoutOptions) error
    • Changer func (f *File) GetPageLayout(sheet string, opts ...PageLayoutOptionPtr) error en func (f *File) GetPageLayout(sheet string) (PageLayoutOptions, error)
    • Changer func (f *File) SetPageMargins(sheet string, opts ...PageMarginsOptions) error en func (f *File) SetPageMargins(sheet string, opts *PageLayoutMarginsOptions) error
    • Changer func (f *File) GetPageMargins(sheet string, opts ...PageMarginsOptionsPtr) error en func (f *File) GetPageMargins(sheet string) (PageLayoutMarginsOptions, error)
    • Changer func (f *File) GetSheetIndex(sheet string) int en func (f *File) GetSheetIndex(sheet string) (int, error)
    • Changer func (f *File) SetSheetName(source, target string) en func (f *File) SetSheetName(source, target string) error
    • Changer func (f *File) GetSheetVisible(sheet string) bool en func (f *File) GetSheetVisible(sheet string) (bool, error)
    • Changer func (f *File) DeleteSheet(sheet string) en func (f *File) DeleteSheet(sheet string) error
    • Changer func (f *File) NewSheet(sheet string) int en func (f *File) NewSheet(sheet string) (int, error)
    • Changer func (f *File) NewConditionalStyle(style string) (int, error) en func (f *File) NewConditionalStyle(style *Style) (int, error)
    • Changer func (f *File) NewStyle(style interface{}) (int, error) en func (f *File) NewStyle(style *Style) (int, error)
    • Changer func (f *File) AddChart(sheet, cell, opts string, combo ...string) error en func (f *File) AddChart(sheet, cell string, chart *ChartOptions, combo ...*ChartOptions) error
    • Changer func (f *File) AddChartSheet(sheet, opts string, combo ...string) error en func (f *File) AddChartSheet(sheet string, chart *ChartOptions, combo ...*ChartOptions) error
    • Changer func (f *File) AddShape(sheet, cell, opts string) error en func (f *File) AddShape(sheet, cell string, opts *Shape) error
    • Changer func (f *File) AddPicture(sheet, cell, picture, format string) error en func (f *File) AddPicture(sheet, cell, picture string, opts *GraphicOptions) error
    • Changer func (f *File) AddPictureFromBytes(sheet, cell, opts, name, extension string, file []byte) error en func (f *File) AddPictureFromBytes(sheet, cell, name, extension string, file []byte, opts *GraphicOptions) error
    • Changer func (f *File) AddTable(sheet, hCell, vCell, opts string) error en func (f *File) AddTable(sheet, rangeRef string, opts *TableOptions) error
    • Changer func (sw *StreamWriter) AddTable(hCell, vCell, opts string) error en func (sw *StreamWriter) AddTable(rangeRef string, opts *TableOptions) error
    • Changer func (f *File) AutoFilter(sheet, hCell, vCell, opts string) error en func (f *File) AutoFilter(sheet, rangeRef string, opts *AutoFilterOptions) error
    • Changer func (f *File) SetPanes(sheet, panes string) error en func (f *File) SetPanes(sheet string, panes *Panes) error
    • Changer func (f *File) SetConditionalFormat(sheet, reference, opts string) error en func (f *File) SetConditionalFormat(sheet, rangeRef string, opts []ConditionalFormatOptions) error
  • Introduire une nouvelle fonction à la place des fonctions existantes:
    • Utilisez SetSheetProps au lieu de SetSheetPrOptions et SetSheetFormatPr
    • Utilisez GetSheetProps au lieu de GetSheetPrOptions et GetSheetFormatPr
    • Utilisez SetSheetView au lieu de SetSheetViewOptions
    • Utilisez GetSheetView au lieu de GetSheetViewOptions
    • Utilisez SetWorkbookProps au lieu de SetWorkbookPrOptions
    • Utilisez GetWorkbookProps au lieu de GetWorkbookPrOptions
    • Utilisez InsertRows au lieu de InsertRow pour prendre en charge l'insertion de plusieurs lignes à la fois
    • Utilisez InsertCols au lieu de InsertCol pour prendre en charge l'insertion de plusieurs colonnes à la fois
  • Ajoutez CellTypeFormula, CellTypeInlineString, CellTypeSharedString et supprimez CellTypeString dans l'énumération CellType
  • Le paramètre a été modifié pour la fonction AddComment, prend en charge la création de texte enrichi dans les commentaires, problème associé #1204
  • Supprimer l'impression du journal des erreurs internes, une erreur sera renvoyée en cas d'erreur de désérialisation XML, ajouter une valeur de retour d'erreur pour les fonctions GetComments, GetDefaultFont et SetDefaultFont

Caractéristiques notables

  • Ajouter de nouvelles fonctions GetDataValidations et GetConditionalFormats pour obtenir des validations de données et des formats conditionnels, problème associé #827
  • Ajouter de nouvelles fonctions ProtectWorkbook et UnprotectWorkbook pour les supports de protection des classeurs
  • Ajouter une nouvelle fonction SetSheetCol pour définir des cellules de colonne de feuille de calcul, problème associé #1247
  • Ajouter une nouvelle fonction GetColStyle pour obtenir les styles de colonnes, problème associé #1293
  • Ajouter une nouvelle fonction SetSheetBackgroundFromBytes pour définir l'image d'arrière-plan par des données d'image données, problème associé #1405
  • Ajouter une nouvelle variable d'exportation IndexedColorMapping
  • Ajouter 20 types d'exportation: AutoFilterListOptions, AutoFilterOptions, Chart, ChartAxis, ChartDimension, ChartLegend, ChartLine, ChartMarker, ChartPlotArea, ChartSeries, ChartTitle, ConditionalFormatOptions, PaneOptions, Panes, GraphicOptions, Shape, ShapeColor, ShapeLine, ShapeParagraph et TableOptions
  • Nouvelle prise en charge de 2 fonctions de formule: AGGREGATE et SUBTOTAL
  • Les fonctions Save, Write et WriteTo acceptent désormais les options d'enregistrement, problème associé #744
  • Le support de la fonction AddChart spécifie si la ligne lisse du graphique linéaire, problème associé #1290
  • La fonction AddChart prend en charge la couleur de ligne personnalisée dans les graphiques, problème associé #1345
  • La fonction AddChart prend en charge le style de police d'axe de graphique personnalisé, problème associé #320
  • La fonction AddChart prend en charge la création d'un graphique en courbes 3D
  • Les fonctions SetColWidth, GetColWidth, SetColVisible, GetColVisible, SetColStyle et GetColStyle prennent désormais en charge la concurrence sécurisée
  • Une erreur sera renvoyée lors de la définition de l'ID de style inexistant, problème associé #1323
  • Une erreur sera renvoyée lors de la définition de la ligne de flux sans numéros de ligne croissants, pour éviter les erreurs potentielles, problème associé #1139
  • L'écrivain de flux appliquera le style dans RowOpts pour chaque cellule, problème associé #1354
  • La prise en charge de l'écrivain de flux pour définir des volets, problème associé #1047
  • La prise en charge de l'écrivain de flux pour définir une cellule de texte enrichi en ligne
  • Le support du rédacteur de flux pour insérer le saut de page
  • 7 nouvelles erreurs exportées: ErrUnprotectWorkbook, ErrUnprotectWorkbookPassword, ErrStreamSetPanes, ErrSheetNameBlank, ErrSheetNameInvalid, ErrSheetNameLength et ErrSheetNameSingleQuote ont été ajoutées
  • Introduire 5 nouveaux types de données d'exportation: HeaderFooterOptions, PageLayoutMarginsOptions, PageLayoutOptions, SheetPropsOptions, et ViewOptions
  • Prise en charge de la configuration des colonnes récapitulatives pour qu'elles apparaissent à droite des détails dans un plan
  • Prise en charge pour définir et obtenir la couleur de la police avec le thème et la teinte, problème associé #1369
  • Prise en charge de la valeur de cellule contenant une date au format ISO 8601
  • Prend en charge le jeu et obtient la couleur de la police avec la couleur indexée
  • Prise en charge du style de colonne de mise à jour lors de l'insertion ou de la suppression de colonnes
  • La fonction Close du classeur prend désormais en charge les fichiers temporaires du rédacteur de flux de nettoyage
  • La fonction AddPicture permettant désormais d'insérer des images au format SVG

Improve the Compatibilité

  • L'écrivain de flux écrit un type de chaîne en ligne pour la valeur de la cellule de chaîne, problème associé #1377
  • Ignorer les lignes vides lors de l'enregistrement de la feuille de calcul pour réduire la taille du fichier, problème associé #1383

Corrections de bogues

  • Correction du problème d'arrondi du format de nombre décimal avec le format de nombre intégré, problème associé #1328, #1368 et #1373
  • Correction de l'application du problème de format de numéro AM/PM dans certains cas, problème associé #1338
  • Correction de la panique lors de la suppression de commentaires causée par des limites de tranche hors plage, problème associé #1343
  • Correction de la panique lors de l'obtention de la valeur de la cellule dans certains cas, problème associé #1384 et #1415
  • Correction du problème d'analyse du format numérique par défaut avec une longue chaîne de chiffres, problème associé #1360
  • Correction de la création d'une feuille avec un nom vide provoquant un fichier corrompu, problème associé #1361
  • Correction de l'obtention du contenu de l'image vide après l'insertion de l'image
  • Fix generate workbook corruption after insert columns/rows in some case
  • Supprimer la formule partagée dans la chaîne de calcul lors de l'écriture d'une cellule de formule, pour corriger la corruption du classeur dans certains cas
  • Normaliser le nom de la feuille pour corriger la régression du comportement entre 2.6.0 et 2.6.1, problème associé #1365
  • Correction du problème de résultat de calcul de formule de la fonction OR
  • Correction d'une erreur lors de l'insertion de colonnes ou de lignes dans la feuille de calcul contenant une plage de cellules fusionnées
  • Correction d'une erreur lors de l'obtention de la plage de cellules fusionnées sur la feuille de calcul contenant une plage de cellules fusionnées
  • Correction de l'obtention d'une valeur de cellule de texte enrichi incomplète dans certains cas
  • Caractères XML d'échappement pour l'écrivain de flux à éviter avec un fichier corrompu, problème associé #1391
  • Correction de l'erreur de résultat de la fonction de formule ADDRESS avec un nom de feuille de calcul vide, problème associé #1396
  • Correction du problème d'insertion d'image dans certains cas, problème associé #1404

Performance

  • Améliorez les performances des cellules de fusion de l'écrivain de flux, diminuez le coût du temps de plus de 90% et réduisez l'utilisation de la mémoire d'environ 86% au maximum
  • Amélioration des performances de la fonction d'écriture de flux "SetRow", réduction de l'utilisation de la mémoire et accélération d'environ 19%

Miscellaneous

  • Le module des dépendances a été mis à jour
  • Tests unitaires et godoc mis à jour
  • Utilisation du nom spécialisé dans les variables et les fonctions
  • Site Web de documentation multilingue: arabe, allemand, espagnol, anglais, français, russe, chinois, japonais et coréen, qui a été mis à jour

Merci

Merci pour tous les contributeurs d'Excelize. Vous trouverez ci-dessous une liste des contributeurs qui ont des contributions de code dans cette version:

  • @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 ""