mirror of
https://github.com/jellyfin/jellyfin.git
synced 2024-09-07 11:57:55 +02:00
update collage builder
This commit is contained in:
parent
5d027aabd9
commit
bdf27b81c1
2 changed files with 23 additions and 9 deletions
|
@ -96,16 +96,30 @@ namespace Emby.Drawing.Skia
|
||||||
|
|
||||||
using (var croppedBitmap = SKBitmap.FromImage(subset))
|
using (var croppedBitmap = SKBitmap.FromImage(subset))
|
||||||
{
|
{
|
||||||
using (var flipped = new SKBitmap(croppedBitmap.Width, croppedBitmap.Height / 2, croppedBitmap.ColorType, croppedBitmap.AlphaType))
|
using (var reflectionBitmap = new SKBitmap(croppedBitmap.Width, croppedBitmap.Height / 2, croppedBitmap.ColorType, croppedBitmap.AlphaType))
|
||||||
{
|
{
|
||||||
croppedBitmap.Resize(flipped, SKBitmapResizeMethod.Lanczos3);
|
croppedBitmap.Resize(reflectionBitmap, SKBitmapResizeMethod.Lanczos3);
|
||||||
|
|
||||||
using (var gradient = new SKPaint())
|
using (var flippedBitmap = new SKBitmap(reflectionBitmap.Width, reflectionBitmap.Height))
|
||||||
{
|
{
|
||||||
var matrix = SKMatrix.MakeScale(1, -1);
|
using (var flippedCanvas = new SKCanvas(flippedBitmap))
|
||||||
matrix.SetScaleTranslate(1, -1, 0, flipped.Height);
|
{
|
||||||
gradient.Shader = SKShader.CreateLinearGradient(new SKPoint(0, 0), new SKPoint(0, flipped.Height), new[] { new SKColor(0, 0, 0, 0), SKColors.Black }, null, SKShaderTileMode.Clamp, matrix);
|
var matrix = SKMatrix.MakeScale(1, -1);
|
||||||
canvas.DrawBitmap(flipped, (horizontalImagePadding * (i + 1)) + (iSlice * i), iHeight + verticalSpacing, gradient);
|
matrix.SetScaleTranslate(1, -1, 0, flippedBitmap.Height);
|
||||||
|
flippedCanvas.SetMatrix(matrix);
|
||||||
|
flippedCanvas.DrawBitmap(reflectionBitmap, 0, 0);
|
||||||
|
flippedCanvas.ResetMatrix();
|
||||||
|
|
||||||
|
using (var gradient = new SKPaint())
|
||||||
|
{
|
||||||
|
gradient.IsAntialias = true;
|
||||||
|
gradient.BlendMode = SKBlendMode.SrcATop;
|
||||||
|
gradient.Shader = SKShader.CreateLinearGradient(new SKPoint(0, 0), new SKPoint(0, flippedBitmap.Height), new[] { new SKColor(0, 0, 0, 0), new SKColor(0, 0, 0, 255) }, null, SKShaderTileMode.Clamp);
|
||||||
|
flippedCanvas.DrawPaint(gradient);
|
||||||
|
}
|
||||||
|
|
||||||
|
canvas.DrawBitmap(flippedBitmap, (horizontalImagePadding * (i + 1)) + (iSlice * i), iHeight + verticalSpacing);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -122,10 +122,10 @@
|
||||||
<HintPath>..\ThirdParty\taglib\TagLib.Portable.dll</HintPath>
|
<HintPath>..\ThirdParty\taglib\TagLib.Portable.dll</HintPath>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="SQLitePCLRaw.core">
|
<Reference Include="SQLitePCLRaw.core">
|
||||||
<HintPath>..\packages\SQLitePCLRaw.core.1.1.2\lib\net45\SQLitePCLRaw.core.dll</HintPath>
|
<HintPath>..\packages\SQLitePCLRaw.core.1.1.5\lib\net45\SQLitePCLRaw.core.dll</HintPath>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="SQLitePCLRaw.provider.sqlite3">
|
<Reference Include="SQLitePCLRaw.provider.sqlite3">
|
||||||
<HintPath>..\packages\SQLitePCLRaw.provider.sqlite3.net45.1.1.2\lib\net45\SQLitePCLRaw.provider.sqlite3.dll</HintPath>
|
<HintPath>..\packages\SQLitePCLRaw.provider.sqlite3.net45.1.1.5\lib\net45\SQLitePCLRaw.provider.sqlite3.dll</HintPath>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="Emby.Server.Connect">
|
<Reference Include="Emby.Server.Connect">
|
||||||
<HintPath>..\ThirdParty\emby\Emby.Server.Connect.dll</HintPath>
|
<HintPath>..\ThirdParty\emby\Emby.Server.Connect.dll</HintPath>
|
||||||
|
|
Loading…
Reference in a new issue