冰蓝科技
|
028-81705109
|
|
微信扫一扫
|

Spire.Cloud 纯前端文档控件

WPS Office 是由我国金山软件公司开发的一款办公软件,“WPS文字”是其中的一个组件;在 WPS 文字界面中可执行“文件”-“输出为PDF”实现将文字文档转成 PDF 文档,并保存到指定路径。通过使用 Spire.Doc for Java 不仅支持将 Microsoft Word 转为 PDF 格式,同样也支持将 WPS 文字文档转为 PDF 格式,本篇文章中,将介绍如何来实现转换。

安装 Spire.Doc for Java

首先,您需要在 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>

将 WPS 文字文档转为 PDF

实现转换的步骤如下:

  • Java
import com.spire.doc.*;

import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;

public class WPSToPDF{
    public static void main(String[] args)throws IOException {
        //通过流加载WPS文字文档
        FileInputStream inputStream = new FileInputStream(new File("input.wps"));
        Document document = new Document();
        document.loadFromStream(inputStream, FileFormat.Wps);

        //保存为PDF
        document.saveToFile("WPStoPDF.pdf",FileFormat.PDF);
    }
}

转换结果:

Java 将 WPS 文字文档转为 PDF

申请临时 License

如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请 该Email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用JavaScript。 获取有效期 30 天的临时许可证。

印章可以保证文档的真实性和有效性,同时也让文档显得更加专业。由于 Microsoft Word 并没有提供内置的印章功能,你可以通过向 Word 文档添加图片来模拟印章效果。这种方法在将文档打印出来或转换成 PDF 时很有用。本文将介绍怎样使用 Spire.Doc for Java 在 Word 文档中添加印章。

安装 Spire.Doc for Java

首先,您需要在 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>

在 Word 文档中添加图像印章

Spire.Doc for Java 向开发者们提供了下表中的核心类和方法。它们可以用来在 Word 文档中添加和格式化图片,使其看起来像是印章。

名称 描述
DocPicture Class 表示 Word 文档中的图片
Paragraph.appendPicture() Method 在段落末尾添加一张图片
DocPicture.setHorizontalPosition() Method 设置图片的绝对水平位置
DocPicture.setVerticalPosition() Method 设置图片的绝对垂直位置
DocPicture.setWidth() Method 设置图片宽度
DocPicture.setHeight Method 设置图片高度
DocPicture.setTextWrappingStyle() Method 设置图片的文字环绕风格

以下是在 Word 文档中添加图像印章的步骤:

  • Java
import com.spire.doc.*;
import com.spire.doc.documents.Paragraph;
import com.spire.doc.documents.TextWrappingStyle;
import com.spire.doc.fields.DocPicture;

public class AddStamp {
   public static void main(String[] args) {
       // 创建一个 Document 类的实例
       Document doc = new Document();

       // 加载 Word 文档
       doc.loadFromFile("/示例.docx");

       // 获取特定段落
       Section section = doc.getSections().get(0);
       Paragraph paragraph = section.getParagraphs().get(4);

       // 添加图片到 Word 文档
       DocPicture picture = paragraph.appendPicture("/机密文件.png");

       // 设置图片的位置
       picture.setHorizontalPosition(240f);
       picture.setVerticalPosition(120f);

       // 设置图片的宽和高
       picture.setWidth(150);
       picture.setHeight(150);

       // 将图片的文字围绕风格设置为浮于文字上方,使其更像印章
       picture.setTextWrappingStyle(TextWrappingStyle.In_Front_Of_Text);

       // 保存修改后的文档
       doc.saveToFile("/添加印章.docx", FileFormat.Docx);
       doc.dispose();
   }
}

Java 在 Word 文档中添加图像印章

申请临时 License

如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请该Email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用JavaScript。获取有效期 30 天的临时许可证。

该文将介绍如何使用Spire.Doc for .NET 添加图章或电子章到Word文档。

C#
using Spire.Doc;
using Spire.Doc.Documents;
using Spire.Doc.Fields;
using System.Drawing;

namespace WordDemo
{
    class Program
    {
        static void Main(string[] args)
        {
            //加载示例文档
            Document doc = new Document();
            doc.LoadFromFile("sample.docx");

            //添加电子章
            Image image = Image.FromFile("Stamp.png");
            DocPicture picture = doc.Sections[0].Paragraphs[0].AppendPicture(image);

            //指定电子章位置
            picture.HorizontalPosition = 200f;
            picture.VerticalPosition = 160f;

            //设置电子章大小
            picture.Width = 150;
            picture.Height = 150;

            //设置图片浮于文字上方
            picture.TextWrappingStyle = TextWrappingStyle.InFrontOfText;

            //保存文档
            doc.SaveToFile("Result.docx", FileFormat.Docx);

        }
    }
}
VB.NET
Imports Spire.Doc
Imports Spire.Doc.Documents
Imports Spire.Doc.Fields
Imports System.Drawing

