c# - Api 上的 Umbraco Imagegen GetCropUrl

标签 c# umbraco

我在 Umbraco v7.1 上使用 ImageGen。到目前为止一切顺利,我能够通过我的 Razor 代码获取裁剪网址。

但是,我需要在我的 Api Controller 上获取裁剪 url,但不确定如何执行此操作。

这就是我目前正在尝试获取它的方式。

ModelImage = Services.MediaService.GetById(galleryId).GetValue("modelImage").ToString()

...其中 ModelImage 是“Image Cropper”数据类型的别名。 这将返回 src 属性中的图像 url 以及裁剪信息(添加了换行符):

ModelImage: "{
  "focalPoint": {
    "left": 0.5,
    "top": 0.5
  },
 "src": "/media/1828/bob-marley-thumbnail-update.jpg",
  "crops": [
    {
      "alias": "modelListCrop",
      "width": 298,
      "height": 380,
     "coordinates": {
        "x1": 0.071221447830289469,
        "y1":  .051177864855964005,
        "x2": 0.42344542232622806,
        "y2": 0.45016601603464318
      }
    }
  ]
}"

有谁知道如何获取裁剪网址而不是原始图片网址?

最佳答案

如果将图像节点检索为 IPublishedContent 而不是 IMedia,则可以获得裁剪 URL。这允许您使用 GetCropUrl() 方法,传入 Image Cropper 属性的别名和您需要的裁剪别名。

var cropUrl = Umbraco.TypedMedia(galleryId).GetCropUrl("modelImage", "modelListCrop");

关于c# - Api 上的 Umbraco Imagegen GetCropUrl,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29560136/

相关文章:

c# - 如何读取文本文件并将其传递给 C# 中的列表?

.net - 来自 Id 的 Umbraco 6.x .Net 控制媒体

c# - 使用 Entity Framework 和 MySQL 实现 MassTransit saga 持久性

c# - DbContext 损坏附加实体 : why?

c# - Entity Framework 和 Lucene 的 DLL hell

css - 如何在不使用源按钮的情况下将类添加到 Umbraco 7 的 TinyMCE 中的表中?

azure - 安排 Azure 服务器重新启动

c# - foreach 循环无法识别对象类型

umbraco 7 在模板之间共享@functions

sql - SQL Server:通过参数从Umbraco获取排名最高的xx博客记录