有關Freemaker轉化成pdf檔案的html特殊字元的處理
場景:由於出於安全機制的考慮,所以通常會把存入資料庫中的某些html特殊字元進行轉義,例如空格轉義後存到資料庫就會變成“ ”,但是這些資料庫中的字元傳到Freemaker頁面,然後頁面再進行轉化成pdf會出現錯誤,現總結幾個解決方法寫給大家以供參考:
1、直接在ftl頁面的頭部進行定義,把ftl頁面上可能出現的已經轉義過的html特殊字元再重新定義成它們原本所代表的意思,具體實現如下:
這樣就使得ftl頁面上出現html轉義後的特殊字元就會自動變換為其原本的意思,例如出現“ ”就會直接變換為空格。但是這種方式有一個很大的侷限性,就是隻能變換裡面已經定義過的html特殊字元,如果ftl頁面上出現未定義的html特使字元,那麼轉換成pdf時還是會出現錯誤的。<span style="white-space:pre"> </span><!DOCTYPE html[ <!ENTITY nbsp " "> <!ENTITY mdash "—"> <!ENTITY trade "™"> <!ENTITY copy "©"> <!ENTITY reg "®"> <!ENTITY lt "<"> <!ENTITY gt ">"> <!ENTITY times "×"> <!ENTITY divide "÷"> <!ENTITY acute "'"> ]>
2、先在後臺進行反轉義,就是把資料庫中查詢出來的帶有特殊字元的字串進行反轉義,讓其變成未轉義之前的字串,然後再傳到ftl頁面上。java中spring有一個自帶的方法HtmlUtils.htmlUnescape(String str)可以直接反轉義。但是後來我在轉化成pdf的時候出現一個問題:反轉義後的字串傳到頁面然後在轉化成pdf 的過程中還是報錯的,不知道是什麼原因,後來我又使用freemaker自帶的一個方法進行再次轉義就可以了,即${x?html}。具體步驟就是
- 先在後臺進行字串反轉義
- 然後在ftl頁面再使用${x?html}進行再次轉義
以上兩種方法比較簡單,肯定還會有其它的方法,希望有的話多多交流!
相關推薦
有關Freemaker轉化成pdf檔案的html特殊字元的處理
場景:由於出於安全機制的考慮,所以通常會把存入資料庫中的某些html特殊字元進行轉義,例如空格轉義後存到資料庫就會變成“ ”,但是這些資料庫中的字元傳到Freemaker頁面,然後頁面再進行轉化成pdf會出現錯誤,現總結幾個解決方法寫給大家以供參考: 1、
使用python把html網頁轉成pdf檔案
我們看到一些比較寫的比較好文章或者部落格的時候,想儲存下來到本地當一個pdf檔案,當做自己的知識儲備,以後即使這個部落格或者文章的連線不存在了,或者被刪掉,咱們自己也還有。 當然咱們作為一個coder,這樣的事情肯定不能手動儲存下來然後再轉成pdf存起來對不對,有失咱們碼農的身份,當然要自動化的來實現了~
java將html的圖文轉化為PDF檔案輸出
首先在我的專案的resource目錄下建立相應的目錄,如圖其中file用來存放一個logo以及生成的PDF檔案,font資料夾用來存放font 字型然後在專案的 pom.xml中新增引用<dependency> <groupId>org.xht
史上最強php生成pdf檔案,html轉pdf檔案方法
之前有個客戶需要把一些html頁面生成pdf檔案,然後我就找一些用php把html頁面圍成pdf檔案的類。方法是可謂是找了很多很多,什麼html2pdf,pdflib,FPDF這些都試過了,但是都沒有達到我要的求。 pdflib,FPDF這兩個方法是需要編寫程式去生成pdf
itext7將pdf模板轉成pdf檔案
使用adobe Acrobat Pro DC製作pdf模板 這裡就略了,大家可以上網搜下,有很多方法 擼程式碼 在itext7第一節的基礎上在pom檔案新增junit依賴方便測試 <dependency> <groupId>juni
用python將.h5檔案的資料轉化成.pcd檔案
import h5py import numpy as np import os import math from open3d import * filename = '/home/jp/project/pointnet/sem_seg/indoor3d_sem_seg_
Tensorflow例項2:將影象和標籤資料(*.csv)轉化成tfrecords檔案,以便後續直接讀取tfrecords檔案進行圖片驗證碼識別訓練
由於多張影象和標籤值不在一起,現在此方法是把captcha_dir = "../data/GenPics/"此路徑下的圖片與此路徑下的.csv檔案合併起來,通過writer = tf.python_io.TFRecordWriter(path="./data/captcha.tfreco
利用POI將Excel轉化成XML檔案
一、導包 <dependency> <groupId>dom4j</groupId> <artifactId>dom4j</artifactId>
如何將.ipynb檔案轉化成.py檔案(或者其他格式)
安裝好jupyter notebook之後,可以採用兩種方法進行檔案轉換。 法一: 在終端輸入:(其中xxx.ipynb是要轉換檔案的名字) jupyter nbconvert --to script xxx.ipynb 法二: step 1:啟動Jupyter
Java使用Jacob將wps的Word、Excel、PPT轉化成PDF
import com.jacob.activeX.ActiveXComponent; import com.jacob.com.ComThread; import com.jacob.com.Dispatch; import com.jacob.com.Vari
利用Java將word檔案轉成pdf檔案
說明:使用本方法計算機中必須含有office 一.準備工作 1.準備如圖三個檔案: 2.將第二個檔案複製到C:\Windows\System32,將第三個檔案複製到C:\Windows\SysWOW64, 然後將這兩個檔案複製到jdk,jre裡面的bin資料夾 二.開始編譯
python2.7 的py檔案轉化成exe 檔案
1.安裝 pip install pyinstaller 2.在C:\Python27\Scripts目錄下執行cmd:pyinstaller -F helloworld.py 3.在dist目錄下就能扎到相關的可執行檔案。
將PDF格式檔案轉成二進位制並生成Base64編碼,將Base64編碼轉成PDF檔案
// 為工程新增 sun.misc.BASE64Encoder和sun.misc.BASE64Decoder包: //右鍵專案》屬性》Java Build Path》jre System Library 》access rules》resolution選擇accessi
JAVA 將xml Schema 文件轉化成 XML檔案
首先從https://jaxb.java.net/2.2.11/ 獲取最新的jaxb 類這裡提供一個Schema文件<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefaul
iOS 中將位元組流陣列轉化成pdf
一. 因為前一段時間公司的專案需求,是pdf方面的,覺得網上的資料不是很多,所以也想發表一下,希望會能有用; 在載入到頁面的檔案是pdf格式,並且以pdf格式展現在頁面上,當我看到後想為啥不傳個圖片,載入頁面上多方便啊.後來的得知傳過來的檔案是多頁的,如果用圖片不符合要求.
本地 json檔案轉化成plist檔案
NSString *str = [[NSBundlemainBundle]pathForResource:@"sys_Area.json"ofType:nil]; NSData *data =
android JIN 第一步 生成java轉換成class然後再轉化成.h檔案
經過一番查詢,可算搞定了java轉成c的.h標頭檔案的這第一步。 方法如下 第一步:建立 native方法的java類。 方法 m1和m2分別是呼叫native。 package com.demo.study; public class JNITest { pu
php將文字轉化成mp3檔案
<!-- html --> <audio autoplay="autoplay" loop="loop" controls="controls"> <source src="11.mp3" type="audio/mpeg">&l
Java 讀寫docx檔案後直接轉成PDF檔案方法
java將docx檔案轉成pdf檔案的實現方法,需要的jar包下載地址:https://download.csdn.net/download/keke921231/10529672 1.讀寫docx檔案。需要讀寫docx檔案需要用到poi包,等下會提供下載地址,在讀寫doc
PPT怎麽轉化成PDF, PPT轉PDF文件的方法是什麽
ado proc 路徑 -o 提取 mage ESS img mark 很多時候為了閱讀方便,打印等原因需要將PPT文件轉換成PDF文件,這樣一來在完成了簡單的設計排版,繪畫,動畫與遊戲的PPT制作後轉換成了PDF文件,同時還會擁有“閱讀方便,適合打印,屏幕上閱讀,高效瀏覽