最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

詳解Java如何實(shí)現(xiàn)在PDF中插入,替換或刪除圖像

 更新時(shí)間:2023年01月11日 16:13:13   作者:Carina-baby  
圖文并茂的內(nèi)容往往讓人看起來(lái)更加舒服,如果只是文字內(nèi)容的累加,往往會(huì)使讀者產(chǎn)生視覺(jué)疲勞。搭配精美的文章配圖則會(huì)使文章內(nèi)容更加豐富。那我們要如何在PDF中插入、替換或刪除圖像呢?別擔(dān)心,今天為大家介紹一種高效便捷的方法

前言

圖文并茂的內(nèi)容往往讓人看起來(lái)更加舒服,如果只是文字內(nèi)容的累加,往往會(huì)使讀者產(chǎn)生視覺(jué)疲勞。搭配精美的文章配圖則會(huì)使文章內(nèi)容更加豐富,增加文章可讀性的同時(shí),也能提升用戶(hù)體驗(yàn)。但由于PDF文檔安全性較高,不易對(duì)其進(jìn)行修改編輯,那我們要如何在PDF中插入、替換或刪除圖像呢?別擔(dān)心,今天為大家介紹一種高效便捷的方法。我們可以通過(guò)編程的方式來(lái)實(shí)現(xiàn)此操作。

  • 將圖像插入PDF文檔
  • 替換PDF文檔中的圖像
  • 刪除PDF文檔中的指定圖像

代碼編譯環(huán)境:

IntelliJ IDEA 2018(jdk 1.8.0)

PDF Jar包:Free Spire.PDF for Java 5.1.01.引入jar包

導(dǎo)入方法1:

手動(dòng)引入。將Free Spire.PDF for Java下載到本地,解壓,找到lib文件夾下的Spire.PDF.jar文件。在IDEA中打開(kāi)如下界面,將本地路徑中的jar文件引入Java程序:

導(dǎo)入方法2:如果您想通過(guò) Maven安裝,則可以在 pom.xml 文件中添加以下代碼導(dǎo)入 JAR 文件。

<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>

將圖像插入PDF文檔

  • 初始化 PdfDocument 類(lèi)的實(shí)例。
  • 使用 PdfDocument.loadFromFile() 方法加載 PDF 文檔。
  • 使用 PdfDocument.getPages().get() 方法在 PDF 文檔中獲取所需的頁(yè)面。
  • 使用 PdfImage.fromFile() 方法加載圖像。
  • 指定頁(yè)面上圖像區(qū)域的寬度和高度。
  • 指定 X 和 Y 坐標(biāo)以開(kāi)始繪制圖像。
  • 使用 PdfPageBase.getCanvas().drawImage() 方法在頁(yè)面上繪制圖像。
  • 使用 PdfDocument.saveToFile() 方法保存結(jié)果文檔。

完整代碼

import com.spire.pdf.FileFormat;
import com.spire.pdf.PdfDocument;
import com.spire.pdf.PdfPageBase;
import com.spire.pdf.graphics.*;

public class AddImage {
    public static void main(String []args){
        //初始化 PdfDocument 類(lèi)的實(shí)例
        PdfDocument pdf = new PdfDocument();
        pdf.loadFromFile("阿拉斯加犬.pdf");

        //獲取所需的頁(yè)面
        PdfPageBase page = pdf.getPages().get(0);

        //加載圖像
        PdfImage image = PdfImage.fromFile("圖片1.jpg");

        //指定頁(yè)面上圖像區(qū)域的寬度和高度
        float width = image.getWidth() * 0.30f;
        float height = image.getHeight() * 0.30f;

        //指定 X 和 Y 坐標(biāo)以開(kāi)始繪制圖像
        float x = 130f;
        float y = 240f;

        //在頁(yè)面指定位置上繪制圖像
        page.getCanvas().drawImage(image, x, y, width, height);

        //保存結(jié)果文檔
        pdf.saveToFile("插入圖片.pdf", FileFormat.PDF);
    }
}

效果圖

替換PDF文檔中的圖像

以下是替換PDF文檔圖像的具體步驟:

  • 初始化 PdfDocument 類(lèi)的實(shí)例。
  • 使用 PdfDocument.loadFromFile() 方法加載 PDF 文檔。
  • 使用 PdfDocument.getPages().get() 方法在 PDF 文檔中獲取所需的頁(yè)面。
  • 使用 PdfImage.fromFile() 方法加載圖像。
  • 使用 PdfPageBase.replaceImage() 方法將頁(yè)面上的特定圖像替換為加載的圖像。
  • 使用 PdfDocument.saveToFile() 方法保存結(jié)果文檔。

完整代碼

import com.spire.pdf.FileFormat;
import com.spire.pdf.PdfDocument;
import com.spire.pdf.PdfPageBase;
import com.spire.pdf.graphics.PdfImage;

public class ReplaceImage {
    public static void main(String []args){
        //初始化 PdfDocument 類(lèi)的實(shí)例
        PdfDocument doc = new PdfDocument();
        //加載 PDF 文檔
        doc.loadFromFile("插入圖片.pdf");

        //獲取所需的頁(yè)面
        PdfPageBase page = doc.getPages().get(0);

        //加載圖像
        PdfImage image = PdfImage.fromFile("圖片2.jpg");

        //將頁(yè)面上的指定圖像替換為加載的圖像
        page.replaceImage(0, image);

        //保存結(jié)果文檔
        doc.saveToFile("替換圖片.pdf", FileFormat.PDF);
    }
}

