Rumah  >  Artikel  >  Java  >  Bagaimana untuk melaksanakan fungsi menggantikan fon dalam PDF di Java

Bagaimana untuk melaksanakan fungsi menggantikan fon dalam PDF di Java

王林
王林ke hadapan
2023-04-30 18:55:141689semak imbas

Perkenalkan jar

Konfigurasikan pom.xml dalam program Maven:

<repositories>
        <repository>
            <id>com.e-iceblue</id>
            <url>https://repo.e-iceblue.cn/repository/maven-public/</url>
        </repository>
    </repositories>
<dependencies>
    <dependency>
        <groupId>e-iceblue</groupId>
        <artifactId>spire.pdf.free</artifactId>
        <version>5.1.0</version>
    </dependency>
</dependencies>

Jika anda perlu mengimportnya secara manual, anda boleh memuat turun pakej Jar secara setempat, kemudian nyahzipnya dan cari Spire in fail lib folder .Pdf.jar. Buka "Struktur Projek" dalam IDEA dan import balang di bawah laluan tempatan ke dalam program, seperti yang ditunjukkan dalam rajah:

Bagaimana untuk melaksanakan fungsi menggantikan fon dalam PDF di Java

Kod Java

1. Gantikan semua fon

Idea: Selepas memuatkan dokumen PDF, dapatkan fon dalam dokumen sumber, kemudian tentukan fon baharu, gantikan fon asal dan akhirnya simpan dokumen itu.

Java

import com.spire.pdf.*;
import com.spire.pdf.graphics.PdfFont;
import com.spire.pdf.graphics.PdfFontFamily;
import com.spire.pdf.graphics.PdfFontStyle;
import com.spire.pdf.graphics.fonts.PdfUsedFont;

public class ReplaceAllFonts {
    public static void main(String[] args) throws Exception{
        //创建PdfDocument类的对象
        PdfDocument pdf = new PdfDocument();

        //加载PDF文档
        pdf.loadFromFile("input.pdf");

        //获取文档中的所有字体
        PdfUsedFont[] fonts = pdf.getUsedFonts();

        //遍历所有字体
        for (PdfUsedFont font: fonts) {

            //获取字体大小
            float fontSize = font.getSize();

            //创建新字体
            PdfFont newfont = new PdfFont(PdfFontFamily.Times_Roman, fontSize, PdfFontStyle.Italic);

            //替换原有字体
            font.replace(newfont);
        }

        //保存文档
        pdf.saveToFile("ReplaceAllFonts.pdf");
        pdf.dispose();
    }
}

Bagaimana untuk melaksanakan fungsi menggantikan fon dalam PDF di Java

2 Gantikan fon yang ditentukan

Idea: Muatkan. PDF Selepas mencari dokumen, cari dan dapatkan fon yang ditentukan dalam dokumen, kemudian tentukan fon baharu, gantikan fon asal yang ditemui, dan akhirnya simpan dokumen itu.

Jawa

import com.spire.pdf.PdfDocument;
import com.spire.pdf.graphics.*;
import com.spire.pdf.graphics.fonts.PdfUsedFont;

public class ReplaceSpecificFont {
    public static void main(String[] args) throws Exception{
        //创建PdfDocument类的对象
        PdfDocument pdf = new PdfDocument();

        //加载PDF文档
        pdf.loadFromFile("sample.pdf");

        //获取文档中的所有字体
        PdfUsedFont[] fonts = pdf.getUsedFonts();

        //遍历所有字体
        for (PdfUsedFont font: fonts)
        {
            //判断符合条件的字体
            if(font.getName().equals("Calibri"))
            {
                //获取字体大小
                float fontSize = font.getSize();

                //创建新字体
                PdfFont newfont = new PdfFont(PdfFontFamily.Times_Roman, fontSize, PdfFontStyle.Italic);

                //替换Calibri字体
                font.replace(newfont);
            }
        }

        //保存文档
        pdf.saveToFile("ReplaceSpecificFont.pdf");
        pdf.dispose();
    }
}

Bagaimana untuk melaksanakan fungsi menggantikan fon dalam PDF di Java

Atas ialah kandungan terperinci Bagaimana untuk melaksanakan fungsi menggantikan fon dalam PDF di Java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:yisu.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam