gpt4 book ai didi

image - Windows Phone 8 - 在后台生成锁屏图像

转载 作者:行者123 更新时间:2023-12-04 15:01:12 25 4
gpt4 key购买 nike

我正在尝试创建一个使用新的 Windows Phone 8 Live Lockscreen API 的 Windows Phone 8 应用程序(我当前发布的“The Quote”的更新)。我基本上想从应用程序包中随机选择一个图像背景,并在其上放置一个带有随机引号的文本块来创建锁屏图像。我怎样才能在后台周期性任务中完成它?肯定有办法做到这一点(许多当前的应用程序,包括不同的天气和新闻应用程序在后台本地创建实时锁屏),但我似乎无法找出如何以及到目前为止没有互联网搜索给我任何东西有用。

非常感谢任何帮助!

非常感谢!

编辑:

我能够找到一种方法来使用我的内容创建一个 UserControl 并以这种方式截取它的屏幕截图:

var bmp = new WriteableBitmap(768, 1280);
bmp.Render(LayoutRoot, null);

String tempJPEG = "TempJPEG.jpg";

var myStore = IsolatedStorageFile.GetUserStoreForApplication();
if (myStore.FileExists(tempJPEG))
{
myStore.DeleteFile(tempJPEG);
}
IsolatedStorageFileStream myFileStream = myStore.CreateFile(tempJPEG);

WriteableBitmap wb = new WriteableBitmap(bmp);

wb.SaveJpeg(myFileStream, wb.PixelWidth, wb.PixelHeight, 0, 100);
myFileStream.Close();

这种方法给我带来了三个不同的问题:
  • 如果我没有在构造函数中设置 WriteableBitmap 的大小,它会错误地选择它并且锁屏是没有用的。
  • 如果我运行上面的代码,它会抛出 OutOfMemory 错误
  • 在第 1 种情况下,控件的背景也存在问题(变黑,即使我已将主网格的背景画笔设置为 ImageBrush,链接到主 Appx 包中的本地文件。

  • 这是完全错误的吗?有没有更好的(工作)方式?

    非常感谢大家,感谢您的帮助。

    最佳答案

    您很可能在后台代理中遇到内存上限限制,在 WP8 上为 11 MB。我建议您在服务器/Azure 上渲染您的图像,然后将其下载到后台代理中,将其保存到手机中并在锁屏上显示,或者使用 Resource Intesive Task 进行渲染?
    我在我的一个应用程序中使用了平铺渲染,当我尝试仅渲染 2 个大小为 336x336 + 159x159px 的平铺图像时遇到了内存上限,因此您可以想象渲染 768x1280 图像也可以轻松达到此上限。

    关于image - Windows Phone 8 - 在后台生成锁屏图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14017042/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com