Api上的Umbraco Imagegen GetCropUrl

Ash*_*her 2 c# umbraco

我在Umbraco v7.1上使用ImageGen.到目前为止一直很好,我能通过我的Razor代码获取裁剪网址.

但是,我需要在我的Api控制器上获取裁剪网址,但我不确定如何执行此操作.

这就是我目前正试图获得它的方式.

ModelImage = Services.MediaService.GetById(galleryId).GetValue("modelImage").ToString()
Run Code Online (Sandbox Code Playgroud)

...其中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
      }
    }
  ]
}"
Run Code Online (Sandbox Code Playgroud)

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

小智 6

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

var cropUrl = Umbraco.TypedMedia(galleryId).GetCropUrl("modelImage", "modelListCrop");
Run Code Online (Sandbox Code Playgroud)