Spire.PDF 8.7.2已发布。该版本支持加载OFD文件流,并且在WPF程序集中添加了接口支持设置打印选项。同时增强了PDF到图片的转换功能。此外,还修复了转换到PdfX1A2001不符合规范等已知问题。详情请阅读以下内容。
新功能:
Stream stream = File.OpenRead(inputFile);
OfdConverter converter = new OfdConverter(stream);
MemoryStream ms = new MemoryStream();
converter.ToPdf(ms);PdfDocument.Print(PdfPrintSettings printSettings)问题修复:
Spire.Spreadsheet 6.6.1 已发布。本次更新修复了加载Excel文档时出现“NullReferenceException”错误的问题。详情请阅读以下内容。
问题修复:
https://www.e-iceblue.cn/Downloads/Spire-Spreadsheet-NET.html
Spire.PDF for Java 提供了 PdfDocument.split() 方法可将一个 PDF 文档拆分为多个不同的 PDF 文档。本文,将通过 Java 后端程序来介绍如何使用 Spire.PDF for Java 将一个 PDF 页面拆分成多页,拆分页面时包括横向拆分、纵向拆分。下面是详细方法及步骤 。
首先,您需要在 Java 程序中添加 Spire.Pdf.jar 文件作为依赖项。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.pdf</artifactId>
<version>12.9.0</version>
</dependency>
</dependencies>
Spire.PDF for Java 提供了 PdfPageBase.createTemplate().draw() 方法在新的 PDF 页面上绘制源文档页面的内容。将一个页面拆分为多个页面实际上意味着源页面的内容将绘制在多个较小的页面上。以下是将第一页分割成两页的主要代码步骤:
import com.spire.pdf.*;
import com.spire.pdf.graphics.PdfLayoutBreakType;
import com.spire.pdf.graphics.PdfLayoutType;
import com.spire.pdf.graphics.PdfTextLayout;
import java.awt.*;
public class SplitHorizontally {
public static void main(String[] args) {
//加载PDF文档,并获取第一页
PdfDocument pdf = new PdfDocument();
pdf.loadFromFile("sample.pdf");
PdfPageBase page = pdf.getPages().get(0);
//创建新的PDF文档,移除新文档的页边距
PdfDocument newpdf = new PdfDocument();
newpdf.getPageSettings().getMargins().setAll(0);
//横向拆分:设置新文档页面的宽度为原文档第一页的宽度,页面高度等于原文档第一页高度的二分之一
newpdf.getPageSettings().setWidth((float) page.getSize().getWidth());
newpdf.getPageSettings().setHeight((float) page.getSize().getHeight()/2);
/*//纵向拆分:设置新文档页面的宽度为原文档第一页的二分之一,页面高度为原文档第一页高度
newpdf.getPageSettings().setWidth((float) page.getSize().getWidth()/2);
newpdf.getPageSettings().setHeight((float) page.getSize().getHeight());*/
//添加新页面到新的PDF文档
PdfPageBase newpage = newpdf.getPages().add();
//设置文本布局样式
PdfTextLayout format = new PdfTextLayout();
format.setBreak(PdfLayoutBreakType.Fit_Page);
format.setLayout(PdfLayoutType.Paginate);
//根据原文档第一页创建模板,并将模板画到新文档的新添加页面,页面画满之后自动分页
page.createTemplate().draw(newpage, new Point(0, 0), format);
//保存文档
newpdf.saveToFile("HorizontallySplitPage.pdf");
newpdf.close();
pdf.close();
}
}
如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请该Email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用JavaScript。获取有效期 30 天的临时许可证。
Spire.Presentation 7.6.1 已发布。该版本修复了获取形状的填充颜色不正确以及插入 HTML 到 PPT 时程序抛出“ArgumentOutOfRangeException”异常的问题。详情请阅读以下内容。
问题修复:
https://www.e-iceblue.cn/Downloads/Spire-Presentation-NET.html
在不少实际开发场景中,需要实现文档格式转换的需求。为了满足更多开发者对文档格式转换的要求,解决实际需求中的的问题,Spire.Doc for Java 中提供了多种文档格式供开发者选择以实现不同文档格式之间的转换。本文,将以 HTML 转为 XPS 格式为例,介绍如何实现转换,下面是详细方法和步骤。
首先,您需要在 Java 程序中添加 Spire.Doc.jar 文件作为依赖项。您可以从这个链接下载 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.doc</artifactId>
<version>14.9.5</version>
</dependency>
</dependencies>
实现转换时,可直接调用 Spire.Doc for Java 提供的 Document.saveToFile() 方法将目标文档格式的枚举值设置成 XPS 即可。下面是转换的代码步骤:
import com.spire.doc.*;
public class HTMLtoXPS {
public static void main(String[] args) {
//创建Document类的对象
Document doc = new Document();
//加载HTML文件
doc.loadFromFile("Spire.html",FileFormat.Html);
//保存为XPS格式
doc.saveToFile("HTMLtoXPS.xps",FileFormat.XPS);
doc.dispose();
}
}
如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请该Email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用JavaScript。获取有效期 30 天的临时许可证。
Spire.Office for Java 7.6.4 已发布。本次更新包含一些 新功能,如:Spire.XLS for Java支持在 Excel 转 HTML 时设置是否转出隐藏的工作表;Spire.Presentation for Java支持裁剪 PPT 中的图片以及在格式转换时设置默认备用字体;Spire.Doc for Java增强了Word 到 PDF 和 Word 到 HTML 的转换功能。此外,该版本还修复了一些已知问题。详情请阅读以下内容。
获取Spire.Office for Java 7.6.4请点击:https://www.e-iceblue.cn/Downloads/Spire-Office-JAVA.html
新功能:
Workbook book=new Workbook();
book.loadFromFile("test.xlsx");
//false --- 转出隐藏的工作表
//true--- 不转出隐藏的工作表
book.saveToHtml("output.html",false);问题修复:
新功能:
Presentation.setDefaultFontName("华文行楷");
Presentation ppt = new Presentation();
ppt.loadFromFile(inputFile);
ppt.saveToFile(outputFile, FileFormat.PDF);
//用于重置文档转换默认字体
Presentation.resetDefaultFontName();SlidePicture slidePicture = (SlidePicture)presentation.getSlides().get(0).getShapes().get(0);
//裁剪起始坐标根据原图片的位置进行调整
slidePicture.crop(slidePicture.getLeft()+50f,slidePicture.getTop()+50f,100f,200f);问题修复:
问题修复:
问题修复:
Spire.Doc for Java 10.6.6 已发布。本次更新增强了 Word 到 PDF 的转换。此外,还修复了一些已知问题,如添加到Word的图片 Ole 打开失败和加载 Word 文档,程序抛出"NullPointerException"异常等问题。详情请阅读以下内容。
问题修复:
XPS 文件是一种静态文档格式,描述了文档结构和内容,包括布局和外观,通常,该格式的文件可通过 XPS Viewer 及浏览器来打开。通过后端程序代码,我们可以将动态的 Html 文件转换为XPS格式;本文,将使用 Spire.Doc for .NET 以 C# 和 VB.NET 代码为例来展示如何实现转换。
首先,您需要将 Spire.Doc for .NET 包含的 DLL 文件作为引用添加到您的 .NET 项目中。DLL 文件可以从此链接下载,也可以通过 NuGet 安装。
PM> Install-Package Spire.DocSpire.Doc for .NET 提供了方法可直接将源文档保存为 XPS 格式,只需在选择目标文件格式时选择格式枚举值为 XPS 即可。以下是转换的代码步骤:
using Spire.Doc;
namespace HTMLtoXPS
{
class Program
{
static void Main(string[] args)
{
//创建Document类的对象
Document doc = new Document();
//加载html文件
doc.LoadFromFile("input.html",FileFormat.Html);
//保存为XPS格式
doc.SaveToFile("HtmlToXPS.xps",FileFormat.XPS);
}
}
}Imports Spire.Doc
Namespace HTMLtoXPS
Class Program
Private Shared Sub Main(args As String())
'创建Document类的对象
Dim doc As New Document()
'加载html文件
doc.LoadFromFile("input.html", FileFormat.Html)
'保存为XPS格式
doc.SaveToFile("HtmlToXPS.xps", FileFormat.XPS)
End Sub
End Class
End Namespace
如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请该Email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用JavaScript。获取有效期 30 天的临时许可证。
Spire.PDF for Java 8.6.8 已发布。该版本提供TextFindParameter.Regex枚举类型支持正则匹配,并且提供签名新接口PdfOrdinarySignatureMaker。同时增强了PDF到PDFA1A的转换功能。此外,该版本还修复了查找文本顺序与页面上的文本顺序不一致等已知问题。详情请阅读以下内容。
新功能:
document.getPages().get(0).findText("", EnumSet.of(TextFindParameter.Regex));String inputFile = "input.pdf";
String outputFile = "result.pdf";
String inputfile_img = "sign.png";
String inputFile_Pfx = "gary.pfx";
//load pdf
PdfDocument doc = new PdfDocument();
doc.loadFromFile(inputFile);
//load pfx file
PdfCertificate x509 = new PdfCertificate(inputFile_Pfx, "e-iceblue");
PdfOrdinarySignatureMaker signatureMaker = new PdfOrdinarySignatureMaker(doc, x509);
PdfSignature signature = signatureMaker.getSignature();
PdfSignatureAppearance appearance = new PdfSignatureAppearance(signature);
//set ImageAndSignDetail mode
appearance.setGraphicMode(GraphicMode.SignImageAndSignDetail);
//set signature content
appearance.setNameLabel("SSSSSSSSSS:");
signature.setName("Peekaboo");
appearance.setContactInfoLabel("Phone:");
signature.setContactInfo("028-81705109");
appearance.setDateLabel("Date: ");
appearance.setLocationLabel("Address: ");
signature.setLocation("ChengDu");
appearance.setReasonLabel("Cause");
signature.setReason("I am owner of ducument");
appearance.setSignImageLayout(SignImageLayout.Stretch);
appearance.setSignatureImage(PdfImage.fromFile(inputfile_img));
//define signature size and position and add it in PDF
for (int i = 0; i < doc.getPages().getCount(); i++)
{
signatureMaker.makeSignature("Peekaboo_" + (i + 1), doc.getPages().get(i), (float)doc.getPages().get(i).getActualSize().getWidth() - 340, (float)doc.getPages().get(0).getActualSize().getHeight() - 150, 270, 100, appearance);
}
//save document
doc.saveToFile(outputFile);
doc.close();问题修复:
Spire.Doc 10.6.6 已发布。本次更新新增支持用新引擎转换 Word 到 PDF 时,将 Word 的目录转换为 PDF 中对应的书签以及取消文档中的超链接。详情请阅读以下内容。
新功能:
ToPdfParameterList toPdf = new ToPdfParameterList();
toPdf.CreateWordBookmarks = true;
toPdf.CreateWordBookmarksUsingHeadings = true;
document.setUseNewEngine(true);
document.saveToFile("output.pdf",toPdf);ToPdfParameterList toPdf = new ToPdfParameterList();
toPdf.DisableLink = true;
document.setUseNewEngine(true);
document.saveToFile("output.pdf",toPdf);