在我的應用程序中,我必須提供「另存爲圖像」按鈕。我想將呈現在我的網頁上的HTML保存爲JavaScript中的圖像。假設我有一些html,並點擊'另存爲圖像',這個html應該保存爲圖像。javascript如何保存在網頁上呈現的HTML作爲圖像
11
A
回答
11
結賬html2canvas。在canvas元素上呈現頁面內容的JavaScript框架。保存畫布作爲圖像一樣簡單:
var canvas = document.getElementById("mycanvas");
var img = canvas.toDataURL("image/png");
document.write('<img src="'+img+'"/>');
0
你的問題是非常不完整的。首先,是移動或桌面應用程序?在這兩種情況下,問題的解決方案都將很大程度上取決於呈現頁面的HTML引擎:例如,Webkit,Geko/Firefox,Trident/IE都有自己的方法來生成要保存爲圖像的視圖。
無論如何,你可以開始看這個Firefox插件是如何工作的:https://addons.mozilla.org/it/firefox/addon/pagesaver/
它應該做你想要實現的東西,找它的源代碼。
+0
它是一個Web應用程序。將用於桌面/平板電腦/手機的瀏覽器。我希望像將圖像保存爲圖像。我向用戶提供一個按鈕,將該頁面上的html保存爲圖像。據我所知,一個插件不會完成這項任務。 – Bhavika
0
使用http://html2canvas.hertzen.com/
的index.php
<style>.wrap{background:white;padding:0 0 16px 0;width:1500px;}.colour{width:1500px;position:relative;height:1400px;}p.footer{text-align:center;font-family:arial;line-height:1;font-size:28px;color:#333;}.wrap img{height:389px;width:389px;position:absolute;bottom:0;right:0;left:0;top:0;margin:auto;}p.invert{position:absolute;top:300px;left:0;right:0;text-align:center;display:block;font-family:arial;font-size:48px;padding:0 40px;filter:invert(0%);}p.inverted{-webkit-filter: invert(100%);filter:invert(100%);}</style>
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script type="text/javascript" src="js/html2canvas.js"></script>
<script type="text/javascript" src="js/jquery.plugin.html2canvas.js"></script>
<?php // Open our CSV File
$colours = fopen('colours.csv', 'r');
// Reset Count
$i=0;
// Loop Through the Colours
while (($colour = fgetcsv($colours)) !== FALSE){
// Get the First Item and display some HTML
if($i==0){ ?>
<div id="target" class="wrap">
<div class="colour" style="background:<?php echo $colour[0]; ?>">
<img src="paragon2.png" alt="Image" />
<p class="invert inverted" style="filter:invert(100%);"><?php echo $colour[1]; ?></p>
</div>
<p class="footer"><?php echo $colour[1]; ?></p>
</div>
<form method="POST" enctype="multipart/form-data" action="save.php" id="myForm">
<input type="hidden" name="img_val" id="img_val" value="" />
<input type="hidden" name="filename" id="filename" value="<?php echo $colour[0].".png"; ?>" />
</form>
<?php } // Count
$i++;
} // Loop
// Close the CSV File
fclose($colours); ?>
<script type="text/javascript">
$(window).load(function() {
$('#target').html2canvas({
onrendered: function (canvas) {
$('#img_val').val(canvas.toDataURL("image/png"));
document.getElementById("myForm").submit();
}
});
});
</script>
save.php
<?php // Get the base-64 string from data
$filteredData=substr($_POST['img_val'], strpos($_POST['img_val'], ",")+1);
$filename=$_POST['filename'];
// Decode the string
$unencodedData=base64_decode($filteredData);
// Save the image
file_put_contents("IMG2/".$filename, $unencodedData);
// Open the CSV File
$file = fopen('colours.csv', 'r');
// Loop through the colours
while (($line = fgetcsv($file)) !== FALSE) {
// Store every line in an array
$data[] = $line;
}
// Remove the first element from the stored array
array_shift($data);
// Write remaining lines to file
foreach ($data as $fields){
fputcsv($file, $fields);
}
// Close the File
fclose($file);
// Redirect and start again!
header('Location:/') ; ?>
相關問題
- 1. 將呈現的HTML保存爲圖像
- 2. 在網頁上呈現的Javascript代碼
- 3. 如何將圖像存儲在JavaScript變量中並將其呈現給網頁?
- 4. 將JavaScript呈現的svg圖像保存爲本地磁盤作爲.png文件
- 5. 將RTF文檔呈現爲網頁上的圖像
- 6. QTP如何從網頁保存圖像
- 7. 在PDF頁面上呈現圖像
- 8. 如何呈現AngularJs網站的圖像?
- 9. Javascript寫/呈現在asp.net頁面上的圖像
- 10. 將HTML呈現爲WPF中的圖像?
- 11. 圖像鏈接不呈現爲html(在博客上保留爲[img])
- 12. 如何讓div在圖像上呈現?
- 13. 保存網頁時未保存圖像!
- 14. 如何在asp.net中將網頁導出/保存爲圖像
- 15. 如何呈現HTML Django頁面爲PDF?
- 16. 如何使用Django中的數據庫路徑在網頁上呈現圖像?
- 17. 在安全的網站上圖像不呈現爲pdf - itext飛碟HTML到PDF
- 18. 如何將網頁保存爲圖片
- 19. 如何將HTML保存爲byte []作爲圖像??? c#
- 20. JavaScript呈現HTML頁面仍在加載
- 21. 如何檢查圖像是否在頁面上呈現?
- 22. WPF,C#,油墨畫布,圖像 - 如何在現有圖像上保存inkcanvas並將其保存爲新圖像?
- 23. 將網頁呈現爲圖片
- 24. 如何在網頁上將圖像上傳到最先出現的圖像上?
- 25. 將網頁的內容呈現爲圖像
- 26. 呈現網頁縮略圖
- 27. 如何在R中的HTML頁面顯示餅圖(不保存爲圖像)?
- 28. Itext7:將PDF頁面呈現爲圖像
- 29. 如何將網頁導出/保存爲圖像?
- 30. 如何使用PHP將網頁保存爲圖像文件?
用於Firefox有幾個插件。這是一個https://addons.mozilla.org/en-us/firefox/addon/screen-grab-with-online-upl/ –
首先將文件一般保存到服務器中是的,可以沒有回發但必須是一個IFRAME處理保存過程,因爲你必須去服務器保存這個文本作爲圖像我沒有一個工具,但保存爲PDF有一個工具稱爲ItextSharp它會幫助你 – Marwan