首页 > 其他分享 >DevExpress WinForms v24.1新版亮点:富文本编辑器、电子表格组件功能升级

DevExpress WinForms v24.1新版亮点:富文本编辑器、电子表格组件功能升级

时间:2024-09-30 10:27:50浏览次数:10  
标签:文本编辑 DevExpress 单元格 导出 WinForms 文档 worksheet 电子表格

DevExpress WinForms拥有180+组件和UI库,能为Windows Forms平台创建具有影响力的业务解决方案。DevExpress WinForms能完美构建流畅、美观且易于使用的应用程序,无论是Office风格的界面,还是分析处理大批量的业务数据,它都能轻松胜任!

DevExpress WinForms控件v24.1日前已经全新发布,新版本进一步升级了富文本编辑器、电子表格组件功能等,欢迎下载最新版体验!

DevExpress v24.1正式版下载

DevExpress技术交流群10:532598169      欢迎一起进群讨论

富文本编辑器
可访问性 - 支持屏幕阅读器

DevExpress WinForms v24.1增加了对关键可访问性相关需求的支持,包括辅助技术(如屏幕阅读器)读取文档主体中的文本、图像的替代文本和名称、文本框内容、页眉和页脚的能力。

导出为可访问的PDF

在将Word文档导出为可访问的PDF文件时,官方扩展了对以下元素的可访问性相关支持:

  • 目录标签
  • 元数据字段
  • Alt文本处理
  • 表格
  • 浮动对象

使用Adobe Acrobat Pro和PDF Accessibility Checker 2024 进行质量控制,新版本的测试文档成功地通过了PDF/UA兼容性和WCAG 2.1兼容性的验证。

当您指定PdfUACompatibility选项时,与可访问性相关的导出增强功能可以开箱即用:

C#

using System.IO;
using DevExpress.XtraRichEdit;

//...
using(FileStream stream =
new FileStream(resultFilePath, FileMode.Create, FileAccess.Write, FileShare.Read)) {
PdfExportOptions exportOptions = new PdfExportOptions();
exportOptions.PdfUACompatibility = PdfUACompatibility.PdfUA1;

richEditControl.ExportToPdf(stream, exportOptions);
}
装饰形状

DevExpress WinForms v24.1为Shape类添加了一个Decorative属性,将文档图形(图片、形状和图表)标记为装饰性的。装饰性的形状增加了视觉上的趣味,但它们不能提供信息。因此在生成可访问文档时,不需要为装饰性对象指定Alt Text(有意义的描述)。

数学方程

富文本编辑器现在保存文档时保留数学方程,您可以在DevExpress WinForms富文本编辑器中导入带有数学方程的Word文档,并将其保存为RTF和OpenXml (.docx/.docm)格式,而不会丢失内容。

注意:只有当源文档包含数学方程的备用图像时,数学方程才会被打印或导出为PDF。要抑制数学方程的导入,请将DocumentCapabilities.MathEquations属性设置为DocumentCapability.Disabled。

Gutter和镜像边距

DevExpress WinForms Rich Text Editor v24.1允许您指定沟边距-额外的空间,以确保绑定不会模糊打印页面上的文本。您可以指定沟位置(上、左、右)和边距大小,使用Document.GutterAtTopSectionMargins.GutterPosition 和 SectionMargins.Gutter属性来解决特定的使用需求。

DevExpress WinForms v24.1产品图集

下面的代码片段向第一个文档部分添加了左gutter:

C#

using DevExpress.XtraRichEdit;
using DevExpress.XtraRichEdit.API.Native;
using DevExpress.Office.Utils;
//...

richEditControl.LoadDocument(@"Documents//Alice.docx");

Document document = richEditControl.Document;
Section firstSection = wordProcessor.Document.Sections[0];

var pageMargins = firstSection.Margins;
pageMargins.GutterPosition = GutterPosition.Left;
pageMargins.Gutter = Units.InchesToDocumentsF(1);

