【问题标题】:Convert svg url to png url将 svg 网址转换为 png 网址
【发布时间】:2020-10-19 15:23:33
【问题描述】:

所以我收到图标 URL 的输入,并希望在 Microsoft Teams 的 AdaptiveCards 上显示它们

我的问题是当我收到一个带有 svg 扩展名的图标 URL 时,它不会在自适应卡上呈现并用未定义替换它

我试过这样做:

            byte[] imageBytes;
            using (var webClient = new WebClient())
            {
                imageBytes = webClient.DownloadData(appSuggestion.IconUri.AbsoluteUri);
            }
            this.Body.Add(new AdaptiveColumnSet
                {
                    Columns = new List<AdaptiveColumn>
                    {
                        new AdaptiveColumn
                        {
                            Items =
                            {
                                new AdaptiveImage
                                {
                                    Url = new System.Uri("data:image/svg+xml;base64,"+Convert.ToBase64String(imageBytes)),
                                    PixelWidth = 45,
                                    PixelHeight = 45,
                                },
                            },
                            Width = AdaptiveColumnWidth.Auto,
                        },
            }
    }

但它仍然没有工作.. 有什么想法,如何在不将图像保存在本地路径的情况下将 svg 转换为 png?

【问题讨论】:

  • 这能回答你的问题吗? Converting SVG to PNG using C#
  • @Tofik 否,解决方案期望图像保存在本地,或者 png 版本将保存在本地
  • 特别是第二个答案不需要。你得到位图/MemoryStream
  • 您必须考虑是否可以将SVG直接粘贴到网页而不是将其转换为PNG,而不是插入为data:image/svg+xml;base64,
  • @LeszekMazur 不太了解你,我得到的 svg 链接在网页中可以正常工作..

标签: c# microsoft-teams adaptive-cards


【解决方案1】:

目前团队不支持卡片中的 .SVG。你能检查一下这个文档here吗?

【讨论】:

  • 谢谢,我刚刚在网上搜索了一下。我想我必须找到一种方法将 svg 转换为 png
猜你喜欢
  • 2013-11-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-08-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多