Merge branch 'master' into pr/289

This commit is contained in:
Matthew Leibowitz 2017-05-03 07:21:06 +02:00
Родитель 486d8d90aa fd4e676e95
Коммит 8d3a04d015
50 изменённых файлов: 266 добавлений и 127 удалений

Просмотреть файл

Просмотреть файл

Просмотреть файл

Просмотреть файл

@ -0,0 +1 @@


Просмотреть файл

@ -4,7 +4,7 @@
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{30952C22-D566-488F-9D7A-2411B027D6CA}</ProjectGuid>
<ProjectTypeGuids>{A3F8F2AB-B479-4A4A-A458-A89E7DC349F1};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
<ProjectTypeGuids>{810C163F-4746-4721-8B8E-88A3673A62EA};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
<OutputType>Library</OutputType>
<RootNamespace>HarfBuzzSharp</RootNamespace>
<AssemblyName>HarfBuzzSharp</AssemblyName>
@ -55,15 +55,23 @@
<Compile Include="Properties\AssemblyInfo.cs" />
</ItemGroup>
<ItemGroup>
<None Include="nuget\build\XamarinMac\HarfBuzzSharp.OSX.targets">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="..\..\native-builds\lib\osx\libHarfBuzzSharp.dylib">
<Link>nuget\runtimes\osx\native\libHarfBuzzSharp.dylib</Link>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
</ItemGroup>
<ItemGroup>
<ObjcBindingNativeLibrary Include="..\..\native-builds\lib\osx\libHarfBuzzSharp.dylib">
<Link>libHarfBuzzSharp.dylib</Link>
</ObjcBindingNativeLibrary>
</ItemGroup>
<ItemGroup>
<ObjcBindingApiDefinition Include="ApiDefinition.cs" />
</ItemGroup>
<ItemGroup>
<ObjcBindingCoreSource Include="Structs.cs" />
</ItemGroup>
<Import Project="..\HarfBuzzSharp.Shared\HarfBuzzSharp.Shared.projitems" Label="Shared" Condition="Exists('..\HarfBuzzSharp.Shared\HarfBuzzSharp.Shared.projitems')" />
<Import Project="..\Binding.Shared\Binding.Shared.projitems" Label="Shared" Condition="Exists('..\Binding.Shared\Binding.Shared.projitems')" />
<Import Project="$(MSBuildExtensionsPath)\Xamarin\Mac\Xamarin.Mac.CSharp.targets" />
<Import Project="$(MSBuildExtensionsPath)\Xamarin\Mac\Xamarin.Mac.ObjcBinding.CSharp.targets" />
</Project>

Просмотреть файл

@ -1 +1,5 @@

using Foundation;
using ObjCRuntime;
[assembly: LinkerSafe]
[assembly: LinkWith("libHarfBuzzSharp.dylib", IsCxx = true, ForceLoad = true, SmartLink = true)]

Просмотреть файл

@ -0,0 +1 @@


Просмотреть файл

@ -1,11 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<NativeReference Include="$(MSBuildThisFileDirectory)..\..\runtimes\osx\native\libHarfBuzzSharp.dylib">
<IsCxx>False</IsCxx>
<Kind>Dynamic</Kind>
</NativeReference>
</ItemGroup>
</Project>

Просмотреть файл

Просмотреть файл

@ -0,0 +1 @@


Просмотреть файл

@ -1 +1,5 @@

using Foundation;
using ObjCRuntime;
[assembly: LinkerSafe]
[assembly: LinkWith("libSkiaSharp.dylib", IsCxx = true, ForceLoad = true, SmartLink = true)]

Просмотреть файл

@ -3,7 +3,7 @@
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectTypeGuids>{A3F8F2AB-B479-4A4A-A458-A89E7DC349F1};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
<ProjectTypeGuids>{810C163F-4746-4721-8B8E-88A3673A62EA};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
<ProjectGuid>{4588A759-3853-49B8-8A68-6C7917BE9220}</ProjectGuid>
<OutputType>Library</OutputType>
<RootNamespace>SkiaSharp</RootNamespace>
@ -58,17 +58,25 @@
</ItemGroup>
<Import Project="..\Binding\Binding.projitems" Label="Shared" Condition="Exists('..\Binding\Binding.projitems')" />
<Import Project="..\Binding.Shared\Binding.Shared.projitems" Label="Shared" />
<Import Project="$(MSBuildExtensionsPath)\Xamarin\Mac\Xamarin.Mac.CSharp.targets" />
<Import Project="$(MSBuildExtensionsPath)\Xamarin\Mac\Xamarin.Mac.ObjcBinding.CSharp.targets" />
<ItemGroup>
<Compile Include="Properties\AssemblyInfo.cs" />
</ItemGroup>
<ItemGroup>
<None Include="nuget\build\XamarinMac\SkiaSharp.OSX.targets">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="..\..\native-builds\lib\osx\libSkiaSharp.dylib">
<Link>nuget\runtimes\osx\native\libSkiaSharp.dylib</Link>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
</ItemGroup>
<ItemGroup>
<ObjcBindingNativeLibrary Include="..\..\native-builds\lib\osx\libSkiaSharp.dylib">
<Link>libSkiaSharp.dylib</Link>
</ObjcBindingNativeLibrary>
</ItemGroup>
<ItemGroup>
<ObjcBindingApiDefinition Include="ApiDefinition.cs" />
</ItemGroup>
<ItemGroup>
<ObjcBindingCoreSource Include="Structs.cs" />
</ItemGroup>
</Project>

Просмотреть файл

@ -0,0 +1 @@


Просмотреть файл

@ -1,11 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<NativeReference Include="$(MSBuildThisFileDirectory)..\..\runtimes\osx\native\libSkiaSharp.dylib">
<IsCxx>False</IsCxx>
<Kind>Dynamic</Kind>
</NativeReference>
</ItemGroup>
</Project>

Просмотреть файл