效果圖

刪除PDF文檔中的指定圖像

以下是從 PDF 文檔中刪除圖像的具體步驟:

  • 初始化 PdfDocument 類(lèi)的實(shí)例。
  • 使用 PdfDocument.loadFromFile() 方法加載 PDF 文檔。
  • 使用 PdfDocument.getPages().get() 方法在 PDF 文檔中獲取所需的頁(yè)面。
  • 使用 PdfPageBase.deleteImage() 方法刪除頁(yè)面上的特定圖像。
  • 使用 PdfDocument.saveToFile() 方法保存結(jié)果文檔。

完整代碼

import com.spire.pdf.FileFormat;
import com.spire.pdf.PdfDocument;
import com.spire.pdf.PdfPageBase;

public class DeleteImage {
    public static void main(String []args){
        //初始化 PdfDocument 類(lèi)的實(shí)例
        PdfDocument pdf = new PdfDocument();
        //加載 PDF 文檔
        pdf.loadFromFile("插入圖片.pdf");

        //獲取所需的頁(yè)面
        PdfPageBase page = pdf.getPages().get(0);

        //刪除頁(yè)面上的指定圖像
        page.deleteImage(0);

        //保存結(jié)果文檔
        pdf.saveToFile("刪除圖片.pdf", FileFormat.PDF);
    }
}

效果圖

到此這篇關(guān)于詳解Java如何實(shí)現(xiàn)在PDF中插入,替換或刪除圖像的文章就介紹到這了,更多相關(guān)Java PDF插入 替換 刪除圖像內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • java  ThreadPoolExecutor使用方法簡(jiǎn)單介紹

    java ThreadPoolExecutor使用方法簡(jiǎn)單介紹

    這篇文章主要介紹了java ThreadPoolExecutor使用方法簡(jiǎn)單介紹的相關(guān)資料,需要的朋友可以參考下
    2017-02-02
  • mybatis中延遲加載Lazy策略的方法

    mybatis中延遲加載Lazy策略的方法

    這篇文章主要介紹了mybatis中延遲加載Lazy策略,需要的朋友可以參考下
    2018-06-06
  • Java并發(fā)編程之閉鎖與柵欄的實(shí)現(xiàn)

    Java并發(fā)編程之閉鎖與柵欄的實(shí)現(xiàn)

    這篇文章主要介紹了Java并發(fā)編程之閉鎖與柵欄的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-04-04
  • SpringCloud?@RefreshScope刷新機(jī)制淺析

    SpringCloud?@RefreshScope刷新機(jī)制淺析

    RefeshScope這個(gè)注解想必大家都用過(guò),在微服務(wù)配置中心的場(chǎng)景下經(jīng)常出現(xiàn),他可以用來(lái)刷新Bean中的屬性配置,那大家對(duì)他的實(shí)現(xiàn)原理了解嗎?它為什么可以做到動(dòng)態(tài)刷新呢
    2023-03-03
  • Intellij IDEA如何去掉@Autowired 注入警告的方法

    Intellij IDEA如何去掉@Autowired 注入警告的方法

    這篇文章主要介紹了Intellij IDEA如何去掉@Autowired 注入警告的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-04-04
  • Java實(shí)現(xiàn)通過(guò)時(shí)間獲取8位驗(yàn)證碼

    Java實(shí)現(xiàn)通過(guò)時(shí)間獲取8位驗(yàn)證碼

    這篇文章主要為大家詳細(xì)介紹了Java如何通過(guò)時(shí)間獲取8位驗(yàn)證碼(每?jī)蓚€(gè)小時(shí)生成一個(gè)),文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2023-11-11
  • java并發(fā)包JUC誕生及詳細(xì)內(nèi)容

    java并發(fā)包JUC誕生及詳細(xì)內(nèi)容

    這篇文章主要為大家介紹了java并發(fā)包JUC的誕生及JUC增加的內(nèi)容詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步
    2022-02-02
  • Java 多線程實(shí)例講解(一)

    Java 多線程實(shí)例講解(一)

    本文主要介紹Java 多線程的知識(shí),這里整理了詳細(xì)的資料及簡(jiǎn)單示例代碼有需要的小伙伴可以參考下
    2016-09-09
  • MybatisPlus多表查詢(xún)及分頁(yè)查詢(xún)完整代碼

    MybatisPlus多表查詢(xún)及分頁(yè)查詢(xún)完整代碼

    這篇文章主要介紹了MybatisPlus多表查詢(xún)及分頁(yè)查詢(xún)完整代碼,本文通過(guò)示例代碼給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧
    2024-08-08
  • java生成jar包并且單進(jìn)程運(yùn)行的實(shí)例

    java生成jar包并且單進(jìn)程運(yùn)行的實(shí)例

    下面小編就為大家分享一篇java生成jar包并且單進(jìn)程運(yùn)行的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2017-12-12

最新評(píng)論

曲阜市| 柳河县| 绩溪县| 昌黎县| 崇左市| 磐安县| 藁城市| 邓州市| 施秉县| 望江县| 桂阳县| 云龙县| 宁化县| 京山县| 子洲县| 砚山县| 沐川县| 汉源县| 无为县| 怀宁县| 介休市| 贺兰县| 天津市| 沈阳市| 铜山县| 彭泽县| 定边县| 凤冈县| 靖州| 方正县| 建德市| 郁南县| 广州市| 田东县| 聊城市| 界首市| 张北县| 沧州市| 台湾省| 津市市| 佳木斯市|