首页 > 解决方案 > 将 svg 网址转换为 png 网址

问题描述

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

我的问题是当我收到一个带有 svg 扩展名的 Icon Url 时,它不会在自适应卡上呈现并用 undefined 替换它

我试过这样做:

            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 而不将图像保存在本地路径上?

标签: c#microsoft-teamsadaptive-cards

解决方案


目前团队不支持卡片中的 .SVG。你能在这里查看这个文档


推荐阅读