Namespace WordDemo
    
    Class Program
        
        Private Shared Sub Main(ByVal args() As String)

            Dim doc As Document = New Document
            doc.LoadFromFile("sample.docx")

            Dim image As Image = Image.FromFile("Stamp.png")
            Dim picture As DocPicture = doc.Sections(0).Paragraphs(0).AppendPicture(image)

            picture.HorizontalPosition = 200!
            picture.VerticalPosition = 160!
            picture.Width = 150
            picture.Height = 150

            picture.TextWrappingStyle = TextWrappingStyle.InFrontOfText

            doc.SaveToFile("Result.docx", FileFormat.Docx)
        End Sub
    End Class
End Namespace

效果图:

C#/VB.NET 插入电子图章到 Word 文档

Spire.Email 4.7已发布。本次更新修复了使用筛选条件语句查询邮件时程序报错的问题。详情请阅读以下内容。

问题修复:


获取Spire.Email 4.7请点击:

https://www.e-iceblue.cn/Downloads/Spire-Email-NET.html

Spire.Doc 9.7.14已发布。本次更新增强了转换Word 到PDF/图片,以及转换RTF/HTML到PDF的功能。此外,该版本还修复了加载和比较Word文档时出现的问题。详情请阅读以下内容。

问题修复:


获取Spire.Doc 9.7.14请点击:

https://www.e-iceblue.cn/Downloads/Spire-Doc-NET.html

本文将介绍如何使用Spire.PDF for Java判断PDF文档是否为PDF文件包。

原PDF文档:

Java 判断 PDF 文档是否为 PDF 文件包(Portfolio)

import com.spire.pdf.PdfDocument;

public class DetectPortfolio {
    public static void main(String []args){
        //创建PdfDocument实例
        PdfDocument doc = new PdfDocument();
        //加载PDF文档
        doc.loadFromFile("Portfolio.pdf");

        //判断该PDF是否为PDF文件包
        boolean value = doc.isPortfolio();
        if (value)
        {
            System.out.println("此文档是PDF文件包");
        }
        else
        {
            System.out.println("此文档不是PDF文件包");
        }
    }
}

运行结果:

Java 判断 PDF 文档是否为 PDF 文件包(Portfolio)

在上篇文章中,我们介绍了如何使用 Spire.Doc for Java 加载,操作和保存现有WPS文字文档。在本文中,我们将介绍如何新建WPS文字文档。

import com.spire.doc.Document;
import com.spire.doc.FileFormat;
import com.spire.doc.Section;
import com.spire.doc.documents.HorizontalAlignment;
import com.spire.doc.documents.Paragraph;
import com.spire.doc.documents.ParagraphStyle;

import java.awt.*;
import java.io.*;

public class CreateWpsWord {
    public static void main(String[] args) throws IOException {
        //创建Document实例
        Document document = new Document();
        //添加节到文档
        Section section = document.addSection();

        //添加三个段落至该节
        Paragraph para1 = section.addParagraph();
        para1.appendText("Spire.Doc for Java");

        Paragraph para2 = section.addParagraph();
        para2.appendText("Spire.Doc for Java 是一款专业的 Java Word 组件,开发人员使用它可以轻松地将 Word 文档创建、读取、编辑、转换和打印等功能集成到自己的 Java 应用程序中。"+
                "作为一款完全独立的组件,Spire.Doc for Java 的运行环境无需安装 Microsoft Office。");

        Paragraph para3 = section.addParagraph();
        para3.appendText("Spire.Doc for Java 能执行多种 Word 文档处理任务,包括生成、读取、转换和打印 Word 文档,插入图片,添加页眉和页脚,创建表格,添加表单域和邮件合并域,"+
                        "添加书签,添加文本和图片水印,设置背景颜色和背景图片,添加脚注和尾注,添加超链接、数字签名,加密和解密 Word 文档,添加批注,添加形状等。");

        //将第一段作为标题,设置标题段落格式
        ParagraphStyle style1 = new ParagraphStyle(document);
        style1.setName("titleStyle");
        style1.getCharacterFormat().setBold(true);
        style1.getCharacterFormat().setTextColor(Color.BLUE);
        style1.getCharacterFormat().setFontName("Lucida Sans Unicode");
        style1.getCharacterFormat().setFontSize(12f);
        document.getStyles().add(style1);
        para1.applyStyle("titleStyle");

        //设置其余两个段落的格式
        ParagraphStyle style2 = new ParagraphStyle(document);
        style2.setName("paraStyle");
        style2.getCharacterFormat().setFontName("Lucida Sans Unicode");
        style2.getCharacterFormat().setFontSize(11f);
        document.getStyles().add(style2);
        para2.applyStyle("paraStyle");
        para3.applyStyle("paraStyle");

        //设置标题段落居中对齐
        para1.getFormat().setHorizontalAlignment(HorizontalAlignment.Center);

        //设置第二、第三段落的段首缩进
        para2.getFormat().setFirstLineIndent(25f);
        para3.getFormat().setFirstLineIndent(25f);

        //设置第一、第二段落的段后间距
        para1.getFormat().setAfterSpacing(10f);
        para2.getFormat().setAfterSpacing(10f);

        //保存文档
        ByteArrayOutputStream bos = new ByteArrayOutputStream();
        document.saveToStream(bos, FileFormat.Doc);
        //将流写入WPS文件
        FileOutputStream fos = new FileOutputStream("CreateWPS.wps");
        fos.write(bos.toByteArray());
        //关闭流
        bos.close();
        fos.close();
    }
}

