有什么方法可以将 SKDocument 转换为 SKbitmap 吗?

Is there any way to convert SKDocument to SKbitmap?

我正在寻找一种方法来将已创建 pdf 的 SKDocument 转换为 SKDocument.CreatePdf(ManagedStreamForPdfMemoryStream); 等同于 SKBitmap

的图像

这是不可能的,SKDocument.CreatePdf 生成的 PDF 文件无法使用 SkiaSharp 读取位图。

正如我在此回答中提到的,我建议寻找无需与 SkiaSharp 关联即可加载 PDF 的方法 - 它们是不同的任务。

但是...

如果您使用 SkiaSharp 创建 PDF,则只需使用与创建 PDF 相同的逻辑来创建位图。

您甚至可以使用 SKNWayCanvas 之类的东西来并行绘制:https://docs.microsoft.com/dotnet/api/skiasharp.sknwaycanvas

var pdf = document.BeginPage();
var bmp = imageSurface.Canvas;

var canvas = new SKNWayCanvas(100, 100);
canvas.AddCanvas(pdf);
canvas.AddCanvas(bmp);

canvas.DrawRect(...); 

最后,您将获得一个 PDF 和一组可以在屏幕上呈现的位图。不需要额外的工作,也不需要加载文件。