【问题标题】:Is there any way to convert SKDocument to SKbitmap?有什么方法可以将 SKDocument 转换为 SKbitmap?
【发布时间】:2019-12-31 19:22:54
【问题描述】:

我正在寻找一种方法来将创建了类似 SKDocument.CreatePdf(ManagedStreamForPdfMemoryStream); 的 pdf 的 SKDocument 转换为类似 SKBitmap 的图像

【问题讨论】:

    标签: c# .net skiasharp


    【解决方案1】:

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

    正如我在这个答案中提到的,我建议寻找在不与 SkiaSharp 关联的情况下加载 PDF 的方法——它们是不同的任务。 https://stackoverflow.com/a/59513162/1117914

    但是……

    如果您使用 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 和一组可以在屏幕上呈现的位图。不需要额外的工作,也不需要加载文件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-05-18
      • 2020-08-29
      • 1970-01-01
      • 2015-08-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多