结果文档:

Java 创建 WPS 文字(Word)文档

本文将通过使用Spire.Barcode for .NET展示如何在创建一维条码及二维条码时,设置条码数据文本不可见,即创建后的条码效果图中不展示数据文本信息,只需通过设置 settings.ShowText = false; 即可,如需设置文本数据可见,则设置 settings.ShowText = true;。

1、创建一维条码时设置数据文本不可见

C#
using Spire.Barcode;
using System.Drawing;

namespace CreateBarcode
{
    class Program
    {
        static void Main(string[] args)
        {
            BarcodeSettings settings = new BarcodeSettings();//创建BarcodeSettings实例
            settings.Type = BarCodeType.Codabar;//指定条码类型
            settings.Data = "123456789";//设置条码数据
            settings.ShowText = false;//设置数据文本不显示
            /*settings.ShowText = true;//显示数据文本
            settings.ShowTextOnBottom = true;//设置数据文本显示在条码底部*/
            settings.X = 0.8f;//设置黑白条宽度
            settings.ImageHeight = 50;//设置生成的条码图片高度
            settings.ImageWidth = 70;//设置生成的条码图片宽度
            settings.HasBorder = true;//设置边框可见
            settings.BorderColor = Color.PaleTurquoise;//设置条码边框颜色
            settings.BorderWidth = 1;//设置条码边框宽度
            settings.BackColor = Color.Beige;//设置条码背景色

            BarCodeGenerator barCodeGenerator = new BarCodeGenerator(settings);//创建BarCodeGenerator实例
            
//创建图片并保存为PNG格式
            Image image = barCodeGenerator.GenerateImage();
            image.Save("CreateBarcode.png");
        }
    }
}
VB.NET
Imports Spire.Barcode
Imports System.Drawing

Namespace CreateBarcode
	Class Program
		Private Shared Sub Main(args As String())
			Dim settings As New BarcodeSettings() '创建BarcodeSettings实例
			settings.Type = BarCodeType.Codabar '指定条码类型
			settings.Data = "123456789" '设置条码数据
			settings.ShowText = False'设置数据文本不显示
			'settings.ShowText = true; '显示数据文本
			'settings.ShowTextOnBottom = true; '设置数据文本显示在条码底部
			settings.X = 0.8F'设置黑白条宽度
			settings.ImageHeight = 50'设置生成的条码图片高度
			settings.ImageWidth = 70'设置生成的条码图片宽度
			settings.HasBorder = True'设置边框可见
			settings.BorderColor = Color.PaleTurquoise'设置条码边框颜色
			settings.BorderWidth = 1'设置条码边框宽度
			settings.BackColor = Color.Beige'设置条码背景色
			Dim barCodeGenerator As New BarCodeGenerator(settings) '创建BarCodeGenerator实例
			'创建图片并保存为PNG格式
			Dim image As Image = barCodeGenerator.GenerateImage()
			image.Save("CreateBarcode.png")
		End Sub
	End Class
End Namespace

条码效果图:

C#/VB.NET 创建一维、二维条码时设置数据文本不可见

2、创建二维码时,设置数据文本不可见

C#
using Spire.Barcode;
using System.Drawing;

namespace CreateQRCode
{
    class Program
    {
        static void Main(string[] args)
        {
            //创建BarcodeSettings对象
            BarcodeSettings settings = new BarcodeSettings();
            settings.Type = BarCodeType.QRCode;//设置条码类型为二维码       
            settings.Data = "123456789";//设置二维码数据                       
            settings.Data2D = "123456789";//设置显示文本
            settings.ShowText = false;//设置二维码数据文本不显示
            /*settings.ShowText = true;//显示数据文本
            settings.ShowTextOnBottom = true;//数据文本显示在二维码底部*/
            settings.QRCodeDataMode = QRCodeDataMode.Numeric;//设置数据类型为数字
            settings.QRCodeECL = QRCodeECL.H;//设置二维码错误修正级别                    
            settings.X = 3.0f;//设置宽度            
            BarCodeGenerator generator = new BarCodeGenerator(settings);//实例化BarCodeGenerator类的对象

            //生成二维码图片并保存为PNG格式
            Image image = generator.GenerateImage();
            image.Save("QRCode.png");
        }
    }
}
VB.NET
Imports Spire.Barcode
Imports System.Drawing