@ -30,6 +30,7 @@ var VERSION_SONAME = VERSION_FILE.Substring(VERSION_FILE.IndexOf(".") + 1);
var HARFBUZZ_VERSION_ASSEMBLY = "1.0.0.0";
var HARFBUZZ_VERSION_FILE = "1.4.5.0";
var HARFBUZZ_VERSION_SONAME = HARFBUZZ_VERSION_FILE.Substring(0, HARFBUZZ_VERSION_FILE.LastIndexOf("."));
var VERSION_PACKAGES = new Dictionary<string, string> {
{ "SkiaSharp", "1.57.1" },
@ -171,7 +172,6 @@ Task ("libs")
CopyFileToDirectory ("./binding/SkiaSharp.iOS/bin/Release/SkiaSharp.dll", "./output/ios/");
CopyFileToDirectory ("./binding/SkiaSharp.tvOS/bin/Release/SkiaSharp.dll", "./output/tvos/");
CopyFileToDirectory ("./binding/SkiaSharp.OSX/bin/Release/SkiaSharp.dll", "./output/osx/");
CopyFileToDirectory ("./binding/SkiaSharp.OSX/bin/Release/nuget/build/XamarinMac/SkiaSharp.OSX.targets", "./output/osx/");
CopyFileToDirectory ("./binding/SkiaSharp.Portable/bin/Release/SkiaSharp.dll", "./output/portable/");
CopyFileToDirectory ("./binding/SkiaSharp.Desktop/bin/Release/SkiaSharp.dll", "./output/mac/");
CopyFileToDirectory ("./binding/SkiaSharp.Desktop/bin/Release/nuget/build/net45/SkiaSharp.Desktop.targets", "./output/mac/");
@ -189,7 +189,6 @@ Task ("libs")
CopyFileToDirectory ("./binding/HarfBuzzSharp.iOS/bin/Release/HarfBuzzSharp.dll", "./output/ios/");
CopyFileToDirectory ("./binding/HarfBuzzSharp.tvOS/bin/Release/HarfBuzzSharp.dll", "./output/tvos/");
CopyFileToDirectory ("./binding/HarfBuzzSharp.OSX/bin/Release/HarfBuzzSharp.dll", "./output/osx/");
CopyFileToDirectory ("./binding/HarfBuzzSharp.OSX/bin/Release/nuget/build/XamarinMac/HarfBuzzSharp.OSX.targets", "./output/osx/");
CopyFileToDirectory ("./binding/HarfBuzzSharp.Portable/bin/Release/HarfBuzzSharp.dll", "./output/portable/");
CopyFileToDirectory ("./binding/HarfBuzzSharp.Desktop/bin/Release/HarfBuzzSharp.dll", "./output/mac/");
CopyFileToDirectory ("./binding/HarfBuzzSharp.Desktop/bin/Release/nuget/build/net45/HarfBuzzSharp.dll.config", "./output/mac/");

Просмотреть файл

@ -185,6 +185,13 @@ Task ("externals-native")
// the second copy excludes the file version
CopyFile (so, "./output/linux/" + arch + "/libSkiaSharp.so");
}
// copy libHarfBuzzSharp
so = "./native-builds/lib/linux/" + arch + "/libHarfBuzzSharp.so." + HARFBUZZ_VERSION_SONAME;
if (FileExists (so)) {
CopyFileToDirectory (so, "./output/linux/" + arch + "/");
// the second copy excludes the file version
CopyFile (so, "./output/linux/" + arch + "/libHarfBuzzSharp.so");
}
}
}
});
@ -769,8 +776,27 @@ Task ("externals-linux")
CopyFileToDirectory ("native-builds/libSkiaSharp_linux/bin/" + arch + "/libSkiaSharp.so." + VERSION_SONAME, "native-builds/lib/linux/" + arch);
});
var buildHarfBuzzArch = new Action<string> ((arch) => {
// build libHarfBuzzSharp
// RunProcess ("make", new ProcessSettings {
// Arguments = "clean",
// WorkingDirectory = "native-builds/libHarfBuzzSharp_linux",
// });
RunProcess ("make", new ProcessSettings {
Arguments = "ARCH=" + arch + " VERSION=" + HARFBUZZ_VERSION_FILE,
WorkingDirectory = "native-builds/libHarfBuzzSharp_linux",
});
// copy libHarfBuzzSharp to output
if (!DirectoryExists ("native-builds/lib/linux/" + arch)) {
CreateDirectory ("native-builds/lib/linux/" + arch);
}
CopyFileToDirectory ("native-builds/libHarfBuzzSharp_linux/bin/" + arch + "/libHarfBuzzSharp.so." + HARFBUZZ_VERSION_SONAME, "native-builds/lib/linux/" + arch);
});
foreach (var arch in BUILD_ARCH) {
buildArch (arch);
buildHarfBuzzArch (arch);
}
});

Просмотреть файл

