尝试在Windows Edge(20.10240.16384,这是Microsoft提供的IE11 VM中的版本)中打开带有blob URL的新窗口时,我得到了一些奇怪的结果.
var xhr = new XMLHttpRequest();
xhr.open('POST', sourceUrl, true);
xhr.responseType = 'blob';
xhr.onload = function(e,form) {
if (this.status == 200) {
var blob = this.response;
var url = window.URL.createObjectURL(blob);
var w = window.open(url);
}
}
Run Code Online (Sandbox Code Playgroud)
在线上
var w = window.open(url);
Run Code Online (Sandbox Code Playgroud)
我得到一个"访问被拒绝"错误,它看起来与CORS捆绑在一起,这有点意义,因为它在技术上并不是同一个域.但是BLOB网址在技术上没有域名?
这是Edge中的错误吗?或者我做的事情不太对劲?此代码适用于IE,Chrome等.
我有一个图表,我正在向用户显示,我希望能够将图表作为图像导出到磁盘,以便他们可以在应用程序之外使用它(用于演示文稿或其他东西).
我已经设法使用PngBitmapEncoder和RenderTargetBitmap来获得基本的想法,但我得到的图像是小到可以使用的方式,我希望得到更大的图像.
我试图简单地增加我想要渲染的控件的高度和宽度,但是父级似乎可以直接控制渲染大小.从这里我试图在内存中复制UIElement但是然后渲染大小为(0,0)并且当我尝试使用方法来渲染它时,例如Measure()Arrange()和UpdateLayout()它们会抛出异常需要解耦父级来调用它们,但因为它在内存中而不是渲染,所以不应该是父级?
这一切都是使用Visiblox图表API完成的
这是我目前所拥有的,除了它不起作用:(
var width = 1600;
var height = 1200;
var newChart = new Chart { Width = width, Height = height, Title = chart.Title, XAxis = chart.XAxis, YAxis = chart.YAxis, Series = chart.Series};
Debug.WriteLine(newChart.RenderSize);
var size = new Size(width, height);
newChart.Measure(size);
newChart.Arrange(new Rect(size));
newChart.UpdateLayout();
Debug.WriteLine(newChart.RenderSize);
var rtb = new RenderTargetBitmap(width, height, 96, 96, PixelFormats.Pbgra32);
rtb.Render(newChart);
var encoder = new PngBitmapEncoder();
encoder.Frames.Add(BitmapFrame.Create(rtb));
using (var stream = fileDialog.OpenFile())
encoder.Save(stream);
Run Code Online (Sandbox Code Playgroud)
我已经离得更近了,它现在将图形背景渲染为轴'等等,但不是实际绘制的线条.以下是更新的来源
public static void RenderChartToImage(Chart elementToRender, string filename)
{ …Run Code Online (Sandbox Code Playgroud) 我的Azure WebJob始终以退出代码-2146232576失败.有谁知道退出代码与什么有关?
我正按计划运行它,我的源代码可以在这里找到:
https://github.com/luke-barnett/trakt-imdb250/tree/master/TrakIMDB250.Scraper
相关日志:
[06/15/2015 10:51:51 > 1e531f: SYS INFO] Status changed to Initializing
[06/15/2015 10:51:53 > 1e531f: SYS INFO] Run script
'TrakIMDB250.Scraper.exe' with script host - 'WindowsScriptHost'
[06/15/2015 10:51:53 > 1e531f: SYS INFO] Status changed to Running
[06/15/2015 10:51:53 > 1e531f: SYS INFO] Status changed to Failed
[06/15/2015 10:51:53 > 1e531f: SYS ERR ] Job failed due to exit code -2146232576
Run Code Online (Sandbox Code Playgroud)
相关代码:
Program.cs中
using Microsoft.Azure.WebJobs;
namespace TrakIMDB250.Scraper
{
class Program
{
static void Main(string[] args)
{
var config …Run Code Online (Sandbox Code Playgroud)