我需要将HTML5画布输出作为视频或swf png序列.
我在stackoverflow上找到了以下用于捕获图像的链接.
将HTML Canvas捕获为gif/jpg/png/pdf?
但是,任何人都可以建议我们是否希望输出是png序列的视频或swf?
编辑:
好了,现在我明白了如何捕获画布数据以存储在服务器上,我试过它,如果我只使用形状,矩形或其他图形,它工作正常,但如果我在canvas元素上绘制外部图像则不行.有人能告诉我如何使用图形或外部图像在画布上绘图来完全捕获画布数据吗?
我使用了以下代码:
var cnv = document.getElementById("myCanvas");
var ctx = cnv.getContext("2d");
if(ctx)
{
var img = new Image();
ctx.fillStyle = "rgba(255,0,0,0.5)";
ctx.fillRect(0,0,300,300);
ctx.fill();
img.onload = function()
{
ctx.drawImage(img, 0,0);
}
img.src = "my external image path";
var data = cnv.toDataURL("image/png");
}
Run Code Online (Sandbox Code Playgroud)
在将画布数据导入我的"数据"变量后,我创建了一个新画布并在其上绘制捕获的数据,在第二个画布上绘制的红色矩形但外部图像没有.
提前致谢.
我正在尝试使用WKHTMLTOPDF生成一个PDF,这需要我首先登录.在互联网上有一些已经存在,但我似乎无法让我的工作.我在终点站 - 没什么特别的.
我试过(在很多其他的东西中):
/usr/bin/wkhtmltopdf --post username=myusername --post password=mypassword "URL to Generate" test.pdf
/usr/bin/wkhtmltopdf --username myusername --password mypassword "URL to Generate" test.pdf
/usr/bin/wkhtmltopdf --cookie-jar my.jar --post username=myusername --post password=mypassword "URL to Generate Cookie For"
Run Code Online (Sandbox Code Playgroud)
用户名和密码都是在id和name表单上输入字段.我正在显示my.jar文件,但没有写入任何内容.
具体问题:
http://code.google.com/p/wkhtmltopdf/issues/detail?id=356
编辑:
当然有人成功地做到了这一点?展示示例的好方法可能是有人愿意让它在一些需要登录凭据以消除潜在变量的流行网站上工作.
我有一个这样的网址
data:image/jpeg;base64,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
Run Code Online (Sandbox Code Playgroud)
如何创建将其另存为常规图像?
我创建了一个简单的基于html的网页,其中包含表单和一些文本以及画布.我想在一张纸上打印包括画布的页面,问题是 - 画布不会在打印输出中显示.这是我在如何处理画布时遗漏的东西吗?我目前正在使用Opera,是否知道其他浏览器是否更好地处理这个问题?
我正在尝试为我的客户实现自动报告生成工具.我需要以pdf格式创建报告,我非常适合使用Jquery flot创建图形.我只需要一种方法来获取pdf中的图形.
我尝试使用飞碟(xhtmlrenderer)捕获图形的图像,但它似乎没有帮助我,因为图形是由JavaScript创建的.
xhtmlrenderer可以捕获用javascript创建的元素吗?
或者是他们可以捕获图形图像的任何其他工具?
我发现了两个我喜欢的jQuery图表插件 - flot和jqPlot.我正在考虑在我的网站的前端使用其中一个.
但是,我还需要能够允许用户以PDF格式导出数据.我理想地寻找纯Python解决方案,但可以推送到Java或PHP.生成的图表的质量是最重要的因素.
我考虑的选项是:
这样做的最佳方式是什么?如果我能让Rhino解决方案发挥作用,那就更好了,因为它保持了前端和生成的PDF之间的一致性.
我有以下代码片段,例如
package main
import (
"github.com/ajstarks/svgo"
"os"
_ "image"
_ "fmt"
)
func main(){
width := 512
height := 512
canvas := svg.New(os.Stdout)
canvas.Start(width,height)
canvas.Image(0,0,512,512,"src.jpg","0.50")
canvas.End()
}
Run Code Online (Sandbox Code Playgroud)
我想将由此代码创建的 svg 导出为 jpeg 或 png 或 svg 比方说。如何做到这一点我不明白。我可以使用 imagemagick 或其他东西,但为此我需要 SVG 的东西。请有人帮我解决这个问题。
我无法显示任何代码,因为问题不是给我一个错误,一条消息或任何东西.
我有这种情况:我的应用程序必须使用domToImage进行2次渲染.
首先,我从Camera/Gallery(base64)获取一个图像然后添加到img.src它呈现一个简单的背景.我将这个bg放在一组Dom元素下,然后将它们全部渲染在一起这个过程发生得很好,没有问题,没有错误,没有错误.
直到突然它开始崩溃的应用程序.我没有对我的代码进行任何更新,任何更改.它工作,但事实并非如此.
我重新制作了这个过程并缩小到渲染.仍然崩溃.
行动没有模式.它会在bg渲染或set渲染下崩溃,有时则不会崩溃.但它不会错过2连胜.如果第一个例程没有失败,第二个例程就会失败.无处不在.
我迷路了...一个额外的Xwalk,被移除,从地面创建另一个相同的项目,仍然崩溃.更改了插件导入,甚至重置智能手机以进行某种干净的安装...不是我的手机问题导致世界各地的一些客户报告此错误.
任何方向?
使用Dom-to-Image 2.6.0
Ionic 3 - Android平台
home.ts
import domtoimage from "dom-to-image";
var node= document.getElementById("render");
domtoimage.toPng(node, {
height: node.offsetHeight * 2,
width: node.offsetWidth * 2)
})
.then(dataUrl => {
EventEmitterService.get("fullRendered").emit(dataUrl);
})
.catch(error => {
alert(error)
});
Run Code Online (Sandbox Code Playgroud)
=================================
的package.json
{
"name": "Ionic App",
"version": "0.0.1",
"author": "Ionic Framework",
"homepage": "http://ionicframework.com/",
"private": true,
"scripts": {
"start": "ionic-app-scripts serve",
"clean": "ionic-app-scripts clean",
"build": "ionic-app-scripts build",
"lint": "ionic-app-scripts lint"
},
"dependencies": {
"@angular/animations": "5.2.11", …Run Code Online (Sandbox Code Playgroud) 我试图从数据库中获取Base64编码的图像并将其保存到文件中.无论出于何种原因,当我尝试使用imagecreatefromstring&imagepng时,图像完全是黑色的.我尝试了很多不同的方法,但我最终还是得到了一个黑盒子.以下是我最好的尝试.有任何想法吗?非常感谢你提前!
$thefile = base64_decode($strImage);
$img = imagecreatefromstring($thefile);
if($img !== false)
{
header('Content-Type: image/png');
imagepng($img);
imagedestroy($img);
}
Run Code Online (Sandbox Code Playgroud)
这应该是上面,但格式不看的权利....
$ strImage ='iVBORw0KGgoAAAANSUhEUgAAA4QAAAD6CAYAAAD5jokXAAAMrUlEQVR4nO3dPahkZxkH8P + CkiqlaKGojcHCr9gEBBsbu5QiSRXBTksRsUijwcI0IorBD4gGGwvxC4soKLEQImiMRgMmMYmRGDbZbLJ7d ++ 9Zy3OPdzZ2bv3zuzMnOd8/H4wxe4O8z4zmWL + ed73fRIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABG4ukkzQmPgyQXkjxcVxoAAAC78kba8HeY5OrRY // oz4vhcL + qQAAAAHanOeXfPpe2U9gFw2d6qQgAAIBeXFvhOa9FtxAAAGByTusQLlvsFr68m3IAAADoyyodwkW6hQAAABOxTodwUdctPNxiLQAAAPRo3Q7hor0cdwtf3U45AAAA9GWTQJgkP48tpAAAAKN0q1tGl9lCCgAAMDKbdggXLW4h/d0WXxcAAIAd2GYgTI63kF5L8uaWXxsAAIAt2taW0WWHR6 + 9t6PXBwAAYEPb7hAuEgoBAAAGbJeBMBEKAQAABmtXW0YXCYUAAAADtOsOYUcoBAAAGJi + AmEiFAIAAAxKn4EwEQoBAAAGo48zhMu6UHi5YG0AAACO9N0h7HSh8N9F6wMAAMxeVSBM2kDYJPl4YQ0AAACzVRkIf5DjUAgAAEDPKgNhkryWNhAeFtcBAAAwO0Pozu2lreOguhAAAIA5qe4QdvbThsKr1YUAAADMxVACYdJ2CJskF6sLAQAAmIMhBcLEJTMAAAC9GVogvJw2EL5RXQgAAMDUDS0QJrqEAAAAO3d3hhm8Xk9b1151IQAAAFPWJLlUXcQJDjPMsAoAADBoz6e9sfPyCs9t0o58GJqnYwwFAADA2tYZ8t6k7cYNkS4hAADAmta5KGbIgfCBrBduAQAAZ M + dQDj0Llw3rP5cdSEAAABjsE4g7ALXkA25iwkAADAo6wS8K2s + v0IXWr9fXQgAAMDQrXM7508z/ECY6BICAACsZN3wtM4W0ypdJ/Of1YUAAAAM2boXxYwhECa6hAAAAGda96KYsQTCMVyAAwAAUOrlrDeqYSyBMGnf1351EQAAAEO2zsUyYwqEQ5 + bOCUvpu3KfrFg7fMFawIAwGSsc95uTIHw2bTv7XJxHXPRbdP9bc/rCv0AALCBdTppYwqESfu + BIB + VHW/xvadBACAQdnPdAPhG2nf24PVhcyEQAgAACPzStrQ9LUVnjvGH99jrHmsBEIAABihVS + WGeP2S4GhP31/P24vWBMAACZn1YtlxhiuxljzWFV81k2SbxWsCwAAk7HqxTJjDFdjrHmsqgLhcwXrAgDAZHQjA84yxnA1xprHquKzPkhypWBdAACYjO5imXNnPG + M4apJzcD0Oar4fpyPc4QAALCxVS6WGVsgvBphoU8V34/fxH9jAADY2CoXy4wtEK56NpLNnUvNZ/2BrNbdBgAATrFKeBpbIFz19lS2o0nyy6J1bQsGAIANXMk0A + FBdREz0iR5rWjdPxSsCwAAk9Ft + bt4ynPGFAj/nvb9uIGyP02S/YJ1D9JejAQAAGzgrI7aWM7j7cV20QpVn/nFnH0hEgAAcIYmp4e + MXQIhcE6VZ/7UxnP/6wAAIDBOmtA/dADoTBYq + PW1 + 8WrQsAAJPyatof1g/C5N + HHAi7S3GEwTpVgfD9MXoCAAC24rSLQYYaCA/S1uZG0VpndZh3qUnyzaK1AQBgMk7rsg0tEF7N8blHYbDepdQFwr0kzxetDQAAk3Fal2cogfBijoPgYZLP1JbDkb + mLhA + mZqRFwAAMCkX0v6of + SEf6sOhHfl + Jxa1RB0bu7DqQuEny9cGwAAJuVm5wirAuGFXB8EDZsfribJjwrX/mzR2gAAMBk3O0fYdyDcz3EIdE5wHJokLxWtvZ/kz0VrA wDAZNzsHGEfgXC5G3h49HeMQ5P2gpcKLya5XLQ2AABMxitpf9jfs/T3uwyEy91AF4SMU2Un96E4RwgAAFvRpB0jsGjbgfBKdAOn5rSxJbt2 + 9H6dxatDwAAk3FSl24bgXA5BOoGTktlIOzW/1Xh + gAAMAkn/bDfJBBezo0h8NwGr8cwdWG/yoUkrxauDwAAk7DtQJij17uW64PhWY/Do8dBkqtph9ILksNVHQgfTW2HEgAAJuGkH/bb2DL6Ztpgd9rjIMdBcJXQeJA2CFCvuxyoyl1H699WWAMAAIzeSaMnqgbTL/tS2gtv9nNjaDxMGyp1EWtcSP1NnwdJvlFcAwAAjNqVDDcQnuS5HIfY5YD4ZmFdc/PH1AfCZ9LOJAQAAG7Rf9L + SF/stA05EC67nJO7h8ujNNiud6c + EH4lzhECAMDGlkdCVP/Qv1V35sbB94dJni2sacqaJF8vXP8tRzV8srAGAAAYveWbRsfUIbyZ7 + XGraUHSe6tLGpimiR/K67hYpLHimsAAIBRW75YZgqBcNGF3Lit1IU0m2uSvF5cw6OxPRgAADbS3Rj5w6M/Ty0QLtrLjVtK7ymtaLy6YF3pQ0d1vLW4DgAAGLXFc4RTDoSLFs8bCobrW95qXOVSkvuqiwAAgDFb/HE/l0DYWTxrKBiubiiB8E9JflldBAAAjNniOcK5BcKOYLieoQTCryZ5uboIAAAYs1fS/SD/dOYbCDvLwfAfteUMVndRT7X3pK3jtuI6AABg1Jq0l67MPRB2FoPhleJahmgogTBxjhAAADbWzeoTCK/XBcOD6kIGZnlcSSXnCAEAYEPdFkmB8EbdjaRDODM3FJcynEDoHCEAAGxocXg7N1qcYWioffJChvNdeW/abb3mEQIAwC3qtgDqEN7cazkOhb8vrqXazzKcQJgkP07yheoiAABgrLotgALh6b6T41D4RHEtld6ZYQXCdyV5uLoIAAAYM4Fwdd1n9WZ1IYWaJN …
我已经编写了这个函数来捕获GIF的每个帧,但是输出非常滞后并且在数据增加时崩溃.有什么建议 ?
代码:
function createGifFromPng(list, framerate, fileName, gifScale) {
gifshot.createGIF({
'images': list,
'gifWidth': wWidth * gifScale,
'gifHeight': wHeight * gifScale,
'interval': 1 / framerate,
}, function(obj) {
if (!obj.error) {
var image = obj.image;
var a = document.createElement('a');
document.body.append(a);
a.download = fileName;
a.href = image;
a.click();
a.remove();
}
});
}
/////////////////////////////////////////////////////////////////////////
function getGifFromCanvas(renderer, sprite, fileName, gifScale, framesCount, framerate) {
var listImgs = [];
var saving = false;
var interval = setInterval(function() {
renderer.extract.canvas(sprite).toBlob(function(b) {
if (listImgs.length >= framesCount) {
clearInterval(interval); …Run Code Online (Sandbox Code Playgroud)