国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

【freemaker實(shí)現(xiàn)導(dǎo)出word③】詳解將echarts的圖片到出到word

flyer_dev / 2495人閱讀

摘要:前面介紹了導(dǎo)出到的代碼實(shí)現(xiàn),詳見這里,里面有一部分涉及導(dǎo)出圖片到,在這里我再另外做一個(gè)詳細(xì)的介紹。在前臺(tái)用將生成的圖片轉(zhuǎn)成編碼,提交給后臺(tái)。

前面介紹了導(dǎo)出到word的代碼實(shí)現(xiàn),詳見這里,里面有一部分涉及導(dǎo)出圖片到word,在這里我再另外做一個(gè)詳細(xì)的介紹。
是這樣的,我項(xiàng)目有個(gè)功能,里面就涉及到要將echarts形成的柱狀圖或者地圖之類的圖表導(dǎo)出到word,在網(wǎng)上找了很久,都是說將圖片轉(zhuǎn)成base64編碼后傳給后臺(tái)解碼,但沒有一篇有詳細(xì)具體的介紹,經(jīng)過不斷的摸索,終于實(shí)現(xiàn)了,在這里給大家做個(gè)分享。

處理步驟:
(1)圖片我們可以在前臺(tái)將要的圖片轉(zhuǎn)成base64編碼,然后提交給后臺(tái)接收
(2)后臺(tái)接收base64編碼后使用工具類將base64解碼成圖片然后保存到本地中
(3)在要導(dǎo)出word的時(shí)候讀取下本地存儲(chǔ)圖片的路徑然后把圖片導(dǎo)出來就行了。

1、在前臺(tái)用js將echarts生成的圖片轉(zhuǎn)成base64編碼,提交給后臺(tái)。

2、下面就是使用工具類在后臺(tái)對(duì)圖片進(jìn)行處理,工具類如下:

package com.*.util;
import java.awt.image.BufferedImage;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.UUID;
import javax.imageio.ImageIO;
import Decoder.BASE64Decoder;
import Decoder.BASE64Encoder;


/**
 * 類名稱:ImageUtil
 * 類描述:圖片處理工具類
 */
public class ImageUtil {
    
     /**
      * 從path這個(gè)地址獲取一張圖片然后轉(zhuǎn)為base64碼
      * @param imgName  圖片的名字 如:123.png(是帶后綴的)
      * @param path     123.png圖片存放的路徑
      * @return
      * @throws Exception
      */
     public static String getImageFromServer(String imgName,String path)throws Exception{
      BASE64Encoder encoder = new BASE64Encoder();
      File f = new File(path+imgName);
            if(!f.exists()){
        f.createNewFile();
            }
            BufferedImage bi = ImageIO.read(f);    
            ByteArrayOutputStream baos = new ByteArrayOutputStream();    
            ImageIO.write(bi, "png", baos);    
            byte[] bytes = baos.toByteArray();    
            return encoder.encodeBuffer(bytes).trim();      
     }
     
