2016-12-07 48 views
0

我在Azure函数中使用ImageResizer(https://imageresizing.net/)库,该函数返回存储在Azure存储帐户中的调整大小的图像。ImageResizer:禁用调整大小的大小限制

它迄今为止工作状况良好,但它具有调整到最大3200像素的限制。 (https://imageresizing.net/docs/v4/plugins/sizelimiting

因为我使用的是Azure功能,所以无法访问web.config来禁用此限制。我可以通过代码禁用此限制吗(可能是ResizeSettings)?

谢谢。

回答

3

通常情况下,您会删除Application_Start中的SizeLimiting插件,但我们目前不会为您提供Azure函数中的任何挂钩来运行启动代码。我们的回购中有一个跟踪here的问题。

但是,你仍然可以做任何图像处理之前删除插件,在功能的代码,例如:

using ImageResizer; 
using ImageResizer.Plugins.Basic; 

public static void Run(..., TraceWriter log) 
{ 
    RemoveSizeLimiter(log); 

    ... 
} 

private static void RemoveSizeLimiter(TraceWriter log) 
{ 
    var config = ImageResizer.Configuration.Config.Current; 
    var sizeLimiter = config.Plugins.Get<SizeLimiting>(); 
    log.Info("SizeLimiter installed: " + (sizeLimiter != null).ToString()); 

    if (sizeLimiter != null) 
    { 
     log.Info("Uninstalling SizeLimiter"); 
     sizeLimiter.Uninstall(config); 
    } 
} 

如果您运行此函数多次,你会看到该插件从取出第一次收集静态Config.PlugIns,并在应用程序域的整个生命周期内保持删除状态。

相关问题