Namespace CreateQRCode
	Class Program
		Private Shared Sub Main(args As String())
			Dim settings As New BarcodeSettings()'创建BarcodeSettings对象
			settings.Type = BarCodeType.QRCode'设置条码类型为二维码 
			settings.Data = "123456789" '设置二维码数据 
			settings.Data2D = "123456789" '设置显示文本'设置二维码数据文本不显示
			settings.ShowText = False
			'settings.ShowText = true; '显示数据文本
            'settings.ShowTextOnBottom = true; '数据文本显示在二维码底部
			settings.QRCodeDataMode = QRCodeDataMode.Numeric'设置数据类型为数字
			settings.QRCodeECL = QRCodeECL.H'设置二维码错误修正级别
			settings.X = 3F'设置宽度 
			Dim generator As New BarCodeGenerator(settings) '实例化BarCodeGenerator类的对象
			'生成二维码图片并保存为PNG格式
			Dim image As Image = generator.GenerateImage()
			image.Save("QRCode.png")
		End Sub
	End Class
End Namespace

二维码效果图:

C#/VB.NET 创建一维、二维条码时设置数据文本不可见

Spire.PDF for Java 4.7.8已发布。本次更新增强了转换PDF到Word/图片/PDF/A1A的功能,此外还修复了提取PDF文本时出现的问题。详情请阅读以下内容。

问题修复:


获取Spire.PDF for Java 4.7.8请点击:

https://www.e-iceblue.cn/Downloads/Spire-PDF-JAVA.html

WPS Office 是目前国内常用的办公软件之一,包含 WPS 文字、WPS 表格、WPS 演示等模块,可以实现查看和编辑文字、表格、演示文档等功能。在这篇文章中,我们将介绍如何使用 Spire.Doc for Java 在 Java 应用程序中加载,操作和保存 WPS 文字文档。

安装 Spire.Doc for Java

首先,您需要在 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>

从本地加载、操作和保存 WPS 文字文档

主要步骤如下:

  • Java
import com.spire.doc.Document;
import com.spire.doc.FileFormat;
import com.spire.doc.Section;
import com.spire.doc.documents.Paragraph;

import java.awt.*;
import java.io.*;

public class LoadWpsWordFromFile {
    public static void main(String[] args) throws IOException {

        //加载WPS文字文档
        Document document = new Document();
        document.loadFromFile("Sample.wps", FileFormat.WPS);
        
        //获取文档的第一个节
        Section section = document.getSections().get(0);
        //获取该节中第一个段落
        Paragraph paragraph = section.getParagraphs().get(0);
        //给该段落设置背景颜色
        paragraph.getFormat().setBackColor(Color.pink);
        
        //保存结果文档
        document.saveToFile("Output.wps", FileFormat.WPS);
    }
}

从流加载、操作和保存 WPS 文字文档

主要步骤如下:

  • Java
import com.spire.doc.Document;
import com.spire.doc.FileFormat;
import com.spire.doc.Section;
import com.spire.doc.documents.Paragraph;

import java.awt.*;
import java.io.*;

public class LoadWpsWordFromStream {

        //通过流加载WPS文字文档
        FileInputStream inputStream = new FileInputStream(new File("Sample.wps"));
        Document document = new Document();
        document.loadFromStream(inputStream, FileFormat.WPS);

        //获取文档的第一个节
        Section section = document.getSections().get(0);
        //获取该节中第一个段落
        Paragraph paragraph = section.getParagraphs().get(0);
        //给该段落设置背景颜色
        paragraph.getFormat().setBackColor(Color.pink);

        //将结果文档保存到流
        ByteArrayOutputStream bos = new ByteArrayOutputStream();
        document.saveToStream(bos, FileFormat.WPS);
        //将流写入WPS文字文档
        FileOutputStream fos = new FileOutputStream("Output.wps");
        fos.write(bos.toByteArray());
        //关闭流
        bos.close();
        fos.close();
    }
}

原 WPS 文字文档:

Java 加载,操作和保存 WPS 文字文档

结果文档:

Java 加载,操作和保存 WPS 文字文档

申请临时 License

如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请 该Email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用JavaScript。 获取有效期 30 天的临时许可证。