Spire.XLS 12.3.2已发布。该版本增强了Excel到PDF的转换功能,并且修复了程序即使捕获到“NullReferenceException”也被中断等已知问题。详情请阅读以下内容。
问题修复:
在处理冗长的 Word 文档时,可以在文档中插入不同名称的书签便于标记位置。插入书签后,不必逐页滚动即可快速跳转到指定位置。在本文中,您将学习如何使用 Spire.Doc for .NET 在已有 Word 文档插入书签。
首先,您需要添加 Spire.Doc for .NET 包中包含的 DLL 文件作为 .NET 项目中的引用。DLL 文件可以从此链接下载或通过 NuGet 安装。
PM> Install-Package Spire.DocSpire.Doc for .NET 提供了 Paragraph.AppendBookmarkStart(string name) 和 Paragraph.AppendBookmarkEnd(string name) 方法来将指定名称的书签插入到 Word 文档的指定段落中。详细步骤如下。
using Spire.Doc;
namespace WordBookmark
{
class Bookmark
{
static void Main(string[] args)
{
//创建一个实例文档
Document document = new Document();
//加载示例 Word 文档
document.LoadFromFile(@"C:\Users\Administrator\Desktop\test.docx");
//获取第一节
Section section = document.Sections[0];
//将指定名称的书签插入指定段落
section.Paragraphs[10].AppendBookmarkStart("Java语言的特点");
section.Paragraphs[15].AppendBookmarkEnd("Java语言的特点");
//保存文档
document.SaveToFile("Bookmark.docx", FileFormat.Docx);
}
}
}Imports Spire.Doc
Namespace WordBookmark
Class Bookmark
Shared Sub Main(ByVal args() As String)
'创建一个实例文档
Dim document As Document = New Document()
'加载示例 Word 文档
document.LoadFromFile("https://cdn.e-iceblue.cn/C:\Users\Administrator\Desktop\test.docx")
'获取第一节
Dim section As Section = document.Sections(0)
'将指定名称的书签插入指定段落
section.Paragraphs(10).AppendBookmarkStart("Java语言的特点")
section.Paragraphs(15).AppendBookmarkEnd("Java语言的特点")
'保存文档
document.SaveToFile("Bookmark.docx", FileFormat.Docx)
End Sub
End Class
End Namespace
如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请 该Email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用JavaScript。 获取有效期 30 天的临时许可证。
CSV(逗号分隔值)文件是包含用逗号分隔的数据的纯文本文件。它广泛用于将数据从一个应用程序导入或导出到另一个应用程序。在某些情况下,您可能需要在 CSV 和 Excel 之间进行转换。在本文中,您将学习如何在 C# 和 VB.NET 中使用 Spire.XLS for .NET 库以编程方式实现此功能。
首先,您需要添加 Spire.XLS for .NET 包中包含的 DLL 文件作为 .NET 项目中的引用。DLL文件可以从此链接下载或通过 NuGet 安装。
PM> Install-Package Spire.XLS以下是将 Excel 转换为 CSV 的步骤:
using Spire.Xls;
using System.Text;
namespace ConvertAWorksheetToCsv
{
class Program
{
static void Main(string[] args)
{
//创建 Workbook 类的实例
Workbook workbook = new Workbook();
//加载Excel文件
workbook.LoadFromFile("C:\\Users\\Administrator\\Desktop\\Sample.xlsx");
//获取第一张工作表
Worksheet sheet = workbook.Worksheets[0];
//将工作表保存为CSV
sheet.SaveToFile("ExcelToCSV.csv", ",", Encoding.UTF8);
}
}
}Imports Spire.Xls
Imports System.Text
Namespace ConvertAWorksheetToCsv
Class Program
Shared Sub Main(ByVal args() As String)
'创建 Workbook 类的实例
Dim workbook As Workbook = New Workbook()
'加载Excel文件
workbook.LoadFromFile("C:\\Users\\Administrator\\Desktop\\Sample.xlsx")
'获取第一张工作表
Dim sheet As Worksheet = workbook.Worksheets(0)
'将工作表保存为CSV
sheet.SaveToFile("ExcelToCSV.csv", ",", Encoding.UTF8)
End Sub
End Class
End Namespace