richEditControl.SaveDocument("Alice_formatted.docx", DocumentFormat.OpenXml);

新的DocumentMarginType属性允许您定义一个规则的或镜像的边距类型,如果在纸张的两面打印并希望绑定打印输出,则启用镜像页边距。

下面的代码片段启用镜像边距并指定一个额外的空格值:

C#

using DevExpress.XtraRichEdit;
using DevExpress.XtraRichEdit.API.Native;
using DevExpress.Office.Utils;
//...
richEditControl.LoadDocument(@"Documents//Alice.docx");
Document document = richEditControl.Document;

// Enable mirrored margins
document.MarginsType = MarginsType.Mirrored;

foreach (Section section in richEditControl.Document.Sections) {
var pageMargins = section.Margins;

// Set the value for mirrored margins
pageMargins.Gutter = Units.InchesToDocumentsF(0.5f);
}

richEditControl.SaveDocument("Alice_formatted.docx", DocumentFormat.OpenXml);

新的UI元素也可用。

图像导出API

v24.1包括新的跨平台API,用于将Word文档页面导出为图像,这个新功能允许您生成文档预览。使用新的API您可以将文档页面转换为光栅和矢量图像(PNG, JPEG, BMP,多页Tiff, emf),将它们保存为磁盘上的物理文件或获取图像流列表以便在代码中进行进一步处理,还可以设置图像背景颜色、修改输出图像分辨率或生成具有指定大小的缩略图图像。

新的API可以通过Document对象的RichEditDocumentServerExtensions.ExportToImage扩展方法获得。

请注意,RichEditDocumentServerExtensions类是在DevExpress.Docs.v24.1.dll程序集中定义的。将这个程序集添加到你的项目中,或者安装"DevExpress.Document.Processor" NuGet包来使用RichEditDocumentServerExtensions成员。

下面的代码片段将第一个文档页面导出为具有指定大小和JPEG格式的图像:

C#

using DevExpress.XtraRichEdit;
using DevExpress.XtraRichEdit.Export.Image;
using DevExpress.Drawing;

richEditControl.LoadDocument(@"C:\Documents\Alice.docx");
//...
RichEditImageExportOptions options = new RichEditImageExportOptions();
options.Format = DXImageFormat.Jpeg;
options.PageRange = "1";
options.LargestEdgeLength = 1080;

richEditControl.Document.ExportToImage(@"C:\Documents\Image.jpeg", options);
将文档页面导出为SVG

全新的 Image Export APIs允许您将文档页面导出为SVG,使用RichEditImageExportOptions.Format选项将SVG设置为目标图像格式。

C#

RichEditImageExportOptions options = new RichEditImageExportOptions();
options.Format = DXImageFormat.Svg;
options.PageRange = "1";

richEditControl.Document.ExportToImage(@"C:\Documents\Image.svg", options);

SVG Export也可以从用户界面-打开打印预览对话框,单击导出到图像按钮,在图像选项对话框中选择SVG格式并完成文档导出。

SVG滚动光标

带有可滚动内容的DevExpress WinForms数据感知控件现在附带了与DPI无关的滚动光标(当用户按下鼠标中键时出现的光标),无论屏幕分辨率如何,都可以提供平滑和精确的导航。

Spreadsheet(电子表格)
可访问性增强 - 装饰形状

DevExpress WinForms v24.1为Shape类添加了一个Decorative属性,将文档图形(图片、形状和图表)标记为装饰性的。装饰性的形状增加了视觉上的趣味,但它们不能提供信息。因此在生成可访问文档时,不需要为装饰性对象指定Alt Text(有意义的描述)。

对齐和分布式文本对齐

DevExpress WinForms v24.1增加了对电子表格单元格内的水平对齐类型的支持,使用这些对齐选项的Excel文件可以打印并导出为PDF。

您可以使用Cell.Alignment.Horizontal属性在代码中指定水平对齐方式。

DevExpress WinForms v24.1产品图集

