Added the initial bits for a set of utils for SkiaSharp
This commit is contained in:
Родитель
6fa7440ee8
Коммит
322baee72a
19
build.cake
19
build.cake
|
@ -27,6 +27,7 @@ var VERSION_PACKAGES = new Dictionary<string, string> {
|
|||
{ "SkiaSharp.Views", "1.56.1" },
|
||||
{ "SkiaSharp.Views.Forms", "1.56.1" },
|
||||
{ "SkiaSharp.Svg", "1.56.1" },
|
||||
{ "SkiaSharp.Extended", "1.56.1-beta" },
|
||||
};
|
||||
|
||||
string ANDROID_HOME = EnvironmentVariable ("ANDROID_HOME") ?? EnvironmentVariable ("HOME") + "/Library/Developer/Xamarin/android-sdk-macosx";
|
||||
|
@ -76,6 +77,7 @@ Task ("libs")
|
|||
ReplaceTextInFiles ("./source/SkiaSharp.Views/SkiaSharp.Views.Shared/Properties/SkiaSharpViewsAssemblyInfo.cs", "{GIT_SHA}", sha);
|
||||
ReplaceTextInFiles ("./source/SkiaSharp.Views.Forms/SkiaSharp.Views.Forms.Shared/Properties/SkiaSharpViewsFormsAssemblyInfo.cs", "{GIT_SHA}", sha);
|
||||
ReplaceTextInFiles ("./source/SkiaSharp.Svg/SkiaSharp.Svg.Shared/Properties/SkiaSharpSvgAssemblyInfo.cs", "{GIT_SHA}", sha);
|
||||
ReplaceTextInFiles ("./source/SkiaSharp.Extended/SkiaSharp.Extended.Shared/Properties/SkiaSharpExtendedAssemblyInfo.cs", "{GIT_SHA}", sha);
|
||||
}
|
||||
|
||||
// create all the directories
|
||||
|
@ -122,6 +124,9 @@ Task ("libs")
|
|||
|
||||
// copy SVG
|
||||
CopyFileToDirectory ("./source/SkiaSharp.Svg/SkiaSharp.Svg/bin/Release/SkiaSharp.Svg.dll", "./output/portable/");
|
||||
|
||||
// copy Extended
|
||||
CopyFileToDirectory ("./source/SkiaSharp.Extended/SkiaSharp.Extended/bin/Release/SkiaSharp.Extended.dll", "./output/portable/");
|
||||
}
|
||||
|
||||
if (IsRunningOnMac ()) {
|
||||
|
@ -159,6 +164,9 @@ Task ("libs")
|
|||
|
||||
// copy SVG
|
||||
CopyFileToDirectory ("./source/SkiaSharp.Svg/SkiaSharp.Svg/bin/Release/SkiaSharp.Svg.dll", "./output/portable/");
|
||||
|
||||
// copy Extended
|
||||
CopyFileToDirectory ("./source/SkiaSharp.Extended/SkiaSharp.Extended/bin/Release/SkiaSharp.Extended.dll", "./output/portable/");
|
||||
}
|
||||
|
||||
if (IsRunningOnLinux ()) {
|
||||
|
@ -179,6 +187,9 @@ Task ("libs")
|
|||
|
||||
// copy SVG
|
||||
CopyFileToDirectory ("./source/SkiaSharp.Svg/SkiaSharp.Svg/bin/Release/SkiaSharp.Svg.dll", "./output/portable/");
|
||||
|
||||
// copy Extended
|
||||
CopyFileToDirectory ("./source/SkiaSharp.Extended/SkiaSharp.Extended/bin/Release/SkiaSharp.Extended.dll", "./output/portable/");
|
||||
}
|
||||
|
||||
// .NET Standard / .NET Core
|
||||
|
@ -191,11 +202,14 @@ Task ("libs")
|
|||
CopyFileToDirectory ("./binding/SkiaSharp.NetStandard/bin/Release/SkiaSharp.dll", "./output/netstandard/");
|
||||
// build other source
|
||||
RunDotNetCoreRestore ("source/SkiaSharp.Svg/SkiaSharp.Svg.NetStandard");
|
||||
RunDotNetCoreRestore ("source/SkiaSharp.Extended/SkiaSharp.Extended.NetStandard");
|
||||
DotNetBuild ("./source/SkiaSharpSource.NetStandard.sln", c => {
|
||||
c.Configuration = "Release";
|
||||
});
|
||||
// copy SVG
|
||||
CopyFileToDirectory ("./source/SkiaSharp.Svg/SkiaSharp.Svg.NetStandard/bin/Release/SkiaSharp.Svg.dll", "./output/netstandard/");
|
||||
// copy Extended
|
||||
CopyFileToDirectory ("./source/SkiaSharp.Extended/SkiaSharp.Extended.NetStandard/bin/Release/SkiaSharp.Extended.dll", "./output/netstandard/");
|
||||
});
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
@ -494,6 +508,8 @@ Task ("nuget")
|
|||
}
|
||||
// SVG is a PCL
|
||||
PackageNuGet ("./nuget/SkiaSharp.Svg.nuspec", "./output/");
|
||||
// Extended is a PCL
|
||||
PackageNuGet ("./nuget/SkiaSharp.Extended.nuspec", "./output/");
|
||||
});
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
@ -576,6 +592,9 @@ Task ("set-versions")
|
|||
UpdateAssemblyInfo (
|
||||
"./source/SkiaSharp.Svg/SkiaSharp.Svg.Shared/Properties/SkiaSharpSvgAssemblyInfo.cs",
|
||||
VERSION_ASSEMBLY, VERSION_FILE, sha);
|
||||
UpdateAssemblyInfo (
|
||||
"./source/SkiaSharp.Extended/SkiaSharp.Extended.Shared/Properties/SkiaSharpExtendedAssemblyInfo.cs",
|
||||
VERSION_ASSEMBLY, VERSION_FILE, sha);
|
||||
});
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
|
|
@ -0,0 +1,23 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<package>
|
||||
<metadata>
|
||||
<id>SkiaSharp.Extended</id>
|
||||
<title>SkiaSharp.Extended</title>
|
||||
<version>1.56.1-beta</version>
|
||||
<authors>Xamarin Inc.</authors>
|
||||
<owners>Xamarin Inc.</owners>
|
||||
<requireLicenseAcceptance>false</requireLicenseAcceptance>
|
||||
<description>This package adds many additional features and utilities for use with SkiaSharp.</description>
|
||||
<copyright>Copyright (c) Xamarin Inc. 2016</copyright>
|
||||
<licenseUrl>https://github.com/mono/SkiaSharp/blob/master/LICENSE.md</licenseUrl>
|
||||
<projectUrl>https://github.com/mono/SkiaSharp</projectUrl>
|
||||
<iconUrl>https://cdn.rawgit.com/mono/SkiaSharp/v1.53.0/images/skia_256x256.png</iconUrl>
|
||||
<dependencies>
|
||||
<dependency id="SkiaSharp" version="1.56.1" />
|
||||
</dependencies>
|
||||
</metadata>
|
||||
<files>
|
||||
<file src="output/portable/SkiaSharp.Extended.dll" target="lib/portable-net45+win8+wpa81+wp8" />
|
||||
<file src="output/netstandard/SkiaSharp.Extended.dll" target="lib/netstandard1.3" />
|
||||
</files>
|
||||
</package>
|
|
@ -0,0 +1 @@
|
|||
|
|
@ -0,0 +1,59 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
<PropertyGroup>
|
||||
<MinimumVisualStudioVersion>14.0</MinimumVisualStudioVersion>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProjectGuid>{36456F7F-388A-49E1-B9C5-CC2DEC82D2C2}</ProjectGuid>
|
||||
<OutputType>Library</OutputType>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>SkiaSharp.Extended</RootNamespace>
|
||||
<AssemblyName>SkiaSharp.Extended</AssemblyName>
|
||||
<DefaultLanguage>en-US</DefaultLanguage>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
|
||||
<TargetFrameworkVersion>v5.0</TargetFrameworkVersion>
|
||||
<SignAssembly>true</SignAssembly>
|
||||
<AssemblyOriginatorKeyFile>..\..\..\mono.snk</AssemblyOriginatorKeyFile>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>bin\Debug\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Release\</OutputPath>
|
||||
<DefineConstants>TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<!-- A reference to the entire .NET Framework is automatically included -->
|
||||
<None Include="project.json" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\..\..\binding\SkiaSharp.NetStandard\SkiaSharp.NetStandard.csproj">
|
||||
<Project>{4e0924f8-d546-4428-9412-4b9411fba5ff}</Project>
|
||||
<Name>SkiaSharp.NetStandard</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<Import Project="..\SkiaSharp.Extended.Shared\SkiaSharp.Extended.Shared.projitems" Label="Shared" />
|
||||
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\Portable\$(TargetFrameworkVersion)\Microsoft.Portable.CSharp.targets" />
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
<Target Name="BeforeBuild">
|
||||
</Target>
|
||||
<Target Name="AfterBuild">
|
||||
</Target>
|
||||
-->
|
||||
</Project>
|
|
@ -0,0 +1,9 @@
|
|||
{
|
||||
"supports": {},
|
||||
"dependencies": {
|
||||
"NETStandard.Library": "1.6.0"
|
||||
},
|
||||
"frameworks": {
|
||||
"netstandard1.3": {}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,17 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// This code was generated by Cake.
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
using System.Reflection;
|
||||
|
||||
[assembly: AssemblyTitle("SkiaSharp.Extended")]
|
||||
[assembly: AssemblyDescription("")]
|
||||
[assembly: AssemblyCompany("")]
|
||||
[assembly: AssemblyProduct("SkiaSharp.Extended")]
|
||||
[assembly: AssemblyVersion("1.56.0.0")]
|
||||
[assembly: AssemblyFileVersion("1.56.1.0")]
|
||||
[assembly: AssemblyInformationalVersion("1.56.1.0-{GIT_SHA}")]
|
||||
[assembly: AssemblyCopyright("Xamarin Inc.")]
|
||||
[assembly: AssemblyTrademark("")]
|
||||
|
|
@ -0,0 +1,194 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
|
||||
namespace SkiaSharp.Extended
|
||||
{
|
||||
public static class SKGeometry
|
||||
{
|
||||
public const float PI = (float)Math.PI;
|
||||
|
||||
private const float UprightAngle = PI / 2f;
|
||||
private const float TotalAngle = 2f * PI;
|
||||
|
||||
public static SKPoint GetCirclePoint(float r, float angle)
|
||||
{
|
||||
return new SKPoint(r * (float)Math.Cos(angle), r * (float)Math.Sin(angle));
|
||||
}
|
||||
|
||||
public static SKPath CreateSectorPath(float start, float end, float outerRadius, float innerRadius = 0.0f, float margin = 0.0f, float explodeDistance = 0.0f, SKPathDirection direction = SKPathDirection.Clockwise)
|
||||
{
|
||||
var path = new SKPath();
|
||||
|
||||
// if the sector has no size, then it has no path
|
||||
if (start == end)
|
||||
{
|
||||
return path;
|
||||
}
|
||||
|
||||
// the the sector is a full circle, then do that
|
||||
if (end - start == 1.0f)
|
||||
{
|
||||
path.AddCircle(0, 0, outerRadius, direction);
|
||||
path.AddCircle(0, 0, innerRadius, direction);
|
||||
path.FillType = SKPathFillType.EvenOdd;
|
||||
return path;
|
||||
}
|
||||
|
||||
// calculate the angles
|
||||
var startAngle = TotalAngle * start - UprightAngle;
|
||||
var endAngle = TotalAngle * end - UprightAngle;
|
||||
var large = endAngle - startAngle > PI ? SKPathArcSize.Large : SKPathArcSize.Small;
|
||||
var sectorCenterAngle = (endAngle - startAngle) / 2f + startAngle;
|
||||
|
||||
// get the radius bits
|
||||
var cectorCenterRadius = (outerRadius - innerRadius) / 2f + innerRadius;
|
||||
|
||||
// move explosion around 90 degrees, since matrix use down as 0
|
||||
var explosionMatrix = SKMatrix.MakeRotation(sectorCenterAngle - (PI / 2f));
|
||||
var offset = explosionMatrix.MapPoint(new SKPoint(0, explodeDistance));
|
||||
|
||||
// calculate the angle for the margins
|
||||
margin = direction == SKPathDirection.Clockwise ? margin : -margin;
|
||||
var offsetR = outerRadius == 0 ? 0 : ((margin / (TotalAngle * outerRadius)) * TotalAngle);
|
||||
var offsetr = innerRadius == 0 ? 0 : ((margin / (TotalAngle * innerRadius)) * TotalAngle);
|
||||
|
||||
// get the points
|
||||
var a = GetCirclePoint(outerRadius, startAngle + offsetR) + offset;
|
||||
var b = GetCirclePoint(outerRadius, endAngle - offsetR) + offset;
|
||||
var c = GetCirclePoint(innerRadius, endAngle - offsetr) + offset;
|
||||
var d = GetCirclePoint(innerRadius, startAngle + offsetr) + offset;
|
||||
|
||||
// add the points to the path
|
||||
path.MoveTo(a);
|
||||
path.ArcTo(outerRadius, outerRadius, 0, large, direction, b.X, b.Y);
|
||||
path.LineTo(c);
|
||||
if (innerRadius == 0.0f)
|
||||
{
|
||||
// take a short cut
|
||||
path.LineTo(d);
|
||||
}
|
||||
else
|
||||
{
|
||||
var reverseDirection = direction == SKPathDirection.Clockwise ? SKPathDirection.CounterClockwise : SKPathDirection.Clockwise;
|
||||
path.ArcTo(innerRadius, innerRadius, 0, large, reverseDirection, d.X, d.Y);
|
||||
}
|
||||
path.Close();
|
||||
|
||||
return path;
|
||||
}
|
||||
|
||||
public static SKPath CreatePiePath(IEnumerable<float> sectorSizes, float outerRadius, float innerRadius = 0.0f, float spacing = 0.0f, float explodeDistance = 0.0f, SKPathDirection direction = SKPathDirection.Clockwise)
|
||||
{
|
||||
var path = new SKPath();
|
||||
|
||||
float cursor = 0;
|
||||
var sum = sectorSizes.Sum();
|
||||
foreach (var sectorSize in sectorSizes)
|
||||
{
|
||||
var sector = CreateSectorPath(cursor, cursor + sectorSize, outerRadius, innerRadius, spacing / 2f, explodeDistance, direction);
|
||||
|
||||
cursor += sectorSize;
|
||||
|
||||
path.AddPath(sector, SKPath.AddMode.Append);
|
||||
}
|
||||
|
||||
return path;
|
||||
}
|
||||
|
||||
public static SKPath CreateSquarePath(float side, SKPathDirection direction = SKPathDirection.Clockwise)
|
||||
{
|
||||
return CreateRectanglePath(side, side, direction);
|
||||
}
|
||||
|
||||
public static SKPath CreateRectanglePath(float width, float height, SKPathDirection direction = SKPathDirection.Clockwise)
|
||||
{
|
||||
var path = new SKPath();
|
||||
path.AddRect(new SKRect(width / -2, height / -2, width / 2, height / 2), direction);
|
||||
path.Close();
|
||||
return path;
|
||||
}
|
||||
|
||||
public static SKPath CreateTrianglePath(float width, float height, SKPathDirection direction = SKPathDirection.Clockwise)
|
||||
{
|
||||
var path = new SKPath();
|
||||
path.MoveTo(0, height / -2);
|
||||
if (direction == SKPathDirection.Clockwise)
|
||||
{
|
||||
path.LineTo(width / -2, height / 2);
|
||||
path.LineTo(width / 2, height / 2);
|
||||
}
|
||||
else
|
||||
{
|
||||
path.LineTo(width / 2, height / 2);
|
||||
path.LineTo(width / -2, height / 2);
|
||||
}
|
||||
path.Close();
|
||||
return path;
|
||||
}
|
||||
|
||||
public static SKPath CreateTrianglePath(float radius, SKPathDirection direction = SKPathDirection.Clockwise)
|
||||
{
|
||||
return CreateRegularPolygonPath(radius, 3, direction);
|
||||
}
|
||||
|
||||
public static SKPath CreateRegularPolygonPath(float radius, int points, SKPathDirection direction = SKPathDirection.Clockwise)
|
||||
{
|
||||
var path = new SKPath();
|
||||
|
||||
float stepAngle = TotalAngle / points;
|
||||
if (direction == SKPathDirection.CounterClockwise)
|
||||
{
|
||||
stepAngle = -stepAngle;
|
||||
}
|
||||
|
||||
for (int p = 0; p < points; p++)
|
||||
{
|
||||
float angle = stepAngle * p - UprightAngle;
|
||||
float x = radius * (float)Math.Cos(angle);
|
||||
float y = radius * (float)Math.Sin(angle);
|
||||
|
||||
if (p == 0)
|
||||
path.MoveTo(x, y);
|
||||
else
|
||||
path.LineTo(x, y);
|
||||
}
|
||||
|
||||
path.Close();
|
||||
return path;
|
||||
}
|
||||
|
||||
public static SKPath CreateRegularStarPath(float outerRadius, float innerRadius, int points, SKPathDirection direction = SKPathDirection.Clockwise)
|
||||
{
|
||||
var path = new SKPath();
|
||||
|
||||
bool isInner = false;
|
||||
points *= 2;
|
||||
|
||||
float stepAngle = TotalAngle / points;
|
||||
if (direction == SKPathDirection.CounterClockwise)
|
||||
{
|
||||
stepAngle = -stepAngle;
|
||||
}
|
||||
|
||||
for (int p = 0; p < points; p++)
|
||||
{
|
||||
float radius = isInner ? innerRadius : outerRadius;
|
||||
|
||||
float angle = stepAngle * p - UprightAngle;
|
||||
float x = radius * (float)Math.Cos(angle);
|
||||
float y = radius * (float)Math.Sin(angle);
|
||||
|
||||
if (p == 0)
|
||||
path.MoveTo(x, y);
|
||||
else
|
||||
path.LineTo(x, y);
|
||||
|
||||
isInner = !isInner;
|
||||
}
|
||||
|
||||
path.Close();
|
||||
return path;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,47 @@
|
|||
namespace SkiaSharp.Extended
|
||||
{
|
||||
public static class SKGeometryExtensions
|
||||
{
|
||||
public static void DrawSquare(this SKCanvas canvas, float cx, float cy, float side, SKPaint paint)
|
||||
{
|
||||
var path = SKGeometry.CreateSquarePath(side);
|
||||
path.Offset(cx, cy);
|
||||
canvas.DrawPath(path, paint);
|
||||
}
|
||||
|
||||
public static void DrawRect(this SKCanvas canvas, float cx, float cy, float width, float height, SKPaint paint)
|
||||
{
|
||||
var path = SKGeometry.CreateRectanglePath(width, height);
|
||||
path.Offset(cx, cy);
|
||||
canvas.DrawPath(path, paint);
|
||||
}
|
||||
|
||||
public static void DrawTriangle(this SKCanvas canvas, float cx, float cy, float width, float height, SKPaint paint)
|
||||
{
|
||||
var path = SKGeometry.CreateTrianglePath(width, height);
|
||||
path.Offset(cx, cy);
|
||||
canvas.DrawPath(path, paint);
|
||||
}
|
||||
|
||||
public static void DrawTriangle(this SKCanvas canvas, float cx, float cy, float radius, SKPaint paint)
|
||||
{
|
||||
var path = SKGeometry.CreateTrianglePath(radius);
|
||||
path.Offset(cx, cy);
|
||||
canvas.DrawPath(path, paint);
|
||||
}
|
||||
|
||||
public static void DrawRegularPolygon(this SKCanvas canvas, float cx, float cy, float radius, int points, SKPaint paint)
|
||||
{
|
||||
var path = SKGeometry.CreateRegularPolygonPath(radius, points);
|
||||
path.Offset(cx, cy);
|
||||
canvas.DrawPath(path, paint);
|
||||
}
|
||||
|
||||
public static void DrawStar(this SKCanvas canvas, float cx, float cy, float outerRadius, float innerRadius, int points, SKPaint paint)
|
||||
{
|
||||
var path = SKGeometry.CreateRegularStarPath(outerRadius, innerRadius, points);
|
||||
path.Offset(cx, cy);
|
||||
canvas.DrawPath(path, paint);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,16 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<MSBuildAllProjects>$(MSBuildAllProjects);$(MSBuildThisFileFullPath)</MSBuildAllProjects>
|
||||
<HasSharedItems>true</HasSharedItems>
|
||||
<SharedGUID>e3290ce6-0ada-486b-9bab-8bcf07f9be45</SharedGUID>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Label="Configuration">
|
||||
<Import_RootNamespace>SkiaSharp.Extended</Import_RootNamespace>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="$(MSBuildThisFileDirectory)Properties\SkiaSharpExtendedAssemblyInfo.cs" />
|
||||
<Compile Include="$(MSBuildThisFileDirectory)SKGeometryExtensions.cs" />
|
||||
<Compile Include="$(MSBuildThisFileDirectory)SKGeometry.cs" />
|
||||
</ItemGroup>
|
||||
</Project>
|
|
@ -0,0 +1,13 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>e3290ce6-0ada-486b-9bab-8bcf07f9be45</ProjectGuid>
|
||||
<MinimumVisualStudioVersion>14.0</MinimumVisualStudioVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\CodeSharing\Microsoft.CodeSharing.Common.Default.props" />
|
||||
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\CodeSharing\Microsoft.CodeSharing.Common.props" />
|
||||
<PropertyGroup />
|
||||
<Import Project="SkiaSharp.Extended.Shared.projitems" Label="Shared" />
|
||||
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\CodeSharing\Microsoft.CodeSharing.CSharp.targets" />
|
||||
</Project>
|
|
@ -0,0 +1 @@
|
|||
|
|
@ -0,0 +1,57 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
<PropertyGroup>
|
||||
<MinimumVisualStudioVersion>14.0</MinimumVisualStudioVersion>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProjectGuid>{FEA1FEC9-950C-46C0-9EB0-A515E0AB8F19}</ProjectGuid>
|
||||
<OutputType>Library</OutputType>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>SkiaSharp.Extended</RootNamespace>
|
||||
<AssemblyName>SkiaSharp.Extended</AssemblyName>
|
||||
<DefaultLanguage>en-US</DefaultLanguage>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
|
||||
<TargetFrameworkProfile>Profile78</TargetFrameworkProfile>
|
||||
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
|
||||
<SignAssembly>true</SignAssembly>
|
||||
<AssemblyOriginatorKeyFile>..\..\..\mono.snk</AssemblyOriginatorKeyFile>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>bin\Debug\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Release\</OutputPath>
|
||||
<DefineConstants>TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<!-- A reference to the entire .NET Framework is automatically included -->
|
||||
<ProjectReference Include="..\..\..\binding\SkiaSharp.Portable\SkiaSharp.Portable.csproj">
|
||||
<Project>{7aa90628-2fdd-4585-af2f-cc51cfa8b52a}</Project>
|
||||
<Name>SkiaSharp.Portable</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
</ItemGroup>
|
||||
<Import Project="..\SkiaSharp.Extended.Shared\SkiaSharp.Extended.Shared.projitems" Label="Shared" />
|
||||
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\Portable\$(TargetFrameworkVersion)\Microsoft.Portable.CSharp.targets" />
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
<Target Name="BeforeBuild">
|
||||
</Target>
|
||||
<Target Name="AfterBuild">
|
||||
</Target>
|
||||
-->
|
||||
</Project>
|
|
@ -15,7 +15,20 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SkiaSharp.Svg", "SkiaSharp.
|
|||
EndProject
|
||||
Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "SkiaSharp.Svg.Shared", "SkiaSharp.Svg\SkiaSharp.Svg.Shared\SkiaSharp.Svg.Shared.shproj", "{B201E760-DB91-485C-A99A-814BDED90BDB}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SkiaSharp.Extended", "SkiaSharp.Extended", "{CD6A8CE6-9521-4ADB-B49C-77E8B2A8441F}"
|
||||
EndProject
|
||||
Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "SkiaSharp.Extended.Shared", "SkiaSharp.Extended\SkiaSharp.Extended.Shared\SkiaSharp.Extended.Shared.shproj", "{E3290CE6-0ADA-486B-9BAB-8BCF07F9BE45}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SkiaSharp.Extended", "SkiaSharp.Extended\SkiaSharp.Extended\SkiaSharp.Extended.csproj", "{FEA1FEC9-950C-46C0-9EB0-A515E0AB8F19}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SharedMSBuildProjectFiles) = preSolution
|
||||
SkiaSharp.Svg\SkiaSharp.Svg.Shared\SkiaSharp.Svg.Shared.projitems*{04c4399a-6740-4733-b6b7-f968232a76c8}*SharedItemsImports = 4
|
||||
..\binding\Binding\Binding.projitems*{9c502b9a-25d4-473f-89bd-5a13dde16354}*SharedItemsImports = 13
|
||||
SkiaSharp.Svg\SkiaSharp.Svg.Shared\SkiaSharp.Svg.Shared.projitems*{b201e760-db91-485c-a99a-814bded90bdb}*SharedItemsImports = 13
|
||||
SkiaSharp.Extended\SkiaSharp.Extended.Shared\SkiaSharp.Extended.Shared.projitems*{e3290ce6-0ada-486b-9bab-8bcf07f9be45}*SharedItemsImports = 13
|
||||
SkiaSharp.Extended\SkiaSharp.Extended.Shared\SkiaSharp.Extended.Shared.projitems*{fea1fec9-950c-46c0-9eb0-a515e0ab8f19}*SharedItemsImports = 4
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
Release|Any CPU = Release|Any CPU
|
||||
|
@ -29,6 +42,10 @@ Global
|
|||
{04C4399A-6740-4733-B6B7-F968232A76C8}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{04C4399A-6740-4733-B6B7-F968232A76C8}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{04C4399A-6740-4733-B6B7-F968232A76C8}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{FEA1FEC9-950C-46C0-9EB0-A515E0AB8F19}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{FEA1FEC9-950C-46C0-9EB0-A515E0AB8F19}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{FEA1FEC9-950C-46C0-9EB0-A515E0AB8F19}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{FEA1FEC9-950C-46C0-9EB0-A515E0AB8F19}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
|
@ -38,5 +55,7 @@ Global
|
|||
{7AA90628-2FDD-4585-AF2F-CC51CFA8B52A} = {C335869B-7CC8-4239-B4A5-8031AA9758D3}
|
||||
{04C4399A-6740-4733-B6B7-F968232A76C8} = {F9C7D51F-468C-4E58-BB75-2317DB99C8A7}
|
||||
{B201E760-DB91-485C-A99A-814BDED90BDB} = {F9C7D51F-468C-4E58-BB75-2317DB99C8A7}
|
||||
{E3290CE6-0ADA-486B-9BAB-8BCF07F9BE45} = {CD6A8CE6-9521-4ADB-B49C-77E8B2A8441F}
|
||||
{FEA1FEC9-950C-46C0-9EB0-A515E0AB8F19} = {CD6A8CE6-9521-4ADB-B49C-77E8B2A8441F}
|
||||
EndGlobalSection
|
||||
EndGlobal
|
||||
|
|
|
@ -49,6 +49,12 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SkiaSharp.Views.Forms", "Sk
|
|||
EndProject
|
||||
Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "SkiaSharp.Svg.Shared", "SkiaSharp.Svg\SkiaSharp.Svg.Shared\SkiaSharp.Svg.Shared.shproj", "{B201E760-DB91-485C-A99A-814BDED90BDB}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SkiaSharp.Extras", "SkiaSharp.Extras", "{8570A43F-3AD6-4EC4-8CD1-92EF9AC23916}"
|
||||
EndProject
|
||||
Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "SkiaSharp.Extended.Shared", "SkiaSharp.Extended\SkiaSharp.Extended.Shared\SkiaSharp.Extended.Shared.shproj", "{E3290CE6-0ADA-486B-9BAB-8BCF07F9BE45}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SkiaSharp.Extended", "SkiaSharp.Extended\SkiaSharp.Extended\SkiaSharp.Extended.csproj", "{FEA1FEC9-950C-46C0-9EB0-A515E0AB8F19}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SharedMSBuildProjectFiles) = preSolution
|
||||
SkiaSharp.Svg\SkiaSharp.Svg.Shared\SkiaSharp.Svg.Shared.projitems*{04c4399a-6740-4733-b6b7-f968232a76c8}*SharedItemsImports = 4
|
||||
|
@ -70,9 +76,11 @@ Global
|
|||
SkiaSharp.Svg\SkiaSharp.Svg.Shared\SkiaSharp.Svg.Shared.projitems*{b201e760-db91-485c-a99a-814bded90bdb}*SharedItemsImports = 13
|
||||
..\Binding\Binding\Binding.projitems*{c737dc80-5b71-4b26-a2dc-da30421788b0}*SharedItemsImports = 4
|
||||
SkiaSharp.Views\SkiaSharp.Views.Apple\SkiaSharp.Views.Apple.projitems*{cbca14e7-96c9-4697-909c-19b1ef7298f7}*SharedItemsImports = 13
|
||||
SkiaSharp.Extended\SkiaSharp.Extended.Shared\SkiaSharp.Extended.Shared.projitems*{e3290ce6-0ada-486b-9bab-8bcf07f9be45}*SharedItemsImports = 13
|
||||
SkiaSharp.Views\SkiaSharp.Views.AppleiOS\SkiaSharp.Views.AppleiOS.projitems*{e5973829-6c8b-43e4-b81b-c8492df26c90}*SharedItemsImports = 4
|
||||
SkiaSharp.Views\SkiaSharp.Views.Apple\SkiaSharp.Views.Apple.projitems*{e5973829-6c8b-43e4-b81b-c8492df26c90}*SharedItemsImports = 4
|
||||
SkiaSharp.Views\SkiaSharp.Views.Shared\SkiaSharp.Views.Shared.projitems*{e5973829-6c8b-43e4-b81b-c8492df26c90}*SharedItemsImports = 4
|
||||
SkiaSharp.Extended\SkiaSharp.Extended.Shared\SkiaSharp.Extended.Shared.projitems*{fea1fec9-950c-46c0-9eb0-a515e0ab8f19}*SharedItemsImports = 4
|
||||
SkiaSharp.Views\SkiaSharp.Views.AppleiOS\SkiaSharp.Views.AppleiOS.projitems*{ff4c9f9f-7a6a-44d1-8338-d30e39e4e9d4}*SharedItemsImports = 13
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
|
@ -132,6 +140,10 @@ Global
|
|||
{04C4399A-6740-4733-B6B7-F968232A76C8}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{04C4399A-6740-4733-B6B7-F968232A76C8}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{04C4399A-6740-4733-B6B7-F968232A76C8}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{FEA1FEC9-950C-46C0-9EB0-A515E0AB8F19}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{FEA1FEC9-950C-46C0-9EB0-A515E0AB8F19}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{FEA1FEC9-950C-46C0-9EB0-A515E0AB8F19}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{FEA1FEC9-950C-46C0-9EB0-A515E0AB8F19}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
|
@ -156,5 +168,7 @@ Global
|
|||
{7AA90628-2FDD-4585-AF2F-CC51CFA8B52A} = {C335869B-7CC8-4239-B4A5-8031AA9758D3}
|
||||
{04C4399A-6740-4733-B6B7-F968232A76C8} = {F9C7D51F-468C-4E58-BB75-2317DB99C8A7}
|
||||
{B201E760-DB91-485C-A99A-814BDED90BDB} = {F9C7D51F-468C-4E58-BB75-2317DB99C8A7}
|
||||
{E3290CE6-0ADA-486B-9BAB-8BCF07F9BE45} = {8570A43F-3AD6-4EC4-8CD1-92EF9AC23916}
|
||||
{FEA1FEC9-950C-46C0-9EB0-A515E0AB8F19} = {8570A43F-3AD6-4EC4-8CD1-92EF9AC23916}
|
||||
EndGlobalSection
|
||||
EndGlobal
|
||||
|
|
|
@ -15,7 +15,21 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SkiaSharp.Svg.NetStandard",
|
|||
EndProject
|
||||
Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "SkiaSharp.Svg.Shared", "SkiaSharp.Svg\SkiaSharp.Svg.Shared\SkiaSharp.Svg.Shared.shproj", "{B201E760-DB91-485C-A99A-814BDED90BDB}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SkiaSharp.Extended", "SkiaSharp.Extended", "{1DE47CE5-7542-40CD-89ED-296CB9B212EB}"
|
||||
EndProject
|
||||
Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "SkiaSharp.Extended.Shared", "SkiaSharp.Extended\SkiaSharp.Extended.Shared\SkiaSharp.Extended.Shared.shproj", "{E3290CE6-0ADA-486B-9BAB-8BCF07F9BE45}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SkiaSharp.Extended.NetStandard", "SkiaSharp.Extended\SkiaSharp.Extended.NetStandard\SkiaSharp.Extended.NetStandard.csproj", "{36456F7F-388A-49E1-B9C5-CC2DEC82D2C2}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SharedMSBuildProjectFiles) = preSolution
|
||||
SkiaSharp.Extended\SkiaSharp.Extended.Shared\SkiaSharp.Extended.Shared.projitems*{36456f7f-388a-49e1-b9c5-cc2dec82d2c2}*SharedItemsImports = 4
|
||||
..\binding\Binding\Binding.projitems*{4e0924f8-d546-4428-9412-4b9411fba5ff}*SharedItemsImports = 4
|
||||
..\binding\Binding\Binding.projitems*{9c502b9a-25d4-473f-89bd-5a13dde16354}*SharedItemsImports = 13
|
||||
SkiaSharp.Svg\SkiaSharp.Svg.Shared\SkiaSharp.Svg.Shared.projitems*{b201e760-db91-485c-a99a-814bded90bdb}*SharedItemsImports = 13
|
||||
SkiaSharp.Svg\SkiaSharp.Svg.Shared\SkiaSharp.Svg.Shared.projitems*{e19ffaf3-31a4-4a52-8460-de0c00221439}*SharedItemsImports = 4
|
||||
SkiaSharp.Extended\SkiaSharp.Extended.Shared\SkiaSharp.Extended.Shared.projitems*{e3290ce6-0ada-486b-9bab-8bcf07f9be45}*SharedItemsImports = 13
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
Release|Any CPU = Release|Any CPU
|
||||
|
@ -29,6 +43,10 @@ Global
|
|||
{E19FFAF3-31A4-4A52-8460-DE0C00221439}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{E19FFAF3-31A4-4A52-8460-DE0C00221439}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{E19FFAF3-31A4-4A52-8460-DE0C00221439}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{36456F7F-388A-49E1-B9C5-CC2DEC82D2C2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{36456F7F-388A-49E1-B9C5-CC2DEC82D2C2}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{36456F7F-388A-49E1-B9C5-CC2DEC82D2C2}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{36456F7F-388A-49E1-B9C5-CC2DEC82D2C2}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
|
@ -38,5 +56,7 @@ Global
|
|||
{4E0924F8-D546-4428-9412-4B9411FBA5FF} = {C335869B-7CC8-4239-B4A5-8031AA9758D3}
|
||||
{E19FFAF3-31A4-4A52-8460-DE0C00221439} = {F9C7D51F-468C-4E58-BB75-2317DB99C8A7}
|
||||
{B201E760-DB91-485C-A99A-814BDED90BDB} = {F9C7D51F-468C-4E58-BB75-2317DB99C8A7}
|
||||
{E3290CE6-0ADA-486B-9BAB-8BCF07F9BE45} = {1DE47CE5-7542-40CD-89ED-296CB9B212EB}
|
||||
{36456F7F-388A-49E1-B9C5-CC2DEC82D2C2} = {1DE47CE5-7542-40CD-89ED-296CB9B212EB}
|
||||
EndGlobalSection
|
||||
EndGlobal
|
||||
|
|
|
@ -37,6 +37,12 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SkiaSharp.Views.Forms", "Sk
|
|||
EndProject
|
||||
Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "SkiaSharp.Svg.Shared", "SkiaSharp.Svg\SkiaSharp.Svg.Shared\SkiaSharp.Svg.Shared.shproj", "{B201E760-DB91-485C-A99A-814BDED90BDB}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SkiaSharp.Extended", "SkiaSharp.Extended", "{2F0684AA-463A-443A-AB75-A2DA9B15D975}"
|
||||
EndProject
|
||||
Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "SkiaSharp.Extended.Shared", "SkiaSharp.Extended\SkiaSharp.Extended.Shared\SkiaSharp.Extended.Shared.shproj", "{E3290CE6-0ADA-486B-9BAB-8BCF07F9BE45}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SkiaSharp.Extended", "SkiaSharp.Extended\SkiaSharp.Extended\SkiaSharp.Extended.csproj", "{FEA1FEC9-950C-46C0-9EB0-A515E0AB8F19}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SharedMSBuildProjectFiles) = preSolution
|
||||
SkiaSharp.Svg\SkiaSharp.Svg.Shared\SkiaSharp.Svg.Shared.projitems*{04c4399a-6740-4733-b6b7-f968232a76c8}*SharedItemsImports = 4
|
||||
|
@ -48,9 +54,10 @@ Global
|
|||
..\Binding\Binding\Binding.projitems*{9c502b9a-25d4-473f-89bd-5a13dde16354}*SharedItemsImports = 13
|
||||
SkiaSharp.Svg\SkiaSharp.Svg.Shared\SkiaSharp.Svg.Shared.projitems*{b201e760-db91-485c-a99a-814bded90bdb}*SharedItemsImports = 13
|
||||
..\Binding\Binding\Binding.projitems*{bab615aa-956e-4079-b260-dd7b1f52ec7d}*SharedItemsImports = 4
|
||||
SkiaSharp.Svg\SkiaSharp.Svg.Shared\SkiaSharp.Svg.Shared.projitems*{e19ffaf3-31a4-4a52-8460-de0c00221439}*SharedItemsImports = 4
|
||||
SkiaSharp.Extended\SkiaSharp.Extended.Shared\SkiaSharp.Extended.Shared.projitems*{e3290ce6-0ada-486b-9bab-8bcf07f9be45}*SharedItemsImports = 13
|
||||
SkiaSharp.Views\SkiaSharp.Views.Shared\SkiaSharp.Views.Shared.projitems*{e5a90865-c185-45ad-88d1-6da7d6004b03}*SharedItemsImports = 4
|
||||
..\Binding\Binding\Binding.projitems*{eb1bbdcc-fb07-40d5-8b9e-0079e2c2f2df}*SharedItemsImports = 4
|
||||
SkiaSharp.Extended\SkiaSharp.Extended.Shared\SkiaSharp.Extended.Shared.projitems*{fea1fec9-950c-46c0-9eb0-a515e0ab8f19}*SharedItemsImports = 4
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
|
@ -93,6 +100,10 @@ Global
|
|||
{04C4399A-6740-4733-B6B7-F968232A76C8}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{04C4399A-6740-4733-B6B7-F968232A76C8}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{04C4399A-6740-4733-B6B7-F968232A76C8}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{FEA1FEC9-950C-46C0-9EB0-A515E0AB8F19}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{FEA1FEC9-950C-46C0-9EB0-A515E0AB8F19}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{FEA1FEC9-950C-46C0-9EB0-A515E0AB8F19}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{FEA1FEC9-950C-46C0-9EB0-A515E0AB8F19}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
|
@ -111,5 +122,7 @@ Global
|
|||
{743CF830-D458-41A9-865A-F85126562015} = {F19E1537-81B2-4D4F-A69E-78DC73ACC141}
|
||||
{04C4399A-6740-4733-B6B7-F968232A76C8} = {F9C7D51F-468C-4E58-BB75-2317DB99C8A7}
|
||||
{B201E760-DB91-485C-A99A-814BDED90BDB} = {F9C7D51F-468C-4E58-BB75-2317DB99C8A7}
|
||||
{E3290CE6-0ADA-486B-9BAB-8BCF07F9BE45} = {2F0684AA-463A-443A-AB75-A2DA9B15D975}
|
||||
{FEA1FEC9-950C-46C0-9EB0-A515E0AB8F19} = {2F0684AA-463A-443A-AB75-A2DA9B15D975}
|
||||
EndGlobalSection
|
||||
EndGlobal
|
||||
|
|
|
@ -65,12 +65,21 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SkiaSharp.Svg.NetStandard",
|
|||
EndProject
|
||||
Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "SkiaSharp.Svg.Shared", "SkiaSharp.Svg\SkiaSharp.Svg.Shared\SkiaSharp.Svg.Shared.shproj", "{B201E760-DB91-485C-A99A-814BDED90BDB}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SkiaSharp.Extended", "SkiaSharp.Extended", "{06F5DF49-E622-4A4C-8F01-0DB0E04721CE}"
|
||||
EndProject
|
||||
Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "SkiaSharp.Extended.Shared", "SkiaSharp.Extended\SkiaSharp.Extended.Shared\SkiaSharp.Extended.Shared.shproj", "{E3290CE6-0ADA-486B-9BAB-8BCF07F9BE45}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SkiaSharp.Extended", "SkiaSharp.Extended\SkiaSharp.Extended\SkiaSharp.Extended.csproj", "{FEA1FEC9-950C-46C0-9EB0-A515E0AB8F19}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SkiaSharp.Extended.NetStandard", "SkiaSharp.Extended\SkiaSharp.Extended.NetStandard\SkiaSharp.Extended.NetStandard.csproj", "{36456F7F-388A-49E1-B9C5-CC2DEC82D2C2}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SharedMSBuildProjectFiles) = preSolution
|
||||
SkiaSharp.Svg\SkiaSharp.Svg.Shared\SkiaSharp.Svg.Shared.projitems*{04c4399a-6740-4733-b6b7-f968232a76c8}*SharedItemsImports = 4
|
||||
SkiaSharp.Views.Forms\SkiaSharp.Views.Forms.Shared\SkiaSharp.Views.Forms.Shared.projitems*{1555d119-8598-4e4d-91ac-d313f94a1673}*SharedItemsImports = 4
|
||||
SkiaSharp.Views.Forms\SkiaSharp.Views.Forms.Shared\SkiaSharp.Views.Forms.Shared.projitems*{2f94f024-1841-47e8-b521-74aa4e3eba54}*SharedItemsImports = 4
|
||||
SkiaSharp.Views.Forms\SkiaSharp.Views.Forms.Shared\SkiaSharp.Views.Forms.Shared.projitems*{314fb505-9858-4e03-b799-91b0ba627d05}*SharedItemsImports = 13
|
||||
SkiaSharp.Extended\SkiaSharp.Extended.Shared\SkiaSharp.Extended.Shared.projitems*{36456f7f-388a-49e1-b9c5-cc2dec82d2c2}*SharedItemsImports = 4
|
||||
SkiaSharp.Views.Forms\SkiaSharp.Views.Forms.Shared\SkiaSharp.Views.Forms.Shared.projitems*{3a1277b5-cfae-48cc-b64b-4dae1222a3eb}*SharedItemsImports = 4
|
||||
..\Binding\Binding\Binding.projitems*{4588a759-3853-49b8-8a68-6c7917be9220}*SharedItemsImports = 4
|
||||
SkiaSharp.Views.Forms\SkiaSharp.Views.Forms.Shared\SkiaSharp.Views.Forms.Shared.projitems*{4ac36d63-bf11-445f-81ee-107c0cef4fc9}*SharedItemsImports = 4
|
||||
|
@ -91,11 +100,13 @@ Global
|
|||
..\Binding\Binding\Binding.projitems*{c737dc80-5b71-4b26-a2dc-da30421788b0}*SharedItemsImports = 4
|
||||
SkiaSharp.Views\SkiaSharp.Views.Apple\SkiaSharp.Views.Apple.projitems*{cbca14e7-96c9-4697-909c-19b1ef7298f7}*SharedItemsImports = 13
|
||||
SkiaSharp.Svg\SkiaSharp.Svg.Shared\SkiaSharp.Svg.Shared.projitems*{e19ffaf3-31a4-4a52-8460-de0c00221439}*SharedItemsImports = 4
|
||||
SkiaSharp.Extended\SkiaSharp.Extended.Shared\SkiaSharp.Extended.Shared.projitems*{e3290ce6-0ada-486b-9bab-8bcf07f9be45}*SharedItemsImports = 13
|
||||
SkiaSharp.Views\SkiaSharp.Views.AppleiOS\SkiaSharp.Views.AppleiOS.projitems*{e5973829-6c8b-43e4-b81b-c8492df26c90}*SharedItemsImports = 4
|
||||
SkiaSharp.Views\SkiaSharp.Views.Apple\SkiaSharp.Views.Apple.projitems*{e5973829-6c8b-43e4-b81b-c8492df26c90}*SharedItemsImports = 4
|
||||
SkiaSharp.Views\SkiaSharp.Views.Shared\SkiaSharp.Views.Shared.projitems*{e5973829-6c8b-43e4-b81b-c8492df26c90}*SharedItemsImports = 4
|
||||
SkiaSharp.Views\SkiaSharp.Views.Shared\SkiaSharp.Views.Shared.projitems*{e5a90865-c185-45ad-88d1-6da7d6004b03}*SharedItemsImports = 4
|
||||
..\Binding\Binding\Binding.projitems*{eb1bbdcc-fb07-40d5-8b9e-0079e2c2f2df}*SharedItemsImports = 4
|
||||
SkiaSharp.Extended\SkiaSharp.Extended.Shared\SkiaSharp.Extended.Shared.projitems*{fea1fec9-950c-46c0-9eb0-a515e0ab8f19}*SharedItemsImports = 4
|
||||
SkiaSharp.Views\SkiaSharp.Views.AppleiOS\SkiaSharp.Views.AppleiOS.projitems*{ff4c9f9f-7a6a-44d1-8338-d30e39e4e9d4}*SharedItemsImports = 13
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
|
@ -187,6 +198,14 @@ Global
|
|||
{E19FFAF3-31A4-4A52-8460-DE0C00221439}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{E19FFAF3-31A4-4A52-8460-DE0C00221439}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{E19FFAF3-31A4-4A52-8460-DE0C00221439}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{FEA1FEC9-950C-46C0-9EB0-A515E0AB8F19}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{FEA1FEC9-950C-46C0-9EB0-A515E0AB8F19}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{FEA1FEC9-950C-46C0-9EB0-A515E0AB8F19}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{FEA1FEC9-950C-46C0-9EB0-A515E0AB8F19}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{36456F7F-388A-49E1-B9C5-CC2DEC82D2C2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{36456F7F-388A-49E1-B9C5-CC2DEC82D2C2}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{36456F7F-388A-49E1-B9C5-CC2DEC82D2C2}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{36456F7F-388A-49E1-B9C5-CC2DEC82D2C2}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
|
@ -219,5 +238,8 @@ Global
|
|||
{4E0924F8-D546-4428-9412-4B9411FBA5FF} = {C335869B-7CC8-4239-B4A5-8031AA9758D3}
|
||||
{E19FFAF3-31A4-4A52-8460-DE0C00221439} = {F9C7D51F-468C-4E58-BB75-2317DB99C8A7}
|
||||
{B201E760-DB91-485C-A99A-814BDED90BDB} = {F9C7D51F-468C-4E58-BB75-2317DB99C8A7}
|
||||
{E3290CE6-0ADA-486B-9BAB-8BCF07F9BE45} = {06F5DF49-E622-4A4C-8F01-0DB0E04721CE}
|
||||
{FEA1FEC9-950C-46C0-9EB0-A515E0AB8F19} = {06F5DF49-E622-4A4C-8F01-0DB0E04721CE}
|
||||
{36456F7F-388A-49E1-B9C5-CC2DEC82D2C2} = {06F5DF49-E622-4A4C-8F01-0DB0E04721CE}
|
||||
EndGlobalSection
|
||||
EndGlobal
|
||||
|
|
|
@ -144,6 +144,9 @@
|
|||
<Compile Include="..\Tests\SKSvgTest.cs">
|
||||
<Link>SKSvgTest.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Tests\SKGeometryTest.cs">
|
||||
<Link>SKGeometryTest.cs</Link>
|
||||
</Compile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Content Include="..\Content\fonts\content-font.ttf">
|
||||
|
@ -216,6 +219,10 @@
|
|||
<Project>{04C4399A-6740-4733-B6B7-F968232A76C8}</Project>
|
||||
<Name>SkiaSharp.Svg</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\..\source\SkiaSharp.Extended\SkiaSharp.Extended\SkiaSharp.Extended.csproj">
|
||||
<Project>{FEA1FEC9-950C-46C0-9EB0-A515E0AB8F19}</Project>
|
||||
<Name>SkiaSharp.Extended</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<Import Project="..\..\binding\SkiaSharp.Desktop\bin\$(Configuration)\nuget\build\net45\SkiaSharp.Desktop.targets" />
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
|
|
|
@ -24,7 +24,8 @@
|
|||
"dotnet-test-xunit": "2.2.0-preview2-build1029",
|
||||
|
||||
"SkiaSharp": "1.56.1",
|
||||
"SkiaSharp.Svg": "1.56.1"
|
||||
"SkiaSharp.Svg": "1.56.1",
|
||||
"SkiaSharp.Extended": "1.56.1-beta"
|
||||
},
|
||||
"testRunner": "xunit",
|
||||
"frameworks": {
|
||||
|
|
|
@ -0,0 +1,20 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using Xunit;
|
||||
|
||||
using SkiaSharp.Extended;
|
||||
|
||||
namespace SkiaSharp.Tests
|
||||
{
|
||||
public class SKGeometryTest : SKTest
|
||||
{
|
||||
[Fact]
|
||||
public void GeometryGeneratesRectPath()
|
||||
{
|
||||
var rectPath = SKGeometry.CreateTrianglePath(100);
|
||||
|
||||
Assert.Equal(3, rectPath.PointCount);
|
||||
}
|
||||
}
|
||||
}
|
Загрузка…
Ссылка в новой задаче