@ -0,0 +1,113 @@
ARCH ?= x64
VERSION ?= 1.0.0.0
SUPPORT_GPU ?= 1
CC ?= gcc
CXX ?= g++
LDFLAGS +=
noop =
space = ${noop} ${noop}
version_parts = $(subst ., ,${VERSION})
soname_version = $(word 2, ${version_parts})
file_version = $(subst ${space},.,$(wordlist 1, 3, ${version_parts}))
src_root = ../../externals/harfbuzz/harfbuzz/src
obj_root = obj
bin_root = bin
objarch_root = ${obj_root}/${ARCH}
target_name = libHarfBuzzSharp.so
target = ${bin_root}/${ARCH}/${target_name}.${file_version}
library_dirs =
include_dirs = \
${src_root}/.. \
${src_root} \
${src_root}/hb-ucdn
library_paths =
defines = \
-DHAVE_CONFIG_H
cflags = \
-fno-exceptions -Wcast-align \
-g -Os -fPIC -fdata-sections -ffunction-sections
ifeq "${ARCH}" "x86"
arch_cflags = -m32
else
arch_cflags =
endif
cflags_c = ${cflags} ${CFLAGS}
cflags_cc = -fno-rtti -fvisibility-inlines-hidden ${CXXFLAGS}
ldflags = $(library_dirs:%=-L%) ${LDFLAGS}
includes = $(include_dirs:%=-I%)
library_names = $(notdir ${library_paths})
libraries = $(library_names:lib%.a=-l%)
src = \
${src_root}/hb-blob.cc \
${src_root}/hb-buffer-serialize.cc \
${src_root}/hb-buffer.cc \
${src_root}/hb-common.cc \
${src_root}/hb-face.cc \
${src_root}/hb-fallback-shape.cc \
${src_root}/hb-font.cc \
${src_root}/hb-ot-font.cc \
${src_root}/hb-ot-layout.cc \
${src_root}/hb-ot-map.cc \
${src_root}/hb-ot-math.cc \
${src_root}/hb-ot-shape-complex-arabic.cc \
${src_root}/hb-ot-shape-complex-default.cc \
${src_root}/hb-ot-shape-complex-hangul.cc \
${src_root}/hb-ot-shape-complex-hebrew.cc \
${src_root}/hb-ot-shape-complex-indic-table.cc \
${src_root}/hb-ot-shape-complex-indic.cc \
${src_root}/hb-ot-shape-complex-myanmar.cc \
${src_root}/hb-ot-shape-complex-thai.cc \
${src_root}/hb-ot-shape-complex-tibetan.cc \
${src_root}/hb-ot-shape-complex-use-table.cc \
${src_root}/hb-ot-shape-complex-use.cc \
${src_root}/hb-ot-shape-fallback.cc \
${src_root}/hb-ot-shape-normalize.cc \
${src_root}/hb-ot-shape.cc \
${src_root}/hb-ot-tag.cc \
${src_root}/hb-ot-var.cc \
${src_root}/hb-set.cc \
${src_root}/hb-shape-plan.cc \
${src_root}/hb-shape.cc \
${src_root}/hb-shaper.cc \
${src_root}/hb-ucdn.cc \
${src_root}/hb-unicode.cc \
${src_root}/hb-warning.cc \
${src_root}/hb-ucdn/ucdn.c
src_names = $(subst ${src_root}/,${noop},${src})
objs = $(src_names:%=${objarch_root}/%.o)
deps = $(objs:.o=.d)
${objarch_root}/%.o: ${src_root}/%
# build the local source
@echo Building $<...
@mkdir -p $(dir $@)
@if [ "$(filter %.cc,$<)" = "" ]; then \
$(CC) -MMD -MF $@.d \
${defines} ${includes} ${arch_cflags} ${cflags_c} \
-c $< -o $@ \
; else \
$(CXX) -MMD -MF $@.d \
${defines} ${includes} ${arch_cflags} ${cflags_c} ${cflags_cc} \
-c $< -o $@ \
; fi
${target}: ${objs}
# link with skia
@echo Linking $@...
@mkdir -p $(dir $@)
$(CXX) -shared -rdynamic -s -o $@ \
${defines} ${includes} ${arch_cflags} ${cflags_c} ${cflags_cc} \
-Wl,--start-group ${objarch_root}/*.o ${objarch_root}/**/*.o ${library_paths} -Wl,--end-group \
${ldflags} -Wl,--gc-sections -Wl,--no-undefined \
-Wl,-soname,libHarfBuzzSharp.so.${soname_version}
all: ${target}
clean:
rm -rf ${obj_root} ${bin_root}

Просмотреть файл

@ -510,6 +510,7 @@
buildSettings = {
DYLIB_COMPATIBILITY_VERSION = 1;
DYLIB_CURRENT_VERSION = 1;
INSTALL_PATH = "@rpath";
PRODUCT_NAME = "$(TARGET_NAME)";
};
name = Debug;
@ -519,6 +520,7 @@
buildSettings = {
DYLIB_COMPATIBILITY_VERSION = 1;
DYLIB_CURRENT_VERSION = 1;
INSTALL_PATH = "@rpath";
PRODUCT_NAME = "$(TARGET_NAME)";
};
name = Release;

Просмотреть файл