下面的代码片段指定了代码中的对齐方式:

C#

var workbook = new Workbook();
var worksheet = workbook.Worksheets[0];

Cell cellA1 = worksheet.Cells["A1"];
cellA1.Value = "Justified and top";
cellA1.Alignment.Horizontal = SpreadsheetHorizontalAlignment.Justify;
cellA1.Alignment.Vertical = SpreadsheetVerticalAlignment.Top;
workbook.ExportToPdf("Result.pdf");
按颜色排序和过滤

DevExpress WinForms Spreadsheet附带了增强的过滤器和排序相关功能,新版本添加了新的API,可以根据背景和字体颜色对工作簿数据进行排序和过滤,按单元格颜色过滤/排序的单元格范围也可以打印并导出为PDF。

排序API包括新的工作表,排序方法重载设计用于按字体颜色或填充设置(背景颜色和图案)对指定范围进行排序。

下面的代码片段跨两个单元格区域对单元格值进行排序——第一个单元格按红色字体颜色排序,第二个单元格按区域中第一个单元格指定的填充设置排序:

C#

spreadsheetControl.LoadDocument("sort-filter.xlsx");
Worksheet worksheet = spreadsheetControl.ActiveWorksheet;

// Sort cell range by font color
worksheet.Sort(worksheet["B2:B10"], Color.Red);
// Sort cell range by fill color
worksheet.Sort(worksheet["D2:D10"], worksheet["D2"].Fill);

若要按字体或背景颜色筛选单元格,需要对所需的单元格区域或表应用自动筛选器。完成后您需要从AutoFilter中获得所需的列,列集合并调用以下方法当中的一个:

下面的代码片段对单元格范围和表使用了这些方法:

C#

spreadsheetControl.LoadDocument("sort-filter.xlsx");
Worksheet worksheet = spreadsheetControl.ActiveWorksheet;

// Apply an auto-filter to a cell range and filter the first column by font color
worksheet.AutoFilter.Apply(worksheet["B1:B10"]);
worksheet.AutoFilter.Columns[0].ApplyFontColorFilter(Color.Red);

// Create a table, apply an auto-filter and filter the first column by fill color
Table table = worksheet.Tables.Add(worksheet["B12:B21"], true);
table.AutoFilter.Apply();
table.AutoFilter.Columns[0].ApplyFillColorFilter(Color.Red);

此外新API允许您跨筛选范围(当启用自动筛选时)对数据进行排序,并同时按其值/颜色对单元格进行排序(使用排序条件)。

导出单元格范围到SVG

在这个版本中增强了 CellRangeExtensions.ExportToImage 方法并添加了对SVG图像格式的支持。

CellRangeExtensions类是在DevExpress.Docs.v24.1.dll程序集中定义的,将此程序集添加到您的项目中或安装DevExpress.Document.Processor NuGet包来使用CellRangeExtensions成员。

C#

spreadsheetControl.LoadDocument("InvestmentPortfolio.xlsx", DocumentFormat.Xlsx);
Worksheet worksheet = spreadsheetControl.ActiveWorksheet;

worksheet.Range["B18:I30"].ExportToImage("cell_range_image.svg", ImageFileFormat.Svg);

SVG导出也可以从用户界面-打开打印预览对话框,单击导出到图像按钮,在图像选项对话框中选择SVG格式并完成文档导出。

标签:文本编辑,DevExpress,单元格,导出,WinForms,文档,worksheet,电子表格
From: https://www.cnblogs.com/AABBbaby/p/18441298

