色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

將html文件轉(zhuǎn)換成pdf示例

科技綠洲 ? 來源:Java技術(shù)指北 ? 作者:Java技術(shù)指北 ? 2023-10-09 16:03 ? 次閱讀

Java 轉(zhuǎn)換 HTML 到PDF有許多類庫,今天我們介紹一下第三方免費(fèi)的類庫OpenPDF。

1. OpenPDF

OpenPDF是免費(fèi)的Java類庫 ,遵從LGPL 和 MPL協(xié)議,所以基本上能夠可以隨意使用。OpenPDF是基于iTEXT的,目前來說也是維護(hù)的比較好的Java操作PDF的開源軟件。

話不多說,且看所需要的依賴,

< dependency >    
    < groupId >org.jsoup< /groupId >    
    < artifactId >jsoup< /artifactId >   
    < version >1.13.1< /version > 
< /dependency >
< dependency >
    < groupId >com.openhtmltopdf< /groupId >
    < artifactId >openhtmltopdf-core< /artifactId >
    < version >1.0.6< /version >
< /dependency >
< dependency >
    < groupId >com.openhtmltopdf< /groupId >
    < artifactId >openhtmltopdf-pdfbox< /artifactId >
    < version >1.0.6< /version >
< /dependency >

jsoup可以將html文件轉(zhuǎn)換成輸入流等,也可以遍歷html的DOM節(jié)點(diǎn),提取元素及樣式等。

2. 示例

本篇示例將以下html文件轉(zhuǎn)換成pdf

< html >
< head >
    < style >
        .center_div {
            border: 1px solid #404e94;
            margin-left: auto;
            margin-right: auto;
            background-color: #f6d0ed;
            text-align: left;
            padding: 8px;
        }
        table {
            width: 100%;
            border: 1px solid black;
        }
        th, td {
            border: 1px solid black;
        }
        body,html,input{font-family:"msyh";}
    < /style >
< /head >
< body >
< div class="center_div" >
    < h1 >Hello java North!< /h1 >
    < div >
        < p >convert html to pdf.< /p >
    < /div >
    < div >
        < table >
            < thead >
                < th >ROLE< /th >
                < th >NAME< /th >
                < th >TITLE< /th >
            < /thead >
            < tbody >
                < tr >
                    < td >MARKSMAN< /td >
                    < td >ASHE< /td >
                    < td >THE FROST ARCHER< /td >
                < /tr >
                < tr >
                    < td >MAGES< /td >
                    < td >ANNIE< /td >
                    < td >THE DARK CHILD< /td >
                < /tr >
                < tr >
                    < td >射手< /td >
                    < td >凱塔琳< /td >
                    < td >皮城女警< /td >
                < /tr >
            < /tbody >
        < /table >
    < /div >
< /div >
< /body >
< /html >

以上html用瀏覽器打開如下,亂碼是因?yàn)橹形淖煮w不識(shí)別,下面轉(zhuǎn)換的時(shí)候會(huì)加載對(duì)應(yīng)的字體來進(jìn)行轉(zhuǎn)換。

圖片

使用Java轉(zhuǎn)換HTML到PDF代碼如下:

public class HtmlToPDFOpenSource {
    public static void main(String[] args) throws IOException {
        HtmlToPDFOpenSource htmlToPDFOpenSource = new HtmlToPDFOpenSource();
        htmlToPDFOpenSource.generatePdfByOpenhtmltopdf();
    }

    private  void generatePdfByOpenhtmltopdf() throws IOException {
        File inputHtml = new File("E:javaNorthjava-study-notejavaOpenSourcesrcmainresourcestest.html");

        //加載html文件
        Document document = Jsoup.parse(inputHtml, "UTF-8");
        document.outputSettings().syntax(Document.OutputSettings.Syntax.html);
        
        //引入資源目錄,可以單獨(dú)引入css,圖片文件等
        String baseUri = FileSystems.getDefault()
            .getPath("javaOpenSourcesrcmainresources")
            .toUri().toString();
       
        try (OutputStream os = new FileOutputStream("javaOpenSourcesrcmainresourcestestOpenLeagueoflegends1.pdf")) {
            PdfRendererBuilder builder = new PdfRendererBuilder();
            builder.withUri("javaOpenSourcesrcmainresourcestestOpenLeagueoflegends1.pdf");
            builder.toStream(os);
            builder.withW3cDocument(new W3CDom().fromJsoup(document), baseUri);
            
            //引入指定字體,注意字體名需要和css樣式中指定的字體名相同
            builder.useFont(new File("javaOpenSourcesrcmainresourcesfontsmsyh.ttf"),"msyh",1,BaseRendererBuilder.FontStyle.NORMAL, true);
            builder.run();
        }
    }
}

使用Java代碼轉(zhuǎn)換成PDF如下(示例中使用了微軟雅黑中文字體):