@ -3,7 +3,7 @@ VERSION ?= 1.0.0.0
SUPPORT_GPU ?= 1
CC ?= gcc
CXX ?= g++
LDFLAGS ?= -lpthread -ldl -lfontconfig
LDFLAGS += -lpthread -ldl -lfontconfig
noop =
space = ${noop} ${noop}
@ -68,15 +68,17 @@ deps = $(objs:.o=.d)
${objarch_root}/%.o: ${src_root}/%
# build the local source
mkdir -p $(dir $@)
$(CXX) -MMD -MF $@.d \
@echo Building $<...
@mkdir -p $(dir $@)
@$(CXX) -MMD -MF $@.d \
${defines} ${includes} ${arch_cflags} ${cflags_c} ${cflags_cc} \
-c $< -o $@
${target}: ${objs}
# link with skia
mkdir -p $(dir $@)
$(CXX) -shared -rdynamic -s -o $@ \
@echo Linking $@...
@mkdir -p $(dir $@)
@$(CXX) -shared -rdynamic -s -o $@ \
${defines} ${includes} ${arch_cflags} ${cflags_c} ${cflags_cc} \
-Wl,--start-group ${objarch_root}/*.o ${library_paths} -Wl,--end-group \
${ldflags} -Wl,--gc-sections -Wl,--no-undefined \

Просмотреть файл

@ -21,6 +21,6 @@
<file src="output/portable/HarfBuzzSharp.dll" target="lib/portable-net45+win8+wpa81+wp8" />
<!--<file src="output/docs/msxml/HarfBuzzSharp.xml" target="lib/portable-net45+win8+wpa81+wp8" />-->
<!-- .NET Core -->
<!--<file src="output/linux/x64/libHarfBuzzSharp.so" target="runtimes/linux-x64/native/libHarfBuzzSharp.so" />-->
<file src="output/linux/x64/libHarfBuzzSharp.so" target="runtimes/linux-x64/native/libHarfBuzzSharp.so" />
</files>
</package>

Просмотреть файл

@ -32,7 +32,6 @@
<file src="output/portable/HarfBuzzSharp.dll" target="lib/portable-net45+win8+wpa81+wp8" />
<!--<file src="output/docs/msxml/HarfBuzzSharp.xml" target="lib/portable-net45+win8+wpa81+wp8" />-->
<!-- the build bits -->
<file src="output/osx/HarfBuzzSharp.OSX.targets" target="build/XamarinMac/HarfBuzzSharp.targets" />
<file src="output/mac/HarfBuzzSharp.Desktop.targets" target="build/net45/HarfBuzzSharp.targets" />
<file src="output/mac/HarfBuzzSharp.dll.config" target="build/net45/HarfBuzzSharp.dll.config" />
<!-- .NET Core -->

Просмотреть файл

@ -34,7 +34,6 @@
<file src="output/portable/HarfBuzzSharp.dll" target="lib/portable-net45+win8+wpa81+wp8" />
<!--<file src="output/docs/msxml/HarfBuzzSharp.xml" target="lib/portable-net45+win8+wpa81+wp8" />-->
<!-- the build bits -->
<file src="output/osx/HarfBuzzSharp.OSX.targets" target="build/XamarinMac/HarfBuzzSharp.targets" />
<file src="output/mac/HarfBuzzSharp.Desktop.targets" target="build/net45/HarfBuzzSharp.targets" />
<file src="output/mac/HarfBuzzSharp.dll.config" target="build/net45/HarfBuzzSharp.dll.config" />
<!-- .NET Core -->

Просмотреть файл

@ -1,8 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<package>
<metadata>
<id>SkiaSharp.Harfbuzz</id>
<title>SkiaSharp.Harfbuzz</title>
<id>SkiaSharp.HarfBuzz</id>
<title>SkiaSharp.HarfBuzz</title>
<version>1.57.1-beta</version>
<authors>Xamarin Inc.</authors>
<owners>Xamarin Inc.</owners>
@ -18,7 +18,7 @@
</dependencies>
</metadata>
<files>
<file src="output/portable/SkiaSharp.Harfbuzz.dll" target="lib/portable-net45+win8+wpa81+wp8" />
<file src="output/netstandard/SkiaSharp.Harfbuzz.dll" target="lib/netstandard1.3" />
<file src="output/portable/SkiaSharp.HarfBuzz.dll" target="lib/portable-net45+win8+wpa81+wp8" />
<file src="output/netstandard/SkiaSharp.HarfBuzz.dll" target="lib/netstandard1.3" />
</files>
</package>

Просмотреть файл

@ -32,7 +32,6 @@
<file src="output/portable/SkiaSharp.dll" target="lib/portable-net45+win8+wpa81+wp8" />
<file src="output/docs/msxml/SkiaSharp.xml" target="lib/portable-net45+win8+wpa81+wp8" />
<!-- the build bits -->
<file src="output/osx/SkiaSharp.OSX.targets" target="build/XamarinMac/SkiaSharp.targets" />
<file src="output/mac/SkiaSharp.Desktop.targets" target="build/net45/SkiaSharp.targets" />
<file src="output/mac/SkiaSharp.dll.config" target="build/net45/SkiaSharp.dll.config" />
<!-- .NET Core -->

Просмотреть файл

@ -34,7 +34,6 @@
<file src="output/portable/SkiaSharp.dll" target="lib/portable-net45+win8+wpa81+wp8" />
<file src="output/docs/msxml/SkiaSharp.xml" target="lib/portable-net45+win8+wpa81+wp8" />
<!-- the build bits -->
<file src="output/osx/SkiaSharp.OSX.targets" target="build/XamarinMac/SkiaSharp.targets" />
<file src="output/mac/SkiaSharp.Desktop.targets" target="build/net45/SkiaSharp.targets" />
<file src="output/mac/SkiaSharp.dll.config" target="build/net45/SkiaSharp.dll.config" />
<!-- .NET Core -->

Просмотреть файл

@ -136,7 +136,7 @@
<HintPath>..\packages\HarfBuzzSharp.1.4.5\lib\MonoAndroid\HarfBuzzSharp.dll</HintPath>
</Reference>
<Reference Include="SkiaSharp.HarfBuzz">
<HintPath>..\packages\SkiaSharp.Harfbuzz.1.57.1-beta\lib\portable-net45+win8+wpa81+wp8\SkiaSharp.HarfBuzz.dll</HintPath>
<HintPath>..\packages\SkiaSharp.HarfBuzz.1.57.1-beta\lib\portable-net45+win8+wpa81+wp8\SkiaSharp.HarfBuzz.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup>

Просмотреть файл

@ -3,7 +3,7 @@
<package id="HarfBuzzSharp" version="1.4.5" targetFramework="monoandroid60" />
<package id="PCLStorage" version="1.0.2" targetFramework="monoandroid60" />
<package id="SkiaSharp" version="1.57.1" targetFramework="monoandroid60" />
<package id="SkiaSharp.Harfbuzz" version="1.57.1-beta" targetFramework="monoandroid60" />
<package id="SkiaSharp.HarfBuzz" version="1.57.1-beta" targetFramework="monoandroid60" />
<package id="SkiaSharp.Svg" version="1.57.1" targetFramework="monoandroid60" />
<package id="SkiaSharp.Views" version="1.57.1" targetFramework="monoandroid60" />
<package id="SkiaSharp.Views.Forms" version="1.57.1" targetFramework="monoandroid60" />

Просмотреть файл

@ -101,7 +101,7 @@
<HintPath>..\packages\HarfBuzzSharp.1.4.5\lib\portable-net45+win8+wpa81+wp8\HarfBuzzSharp.dll</HintPath>
</Reference>
<Reference Include="SkiaSharp.HarfBuzz">
<HintPath>..\packages\SkiaSharp.Harfbuzz.1.57.1-beta\lib\portable-net45+win8+wpa81+wp8\SkiaSharp.HarfBuzz.dll</HintPath>
<HintPath>..\packages\SkiaSharp.HarfBuzz.1.57.1-beta\lib\portable-net45+win8+wpa81+wp8\SkiaSharp.HarfBuzz.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup>

Просмотреть файл

@ -3,7 +3,7 @@
<package id="HarfBuzzSharp" version="1.4.5" targetFramework="portable45-net45+win8+wp8+wpa81" />
<package id="PCLStorage" version="1.0.2" targetFramework="portable45-net45+win8+wp8+wpa81" />
<package id="SkiaSharp" version="1.57.1" targetFramework="portable45-net45+win8+wp8+wpa81" />
<package id="SkiaSharp.Harfbuzz" version="1.57.1-beta" targetFramework="portable45-net45+win8+wp8+wpa81" />
<package id="SkiaSharp.HarfBuzz" version="1.57.1-beta" targetFramework="portable45-net45+win8+wp8+wpa81" />
<package id="SkiaSharp.Svg" version="1.57.1" targetFramework="portable45-net45+win8+wp8+wpa81" />
<package id="SkiaSharp.Views.Forms" version="1.57.1" targetFramework="portable45-net45+win8+wp8+wpa81" />
<package id="Xamarin.Forms" version="2.3.4.231" targetFramework="portable45-net45+win8+wp8+wpa81" />

Просмотреть файл

@ -13,8 +13,6 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "iOS", "iOS\iOS.csproj", "{0
EndProject
Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "SkiaSharpSample.Platform.Shared", "..\SkiaSharpSample.Platform.Shared\SkiaSharpSample.Platform.Shared.shproj", "{0CC41AB0-0C4C-4DAA-8F10-A249725EBF5D}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mac", "Mac\Mac.csproj", "{91F5C72A-74D7-4C3F-8761-F692D4300660}"
EndProject
Global
GlobalSection(SharedMSBuildProjectFiles) = preSolution
..\SkiaSharpSample.Platform.Shared\SkiaSharpSample.Platform.Shared.projitems*{05a70f82-973a-4402-adb9-2684d5e9f0c8}*SharedItemsImports = 4
@ -122,30 +120,6 @@ Global
{05A70F82-973A-4402-ADB9-2684D5E9F0C8}.Release|x64.Build.0 = Release|iPhoneSimulator
{05A70F82-973A-4402-ADB9-2684D5E9F0C8}.Release|x86.ActiveCfg = Release|iPhoneSimulator
{05A70F82-973A-4402-ADB9-2684D5E9F0C8}.Release|x86.Build.0 = Release|iPhoneSimulator
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Debug|Any CPU.Build.0 = Debug|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Debug|ARM.ActiveCfg = Debug|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Debug|ARM.Build.0 = Debug|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Debug|iPhone.ActiveCfg = Debug|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Debug|iPhone.Build.0 = Debug|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Debug|x64.ActiveCfg = Debug|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Debug|x64.Build.0 = Debug|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Debug|x86.ActiveCfg = Debug|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Debug|x86.Build.0 = Debug|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Release|Any CPU.ActiveCfg = Release|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Release|Any CPU.Build.0 = Release|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Release|ARM.ActiveCfg = Release|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Release|ARM.Build.0 = Release|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Release|iPhone.ActiveCfg = Release|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Release|iPhone.Build.0 = Release|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Release|x64.ActiveCfg = Release|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Release|x64.Build.0 = Release|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Release|x86.ActiveCfg = Release|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Release|x86.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE

Просмотреть файл

@ -15,6 +15,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "iOS", "iOS\iOS.csproj", "{0
EndProject
Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "SkiaSharpSample.Platform.Shared", "..\SkiaSharpSample.Platform.Shared\SkiaSharpSample.Platform.Shared.shproj", "{0CC41AB0-0C4C-4DAA-8F10-A249725EBF5D}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mac", "Mac\Mac.csproj", "{91F5C72A-74D7-4C3F-8761-F692D4300660}"
EndProject
Global
GlobalSection(SharedMSBuildProjectFiles) = preSolution
..\SkiaSharpSample.Platform.Shared\SkiaSharpSample.Platform.Shared.projitems*{05a70f82-973a-4402-adb9-2684d5e9f0c8}*SharedItemsImports = 4
@ -159,6 +161,30 @@ Global
{05A70F82-973A-4402-ADB9-2684D5E9F0C8}.Release|x64.Build.0 = Release|iPhoneSimulator
{05A70F82-973A-4402-ADB9-2684D5E9F0C8}.Release|x86.ActiveCfg = Release|iPhoneSimulator
{05A70F82-973A-4402-ADB9-2684D5E9F0C8}.Release|x86.Build.0 = Release|iPhoneSimulator
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Debug|Any CPU.Build.0 = Debug|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Debug|ARM.ActiveCfg = Debug|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Debug|ARM.Build.0 = Debug|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Debug|iPhone.ActiveCfg = Debug|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Debug|iPhone.Build.0 = Debug|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Debug|x64.ActiveCfg = Debug|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Debug|x64.Build.0 = Debug|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Debug|x86.ActiveCfg = Debug|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Debug|x86.Build.0 = Debug|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Release|Any CPU.ActiveCfg = Release|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Release|Any CPU.Build.0 = Release|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Release|ARM.ActiveCfg = Release|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Release|ARM.Build.0 = Release|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Release|iPhone.ActiveCfg = Release|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Release|iPhone.Build.0 = Release|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Release|x64.ActiveCfg = Release|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Release|x64.Build.0 = Release|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Release|x86.ActiveCfg = Release|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Release|x86.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE

Просмотреть файл

@ -53,18 +53,6 @@
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="Xamarin.Mac" />
<Reference Include="Xamarin.Forms.Core">
<HintPath>..\packages\Xamarin.Forms.2.3.5.233-pre1\lib\Xamarin.Mac\Xamarin.Forms.Core.dll</HintPath>
</Reference>
<Reference Include="Xamarin.Forms.Platform">
<HintPath>..\packages\Xamarin.Forms.2.3.5.233-pre1\lib\Xamarin.Mac\Xamarin.Forms.Platform.dll</HintPath>
</Reference>
<Reference Include="Xamarin.Forms.Platform.macOS">
<HintPath>..\packages\Xamarin.Forms.2.3.5.233-pre1\lib\Xamarin.Mac\Xamarin.Forms.Platform.macOS.dll</HintPath>
</Reference>
<Reference Include="Xamarin.Forms.Xaml">
<HintPath>..\packages\Xamarin.Forms.2.3.5.233-pre1\lib\Xamarin.Mac\Xamarin.Forms.Xaml.dll</HintPath>
</Reference>
<Reference Include="SkiaSharp">
<HintPath>..\packages\SkiaSharp.1.57.1\lib\XamarinMac\SkiaSharp.dll</HintPath>
</Reference>
@ -84,7 +72,19 @@
<HintPath>..\packages\HarfBuzzSharp.1.4.5\lib\XamarinMac\HarfBuzzSharp.dll</HintPath>
</Reference>
<Reference Include="SkiaSharp.HarfBuzz">
<HintPath>..\packages\SkiaSharp.Harfbuzz.1.57.1-beta\lib\portable-net45+win8+wpa81+wp8\SkiaSharp.HarfBuzz.dll</HintPath>
<HintPath>..\packages\SkiaSharp.HarfBuzz.1.57.1-beta\lib\portable-net45+win8+wpa81+wp8\SkiaSharp.HarfBuzz.dll</HintPath>
</Reference>
<Reference Include="Xamarin.Forms.Core">
<HintPath>..\packages\Xamarin.Forms.2.3.5.235-pre2\lib\Xamarin.Mac\Xamarin.Forms.Core.dll</HintPath>
</Reference>
<Reference Include="Xamarin.Forms.Platform">
<HintPath>..\packages\Xamarin.Forms.2.3.5.235-pre2\lib\Xamarin.Mac\Xamarin.Forms.Platform.dll</HintPath>
</Reference>
<Reference Include="Xamarin.Forms.Platform.macOS">
<HintPath>..\packages\Xamarin.Forms.2.3.5.235-pre2\lib\Xamarin.Mac\Xamarin.Forms.Platform.macOS.dll</HintPath>
</Reference>
<Reference Include="Xamarin.Forms.Xaml">
<HintPath>..\packages\Xamarin.Forms.2.3.5.235-pre2\lib\Xamarin.Mac\Xamarin.Forms.Xaml.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup>
@ -132,7 +132,5 @@
</ItemGroup>
<Import Project="..\..\SkiaSharpSample.Platform.Shared\SkiaSharpSample.Platform.Shared.projitems" Label="Shared" Condition="Exists('..\..\SkiaSharpSample.Platform.Shared\SkiaSharpSample.Platform.Shared.projitems')" />
<Import Project="$(MSBuildExtensionsPath)\Xamarin\Mac\Xamarin.Mac.CSharp.targets" />
<Import Project="..\packages\Xamarin.Forms.2.3.5.233-pre1\build\portable-win+net45+wp80+win81+wpa81+MonoAndroid10+Xamarin.iOS10+xamarinmac20\Xamarin.Forms.targets" Condition="Exists('..\packages\Xamarin.Forms.2.3.5.233-pre1\build\portable-win+net45+wp80+win81+wpa81+MonoAndroid10+Xamarin.iOS10+xamarinmac20\Xamarin.Forms.targets')" />
<Import Project="..\packages\SkiaSharp.1.57.1\build\XamarinMac\SkiaSharp.targets" Condition="Exists('..\packages\SkiaSharp.1.57.1\build\XamarinMac\SkiaSharp.targets')" />
<Import Project="..\packages\HarfBuzzSharp.1.4.5\build\XamarinMac\HarfBuzzSharp.targets" Condition="Exists('..\packages\HarfBuzzSharp.1.4.5\build\XamarinMac\HarfBuzzSharp.targets')" />
<Import Project="..\packages\Xamarin.Forms.2.3.5.235-pre2\build\netstandard1.0\Xamarin.Forms.targets" Condition="Exists('..\packages\Xamarin.Forms.2.3.5.235-pre2\build\netstandard1.0\Xamarin.Forms.targets')" />
</Project>

Просмотреть файл

@ -3,9 +3,9 @@
<package id="HarfBuzzSharp" version="1.4.5" targetFramework="xamarinmac20" />
<package id="SkiaSharp" version="1.57.1" targetFramework="xamarinmac20" />
<package id="SkiaSharp.Extended" version="1.57.1-beta" targetFramework="xamarinmac20" />
<package id="SkiaSharp.Harfbuzz" version="1.57.1-beta" targetFramework="xamarinmac20" />
<package id="SkiaSharp.HarfBuzz" version="1.57.1-beta" targetFramework="xamarinmac20" />
<package id="SkiaSharp.Svg" version="1.57.1" targetFramework="xamarinmac20" />
<package id="SkiaSharp.Views" version="1.57.1" targetFramework="xamarinmac20" />
<package id="SkiaSharp.Views.Forms" version="1.57.1" targetFramework="xamarinmac20" />
<package id="Xamarin.Forms" version="2.3.5.233-pre1" targetFramework="xamarinmac20" />
<package id="Xamarin.Forms" version="2.3.5.235-pre2" targetFramework="xamarinmac20" />
</packages>

Просмотреть файл

@ -4,7 +4,7 @@
"Microsoft.NETCore.UniversalWindowsPlatform": "5.0.0",
"PCLStorage": "1.0.2",
"SkiaSharp": "1.57.1",
"SkiaSharp.Harfbuzz": "1.57.1-beta",
"SkiaSharp.HarfBuzz": "1.57.1-beta",
"SkiaSharp.Svg": "1.57.1",
"SkiaSharp.Views": "1.57.1",
"SkiaSharp.Views.Forms": "1.57.1",

Просмотреть файл

@ -184,7 +184,7 @@
<HintPath>..\packages\HarfBuzzSharp.1.4.5\lib\XamariniOS\HarfBuzzSharp.dll</HintPath>
</Reference>
<Reference Include="SkiaSharp.HarfBuzz">
<HintPath>..\packages\SkiaSharp.Harfbuzz.1.57.1-beta\lib\portable-net45+win8+wpa81+wp8\SkiaSharp.HarfBuzz.dll</HintPath>
<HintPath>..\packages\SkiaSharp.HarfBuzz.1.57.1-beta\lib\portable-net45+win8+wpa81+wp8\SkiaSharp.HarfBuzz.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup>

Просмотреть файл

@ -3,7 +3,7 @@
<package id="HarfBuzzSharp" version="1.4.5" targetFramework="xamarinios10" />
<package id="PCLStorage" version="1.0.2" targetFramework="xamarinios10" />
<package id="SkiaSharp" version="1.57.1" targetFramework="xamarinios10" />
<package id="SkiaSharp.Harfbuzz" version="1.57.1-beta" targetFramework="xamarinios10" />
<package id="SkiaSharp.HarfBuzz" version="1.57.1-beta" targetFramework="xamarinios10" />
<package id="SkiaSharp.Svg" version="1.57.1" targetFramework="xamarinios10" />
<package id="SkiaSharp.Views" version="1.57.1" targetFramework="xamarinios10" />
<package id="SkiaSharp.Views.Forms" version="1.57.1" targetFramework="xamarinios10" />

Просмотреть файл

@ -63,7 +63,7 @@
<HintPath>..\packages\HarfBuzzSharp.1.4.5\lib\XamarinMac\HarfBuzzSharp.dll</HintPath>
</Reference>
<Reference Include="SkiaSharp.HarfBuzz">
<HintPath>..\packages\SkiaSharp.Harfbuzz.1.57.1-beta\lib\portable-net45+win8+wpa81+wp8\SkiaSharp.HarfBuzz.dll</HintPath>
<HintPath>..\packages\SkiaSharp.HarfBuzz.1.57.1-beta\lib\portable-net45+win8+wpa81+wp8\SkiaSharp.HarfBuzz.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup>
@ -105,6 +105,4 @@
<Import Project="..\..\SkiaSharpSample.Shared\SkiaSharpSample.Shared.projitems" Label="Shared" Condition="Exists('..\..\SkiaSharpSample.Shared\SkiaSharpSample.Shared.projitems')" />
<Import Project="..\..\SkiaSharpSample.Platform.Shared\SkiaSharpSample.Platform.Shared.projitems" Label="Shared" Condition="Exists('..\..\SkiaSharpSample.Platform.Shared\SkiaSharpSample.Platform.Shared.projitems')" />
<Import Project="$(MSBuildExtensionsPath)\Xamarin\Mac\Xamarin.Mac.CSharp.targets" />
<Import Project="..\packages\SkiaSharp.1.57.1\build\XamarinMac\SkiaSharp.targets" Condition="Exists('..\packages\SkiaSharp.1.57.1\build\XamarinMac\SkiaSharp.targets')" />
<Import Project="..\packages\HarfBuzzSharp.1.4.5\build\XamarinMac\HarfBuzzSharp.targets" Condition="Exists('..\packages\HarfBuzzSharp.1.4.5\build\XamarinMac\HarfBuzzSharp.targets')" />
</Project>

Просмотреть файл

@ -2,7 +2,7 @@
<packages>
<package id="HarfBuzzSharp" version="1.4.5" targetFramework="xamarinmac20" />
<package id="SkiaSharp" version="1.57.1" targetFramework="xamarinmac20" />
<package id="SkiaSharp.Harfbuzz" version="1.57.1-beta" targetFramework="xamarinmac20" />
<package id="SkiaSharp.HarfBuzz" version="1.57.1-beta" targetFramework="xamarinmac20" />
<package id="SkiaSharp.Svg" version="1.57.1" targetFramework="xamarinmac20" />
<package id="SkiaSharp.Views" version="1.57.1" targetFramework="xamarinmac20" />
</packages>

Просмотреть файл

@ -106,7 +106,7 @@
<HintPath>..\packages\HarfBuzzSharp.1.4.5\lib\XamarintvOS\HarfBuzzSharp.dll</HintPath>
</Reference>
<Reference Include="SkiaSharp.HarfBuzz">
<HintPath>..\packages\SkiaSharp.Harfbuzz.1.57.1-beta\lib\portable-net45+win8+wpa81+wp8\SkiaSharp.HarfBuzz.dll</HintPath>
<HintPath>..\packages\SkiaSharp.HarfBuzz.1.57.1-beta\lib\portable-net45+win8+wpa81+wp8\SkiaSharp.HarfBuzz.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup>

Просмотреть файл

@ -2,7 +2,7 @@
<packages>
<package id="HarfBuzzSharp" version="1.4.5" targetFramework="xamarintvos10" />
<package id="SkiaSharp" version="1.57.1" targetFramework="xamarintvos10" />
<package id="SkiaSharp.Harfbuzz" version="1.57.1-beta" targetFramework="xamarintvos10" />
<package id="SkiaSharp.HarfBuzz" version="1.57.1-beta" targetFramework="xamarintvos10" />
<package id="SkiaSharp.Svg" version="1.57.1" targetFramework="xamarintvos10" />
<package id="SkiaSharp.Views" version="1.57.1" targetFramework="xamarintvos10" />
</packages>

Просмотреть файл

@ -4,7 +4,7 @@
"Microsoft.NETCore.UniversalWindowsPlatform": "5.1.0",
"PCLStorage": "1.0.2",
"SkiaSharp": "1.57.1",
"SkiaSharp.Harfbuzz": "1.57.1-beta",
"SkiaSharp.HarfBuzz": "1.57.1-beta",
"SkiaSharp.Svg": "1.57.1",
"SkiaSharp.Views": "1.57.1"
},

Просмотреть файл

@ -98,7 +98,7 @@
<Private>True</Private>
</Reference>
<Reference Include="SkiaSharp.HarfBuzz">
<HintPath>..\packages\SkiaSharp.Harfbuzz.1.57.1-beta\lib\portable-net45+win8+wpa81+wp8\SkiaSharp.HarfBuzz.dll</HintPath>
<HintPath>..\packages\SkiaSharp.HarfBuzz.1.57.1-beta\lib\portable-net45+win8+wpa81+wp8\SkiaSharp.HarfBuzz.dll</HintPath>
</Reference>
<Reference Include="SkiaSharp.Svg">
<HintPath>..\packages\SkiaSharp.Svg.1.57.1\lib\portable-net45+win8+wpa81+wp8\SkiaSharp.Svg.dll</HintPath>

Просмотреть файл

@ -5,7 +5,7 @@
<package id="OpenTK.GLControl" version="1.1.2349.61993" targetFramework="net45" />
<package id="PCLStorage" version="1.0.2" targetFramework="net45" />
<package id="SkiaSharp" version="1.57.1" targetFramework="net45" />
<package id="SkiaSharp.Harfbuzz" version="1.57.1-beta" targetFramework="net45" />
<package id="SkiaSharp.HarfBuzz" version="1.57.1-beta" targetFramework="net45" />
<package id="SkiaSharp.Svg" version="1.57.1" targetFramework="net45" />
<package id="SkiaSharp.Views" version="1.57.1" targetFramework="net45" />
</packages>

Просмотреть файл

@ -99,7 +99,7 @@
<Private>True</Private>
</Reference>
<Reference Include="SkiaSharp.HarfBuzz">
<HintPath>..\packages\SkiaSharp.Harfbuzz.1.57.1-beta\lib\portable-net45+win8+wpa81+wp8\SkiaSharp.HarfBuzz.dll</HintPath>
<HintPath>..\packages\SkiaSharp.HarfBuzz.1.57.1-beta\lib\portable-net45+win8+wpa81+wp8\SkiaSharp.HarfBuzz.dll</HintPath>
</Reference>
<Reference Include="SkiaSharp.Svg">
<HintPath>..\packages\SkiaSharp.Svg.1.57.1\lib\portable-net45+win8+wpa81+wp8\SkiaSharp.Svg.dll</HintPath>

Просмотреть файл

@ -5,7 +5,7 @@
<package id="OpenTK.GLControl" version="1.1.2349.61993" targetFramework="net45" />
<package id="PCLStorage" version="1.0.2" targetFramework="net45" />
<package id="SkiaSharp" version="1.57.1" targetFramework="net45" />
<package id="SkiaSharp.Harfbuzz" version="1.57.1-beta" targetFramework="net45" />
<package id="SkiaSharp.HarfBuzz" version="1.57.1-beta" targetFramework="net45" />
<package id="SkiaSharp.Svg" version="1.57.1" targetFramework="net45" />
<package id="SkiaSharp.Views" version="1.57.1" targetFramework="net45" />
</packages>

Просмотреть файл

@ -31,7 +31,8 @@ namespace SkiaSharp.HarfBuzz
paintClone.TextEncoding = SKTextEncoding.GlyphId;
paintClone.Typeface = shaper.Typeface;
canvas.DrawPositionedText(result.Codepoints, result.Points, paintClone);
var bytes = result.Codepoints.Select(cp => BitConverter.GetBytes((ushort)cp)).SelectMany(b => b).ToArray();
canvas.DrawPositionedText(bytes, result.Points, paintClone);
}
}
}

Просмотреть файл

@ -78,11 +78,11 @@ namespace SkiaSharp.HarfBuzz
var points = new SKPoint[len];
var clusters = new uint[len];
var codepointsTemp = new byte[len][];
var codepoints = new uint[len];
for (var i = 0; i < len; i++)
{
codepointsTemp[i] = BitConverter.GetBytes((ushort)info[i].Codepoint);
codepoints[i] = info[i].Codepoint;
clusters[i] = info[i].Cluster;
@ -95,8 +95,6 @@ namespace SkiaSharp.HarfBuzz
yOffset += pos[i].YAdvance * textSizeY;
}
var codepoints = codepointsTemp.SelectMany(cp => cp).ToArray();
return new Result(codepoints, clusters, points);
}
@ -104,19 +102,19 @@ namespace SkiaSharp.HarfBuzz
{
public Result()
{
Codepoints = new byte[0];
Codepoints = new uint[0];
Clusters = new uint[0];
Points = new SKPoint[0];
}
public Result(byte[] codepoints, uint[] clusters, SKPoint[] points)
public Result(uint[] codepoints, uint[] clusters, SKPoint[] points)
{
Codepoints = codepoints;
Clusters = clusters;
Points = points;
}
public byte[] Codepoints { get; private set; }
public uint[] Codepoints { get; private set; }
public uint[] Clusters { get; private set; }

Просмотреть файл

@ -15,7 +15,7 @@ namespace HarfBuzzSharp.Tests
public void DrawShapedTextExtensionMethodDraws()
{
using (var surface = SKSurface.Create(new SKImageInfo(512, 512)))
using (var tf = SKTypeface.FromFamilyName("Tahoma"))
using (var tf = SKTypeface.FromFile(Path.Combine(PathToFonts, "content-font.ttf")))
using (var shaper = new SKShaper(tf))
using (var paint = new SKPaint { IsAntialias = true, TextSize = 64, Typeface = tf })
{
@ -38,10 +38,10 @@ namespace HarfBuzzSharp.Tests
public void CorrectlyShapesArabicScriptAtAnOffset()
{
var clusters = new uint[] { 4, 2, 0 };
var codepoints = new byte[] { 230, 3, 152, 3, 227, 3 };
var points = new SKPoint[] { new SKPoint(100, 200), new SKPoint(148.25f, 200), new SKPoint(170.75f, 200) };
var codepoints = new uint[] { 629, 668, 891 };
var points = new SKPoint[] { new SKPoint(100, 200), new SKPoint(128.375f, 200), new SKPoint(142.125f, 200) };
using (var tf = SKTypeface.FromFamilyName("Tahoma"))
using (var tf = SKTypeface.FromFile(Path.Combine(PathToFonts, "content-font.ttf")))
using (var shaper = new SKShaper(tf))
using (var paint = new SKPaint { IsAntialias = true, TextSize = 64, Typeface = tf })
{
@ -57,10 +57,10 @@ namespace HarfBuzzSharp.Tests
public void CorrectlyShapesArabicScript()
{
var clusters = new uint[] { 4, 2, 0 };
var codepoints = new byte[] { 230, 3, 152, 3, 227, 3 };
var points = new SKPoint[] { new SKPoint(0, 0), new SKPoint(48.25f, 0), new SKPoint(70.75f, 0) };
var codepoints = new uint[] { 629, 668, 891 };
var points = new SKPoint[] { new SKPoint(0, 0), new SKPoint(28.375f, 0), new SKPoint(42.125f, 0) };
using (var tf = SKTypeface.FromFamilyName("Tahoma"))
using (var tf = SKTypeface.FromFile(Path.Combine(PathToFonts, "content-font.ttf")))
using (var shaper = new SKShaper(tf))
using (var paint = new SKPaint { IsAntialias = true, TextSize = 64, Typeface = tf })
{