相关文章

  • WEB 编程:富文本编辑器 Quill 配合 Pico.css 样式被影响的问题之还是 iframe
    这个系列已经写了3篇了。这篇写如何使用iframe解决标题里面提到的问题。前情提要请看上一篇博文:WEB编程:富文本编辑器Quill配合Pico.css样式被影响的问题之ShadowDOMWEB编程:富文本编辑器Quill配合Pico.css样式被影响的问题之ShadowDOM-CSDN博客缘由缘由仍......
  • VCL界面组件DevExpress VCL v24.1.6全新发布
    DevExpressVCLControls是Devexpress公司旗下老牌的用户界面套包,所包含的控件有:数据录入、图表、数据分析、导航、布局等。该控件能帮助您创建优异的用户体验,提供高影响力的业务解决方案,并利用您现有的VCL技能为未来构建下一代应用程序立即获取DevExpressVCLv24.1.6正式版具......
  • 几款文本编辑器横向比较
    几款文本编辑器横向比较关键字:大文件、编辑器‍编辑器功能及性能比较免责声明以下列选编辑器,仅限于本人日常接触的产品,带有强烈的个人主观和随机性,未列选产品并不代表不能满足功能需求。测试数据(特别是时间),受限于观察条件,不可避免的存在误差,仅用于感性判断,请勿用于选型......
  • 【9月首发】知名界面控件DevExpress v24.1.6全新发布
    DevExpress拥有.NET开发需要的所有平台控件,包含600多个UI控件、报表平台、DevExpressDashboardeXpressApp框架、适用于VisualStudio的CodeRush等一系列辅助工具。屡获大奖的软件开发平台DevExpress近期重要版本v24.1已正式发布,该版本拥有众多新产品和数十个具有高影响力的功......
  • DevExpress WPF中文教程:如何解决编辑单元格值的常见问题?
    DevExpressWPF拥有120+个控件和库,将帮助您交付满足甚至超出企业需求的高性能业务应用程序。通过DevExpressWPF能创建有着强大互动功能的XAML基础应用程序,这些应用程序专注于当代客户的需求和构建未来新一代支持触摸的解决方案。无论是Office办公软件的衍伸产品,还是以数据为中心......
  • DevExpress WinForms中文教程:Data Grid - 如何添加或删除行?
    本教程介绍DevExpressWinForm的DataGrid控件UI元素和API,它们使您和最终用户能够添加或删除数据行。您将首选学习如何启用内置的数据导航器,然后学习如何使用MicrosoftOutlook启发的NewItem行添加新记录。最后教程将向您展示基本的API,它使您能够添加或删除行,并在最终用户使用网......
  • 前端必备14款业界受欢迎的富文本编辑器
    前端必备❗️14款业界受欢迎的富文本编辑器1、wangEditor基于JavaScript和css开发的Web富文本编辑器,轻量、简洁、开源免费。2、TinyMCE一个轻量级的基于浏览器的所见即所得编辑器,由JavaScript写成。3、百度ueditor由百度web前端研发部开发所见即所得富文本web编辑器,可定制,注重用......
  • 报表控件DevExpress Reports v24.1 —— 拥有可调整布局选项
    DevExpressReports提供了一个可调整的布局选项,允许您以最合适的方式安排、塑造和组织数据。其中一个这样的数据塑造选项是分组,可以在表报告的详细信息带内将数据安排在嵌套的多字段组中。在v24.1版本周期中引入了几个函数,它们允许您获取不同组元素的索引,这些新功能包括:CurrentR......
  • DevExpress WPF中文教程:如何解决行焦点、选择的常见问题?
    DevExpressWPF拥有120+个控件和库,将帮助您交付满足甚至超出企业需求的高性能业务应用程序。通过DevExpressWPF能创建有着强大互动功能的XAML基础应用程序,这些应用程序专注于当代客户的需求和构建未来新一代支持触摸的解决方案。无论是Office办公软件的衍伸产品,还是以数据为中心......
  • Js电子表格组件
    我经常使用的一件事是我们用来组织数据的Excel表格。Jspreadsheet执行的操作非常相似,但直接在浏览器中执行。您无需安装任何东西,只需打开并使用它即可。它非常适合任何需要以简单实用的方式组织信息的人。简单易用:如果您曾经使用过Excel,您将会有宾至如归的感觉。界面非常相似......