VF頁面生成word圖片不顯示解決
- 2019 年 10 月 8 日
- 筆記
- vf頁面配置成以下就能生成word文檔
<apex:page cache="true" contentType="application/vnd.msword#he.docx" applyBodyTag="false">
2.生成word中靜態資源圖片顯示,需將salesforce中靜態資源圖片設置為公用
VF頁面
<apex:image width="300" height="90" value="{!$Resource.靜態資源名稱}"/>
3.生成word中動態圖片上傳附件,將附件圖片在word中顯示!由於附件中圖片是在某個對象的一個記錄,無法將附件圖片設置為公用!而需要訪問此圖片,則需要實現不登錄SF就能通過附件路徑載入該圖片!在SF中有兩種方式,一種是通過開啟社區,還有一種是設置站點。
(1)開啟社區,首先找到設置

(2)然後搜索社區,沒有開啟社區的,直接去啟用就好了

(3)點擊全部社區,新建社區

(4)建好後進行發布,可以看到工作區旁邊有構建器

(5)點擊構建器,將公眾可以訪問社區勾選。

(6)然後點擊test簡檔,點擊編輯


(7)給某個自定義對象勾選許可權,然後點擊保存

(8)最後用社區域名就能訪問到該對象的附件了,不需要再登錄SF

VF中程式碼可以這樣寫
<apex:image value="{!if(att.Id != null ,
'https://你社區的域名.ap8.force.com/ss/servlet/servlet.FileDownload?file='+att.Id,'')}" />
二站點
(1)同樣是去設置中搜索站點

(2)點擊站點,沒有站點的,第一時間是需要給站點起個域名,然後點擊新建

(3)然後輸入基本操作資訊,點擊保存

(4)然後點擊公開訪問設置

(5)對該簡檔進行編輯



(6)給需要許可權的對象開啟一些許可權,然後點擊保存

(7)最後使用站點url去訪問改對象的附件的路徑servlet/servlet.FileDownload?file=att.id


vf中程式碼寫法
<apex:image value="{!if(att.Id != null ,
'http://你站點的url/servlet/servlet.FileDownload?file='+att.Id,'')}" />
然後word中也會顯示出來啦