以下是将 CSV 转换为 Excel 的步骤:
using Spire.Xls;
namespace ConvertCsvToExcel
{
class Program
{
static void Main(string[] args)
{
//创建 Workbook 类的实例
Workbook workbook = new Workbook();
//加载CSV文件
workbook.LoadFromFile(@"C:\\Users\\Administrator\\Desktop\\ExcelToCSV.csv", ",", 1, 1);
//获取第一个工作表
Worksheet sheet = workbook.Worksheets[0];
//访问工作表中使用的范围
CellRange usedRange = sheet.AllocatedRange;
//将范围内的数字另存为文本时忽略错误
usedRange.IgnoreErrorOptions = IgnoreErrorType.NumberAsText;
//自动调整列和行
usedRange.AutoFitColumns();
usedRange.AutoFitRows();
//保存输出文档
workbook.SaveToFile("CSVToExcel.xlsx", ExcelVersion.Version2013);
}
}
}Imports Spire.Xls
Namespace ConvertCsvToExcel
Class Program
Shared Sub Main(ByVal args() As String)
'创建 Workbook 类的实例
Dim workbook As Workbook = New Workbook()
'加载CSV文件
workbook.LoadFromFile("C:\\Users\\Administrator\\Desktop\\ExcelToCSV.csv", ",", 1, 1)
'获取第一个工作表
Dim sheet As Worksheet = workbook.Worksheets(0)
'访问工作表中使用的范围
Dim usedRange As CellRange = sheet.AllocatedRange
'将范围内的数字另存为文本时忽略错误
usedRange.IgnoreErrorOptions = IgnoreErrorType.NumberAsText
'自动调整列和行
usedRange.AutoFitColumns()
usedRange.AutoFitRows()
'保存输出文档
workbook.SaveToFile("CSVToExcel.xlsx", ExcelVersion.Version2013)
End Sub
End Class
End Namespace
如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请 该Email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用JavaScript。 获取有效期 30 天的临时许可证。
Spire.Presentation for Java 5.3.0已发布。该版本增强了PPT 文件到PDF以及图片的转换功能。此外还修复了获取的文本框垂直对齐值不正确等已知问题。详情请阅读以下内容。
问题修复:
https://www.e-iceblue.cn/Downloads/Spire-Presentation-JAVA.html
Spire.Presentation 7.2.5已发布。该版本支持创建“地图”图表,还支持修改图表源数据的数字格式。此外还修复了PPT转PDF后,部分内容不正确等已知问题。详情请阅读以下内容。
新功能:
Presentation ppt = new Presentation();
IChart chart = ppt.Slides[0].Shapes.AppendChart(ChartType.Map, new RectangleF(50, 50, 450, 450), false);
chart.ChartData[0, 1].Text = "series";
string[] countries = { "China", "Russia", "France", "Mexico", "United States", "India", "Australia" };
for (int i = 0; i < countries.Length; i++)
{
chart.ChartData[i + 1, 0].Text = countries[i];
}
int[] values = { 32, 20, 23, 17, 18, 6, 11 };
for (int i = 0; i < values.Length; i++)
{
chart.ChartData[i + 1, 1].NumberValue = values[i];
}
chart.Series.SeriesLabel = chart.ChartData[0, 1, 0, 1];
chart.Categories.CategoryLabels = chart.ChartData[1, 0, 7, 0];
chart.Series[0].Values = chart.ChartData[1, 1, 7, 1];
ppt.SaveToFile("output.pptx", Spire.Presentation.FileFormat.Pptx2013);
Presentation ppt = new Presentation();
ppt.LoadFromFile(@"input.pptx");
ISlide slide = ppt.Slides[2];
foreach (IShape shape in slide.Shapes)
{
if (shape is IChart)
{
IChart chart = shape as IChart;
if (chart.Type.Equals(ChartType.BarClustered))
{
for (int i = 1; i < 5; i++)
{
chart.ChartData[i, 1].NumberFormat = "#,##0.00";
}
}
}
}
ppt.SaveToFile("result.pptx", Spire.Presentation.FileFormat.Pptx2013);
问题修复:
https://www.e-iceblue.cn/Downloads/Spire-Presentation-NET.html
Spire.Office for Java 5.2.2已发布。该版本带来了一些新功能,比如:Spire.PDF for Java支持将TIFF文件以及OFD文件转换为PDF,还增强了PDF到HTML,PDF到图片,PDF到PDFA1B,PDF到PDFA2A的转换功能。Spire.Doc for Java支持在段落中查找所有匹配的字符串,并增强了Word到PDF以及HTML到Word的转换功能。此外还修复了其它一些已知问题,详情请阅读以下内容。
获取Spire.Office for Java 5.2.2请点击:https://www.e-iceblue.cn/Downloads/Spire-Office-JAVA.html
新功能:
PdfDocument doc = new PdfDocument();
PdfPageBase page = doc.getPages().add();
PdfImage myTiff = PdfImage.fromFile("TiffToPdf.tiff");
page.getCanvas().drawImage(myTiff, 60, 60, 260, 150);
doc.saveToFile("output.pdf", FileFormat.PDF);
boolean isPasswordProtected = PdfDocument.isPasswordProtected(inputFile);
OfdConverter converter = new OfdConverter(inputFile);
converter.toPdf(outputFile);
问题修复:
新功能:
Document document = new Document();
document.loadFromFile("https://cdn.e-iceblue.cn/Sample.docx");
Section s = document.getSections().get(0);
Paragraph para = s.getParagraphs().get(0);
//第一种方式
TextSelection[] textSelections = para.findAllString("The", false, true);
for (TextSelection selection : textSelections)
{
//高亮
selection.getAsOneRange().getCharacterFormat().setHighlightColor(new Color(255, 255, 0));
}
//第二种方式
Pattern c = Pattern.compile("The");
TextSelection[] textSelections = para.findAllPattern(c);
for (TextSelection selection : textSelections)
{
TextRange[] results = selection.getAsRange();
for (TextRange result : results)
{
//高亮
result.getCharacterFormat().setHighlightColor(Color.yellow);
}
}
问题修复:
Spire.Office 7.2.3已发布。本次更新带来了一些新功能。例如:Spire.Doc更新新增document.AutoUpdateStylesByTemplate = false来禁止自动更新文档样式;Spire.PDF支持从 PDF 表单域获取 JavaScript 字符串并增强了PDF到图片的转换功能;Spire.Email实现了LinkedResource接口支持给邮件添加图片。此外,该版本还修复了大量已知的问题。
该版本涵盖了最新版的 Spire.Doc, Spire.PDF, Spire.XLS, Spire.Presentation, Spire.Email, Spire.DocViewer, Spire.PDFViewer, Spire.Spreadsheet, Spire.OfficeViewer, Spire.DataExport, Spire.Barcode。
版本信息如下:
https://www.e-iceblue.cn/Downloads/Spire-Office-NET.html
新功能:
问题修复:
新功能:
Spire.Pdf.PdfDocument doc = new Spire.Pdf.PdfDocument();
doc.LoadFromFile(@"input.pdf", FileFormat.PDF);
PdfFormWidget fw = doc.Form as PdfFormWidget;
StringBuilder sb = new StringBuilder();
for (int i = 0; i < fw.FieldsWidget.Count; i++)
{
PdfField pdfField = fw.FieldsWidget[i];
if (pdfField is PdfCheckBoxWidgetFieldWidget)
{
PdfCheckBoxWidgetFieldWidget checkBoxField = pdfField as PdfCheckBoxWidgetFieldWidget;
PdfJavaScriptAction mousedown = (PdfJavaScriptAction)checkBoxField.Actions.MouseDown; sb.Append(mousedown.Script.ToString());
}
}
string result = @"js-output.txt";
File.WriteAllText(result, sb.ToString());
问题修复:
新功能:
MailMessage mail = new MailMessage("From @domain.com", "To @domain.com");
mail.To.Add("AddedTo @domain.com");
mail.ReplyTo.Add("ReplyTo @domain.com");
mail.Cc.Add("Cc @domain.com");
mail.Bcc.Add("Bcc @domain.com");
mail.Subject = "New message created by Spire.Email for .NET";
//引用图片资源
//example:<body background='cid:ice.png'>
LinkedResource resource = new LinkedResource(@"../../../../../Data/TestData/ice.png");
resource.ContentId = "ice.png";
mail.LinkedResources.Add(resource);
//设置正文html
string htmlString = @"
<html>
<body background='cid:ice.png'>
<p>您好!</p>
<p>非常感谢您邀请我参加2月10日(周五)晚8点在贵公司总部举办的年终晚会。我很乐意参加,期待在晚会上见到您和您的同事们。</p>
<p>预祝公司年会圆满成功。<br>Nina<br>2022年1月12日</p>
</body>
</html>";
mail.BodyHtml = htmlString;
// 保存邮件
mail.Save("CreateNewEmail.msg", MailMessageFormat.Msg);
Spire.Email 5.2.0已发布。该版本实现了LinkedResource接口支持给邮件添加图片。详情请阅读以下内容。
新功能:
MailMessage mail = new MailMessage("From @domain.com", "To @domain.com");
mail.To.Add("AddedTo @domain.com");
mail.ReplyTo.Add("ReplyTo @domain.com");
mail.Cc.Add("Cc @domain.com");
mail.Bcc.Add("Bcc @domain.com");
mail.Subject = "New message created by Spire.Email for .NET";
//引用图片资源
//example:<body background='cid:ice.png'>
LinkedResource resource = new LinkedResource(@"../../../../../Data/TestData/ice.png");
resource.ContentId = "ice.png";
mail.LinkedResources.Add(resource);
//设置正文html
string htmlString = @"
<html>
<body background='cid:ice.png'>
<p>您好!</p>
<p>非常感谢您邀请我参加2月10日(周五)晚8点在贵公司总部举办的年终晚会。我很乐意参加,期待在晚会上见到您和您的同事们。</p>
<p>预祝公司年会圆满成功。<br>Nina<br>2022年1月12日</p>
</body>
</html>";
mail.BodyHtml = htmlString;
// 保存邮件
mail.Save("CreateNewEmail.msg", MailMessageFormat.Msg);
Spire.Doc 10.2.11已发布。此次更新新增document.AutoUpdateStylesByTemplate = false来禁止自动更新文档样式,同时还修复了一些在转换Word到PDF时出现的问题。详情请阅读以下内容。
新功能:
问题修复:
通常,一个 Excel 文档可能包含多个名称相似的工作表,例如 Sheet1、Sheet2、Sheet3。为了使文档更有条理,同时方便搜索,建议重命名这些工作表并设置不同的选项卡颜色。在本文中,您将学习如何使用 Spire.XLS for Java 以编程方式完成此任务。
首先,您需要将 Spire.Xls.jar 文件作为依赖项添加到您的 Java 程序中。可以从此链接下载 JAR 文件。如果您使用 Maven,您可以通过将以下代码添加到项目的 pom.xml 文件中轻松地在应用程序中导入 JAR 文件。
<repositories>
<repository>
<id>com.e-iceblue</id>
<name>e-iceblue</name>
<url>https://repo.e-iceblue.cn/repository/maven-public/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>e-iceblue</groupId>
<artifactId>spire.xls</artifactId>
<version>15.11.3</version>
</dependency>
</dependencies>
详细步骤如下:
import com.spire.xls.*;
import java.awt.*;
public class RenameSheetandSetTabColor {
public static void main(String[] args) {
//创建Workbook对象
Workbook workbook = new Workbook();
//加载示例Excel文档 workbook.loadFromFile("C:\\Users\\Administrator\\Desktop\\input.xlsx");
//获取第一个工作表
Worksheet worksheet = workbook.getWorksheets().get(0);
//重命名第一个工作表并设置其选项卡颜色
worksheet.setName("Data");
worksheet.setTabColor(Color.red);
//获取第二个工作表
worksheet = workbook.getWorksheets().get(1);
//重命名第二个工作表并设置其标签颜色
worksheet.setName("Chart");
worksheet.setTabColor(Color.green);
//获取第三张工作表
worksheet = workbook.getWorksheets().get(2);
//重命名第三个工作表并设置其标签颜色
worksheet.setName("Summary");
worksheet.setTabColor(Color.blue);
//保存文档
workbook.saveToFile("RenameSheet.xlsx", ExcelVersion.Version2010);
}
}
如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请 该Email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用JavaScript。 获取有效期 30 天的临时许可证。