2016-09-21 49 views
0

第1部分: 我已經實現PowerPoint中的寶石在軌3.2和紅寶石1.9.2下載ppt格式

我只是想下載PPTX格式

一個html.erb文件

我的代碼是這樣的:

@filters = generate_filters_for_manual_report(PARAMS)

@deck =簡報:: Presentation.new

標題= '自行車心靈的'

@ deck.add_intro標題 '由史蒂夫·喬布斯創建了'

字幕=,字幕

@ deck.save('/家庭/薩赫勒/ TEST6 .PPTX')

SEND_DATA @deck,:文件名=> '/home/sahil/test6.pptx', :配置=> '內聯',:類型=> 「多部分/相關」

它在當地可怕的情況下得到挽救ctory作爲一個pptx文件。但作爲pptx文件不能下載。

第2部分

以上是文本我怎麼能實現這樣的客戶詳細信息和客戶形象,html.erb文件將顯示在PPTX滑塊。

任何幫助將不勝感激。謝謝

謝謝@佩特很多年幫助。現在send_file正在工作。但問題是這裏我使用一些靜態數據與@deck變量。我將如何將.html.erb文件內容(包含文本和圖像)添加到@deck變量。我有這麼多的圖片和文字。此外,它還以pptx文件格式保存在本地目錄中(在上面的例子中爲「/home/sahil/test6.pptx」)。我不想保存在本地目錄中。我需要直接發送發送文件

+1

您是否嘗試使用'send_file'而不是'send_data'? – Aleksey

+0

非常感謝你的幫助。現在send_file正在工作。 –

+0

如果您不介意,我會將其作爲回答發佈,以便您接受它。 – Aleksey

回答

1

嘗試使用send_file而不是send_data

+0

我們是否可以將.html.erb轉換爲pptx格式 –

+0

我沒有與寶石一起工作,所以我可以100%確定地說,但我認爲它不能完成。 gem允許你創建'.pptx'文件,它不是轉換工具。另外我不明白你爲什麼擁有'.html.erb'和你想用它做什麼。 – Aleksey

+0

我有以前的50 cusomer詳細信息與html.erb文件中描述和圖像呈現在html請求。現在我想下載這些客戶詳細信息和圖像描述爲pptx文件,我將如何在@deck onject中添加如此多的客戶詳細信息和圖像及其描述,這是PowerPoint的對象:: Presentation.new –

0

您可以根據您的需要定製簡報寶石。在這個網址powerpoint gem

克隆寶石放入烏爾廠商的文件夾。

在你這樣的寶石文件更改: 寶石「簡報」,路徑爲:「供應商/ PowerPoint的」

,這樣它會調用寶石的方法從廠商文件夾,你可以根據你的廠商文件夾做定製滿足您的需求。

,你可以在這裏得到所有metods:presentation method

你可以調用多種方法是這樣的: @ deck.add_pictorial_slide標題,IMAGE_PATH @deck。

DEF add_pictorial_slide(標題,IMAGE_PATH,COORDS = {})

(1..5).each do |i| 

    @slides << Powerpoint::Slide::Pictorial.new(presentation: self,title:title, image_path: image_path, coords: coords) 

end 

0

我已經使用:

可以增加滑塊像這樣循環add_text_picture_slide標題,IMAGE_PATH,內容它最近並不得不customize它根據我的需要。猜猜你已經解決了。對於將它保存在本地文件系統中的問題,我必須將其上傳到s3,然後使用send_data作爲下載部分。使用tempfile,我不必擔心手動從本地文件系統存儲/刪除這些ppt文件。希望有所幫助!