Eshn.Plugins.FocalPoint 1.0.3-beta

This is a prerelease version of Eshn.Plugins.FocalPoint.
There is a newer version of this package available.
See the version list below for details.
dotnet add package Eshn.Plugins.FocalPoint --version 1.0.3-beta                
NuGet\Install-Package Eshn.Plugins.FocalPoint -Version 1.0.3-beta                
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.3-beta" />                
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.3-beta                
#r "nuget: Eshn.Plugins.FocalPoint, 1.0.3-beta"                
#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.3-beta&prerelease

// Install Eshn.Plugins.FocalPoint as a Cake Tool
#tool nuget:?package=Eshn.Plugins.FocalPoint&version=1.0.3-beta&prerelease                

License

Installation

Eshn.Plugins.FocalPoiunt 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 Start.cs file.

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

public void Configure(IApplicationBuilder app, IWebHostEnvironment env) {

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

DO NOT add SixLabors.ImageSharp.Web and Baaijte.Optimizely.ImageSharp.Web settings.

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 99 10/31/2024
1.0.8 68 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

- Support ignore resize in case expected width is greater than image width