Eshn.Plugins.FocalPoint 1.0.9

dotnet add package Eshn.Plugins.FocalPoint --version 1.0.9                
NuGet\Install-Package Eshn.Plugins.FocalPoint -Version 1.0.9                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Eshn.Plugins.FocalPoint" Version="1.0.9" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Eshn.Plugins.FocalPoint --version 1.0.9                
#r "nuget: Eshn.Plugins.FocalPoint, 1.0.9"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Eshn.Plugins.FocalPoint as a Cake Addin
#addin nuget:?package=Eshn.Plugins.FocalPoint&version=1.0.9

// Install Eshn.Plugins.FocalPoint as a Cake Tool
#tool nuget:?package=Eshn.Plugins.FocalPoint&version=1.0.9                

Eshn.Plugins.FocalPoint

License

Installation

Eshn.Plugins.FocalPoint is installed via Optimizely nuget feed

Package Manager

PM > Install-Package Eshn.Plugins.FocalPoint -Version VERSION_NUMBER

.NET CLI

dotnet add package Eshn.Plugins.FocalPoint --version VERSION_NAME

Setup and configuration

Once installed you will need to add the following code to ConfigurationServices and Configure in your Startup.cs file.

public void ConfigureServices(IServiceCollection services) {
    // Add the default service and options.
    services.AddEPiFocalPointImageSharp();
}

public void Configure(IApplicationBuilder app, IWebHostEnvironment env) {

    // Other middleware registrations
    app.UseRouting();
    // Add the image processing middleware.
    app.UseEpiFocalPointImageSharp();
}

DO NOT add SixLabors.ImageSharp.Web and Baaijte.Optimizely.ImageSharp.Web settings. Additionally, you can't use app.UseBaaijteOptimizelyImageSharp();

Usage

Create or make sure your Image Media ContentTypes inherits from Eshn.Plugins.FocalPoint.FocalPointImageData or implements Eshn.Plugins.FocalPoint.IFocalPointImageData. Remember to decorate the FocalPoint property with [BackingType(typeof(PropertyFocalPoint))] if you want to implement Eshn.Plugins.FocalPoint.IFocalPointImageData manually.

This is example code:

public abstract class ImageFile : ImageData, IFocalPointData
{
    [BackingType(typeof(PropertyFocalPoint))]
    public virtual FocalPoint? FocalPoint { get; set; }

    [ScaffoldColumn(false)]
    public virtual int? OriginalWidth { get; set; }

    [ScaffoldColumn(false)]
    public virtual int? OriginalHeight { get; set; }
}

Disable resize when image width or height is less than expect width or height

var builder = services.AddEPiFocalPointImageSharp(options =>
{
    options.IgnoreZoomIn = true;
});

Additional localizations

Embedded localizations are provided for Swedish and English. Should you need to localize in other languages, you can do so by adding XML translations thusly:

<contenttypes>
    <imagedata>
        <properties>
            <focalpoint>
                <caption>Focal point</caption>
                <help>The point in the image, where the focus should be, automatically cropped images will be calculated based on this point.</help>
            </focalpoint>
            <originalheight>
                <caption>Height</caption>
                <help>The image height in pixels.</help>
            </originalheight>
            <originalwidth>
                <caption>Width</caption>
                <help>The image width in pixels.</help>
            </originalwidth>
        </properties>
    </imagedata>
</contenttypes>
Product Compatible and additional computed target framework versions.
.NET net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.0.9 78 10/31/2024
1.0.8 65 10/29/2024
1.0.6 149 6/30/2023
1.0.5 233 6/1/2023
1.0.4-beta 134 5/26/2023
1.0.3-beta 139 5/19/2023

- Fix bug cannot resize image that isn't implemented IFocalPointData