     /**
      * 將一個(gè)base64轉(zhuǎn)換成圖片保存在  path文件夾下  ,命名隨機(jī)
      * @param base64String
      * @param path  是一個(gè)文件夾路徑
      * @param imgName 圖片名字(沒有后綴)
      * @throws Exception
      */
     public static String savePictoServer(String base64String,String path)throws Exception{
        
         BASE64Decoder decoder = new BASE64Decoder();
         //要把+在上傳時(shí)變成的空格再改為+
         base64String = base64String.replaceAll(" ", "+");
         //去掉“data:image/png;base64,”后面才是base64編碼,去掉之后才能解析
         base64String = base64String.replace("data:image/png;base64,","");
         //在本地指定位置建立文件夾,path由控制臺(tái)那邊進(jìn)行定義
         String realPath = path+"/"+"echarts";
         File dir=new File(realPath);
         if(!dir.exists()){
          dir.mkdirs();
         }
         String fileName=path+""+"echarts"+""+UUID.randomUUID().toString()+".png";
         try {  
             byte[] buffer = decoder.decodeBuffer(base64String);  
             OutputStream os = new FileOutputStream(fileName);
             for(int i =0;i

3、最后一步就是控制臺(tái)方法如何處理圖片導(dǎo)出到word了,參照上一篇文章的第三步

到這里我的freemaker導(dǎo)出word系列就分享完畢咯。

感謝各位看官的閱讀,本仙女是帥帥的玉米,有什么問題請(qǐng)留言哦,覺得有用的請(qǐng)賞賜個(gè)贊?。?/strong>

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/89304.html

相關(guān)文章

  • freemaker實(shí)現(xiàn)導(dǎo)出word詳解echarts圖片出到word

    摘要:前面介紹了導(dǎo)出到的代碼實(shí)現(xiàn),詳見這里,里面有一部分涉及導(dǎo)出圖片到,在這里我再另外做一個(gè)詳細(xì)的介紹。在前臺(tái)用將生成的圖片轉(zhuǎn)成編碼,提交給后臺(tái)。 前面介紹了導(dǎo)出到word的代碼實(shí)現(xiàn),詳見這里,里面有一部分涉及導(dǎo)出圖片到word,在這里我再另外做一個(gè)詳細(xì)的介紹。是這樣的,我項(xiàng)目有個(gè)功能,里面就涉及到要將echarts形成的柱狀圖或者地圖之類的圖表導(dǎo)出到word,在網(wǎng)上找了很久,都是說將圖片轉(zhuǎn)...

    endless_road 評(píng)論0 收藏0
  • freemaker實(shí)現(xiàn)導(dǎo)出word②】代碼實(shí)現(xiàn)導(dǎo)出word(包括導(dǎo)出list數(shù)據(jù)和導(dǎo)出圖片到wor

    摘要:前面文章已經(jīng)分享了如何創(chuàng)建導(dǎo)出需要用到的模板了,接下來這里要給大家分享的是如何用后臺(tái)制作導(dǎo)出的代碼工具和實(shí)現(xiàn)。可以重,數(shù)據(jù)庫裝載。 前面文章已經(jīng)分享了如何創(chuàng)建導(dǎo)出word需要用到的xml/ftl模板了,接下來這里要給大家分享的是如何用后臺(tái)制作導(dǎo)出word的代碼工具和controller實(shí)現(xiàn)。 1、首先是工具類,沒有工具,談何實(shí)現(xiàn)呢?下面貼我這邊導(dǎo)出word的utils,大家可以直接復(fù)制...

    bitkylin 評(píng)論0 收藏0
  • freemaker實(shí)現(xiàn)導(dǎo)出word①】創(chuàng)建xml/ftl模板

    摘要:在項(xiàng)目中,往往很多時(shí)候需要我們實(shí)現(xiàn)將數(shù)據(jù)導(dǎo)出到文檔中,但是導(dǎo)出首要做法就是創(chuàng)建模板,沒有模板,請(qǐng)求出來的數(shù)據(jù)就沒有可以存放和顯示的地方。代碼實(shí)現(xiàn)導(dǎo)出請(qǐng)看后續(xù)文章。 在javaweb項(xiàng)目中,往往很多時(shí)候需要我們實(shí)現(xiàn)將數(shù)據(jù)導(dǎo)出到word文檔中,但是導(dǎo)出word首要做法就是創(chuàng)建模板,沒有模板,請(qǐng)求出來的數(shù)據(jù)就沒有可以存放和顯示的地方。導(dǎo)出的模板需要xml或者ftl格式的文件。 新建word文...

    Kross 評(píng)論0 收藏0
  • [原]文檔定義應(yīng)用:數(shù)據(jù)科學(xué)文檔革命

    摘要:對(duì)于數(shù)據(jù)科學(xué)的研究可以說已經(jīng)是本文我將介紹如何以文檔定義應(yīng)用的方式成為數(shù)據(jù)科學(xué)中的標(biāo)準(zhǔn)交付。參考前文解密的數(shù)據(jù)科學(xué)部門如果構(gòu)建知識(shí)倉庫,作為一個(gè)謝大大的死忠,我很自然選擇了作為我文檔輸出的首選工具。 showImg(https://segmentfault.com/img/remote/1460000006760433?w=423&h=426); 概述 隨著近年來,Rstudio 通過...

    wh469012917 評(píng)論0 收藏0
  • python綜合程序設(shè)計(jì)——做一個(gè)可視化大屏

    摘要:完成可視化熱搜榜和國內(nèi)疫情新增圖,提高學(xué)生的編程能力和分析問題解決問題的能力。下圖為百度微博知乎三大平臺(tái)的熱搜詞頻統(tǒng)計(jì)圖。后續(xù)我會(huì)補(bǔ)上薄弱項(xiàng),為爭取做一名全棧技術(shù)人員而奮斗。 ...

    _Dreams 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

flyer_dev

|高級(jí)講師

TA的文章

閱讀更多
最新活動(dòng)
閱讀需要支付1元查看
<