圖片

上述html文件中增加如下 外部樣式

< link href="style.css" rel="stylesheet" >

并在resources目錄下添加style.css文件,重新生成PDF文件如下。

圖片

3. 總結(jié)

本片介紹了使用OpenPDF將html文件轉(zhuǎn)換成PDF文件。同時(shí)也使用了自定義字體,外部樣式。但是以下幾點(diǎn)需要格外注意。

  • Java代碼中加載的字體名稱要和HTML引用的CSS樣式中的字體名相同 ({font-family:"msyh";})。
  • HTML文件標(biāo)簽節(jié)點(diǎn)必須閉合().否則解析會(huì)失敗。
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 開源軟件
    +關(guān)注

    關(guān)注

    0

    文章

    212

    瀏覽量

    16192
  • JAVA
    +關(guān)注

    關(guān)注

    20

    文章

    2984

    瀏覽量

    106819
  • HTML
    +關(guān)注

    關(guān)注

    0

    文章

    278

    瀏覽量

    40772
  • PDF
    PDF
    +關(guān)注

    關(guān)注

    1

    文章

    172

    瀏覽量

    34318
收藏 0人收藏

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    pdf轉(zhuǎn)換成jpg軟件如何使用

      大家在工作中對(duì)不同的文件格式,都有是相當(dāng)了解的。因?yàn)楣ぷ餍枰际菚?huì)進(jìn)行編輯的。但為了提高工作效率,需要將文件與其它格式之間進(jìn)行相互轉(zhuǎn)換,那么pdf
    發(fā)表于 10-26 10:56

    怎么把圖片jpg轉(zhuǎn)換成pdf文件

    ,安裝和啟動(dòng)的過程極為迅速。迅捷JPG轉(zhuǎn)為PDF轉(zhuǎn)換器,獨(dú)立的PDF文件解析核心技術(shù),使得軟件本身可以更好地對(duì)文件內(nèi)容進(jìn)行深度識(shí)別,并最終
    發(fā)表于 10-26 15:49

    pdf轉(zhuǎn)換成jpg格式的快速轉(zhuǎn)換方法

    pdf轉(zhuǎn)換成jpg。  這里向大家推薦一個(gè)非常簡單而又實(shí)用的方法,那就是使用迅捷PDF在線轉(zhuǎn)換器這個(gè)軟件就可以搞定了。這款軟件可以完美的
    發(fā)表于 10-28 11:27

    怎么pdf轉(zhuǎn)換成ppt格式的文件

      目前我們處理的文件大部分是的PDF格式的,遇到這類文檔,大家已經(jīng)能熟練的掌握轉(zhuǎn)換的技巧了,不過那些剛進(jìn)公司的小白就不行了。那么今天就還是給大家介紹下怎么
    發(fā)表于 11-02 10:24

    簡單易掌握的pdf轉(zhuǎn)換成word格式的方法

    支持多種格式轉(zhuǎn)換的軟件,可將Word/Excel/PPT、JPG等格式的文件快速轉(zhuǎn)換成PDF,也支持PDF轉(zhuǎn)Office、圖片、TXT、
    發(fā)表于 11-03 11:04

    如何文件pdf轉(zhuǎn)換成excel格式的表格

    來看看吧,說到文件轉(zhuǎn)換只要一款專業(yè)的轉(zhuǎn)換器就可以了。  PDF轉(zhuǎn)換成Excel的軟件很多,個(gè)人
    發(fā)表于 11-08 16:18

    最詳細(xì)的方法教你如何pdf轉(zhuǎn)換成word格式

    本帖最后由 1714472470 于 2016-11-18 11:51 編輯   在說過了那么多文件格式的轉(zhuǎn)換方法后,發(fā)現(xiàn)大家最常用到的還是pdf轉(zhuǎn)換成word格式,但是很多朋友
    發(fā)表于 11-18 11:03

    pdf轉(zhuǎn)換成可編輯的ppt轉(zhuǎn)換

    為了完成教學(xué)的目的,有時(shí)需要把拷貝出來的PDF文件轉(zhuǎn)換成可以編輯的PPT格式幻燈片,然后在PPT文檔中進(jìn)行修改編輯內(nèi)容便可。今天就為大家介紹一款專業(yè)的PDF
    發(fā)表于 03-17 15:11

    怎么ppt轉(zhuǎn)換成word文件

    ,因此能夠更好地針對(duì)不同文件內(nèi)容的PDF文件進(jìn)行全面更新。即便針對(duì)超大容量以及復(fù)雜的內(nèi)容的PDF文件,迅捷軟件本身也可以輕松實(shí)現(xiàn)極速
    發(fā)表于 03-20 14:37

    迅捷CAD編輯器如何CAD轉(zhuǎn)換成PDF

    ,和光柵文件的導(dǎo)入,支持創(chuàng)建對(duì)dwg和dxf文件的關(guān)聯(lián)。完美的支持CAD圖形中文字體的顯示。用最簡單的操作CAD轉(zhuǎn)換成PDF。  一、軟件
    發(fā)表于 03-28 14:04

    請問如何使用CAD手機(jī)看圖軟件DWG格式圖紙文件轉(zhuǎn)換成PDF格式?

    在使用CAD手機(jī)看圖軟件修改好CAD圖紙后想要發(fā)送給其他人,怎么手機(jī)中DWG格式圖紙文件轉(zhuǎn)換成PDF格式呢?接下來就給大家介紹一下CAD手機(jī)看圖軟件浩辰CAD看圖王手機(jī)版中將DWG格
    發(fā)表于 06-24 13:46

    如何pads2007轉(zhuǎn)換成cadence文件

    pads2007轉(zhuǎn)cadence:如何pads2007轉(zhuǎn)換成cadence文件
    發(fā)表于 09-14 09:55 ?0次下載
    如何<b class='flag-5'>將</b>pads2007<b class='flag-5'>轉(zhuǎn)換成</b>cadence<b class='flag-5'>文件</b>

    pdf轉(zhuǎn)換成word轉(zhuǎn)換器下載

    此壓縮文件里面包含二款轉(zhuǎn)換工具:pdf轉(zhuǎn)換成word轉(zhuǎn)換器與word轉(zhuǎn)換成
    發(fā)表于 09-18 09:17 ?110次下載
    <b class='flag-5'>pdf</b><b class='flag-5'>轉(zhuǎn)換成</b>word<b class='flag-5'>轉(zhuǎn)換</b>器下載

    如何PDF轉(zhuǎn)換成CAD的DWG文件或DXF文件

    PDF格式的圖紙進(jìn)行二次編輯,那么需要將PDF轉(zhuǎn)換成DWG/DXF格式的。下面我給大家介紹幾款此類軟件。 注意:但是在轉(zhuǎn)換前先確認(rèn)你的
    發(fā)表于 10-24 16:21 ?5553次閱讀

    Word如何轉(zhuǎn)換成PDF文件?Word與CAD互轉(zhuǎn)圖文教程免費(fèi)下載

    經(jīng)常做設(shè)計(jì)的相關(guān)的伙伴們可能都知道Word怎樣轉(zhuǎn)換成PDF文件,畢竟在很多的辦公軟件都是可以相通的,我們在設(shè)計(jì)中,不光單單是為了設(shè)計(jì),有時(shí)候,為了需要,也會(huì)將world轉(zhuǎn)換成
    發(fā)表于 09-28 08:00 ?0次下載
    Word如何<b class='flag-5'>轉(zhuǎn)換成</b><b class='flag-5'>PDF</b><b class='flag-5'>文件</b>?Word與CAD互轉(zhuǎn)圖文教程免費(fèi)下載
    主站蜘蛛池模板: 日本高清加勒比 | 国产精品高清免费网站 | 特级淫片大乳女子高清视频 | 动漫美女被到爽了流漫画 | 国产精品悠悠久久人妻精品 | 中文在线观看永久免费 | 草久久久久 | 色欲蜜臀AV免费视频 | 国产精品久久久久久搜索 | 中文字幕精品无码一区二区 | 久久精品123 | 呻吟翘臀后进爆白浆 | 亚洲精品国偷拍自产在线 | 神马电影我不卡国语版 | 花蝴蝶在线高清视频观看免费播放 | 久久亚洲AV成人无码国产漫画 | 女性酥酥影院 | 亚洲无AV在线中文字幕 | 两个人的视频日本在线观看完整 | 中国二级毛片 | 麻豆久久国产亚洲精品超碰热 | nxgx69日本护士 | 麻豆出品国产AV在线观看 | 日日啪无需播放器 | 乱码午夜-极品国产内射 | 国产欧美日韩精品a在线观看高清 | 国产在线伊人 | 久久精品无码一区二区日韩av | 久久久久免费视频 | 人妻少妇69式99偷拍 | 四房播播开心色播 | 伊人激情综合网 | 亚洲毛片网 | gay台湾无套男同志xnxⅹ | 熟女啪啪白浆嗷嗷叫 | 一个人的HD高清在线观看 | 日韩人妻少妇一区二区三区 | 俄罗斯美女啪啪 | 欧美黑人巨大videos免费 | 亚洲 综合 欧美在线视频 | 色中色成人论坛 |

    電子發(fā)燒友

    中國電子工程師最喜歡的網(wǎng)站

    • 2931785位工程師會(huì)員交流學(xué)習(xí)
    • 獲取您個(gè)性化的科技前沿技術(shù)信息
    • 參加活動(dòng)獲取豐厚的禮品