remove C#

This commit is contained in:
Tyrel Souza 2023-10-20 16:36:22 -04:00
parent ee9bc48ec9
commit 377a9d99b6
No known key found for this signature in database
GPG Key ID: F3614B02ACBE438E
172 changed files with 75962 additions and 571 deletions

View File

@ -1,5 +0,0 @@
bin/
obj/
/packages/
riderModule.iml
/_ReSharper.Caches/

View File

@ -1,16 +0,0 @@

Microsoft Visual Studio Solution File, Format Version 12.00
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BenchtopPDF", "BenchtopPDF\BenchtopPDF.csproj", "{552E9774-67EF-461E-AECD-80130D33D891}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{552E9774-67EF-461E-AECD-80130D33D891}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{552E9774-67EF-461E-AECD-80130D33D891}.Debug|Any CPU.Build.0 = Debug|Any CPU
{552E9774-67EF-461E-AECD-80130D33D891}.Release|Any CPU.ActiveCfg = Release|Any CPU
{552E9774-67EF-461E-AECD-80130D33D891}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
EndGlobal

View File

@ -1,3 +0,0 @@
<wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
<s:String x:Key="/Default/Environment/Hierarchy/Build/BuildTool/CustomBuildToolPath/@EntryValue">/usr/lib/mono/msbuild/15.0/bin/MSBuild.dll</s:String></wpf:ResourceDictionary>

View File

@ -1,113 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.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>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{552E9774-67EF-461E-AECD-80130D33D891}</ProjectGuid>
<OutputType>Exe</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>BenchtopPDF</RootNamespace>
<AssemblyName>BenchtopPDF</AssemblyName>
<TargetFrameworkVersion>v4.8</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
<LangVersion>default</LangVersion>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<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' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include="HarfBuzzSharp, Version=1.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756, processorArchitecture=MSIL">
<HintPath>..\packages\HarfBuzzSharp.2.8.2.4-preview.89\lib\net462\HarfBuzzSharp.dll</HintPath>
</Reference>
<Reference Include="mscorlib" />
<Reference Include="Newtonsoft.Json, Version=13.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
<HintPath>..\packages\Newtonsoft.Json.13.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
</Reference>
<Reference Include="QuestPDF, Version=2023.6.1.0, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\QuestPDF.2023.6.1\lib\net462\QuestPDF.dll</HintPath>
</Reference>
<Reference Include="SkiaSharp, Version=2.88.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756, processorArchitecture=MSIL">
<HintPath>..\packages\SkiaSharp.2.88.4-preview.89\lib\net462\SkiaSharp.dll</HintPath>
</Reference>
<Reference Include="SkiaSharp.HarfBuzz, Version=2.88.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756, processorArchitecture=MSIL">
<HintPath>..\packages\SkiaSharp.HarfBuzz.2.88.3\lib\net462\SkiaSharp.HarfBuzz.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Buffers, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll</HintPath>
</Reference>
<Reference Include="System.Core" />
<Reference Include="System.Data" />
<Reference Include="System.Memory, Version=4.0.1.2, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Memory.4.5.5\lib\net461\System.Memory.dll</HintPath>
</Reference>
<Reference Include="System.Numerics" />
<Reference Include="System.Numerics.Vectors, Version=4.1.4.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.CompilerServices.Unsafe, Version=4.0.4.1, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Runtime.CompilerServices.Unsafe.4.5.3\lib\net461\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
</Reference>
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="SheetDocument.cs" />
<Compile Include="SheetModel.cs" />
<Compile Include="Program.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
</ItemGroup>
<ItemGroup>
<None Include="packages.config" />
</ItemGroup>
<ItemGroup>
<Content Include="a2lp_cert.png">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
<Content Include="BenchTopLogo.png">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
<PropertyGroup>
<ErrorText>This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105.The missing file is {0}.</ErrorText>
</PropertyGroup>
<Error Condition="!Exists('..\packages\SkiaSharp.NativeAssets.macOS.2.88.4-preview.89\build\net462\SkiaSharp.NativeAssets.macOS.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\SkiaSharp.NativeAssets.macOS.2.88.4-preview.89\build\net462\SkiaSharp.NativeAssets.macOS.targets'))" />
<Error Condition="!Exists('..\packages\SkiaSharp.NativeAssets.Win32.2.88.4-preview.89\build\net462\SkiaSharp.NativeAssets.Win32.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\SkiaSharp.NativeAssets.Win32.2.88.4-preview.89\build\net462\SkiaSharp.NativeAssets.Win32.targets'))" />
<Error Condition="!Exists('..\packages\SkiaSharp.NativeAssets.Linux.NoDependencies.2.88.4-preview.89\build\net462\SkiaSharp.NativeAssets.Linux.NoDependencies.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\SkiaSharp.NativeAssets.Linux.NoDependencies.2.88.4-preview.89\build\net462\SkiaSharp.NativeAssets.Linux.NoDependencies.targets'))" />
<Error Condition="!Exists('..\packages\HarfBuzzSharp.NativeAssets.macOS.2.8.2.4-preview.89\build\net462\HarfBuzzSharp.NativeAssets.macOS.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\HarfBuzzSharp.NativeAssets.macOS.2.8.2.4-preview.89\build\net462\HarfBuzzSharp.NativeAssets.macOS.targets'))" />
<Error Condition="!Exists('..\packages\HarfBuzzSharp.NativeAssets.Win32.2.8.2.4-preview.89\build\net462\HarfBuzzSharp.NativeAssets.Win32.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\HarfBuzzSharp.NativeAssets.Win32.2.8.2.4-preview.89\build\net462\HarfBuzzSharp.NativeAssets.Win32.targets'))" />
<Error Condition="!Exists('..\packages\HarfBuzzSharp.NativeAssets.Linux.2.8.2.4-preview.89\build\net462\HarfBuzzSharp.NativeAssets.Linux.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\HarfBuzzSharp.NativeAssets.Linux.2.8.2.4-preview.89\build\net462\HarfBuzzSharp.NativeAssets.Linux.targets'))" />
</Target>
<Import Project="..\packages\SkiaSharp.NativeAssets.macOS.2.88.4-preview.89\build\net462\SkiaSharp.NativeAssets.macOS.targets" Condition="Exists('..\packages\SkiaSharp.NativeAssets.macOS.2.88.4-preview.89\build\net462\SkiaSharp.NativeAssets.macOS.targets')" />
<Import Project="..\packages\SkiaSharp.NativeAssets.Win32.2.88.4-preview.89\build\net462\SkiaSharp.NativeAssets.Win32.targets" Condition="Exists('..\packages\SkiaSharp.NativeAssets.Win32.2.88.4-preview.89\build\net462\SkiaSharp.NativeAssets.Win32.targets')" />
<Import Project="..\packages\SkiaSharp.NativeAssets.Linux.NoDependencies.2.88.4-preview.89\build\net462\SkiaSharp.NativeAssets.Linux.NoDependencies.targets" Condition="Exists('..\packages\SkiaSharp.NativeAssets.Linux.NoDependencies.2.88.4-preview.89\build\net462\SkiaSharp.NativeAssets.Linux.NoDependencies.targets')" />
<Import Project="..\packages\HarfBuzzSharp.NativeAssets.macOS.2.8.2.4-preview.89\build\net462\HarfBuzzSharp.NativeAssets.macOS.targets" Condition="Exists('..\packages\HarfBuzzSharp.NativeAssets.macOS.2.8.2.4-preview.89\build\net462\HarfBuzzSharp.NativeAssets.macOS.targets')" />
<Import Project="..\packages\HarfBuzzSharp.NativeAssets.Win32.2.8.2.4-preview.89\build\net462\HarfBuzzSharp.NativeAssets.Win32.targets" Condition="Exists('..\packages\HarfBuzzSharp.NativeAssets.Win32.2.8.2.4-preview.89\build\net462\HarfBuzzSharp.NativeAssets.Win32.targets')" />
<Import Project="..\packages\HarfBuzzSharp.NativeAssets.Linux.2.8.2.4-preview.89\build\net462\HarfBuzzSharp.NativeAssets.Linux.targets" Condition="Exists('..\packages\HarfBuzzSharp.NativeAssets.Linux.2.8.2.4-preview.89\build\net462\HarfBuzzSharp.NativeAssets.Linux.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>

View File

@ -1,24 +0,0 @@
using Newtonsoft.Json;
using QuestPDF.Fluent;
using QuestPDF.Helpers;
using QuestPDF.Infrastructure;
namespace BenchtopPDF
{
internal class Program
{
public static void Main(string[] args)
{
QuestPDF.Settings.License = LicenseType.Community;
// TODO get json from file
var data =
@"{""Instrument"": ""CTS0JODFDASH"", ""Customer Name"": ""Anthony Souza"", ""Customer Address"": ""PO Box 357, West Chesterfield, NH 03466"", ""Control Number"": ""123123"", ""Serial Number"": ""123313"", ""Accuracy"": 0.5, ""Barometric Pressure"": 1013.25, ""Temperature"": 50.3, ""Humidity"": 27, ""Transducers"": [{""Accuracy"": 0.005, ""Part Number"": ""D34-442"", ""Value"": 115, ""Unit"": ""PSIA"", ""Limit ABS"": 575, ""Transducer Name"": ""1"", ""Transducer Type"": ""Pressure"", ""Gauge Reading"": [{""Value"": 0, ""In Range"": true, ""Delta"": 575}, {""Value"": 20002, ""In Range"": true, ""Delta"": 577}, {""Value"": 39997, ""In Range"": true, ""Delta"": 572}, {""Value"": 60010, ""In Range"": true, ""Delta"": 585}, {""Value"": 80001, ""In Range"": true, ""Delta"": 576}, {""Value"": 100002, ""In Range"": true, ""Delta"": 577}], ""Master Value"": [{""Low Limit"": -575, ""Master Value"": 0, ""High Limit"": 575}, {""Low Limit"": 19425, ""Master Value"": 20000, ""High Limit"": 20575}, {""Low Limit"": 39425, ""Master Value"": 40000, ""High Limit"": 40575}, {""Low Limit"": 59425, ""Master Value"": 60000, ""High Limit"": 60575}, {""Low Limit"": 79425, ""Master Value"": 80000, ""High Limit"": 80575}, {""Low Limit"": 99425, ""Master Value"": 100000, ""High Limit"": 100575}], ""Verify Date"": ""07/20/22"", ""Verify Time"": ""11:20:26""}, {""Accuracy"": 0.005, ""Part Number"": ""A12-221"", ""Value"": 250, ""Unit"": ""SCCM"", ""Limit ABS"": 1250, ""Transducer Name"": ""2"", ""Transducer Type"": ""Flow"", ""Gauge Reading"": [{""Value"": -82, ""In Range"": true, ""Delta"": 1168}, {""Value"": 24802, ""In Range"": true, ""Delta"": 1052}, {""Value"": 49664, ""In Range"": true, ""Delta"": 914}, {""Value"": 74836, ""In Range"": true, ""Delta"": 1086}, {""Value"": 99416, ""In Range"": true, ""Delta"": 666}, {""Value"": 125289, ""In Range"": true, ""Delta"": 1539}, {""Value"": 150205, ""In Range"": true, ""Delta"": 1455}, {""Value"": 175290, ""In Range"": true, ""Delta"": 1540}, {""Value"": 200165, ""In Range"": true, ""Delta"": 1415}, {""Value"": 224748, ""In Range"": true, ""Delta"": 998}, {""Value"": 249825, ""In Range"": true, ""Delta"": 1075}], ""Master Value"": [{""Low Limit"": -1250, ""Master Value"": 0, ""High Limit"": 1250}, {""Low Limit"": 23750, ""Master Value"": 25000, ""High Limit"": 26250}, {""Low Limit"": 48750, ""Master Value"": 50000, ""High Limit"": 51250}, {""Low Limit"": 73750, ""Master Value"": 75000, ""High Limit"": 76250}, {""Low Limit"": 98750, ""Master Value"": 100000, ""High Limit"": 101250}, {""Low Limit"": 123750, ""Master Value"": 125000, ""High Limit"": 126250}, {""Low Limit"": 148750, ""Master Value"": 150000, ""High Limit"": 151250}, {""Low Limit"": 173750, ""Master Value"": 175000, ""High Limit"": 176250}, {""Low Limit"": 198750, ""Master Value"": 200000, ""High Limit"": 201250}, {""Low Limit"": 223750, ""Master Value"": 225000, ""High Limit"": 226250}, {""Low Limit"": 248750, ""Master Value"": 250000, ""High Limit"": 251250}], ""Verify Date"": ""07/15/21"", ""Verify Time"": ""14:55:10""}]}
";
var model = JsonConvert.DeserializeObject<Sheet>(data);
var document = new SheetDocument(model);
document.GeneratePdfAndShow();
}
}
}

View File

@ -1,35 +0,0 @@
using System.Reflection;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
[assembly: AssemblyTitle("BenchtopPDF")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("BenchtopPDF")]
[assembly: AssemblyCopyright("Copyright © 2023")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// Setting ComVisible to false makes the types in this assembly not visible
// to COM components. If you need to access a type in this assembly from
// COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(false)]
// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("552E9774-67EF-461E-AECD-80130D33D891")]
// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]

View File

@ -1,287 +0,0 @@
using System.Globalization;
using System.Linq;
using QuestPDF.Drawing;
using QuestPDF.Fluent;
using QuestPDF.Helpers;
using QuestPDF.Infrastructure;
namespace BenchtopPDF
{
public class SheetDocument : IDocument
{
private static Image LogoImage { get; } = Image.FromFile("BenchTopLogo.png");
private static Image CertImage { get; } = Image.FromFile("a2lp_cert.png");
public Sheet Sheet { get; }
public SheetDocument(Sheet model)
{
Sheet = model;
}
public DocumentMetadata GetMetadata() => DocumentMetadata.Default;
public DocumentSettings GetSettings()
{
return new DocumentSettings();
}
public void Compose(IDocumentContainer container)
{
container.Page(page =>
{
page.Margin(25);
page.Header().Element(CustomHeader);
page.Content().Element(ComposeContent);
page.Footer().Border(1).Padding(4).AlignLeft().Text(text =>
{
text.Span("Secondary Cal Device (For Environmental Data):\n\nUncertainty Statement: The accuracy of measurement is determined by the standards uncertainty, with a coverage factor of k=2 (confidence of roughly 95%).");
});
});
}
void CustomHeader(IContainer container)
{
container.Row(row =>
{
row.ConstantItem(133).Image(LogoImage);
row.RelativeItem().Stack(stack =>
{
stack.Item().PaddingHorizontal(10).Column(column =>
{
column.Item().Text(text =>
{
text.Span("Customer:").FontSize(12);
});
column.Item().Text(text =>
{
text.Span("Onsite cal (yes/no):").FontSize(12);
});
column.Item().Text(text =>
{
text.Span("Control Doc#:").FontSize(12);
});
column.Item().Text(text =>
{
text.Span("Technician:").FontSize(12);
// text.Span($"{Sheet.IssueDate:d}");
});
});
});
row.ConstantItem(80).Image(CertImage);
});
}
void ComposeContent(IContainer container)
{
container.PaddingVertical(0).Column(column =>
{
column.Item().Text(text =>
{
text.Span("Calibration")
.FontSize(16)
.Bold()
.FontColor(Colors.Black);
text.AlignCenter();
});
column.Spacing(20);
column.Item().Row(row =>
{
row.RelativeItem().Component(new InstrumentComponent());
row.ConstantItem(25);
row.RelativeItem().Component(new CalDeviceComponent());
row.ConstantItem(25);
row.RelativeItem().Component(new EnvironmentComponent());
});
foreach (var transducer in Sheet.Transducers) {
column.Item().Component(new TableComponent(transducer));
}
});
}
void ComposeTable(IContainer container)
{
}
void ComposeComments(IContainer container)
{
container.ShowEntire().Background(Colors.Grey.Lighten3).Padding(10).Column(column =>
{
column.Spacing(5);
column.Item().Text("Comments").FontSize(14).SemiBold();
// column.Item().Text(Sheet.Comments);
});
}
}
public class InstrumentComponent : IComponent
{
public InstrumentComponent()
{
}
public void Compose(IContainer container)
{
container.ShowEntire().Column(column =>
{
column.Spacing(2);
column.Item().Text("Instrument").Underline();
column.Item().Text("Model: ");
column.Item().Text("Serial #:");
column.Item().Text("Channel:");
column.Item().Text("Transducer Model:");
column.Item().Text("Transducer Span:");
});
}
}
public class CalDeviceComponent : IComponent
{
public CalDeviceComponent()
{
}
public void Compose(IContainer container)
{
container.ShowEntire().Column(column =>
{
column.Spacing(2);
column.Item().Text("Primary Cal Device:").Underline();
column.Item().Text("Model:");
column.Item().Text("Serial #:");
column.Item().Text("Cal Date:");
column.Item().Text("Cal Due Date:");
column.Item().Text("Cert ID:");
column.Item().PaddingBottom(5);
});
}
}
public class EnvironmentComponent : IComponent
{
public void Compose(IContainer container)
{
container.ShowEntire().Column(column =>
{
column.Spacing(2);
column.Item().Text("Cal Date:").Bold();
column.Item().Text("Cal Due Date:").Bold();
column.Item().Text("Environmental Data").Underline();
column.Item().Text("Baro (Psi):");
column.Item().Text("Temp (*F):");
column.Item().Text("Humidity (%RF)");
column.Item().PaddingBottom(5);
});
}
}
public class TableComponent : IComponent
{
private Transducer t { get; }
public TableComponent(Transducer tt)
{
t = tt;
}
public void Compose(IContainer container)
{
var headerStyle = TextStyle.Default.SemiBold();
container
.DefaultTextStyle(x => x.FontSize(10))
.Border(1)
.BorderColor(Colors.Grey.Lighten2)
.Table(table =>
{
table.ColumnsDefinition(columns =>
{
columns.RelativeColumn();
columns.RelativeColumn();
columns.RelativeColumn();
columns.RelativeColumn();
columns.RelativeColumn();
columns.RelativeColumn();
});
table.Header(header =>
{
// header.Cell().ColumnSpan(6).PaddingBottom(0).BorderBottom(1)
// .BorderColor(Colors.Black).AlignCenter().Text($"Data (IN {t.Unit})");
header.Cell().AlignCenter().Text("Gauge Reading").Style(headerStyle);
header.Cell().AlignRight().Text("Accuracy (\u00b1 FS)").Style(headerStyle);
header.Cell().AlignRight().Text("Low Limit").Style(headerStyle);
header.Cell().AlignRight().Text("High Limit").Style(headerStyle);
header.Cell().AlignRight().Text("As Found (units)").Style(headerStyle);
header.Cell().AlignRight().Text("OOT").Style(headerStyle);
});
for (var idx = 0; idx < t.GaugeReading.Count; idx++)
{
var i = t.GaugeReading[idx];
var index = t.GaugeReading.IndexOf(i) + 1;
var masterValue = t.MasterValue[t.GaugeReading.IndexOf(i)];
var darken = (idx % 2 == 0);
MakeRow(table, index, masterValue, i.Value, i.Delta, darken);
}
});
}
private void MakeRow(TableDescriptor table, int index, MasterValue masterValue, int value, int delta, bool darken)
{
IContainer CellStyle(IContainer container)
{
if (darken)
{
return container
.DefaultTextStyle(x => x.FontSize(8))
.Border(1)
.BorderColor(Colors.Grey.Lighten2)
.Background(Colors.Grey.Lighten3)
.Padding(2);
}
return container
.DefaultTextStyle(x => x.FontSize(8))
.Border(1)
.BorderColor(Colors.Grey.Lighten2)
.Padding(2);
}
/*
* "Gauge Reading"
* "Accuracy"
* "Low Limit"
* "High Limit"
* "As Found"
* "OOT"
*/
table.Cell().Element(CellStyle).AlignRight().Text($"{masterValue.Value / 1000.0:F3}");
table.Cell().Element(CellStyle).AlignRight().Text("---");
table.Cell().Element(CellStyle).AlignRight().Text($"{masterValue.LowLimit / 1000.0:F3}");
table.Cell().Element(CellStyle).AlignRight().Text($"{masterValue.HighLimit / 1000.0:F3}");
table.Cell().Element(CellStyle).AlignRight().Text($"{value / 1000.0:F3}");
table.Cell().Element(CellStyle).AlignRight().Text($"---");
}
}
}

View File

@ -1,70 +0,0 @@
using System;
using System.Collections.Generic;
using Newtonsoft.Json;
namespace BenchtopPDF
{
/// Sheet myDeserializedClass = JsonConvert.DeserializeObject<Sheet>(myJsonResponse);
public class GaugeReading
{
public int Value { get; set; }
[JsonProperty("In Range")] public bool InRange { get; set; }
public int Delta { get; set; }
}
public class MasterValue
{
[JsonProperty("Low Limit")] public int LowLimit { get; set; }
[JsonProperty("Master Value")] public int Value { get; set; }
[JsonProperty("High Limit")] public int HighLimit { get; set; }
}
public class Sheet
{
public string Instrument { get; set; }
[JsonProperty("Customer Name")] public string CustomerName { get; set; }
[JsonProperty("Customer Address")] public string CustomerAddress { get; set; }
[JsonProperty("Control Number")] public string ControlNumber { get; set; }
[JsonProperty("Serial Number")] public string SerialNumber { get; set; }
public double Accuracy { get; set; }
[JsonProperty("Barometric Pressure")] public double BarometricPressure { get; set; }
public double Temperature { get; set; }
public int Humidity { get; set; }
public List<Transducer> Transducers { get; set; }
}
public class Transducer
{
public double Accuracy { get; set; }
[JsonProperty("Part Number")] public string PartNumber { get; set; }
public int Value { get; set; }
public string Unit { get; set; }
[JsonProperty("Limit ABS")] public int LimitABS { get; set; }
[JsonProperty("Transducer Name")] public string TransducerName { get; set; }
[JsonProperty("Transducer Type")] public string TransducerType { get; set; }
[JsonProperty("Gauge Reading")] public List<GaugeReading> GaugeReading { get; set; }
[JsonProperty("Master Value")] public List<MasterValue> MasterValue { get; set; }
[JsonProperty("Verify Date")] public string VerifyDate { get; set; }
[JsonProperty("Verify Time")] public string VerifyTime { get; set; }
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 55 KiB

View File

Before

Width:  |  Height:  |  Size: 75 KiB

After

Width:  |  Height:  |  Size: 75 KiB

Binary file not shown.

View File

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="System.Memory" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.1.2" newVersion="4.0.1.2" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>

Binary file not shown.

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

View File

@ -0,0 +1,242 @@
<?xml version="1.0"?>
<doc>
<assembly>
<name>QuestPDF</name>
</assembly>
<members>
<member name="T:QuestPDF.Elements.Table.DynamicDictionary`2">
<summary>
This dictionary allows to access key that does not exist.
Instead of throwing an exception, it returns a default value.
</summary>
</member>
<member name="M:QuestPDF.Fluent.DebugExtensions.DebugPointer(QuestPDF.Infrastructure.IContainer,System.String)">
<summary>
Creates a virtual element that is visible on the elements trace when the layout overflow exception is thrown.
This can be used to easily identify elements inside the elements trace tree and faster find issue root cause.
</summary>
</member>
<member name="M:QuestPDF.Fluent.GenerateExtensions.GenerateImages(QuestPDF.Infrastructure.IDocument,System.Func{System.Int32,System.String})">
<param name="filePath">Method should return fileName for given index</param>
</member>
<member name="M:QuestPDF.Fluent.GenerateExtensions.GenerateImages(QuestPDF.Infrastructure.IDocument,System.Func{System.Int32,System.String},QuestPDF.Infrastructure.ImageGenerationSettings)">
<param name="filePath">Method should return fileName for given index</param>
</member>
<member name="M:QuestPDF.Fluent.ImageDescriptor.UseOriginalImage(System.Boolean)">
<summary>
When enabled, the library will not attempt to resize the image to fit the target DPI, nor save it with target image quality.
</summary>
</member>
<member name="M:QuestPDF.Fluent.ImageDescriptor.WithRasterDpi(System.Int32)">
<summary>
The DPI (pixels-per-inch) at which images and features without native PDF support will be rasterized.
A larger DPI would create a PDF that reflects the original intent with better fidelity, but it can make for larger PDF files too, which would use more memory while rendering, and it would be slower to be processed or sent online or to printer.
When generating images, this parameter also controls the resolution of the generated content.
Default value is 144.
</summary>
</member>
<member name="M:QuestPDF.Fluent.ImageDescriptor.WithCompressionQuality(QuestPDF.Infrastructure.ImageCompressionQuality)">
<summary>
Encoding quality controls the trade-off between size and quality.
When the image is opaque, it will be encoded using the JPEG format with the selected quality setting.
When the image contains an alpha channel, it is always encoded using the PNG format and this option is ignored.
The default value is "very high quality".
</summary>
</member>
<member name="M:QuestPDF.Fluent.ImageDescriptor.FitWidth">
<summary>
The image scales to take the entire available width. Default.
</summary>
</member>
<member name="M:QuestPDF.Fluent.ImageDescriptor.FitHeight">
<summary>
The images scales to take the entire available height. Good in conjunction with constraining elements.
</summary>
</member>
<member name="M:QuestPDF.Fluent.ImageDescriptor.FitArea">
<summary>
This is the combination of both of the FitWidth and the FitHeight options.
The element scales to occupy the entire available area while preserving its aspect ratio.
This means that sometimes it occupies the entire width and sometimes the entire height.
This is the safest option.
</summary>
</member>
<member name="M:QuestPDF.Fluent.ImageDescriptor.FitUnproportionally">
<summary>
The image resizes itself to occupy the entire available space.
It does not preserve proportions.
The image may look incorrectly scaled, and is not desired in most of the cases.
</summary>
</member>
<member name="M:QuestPDF.Fluent.RotateExtensions.Rotate(QuestPDF.Infrastructure.IContainer,System.Single)">
<param name="angle">In degrees</param>
</member>
<member name="M:QuestPDF.Fluent.TextSpanDescriptorExtensions.LetterSpacing``1(``0,System.Single)">
<summary>
Letter spacing controls space between characters. Value 0 corresponds to normal spacing defined by a font.
Positive values create additional space, whereas negative values reduce space between characters.
Added / reduced space is relative to the font size.
</summary>
</member>
<member name="M:QuestPDF.Fluent.TextStyleExtensions.LetterSpacing(QuestPDF.Infrastructure.TextStyle,System.Single)">
<summary>
Letter spacing controls space between characters. Value 0 corresponds to normal spacing defined by a font.
Positive values create additional space, whereas negative values reduce space between characters.
Added / reduced space is relative to the font size.
</summary>
</member>
<member name="P:QuestPDF.Infrastructure.DocumentSettings.PdfA">
<summary>
Gets or sets a value indicating whether or not make the document PDF/A-2b conformant.
If true, include XMP metadata, a document UUID, and sRGB output intent information.
This adds length to the document and makes it non-reproducable, but are necessary features for PDF/A-2b conformance.
</summary>
</member>
<member name="P:QuestPDF.Infrastructure.DocumentSettings.ImageCompressionQuality">
<summary>
Encoding quality controls the trade-off between size and quality.
When the image is opaque, it will be encoded using the JPEG format with the selected quality setting.
When the image contains an alpha channel, it is always encoded using the PNG format and this option is ignored.
The default value is "high quality".
</summary>
</member>
<member name="P:QuestPDF.Infrastructure.DocumentSettings.ImageRasterDpi">
<summary>
The DPI (pixels-per-inch) at which images and features without native PDF support will be rasterized.
A larger DPI would create a PDF that reflects the original intent with better fidelity, but it can make for larger PDF files too, which would use more memory while rendering, and it would be slower to be processed or sent online or to printer.
When generating images, this parameter also controls the resolution of the generated content.
Default value is 144.
</summary>
</member>
<member name="F:QuestPDF.Infrastructure.ImageCompressionQuality.Best">
<summary>
JPEG format with compression set to 100 out of 100
</summary>
</member>
<member name="F:QuestPDF.Infrastructure.ImageCompressionQuality.VeryHigh">
<summary>
JPEG format with compression set to 90 out of 100
</summary>
</member>
<member name="F:QuestPDF.Infrastructure.ImageCompressionQuality.High">
<summary>
JPEG format with compression set to 75 out of 100
</summary>
</member>
<member name="F:QuestPDF.Infrastructure.ImageCompressionQuality.Medium">
<summary>
JPEG format with compression set to 50 out of 100
</summary>
</member>
<member name="F:QuestPDF.Infrastructure.ImageCompressionQuality.Low">
<summary>
JPEG format with compression set to 25 out of 100
</summary>
</member>
<member name="F:QuestPDF.Infrastructure.ImageCompressionQuality.VeryLow">
<summary>
JPEG format with compression set to 10 out of 100
</summary>
</member>
<member name="P:QuestPDF.Infrastructure.ImageGenerationSettings.ImageFormat">
<summary>
The file format used to encode the image(s).
</summary>
</member>
<member name="P:QuestPDF.Infrastructure.ImageGenerationSettings.ImageCompressionQuality">
<summary>
Encoding quality controls the trade-off between size and quality.
The default value is "high quality".
</summary>
</member>
<member name="P:QuestPDF.Infrastructure.ImageGenerationSettings.RasterDpi">
<summary>
The DPI (pixels-per-inch) at which the document will be rasterized. This parameter controls the resolution of produced images.
Default value is 144.
</summary>
</member>
<member name="M:QuestPDF.Infrastructure.MergedDocument.UseOriginalPageNumbers">
<summary>
Each document is considered as separate in terms of page numbering.
That means, all page number related APIs will return values based on original documents.
All documents will simply be merged together.
For example: let's suppose that two documents are merged, first with 2 pages and second with 3 pages.
The resulting document will have 5 pages, and page numbers will be: 1, 2, 1, 2, 3.
</summary>
</member>
<member name="M:QuestPDF.Infrastructure.MergedDocument.UseContinuousPageNumbers">
<summary>
Content from all documents will be merged together, and considered as one/single document.
That means, all page number related APIs will return continuous numbers.
For example: let's suppose that two documents are merged, first with 2 pages and second with 3 pages.
The resulting document will have 5 pages, and page numbers will be: 1, 2, 3, 4, 5.
</summary>
</member>
<member name="T:QuestPDF.Infrastructure.LicenseType">
<summary>
QuestPDF License and Pricing details webpage: http://www.questpdf.com/pricing.html
</summary>
</member>
<member name="F:QuestPDF.Infrastructure.LicenseType.Community">
<summary>
License link: https://www.questpdf.com/license-community.html
</summary>
</member>
<member name="F:QuestPDF.Infrastructure.LicenseType.Professional">
<summary>
License link: https://www.questpdf.com/license-commercial.html
</summary>
</member>
<member name="F:QuestPDF.Infrastructure.LicenseType.Enterprise">
<summary>
License link: https://www.questpdf.com/license-commercial.html
</summary>
</member>
<member name="F:QuestPDF.Infrastructure.Unit.Mill">
<summary>
1/1000th of inch
</summary>
</member>
<member name="P:QuestPDF.Settings.License">
<summary>
<para>Please kindly select license type that applies to your usage of the QuestPDF library.</para>
<para>For more details, please check the QuestPDF License and Pricing webpage: https://www.questpdf.com/pricing.html</para>
</summary>
</member>
<member name="P:QuestPDF.Settings.DocumentLayoutExceptionThreshold">
<summary>
This value represents the maximum number of pages that the library produces.
This is useful when layout constraints are too strong, e.g. one element does not fit in another.
In such cases, the library would produce document of infinite length, consuming all available resources.
To break the algorithm and save the environment, the library breaks the rendering process after reaching specified length of document.
If your content requires generating longer documents, please assign the most reasonable value.
</summary>
</member>
<member name="P:QuestPDF.Settings.EnableCaching">
<summary>
This flag generates additional document elements to cache layout calculation results.
In the vast majority of cases, this significantly improves performance, while slightly increasing memory consumption.
</summary>
<remarks>By default, this flag is enabled only when the debugger is NOT attached.</remarks>
</member>
<member name="P:QuestPDF.Settings.EnableDebugging">
<summary>
This flag generates additional document elements to improve layout debugging experience.
When the DocumentLayoutException is thrown, the library is able to provide additional execution context.
It includes layout calculation results and path to the problematic area.
</summary>
<remarks>By default, this flag is enabled only when the debugger IS attached.</remarks>
</member>
<member name="P:QuestPDF.Settings.CheckIfAllTextGlyphsAreAvailable">
<summary>
This flag enables checking the font glyph availability.
If your text contains glyphs that are not present in the specified font,
1) when this flag is enabled: the DocumentDrawingException is thrown. OR
2) when this flag is disabled: placeholder characters are visible in the produced PDF file.
Enabling this flag may slightly decrease document generation performance.
However, it provides hints that used fonts are not sufficient to produce correct results.
</summary>
<remarks>By default, this flag is enabled only when the debugger IS attached.</remarks>
</member>
</members>
</doc>

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,166 @@
<doc>
<assembly>
<name>SkiaSharp.HarfBuzz</name>
</assembly>
<members>
<member name="T:SkiaSharp.HarfBuzz.BlobExtensions">
<summary>Various extension methods to integrate SkiaSharp and a HarfBuzz <see cref="T:HarfBuzzSharp.Blob" />.</summary>
<remarks />
</member>
<member name="M:SkiaSharp.HarfBuzz.BlobExtensions.ToHarfBuzzBlob(SkiaSharp.SKStreamAsset)">
<param name="asset">The stream to convert into a <see cref="T:HarfBuzzSharp.Blob" />.</param>
<summary>Converts a seekable stream into a <see cref="T:HarfBuzzSharp.Blob" />.</summary>
<returns>Returns the new <see cref="T:HarfBuzzSharp.Blob" /> instance.</returns>
<remarks />
</member>
<member name="T:SkiaSharp.HarfBuzz.CanvasExtensions">
<summary>Various extension methods to integrate a SkiaSharp <see cref="T:SkiaSharp.SKCanvas" /> and HarfBuzz.</summary>
<remarks />
</member>
<member name="M:SkiaSharp.HarfBuzz.CanvasExtensions.DrawShapedText(SkiaSharp.SKCanvas,System.String,SkiaSharp.SKPoint,SkiaSharp.SKPaint)">
<param name="canvas">To be added.</param>
<param name="text">To be added.</param>
<param name="p">To be added.</param>
<param name="paint">To be added.</param>
<summary>To be added.</summary>
<remarks>To be added.</remarks>
</member>
<member name="M:SkiaSharp.HarfBuzz.CanvasExtensions.DrawShapedText(SkiaSharp.SKCanvas,SkiaSharp.HarfBuzz.SKShaper,System.String,SkiaSharp.SKPoint,SkiaSharp.SKPaint)">
<param name="canvas">To be added.</param>
<param name="shaper">To be added.</param>
<param name="text">To be added.</param>
<param name="p">To be added.</param>
<param name="paint">To be added.</param>
<summary>To be added.</summary>
<remarks>To be added.</remarks>
</member>
<member name="M:SkiaSharp.HarfBuzz.CanvasExtensions.DrawShapedText(SkiaSharp.SKCanvas,System.String,System.Single,System.Single,SkiaSharp.SKPaint)">
<param name="canvas">To be added.</param>
<param name="text">To be added.</param>
<param name="x">To be added.</param>
<param name="y">To be added.</param>
<param name="paint">To be added.</param>
<summary>To be added.</summary>
<remarks>To be added.</remarks>
</member>
<member name="M:SkiaSharp.HarfBuzz.CanvasExtensions.DrawShapedText(SkiaSharp.SKCanvas,SkiaSharp.HarfBuzz.SKShaper,System.String,System.Single,System.Single,SkiaSharp.SKPaint)">
<param name="canvas">The canvas to draw on.</param>
<param name="shaper">The text shaper to use when shaping the text.</param>
<param name="text">The text to draw.</param>
<param name="x">The x-coordinate of the origin of the text being drawn.</param>
<param name="y">The y-coordinate of the origin of the text being drawn.</param>
<param name="paint">The paint to use when drawing the text.</param>
<summary>Draws shaped text on the canvas at the specified coordinates.</summary>
<remarks />
</member>
<member name="T:SkiaSharp.HarfBuzz.FontExtensions">
<summary>Various extension methods to integrate SkiaSharp and a HarfBuzz <see cref="T:HarfBuzzSharp.Font" />.</summary>
<remarks />
</member>
<member name="M:SkiaSharp.HarfBuzz.FontExtensions.GetScale(HarfBuzzSharp.Font)">
<param name="font">The font to retrieve the scale.</param>
<summary>Retrieves the font scale.</summary>
<returns>Returns the font scale.</returns>
<remarks />
</member>
<member name="M:SkiaSharp.HarfBuzz.FontExtensions.SetScale(HarfBuzzSharp.Font,SkiaSharp.SKSizeI)">
<param name="font">The font to set the scale.</param>
<param name="scale">The scale to set.</param>
<summary>Sets the font scale.</summary>
<remarks />
</member>
<member name="T:SkiaSharp.HarfBuzz.SKShaper">
<summary>Encapsulates basic text shaping.</summary>
<remarks />
</member>
<member name="C:SkiaSharp.HarfBuzz.SKShaper(SkiaSharp.SKTypeface)">
<param name="typeface">The typeface to use for the text shaping.</param>
<summary>Creates a new <see cref="T:SkiaSharp.HarfBuzz.SKShaper" /> instance using the specified typeface.</summary>
<remarks />
</member>
<member name="M:SkiaSharp.HarfBuzz.SKShaper.Dispose">
<summary>Releases all resources used by this <see cref="T:SkiaSharp.HarfBuzz.SKShaper" />.</summary>
<remarks>Always dispose the object before you release your last reference to the <see cref="T:SkiaSharp.HarfBuzz.SKShaper" />. Otherwise, the resources it is using will not be freed until the garbage collector calls the finalizer.</remarks>
</member>
<member name="M:SkiaSharp.HarfBuzz.SKShaper.Shape(HarfBuzzSharp.Buffer,SkiaSharp.SKPaint)">
<param name="buffer">To be added.</param>
<param name="paint">To be added.</param>
<summary>To be added.</summary>
<returns>To be added.</returns>
<remarks>To be added.</remarks>
</member>
<member name="M:SkiaSharp.HarfBuzz.SKShaper.Shape(System.String,SkiaSharp.SKPaint)">
<param name="text">The text to shape.</param>
<param name="paint">The paint to use.</param>
<summary>Shapes the specified text using the properties from the paint.</summary>
<returns>Returns the results of the shaping operation.</returns>
<remarks />
</member>
<member name="M:SkiaSharp.HarfBuzz.SKShaper.Shape(HarfBuzzSharp.Buffer,System.Single,System.Single,SkiaSharp.SKPaint)">
<param name="buffer">To be added.</param>
<param name="xOffset">To be added.</param>
<param name="yOffset">To be added.</param>
<param name="paint">To be added.</param>
<summary>To be added.</summary>
<returns>To be added.</returns>
<remarks>To be added.</remarks>
</member>
<member name="M:SkiaSharp.HarfBuzz.SKShaper.Shape(System.String,System.Single,System.Single,SkiaSharp.SKPaint)">
<param name="text">The text to shape.</param>
<param name="xOffset">The x-offset to use when creating the shaping result.</param>
<param name="yOffset">The y-offset to use when creating the shaping result.</param>
<param name="paint">The paint to use.</param>
<summary>Shapes the specified text using the properties from the paint.</summary>
<returns>Returns the results of the shaping operation.</returns>
<remarks />
</member>
<member name="P:SkiaSharp.HarfBuzz.SKShaper.Typeface">
<summary>Gets the typeface used when creating the shaper.</summary>
<value />
<remarks />
</member>
<member name="T:SkiaSharp.HarfBuzz.SKShaper+Result">
<summary>Represents the result of a shaping operation.</summary>
<remarks />
</member>
<member name="C:SkiaSharp.HarfBuzz.SKShaper+Result">
<summary>Creates a new <see cref="T:SkiaSharp.HarfBuzz.SKShaper.Result" /> instance using empty values.</summary>
<remarks />
</member>
<member name="C:SkiaSharp.HarfBuzz.SKShaper+Result(System.UInt32[],System.UInt32[],SkiaSharp.SKPoint[])">
<param name="codepoints">The glyph Unicode code points.</param>
<param name="clusters">The glyph clusters.</param>
<param name="points">The glyph positions.</param>
<summary>Creates a new <see cref="T:SkiaSharp.HarfBuzz.SKShaper.Result" /> instance using the specified values.</summary>
<remarks />
</member>
<member name="C:SkiaSharp.HarfBuzz.SKShaper+Result(System.UInt32[],System.UInt32[],SkiaSharp.SKPoint[],System.Single)">
<param name="codepoints">To be added.</param>
<param name="clusters">To be added.</param>
<param name="points">To be added.</param>
<param name="width">To be added.</param>
<summary>To be added.</summary>
<remarks>To be added.</remarks>
</member>
<member name="P:SkiaSharp.HarfBuzz.SKShaper+Result.Clusters">
<summary>Gets the glyph clusters.</summary>
<value />
<remarks />
</member>
<member name="P:SkiaSharp.HarfBuzz.SKShaper+Result.Codepoints">
<summary>Gets the glyph Unicode code points.</summary>
<value />
<remarks />
</member>
<member name="P:SkiaSharp.HarfBuzz.SKShaper+Result.Points">
<summary>Gets the glyph positions.</summary>
<value />
<remarks />
</member>
<member name="P:SkiaSharp.HarfBuzz.SKShaper+Result.Width">
<summary>To be added.</summary>
<value>To be added.</value>
<remarks>To be added.</remarks>
</member>
</members>
</doc>

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

View File

@ -0,0 +1,38 @@
<?xml version="1.0" encoding="utf-8"?><doc>
<assembly>
<name>System.Buffers</name>
</assembly>
<members>
<member name="T:System.Buffers.ArrayPool`1">
<summary>Provides a resource pool that enables reusing instances of type <see cref="T[]"></see>.</summary>
<typeparam name="T">The type of the objects that are in the resource pool.</typeparam>
</member>
<member name="M:System.Buffers.ArrayPool`1.#ctor">
<summary>Initializes a new instance of the <see cref="T:System.Buffers.ArrayPool`1"></see> class.</summary>
</member>
<member name="M:System.Buffers.ArrayPool`1.Create">
<summary>Creates a new instance of the <see cref="T:System.Buffers.ArrayPool`1"></see> class.</summary>
<returns>A new instance of the <see cref="System.Buffers.ArrayPool`1"></see> class.</returns>
</member>
<member name="M:System.Buffers.ArrayPool`1.Create(System.Int32,System.Int32)">
<summary>Creates a new instance of the <see cref="T:System.Buffers.ArrayPool`1"></see> class using the specifed configuration.</summary>
<param name="maxArrayLength">The maximum length of an array instance that may be stored in the pool.</param>
<param name="maxArraysPerBucket">The maximum number of array instances that may be stored in each bucket in the pool. The pool groups arrays of similar lengths into buckets for faster access.</param>
<returns>A new instance of the <see cref="System.Buffers.ArrayPool`1"></see> class with the specified configuration.</returns>
</member>
<member name="M:System.Buffers.ArrayPool`1.Rent(System.Int32)">
<summary>Retrieves a buffer that is at least the requested length.</summary>
<param name="minimumLength">The minimum length of the array.</param>
<returns>An array of type <see cref="T[]"></see> that is at least <paramref name="minimumLength">minimumLength</paramref> in length.</returns>
</member>
<member name="M:System.Buffers.ArrayPool`1.Return(`0[],System.Boolean)">
<summary>Returns an array to the pool that was previously obtained using the <see cref="M:System.Buffers.ArrayPool`1.Rent(System.Int32)"></see> method on the same <see cref="T:System.Buffers.ArrayPool`1"></see> instance.</summary>
<param name="array">A buffer to return to the pool that was previously obtained using the <see cref="M:System.Buffers.ArrayPool`1.Rent(System.Int32)"></see> method.</param>
<param name="clearArray">Indicates whether the contents of the buffer should be cleared before reuse. If <paramref name="clearArray">clearArray</paramref> is set to true, and if the pool will store the buffer to enable subsequent reuse, the <see cref="M:System.Buffers.ArrayPool`1.Return(`0[],System.Boolean)"></see> method will clear the <paramref name="array">array</paramref> of its contents so that a subsequent caller using the <see cref="M:System.Buffers.ArrayPool`1.Rent(System.Int32)"></see> method will not see the content of the previous caller. If <paramref name="clearArray">clearArray</paramref> is set to false or if the pool will release the buffer, the array&amp;#39;s contents are left unchanged.</param>
</member>
<member name="P:System.Buffers.ArrayPool`1.Shared">
<summary>Gets a shared <see cref="T:System.Buffers.ArrayPool`1"></see> instance.</summary>
<returns>A shared <see cref="System.Buffers.ArrayPool`1"></see> instance.</returns>
</member>
</members>
</doc>

Binary file not shown.

View File

@ -0,0 +1,355 @@
<?xml version="1.0" encoding="utf-8"?><doc>
<assembly>
<name>System.Memory</name>
</assembly>
<members>
<member name="T:System.Span`1">
<typeparam name="T"></typeparam>
</member>
<member name="M:System.Span`1.#ctor(`0[])">
<param name="array"></param>
</member>
<member name="M:System.Span`1.#ctor(System.Void*,System.Int32)">
<param name="pointer"></param>
<param name="length"></param>
</member>
<member name="M:System.Span`1.#ctor(`0[],System.Int32)">
<param name="array"></param>
<param name="start"></param>
</member>
<member name="M:System.Span`1.#ctor(`0[],System.Int32,System.Int32)">
<param name="array"></param>
<param name="start"></param>
<param name="length"></param>
</member>
<member name="M:System.Span`1.Clear">
</member>
<member name="M:System.Span`1.CopyTo(System.Span{`0})">
<param name="destination"></param>
</member>
<member name="M:System.Span`1.DangerousCreate(System.Object,`0@,System.Int32)">
<param name="obj"></param>
<param name="objectData"></param>
<param name="length"></param>
<returns></returns>
</member>
<member name="M:System.Span`1.DangerousGetPinnableReference">
<returns></returns>
</member>
<member name="P:System.Span`1.Empty">
<returns></returns>
</member>
<member name="M:System.Span`1.Equals(System.Object)">
<param name="obj"></param>
<returns></returns>
</member>
<member name="M:System.Span`1.Fill(`0)">
<param name="value"></param>
</member>
<member name="M:System.Span`1.GetHashCode">
<returns></returns>
</member>
<member name="P:System.Span`1.IsEmpty">
<returns></returns>
</member>
<member name="P:System.Span`1.Item(System.Int32)">
<param name="index"></param>
<returns></returns>
</member>
<member name="P:System.Span`1.Length">
<returns></returns>
</member>
<member name="M:System.Span`1.op_Equality(System.Span{`0},System.Span{`0})">
<param name="left"></param>
<param name="right"></param>
<returns></returns>
</member>
<member name="M:System.Span`1.op_Implicit(System.ArraySegment{T})~System.Span{T}">
<param name="arraySegment"></param>
<returns></returns>
</member>
<member name="M:System.Span`1.op_Implicit(System.Span{T})~System.ReadOnlySpan{T}">
<param name="span"></param>
<returns></returns>
</member>
<member name="M:System.Span`1.op_Implicit(T[])~System.Span{T}">
<param name="array"></param>
<returns></returns>
</member>
<member name="M:System.Span`1.op_Inequality(System.Span{`0},System.Span{`0})">
<param name="left"></param>
<param name="right"></param>
<returns></returns>
</member>
<member name="M:System.Span`1.Slice(System.Int32)">
<param name="start"></param>
<returns></returns>
</member>
<member name="M:System.Span`1.Slice(System.Int32,System.Int32)">
<param name="start"></param>
<param name="length"></param>
<returns></returns>
</member>
<member name="M:System.Span`1.ToArray">
<returns></returns>
</member>
<member name="M:System.Span`1.TryCopyTo(System.Span{`0})">
<param name="destination"></param>
<returns></returns>
</member>
<member name="T:System.SpanExtensions">
</member>
<member name="M:System.SpanExtensions.AsBytes``1(System.ReadOnlySpan{``0})">
<param name="source"></param>
<typeparam name="T"></typeparam>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.AsBytes``1(System.Span{``0})">
<param name="source"></param>
<typeparam name="T"></typeparam>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.AsSpan(System.String)">
<param name="text"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.AsSpan``1(System.ArraySegment{``0})">
<param name="arraySegment"></param>
<typeparam name="T"></typeparam>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.AsSpan``1(``0[])">
<param name="array"></param>
<typeparam name="T"></typeparam>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.CopyTo``1(``0[],System.Span{``0})">
<param name="array"></param>
<param name="destination"></param>
<typeparam name="T"></typeparam>
</member>
<member name="M:System.SpanExtensions.IndexOf(System.Span{System.Byte},System.ReadOnlySpan{System.Byte})">
<param name="span"></param>
<param name="value"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.IndexOf(System.Span{System.Byte},System.Byte)">
<param name="span"></param>
<param name="value"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.IndexOf(System.ReadOnlySpan{System.Byte},System.Byte)">
<param name="span"></param>
<param name="value"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.IndexOf(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte})">
<param name="span"></param>
<param name="value"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.IndexOf``1(System.ReadOnlySpan{``0},System.ReadOnlySpan{``0})">
<param name="span"></param>
<param name="value"></param>
<typeparam name="T"></typeparam>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.IndexOf``1(System.ReadOnlySpan{``0},``0)">
<param name="span"></param>
<param name="value"></param>
<typeparam name="T"></typeparam>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.IndexOf``1(System.Span{``0},System.ReadOnlySpan{``0})">
<param name="span"></param>
<param name="value"></param>
<typeparam name="T"></typeparam>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.IndexOf``1(System.Span{``0},``0)">
<param name="span"></param>
<param name="value"></param>
<typeparam name="T"></typeparam>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.IndexOfAny(System.ReadOnlySpan{System.Byte},System.Byte,System.Byte,System.Byte)">
<param name="span"></param>
<param name="value0"></param>
<param name="value1"></param>
<param name="value2"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.IndexOfAny(System.Span{System.Byte},System.Byte,System.Byte,System.Byte)">
<param name="span"></param>
<param name="value0"></param>
<param name="value1"></param>
<param name="value2"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.IndexOfAny(System.Span{System.Byte},System.Byte,System.Byte)">
<param name="span"></param>
<param name="value0"></param>
<param name="value1"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.IndexOfAny(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte})">
<param name="span"></param>
<param name="values"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.IndexOfAny(System.Span{System.Byte},System.ReadOnlySpan{System.Byte})">
<param name="span"></param>
<param name="values"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.IndexOfAny(System.ReadOnlySpan{System.Byte},System.Byte,System.Byte)">
<param name="span"></param>
<param name="value0"></param>
<param name="value1"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.NonPortableCast``2(System.ReadOnlySpan{``0})">
<param name="source"></param>
<typeparam name="TFrom"></typeparam>
<typeparam name="TTo"></typeparam>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.NonPortableCast``2(System.Span{``0})">
<param name="source"></param>
<typeparam name="TFrom"></typeparam>
<typeparam name="TTo"></typeparam>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.SequenceEqual(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte})">
<param name="first"></param>
<param name="second"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.SequenceEqual(System.Span{System.Byte},System.ReadOnlySpan{System.Byte})">
<param name="first"></param>
<param name="second"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.SequenceEqual``1(System.ReadOnlySpan{``0},System.ReadOnlySpan{``0})">
<param name="first"></param>
<param name="second"></param>
<typeparam name="T"></typeparam>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.SequenceEqual``1(System.Span{``0},System.ReadOnlySpan{``0})">
<param name="first"></param>
<param name="second"></param>
<typeparam name="T"></typeparam>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.StartsWith(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte})">
<param name="span"></param>
<param name="value"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.StartsWith(System.Span{System.Byte},System.ReadOnlySpan{System.Byte})">
<param name="span"></param>
<param name="value"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.StartsWith``1(System.ReadOnlySpan{``0},System.ReadOnlySpan{``0})">
<param name="span"></param>
<param name="value"></param>
<typeparam name="T"></typeparam>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.StartsWith``1(System.Span{``0},System.ReadOnlySpan{``0})">
<param name="span"></param>
<param name="value"></param>
<typeparam name="T"></typeparam>
<returns></returns>
</member>
<member name="T:System.ReadOnlySpan`1">
<typeparam name="T"></typeparam>
</member>
<member name="M:System.ReadOnlySpan`1.#ctor(`0[])">
<param name="array"></param>
</member>
<member name="M:System.ReadOnlySpan`1.#ctor(System.Void*,System.Int32)">
<param name="pointer"></param>
<param name="length"></param>
</member>
<member name="M:System.ReadOnlySpan`1.#ctor(`0[],System.Int32)">
<param name="array"></param>
<param name="start"></param>
</member>
<member name="M:System.ReadOnlySpan`1.#ctor(`0[],System.Int32,System.Int32)">
<param name="array"></param>
<param name="start"></param>
<param name="length"></param>
</member>
<member name="M:System.ReadOnlySpan`1.CopyTo(System.Span{`0})">
<param name="destination"></param>
</member>
<member name="M:System.ReadOnlySpan`1.DangerousCreate(System.Object,`0@,System.Int32)">
<param name="obj"></param>
<param name="objectData"></param>
<param name="length"></param>
<returns></returns>
</member>
<member name="M:System.ReadOnlySpan`1.DangerousGetPinnableReference">
<returns></returns>
</member>
<member name="P:System.ReadOnlySpan`1.Empty">
<returns></returns>
</member>
<member name="M:System.ReadOnlySpan`1.Equals(System.Object)">
<param name="obj"></param>
<returns></returns>
</member>
<member name="M:System.ReadOnlySpan`1.GetHashCode">
<returns></returns>
</member>
<member name="P:System.ReadOnlySpan`1.IsEmpty">
<returns></returns>
</member>
<member name="P:System.ReadOnlySpan`1.Item(System.Int32)">
<param name="index"></param>
<returns></returns>
</member>
<member name="P:System.ReadOnlySpan`1.Length">
<returns></returns>
</member>
<member name="M:System.ReadOnlySpan`1.op_Equality(System.ReadOnlySpan{`0},System.ReadOnlySpan{`0})">
<param name="left"></param>
<param name="right"></param>
<returns></returns>
</member>
<member name="M:System.ReadOnlySpan`1.op_Implicit(System.ArraySegment{T})~System.ReadOnlySpan{T}">
<param name="arraySegment"></param>
<returns></returns>
</member>
<member name="M:System.ReadOnlySpan`1.op_Implicit(T[])~System.ReadOnlySpan{T}">
<param name="array"></param>
<returns></returns>
</member>
<member name="M:System.ReadOnlySpan`1.op_Inequality(System.ReadOnlySpan{`0},System.ReadOnlySpan{`0})">
<param name="left"></param>
<param name="right"></param>
<returns></returns>
</member>
<member name="M:System.ReadOnlySpan`1.Slice(System.Int32)">
<param name="start"></param>
<returns></returns>
</member>
<member name="M:System.ReadOnlySpan`1.Slice(System.Int32,System.Int32)">
<param name="start"></param>
<param name="length"></param>
<returns></returns>
</member>
<member name="M:System.ReadOnlySpan`1.ToArray">
<returns></returns>
</member>
<member name="M:System.ReadOnlySpan`1.TryCopyTo(System.Span{`0})">
<param name="destination"></param>
<returns></returns>
</member>
</members>
</doc>

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,200 @@
<?xml version="1.0" encoding="utf-8"?><doc>
<assembly>
<name>System.Runtime.CompilerServices.Unsafe</name>
</assembly>
<members>
<member name="T:System.Runtime.CompilerServices.Unsafe">
<summary>Contains generic, low-level functionality for manipulating pointers.</summary>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.Add``1(``0@,System.Int32)">
<summary>Adds an element offset to the given reference.</summary>
<param name="source">The reference to add the offset to.</param>
<param name="elementOffset">The offset to add.</param>
<typeparam name="T">The type of reference.</typeparam>
<returns>A new reference that reflects the addition of offset to pointer.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.Add``1(``0@,System.IntPtr)">
<summary>Adds an element offset to the given reference.</summary>
<param name="source">The reference to add the offset to.</param>
<param name="elementOffset">The offset to add.</param>
<typeparam name="T">The type of reference.</typeparam>
<returns>A new reference that reflects the addition of offset to pointer.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.AddByteOffset``1(``0@,System.IntPtr)">
<summary>Adds a byte offset to the given reference.</summary>
<param name="source">The reference to add the offset to.</param>
<param name="byteOffset">The offset to add.</param>
<typeparam name="T">The type of reference.</typeparam>
<returns>A new reference that reflects the addition of byte offset to pointer.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.AreSame``1(``0@,``0@)">
<summary>Determines whether the specified references point to the same location.</summary>
<param name="left">The first reference to compare.</param>
<param name="right">The second reference to compare.</param>
<typeparam name="T">The type of reference.</typeparam>
<returns>true if <paramref name="left">left</paramref> and <paramref name="right">right</paramref> point to the same location; otherwise, false.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.As``1(System.Object)">
<summary>Casts the given object to the specified type.</summary>
<param name="o">The object to cast.</param>
<typeparam name="T">The type which the object will be cast to.</typeparam>
<returns>The original object, casted to the given type.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.As``2(``0@)">
<summary>Reinterprets the given reference as a reference to a value of type <typeparamref name="TTo">TTo</typeparamref>.</summary>
<param name="source">The reference to reinterpret.</param>
<typeparam name="TFrom">The type of reference to reinterpret..</typeparam>
<typeparam name="TTo">The desired type of the reference.</typeparam>
<returns>A reference to a value of type <typeparamref name="TTo">TTo</typeparamref>.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.AsPointer``1(``0@)">
<summary>Returns a pointer to the given by-ref parameter.</summary>
<param name="value">The object whose pointer is obtained.</param>
<typeparam name="T">The type of object.</typeparam>
<returns>A pointer to the given value.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.AsRef``1(System.Void*)">
<summary>Reinterprets the given location as a reference to a value of type <typeparamref name="T">T</typeparamref>.</summary>
<param name="source">The location of the value to reference.</param>
<typeparam name="T">The type of the interpreted location.</typeparam>
<returns>A reference to a value of type <typeparamref name="T">T</typeparamref>.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.ByteOffset``1(``0@,``0@)">
<summary>Determines the byte offset from origin to target from the given references.</summary>
<param name="origin">The reference to origin.</param>
<param name="target">The reference to target.</param>
<typeparam name="T">The type of reference.</typeparam>
<returns>Byte offset from origin to target i.e. <paramref name="target">target</paramref> - <paramref name="origin">origin</paramref>.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.Copy``1(System.Void*,``0@)">
<summary>Copies a value of type <typeparamref name="T">T</typeparamref> to the given location.</summary>
<param name="destination">The location to copy to.</param>
<param name="source">A reference to the value to copy.</param>
<typeparam name="T">The type of value to copy.</typeparam>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.Copy``1(``0@,System.Void*)">
<summary>Copies a value of type <typeparamref name="T">T</typeparamref> to the given location.</summary>
<param name="destination">The location to copy to.</param>
<param name="source">A pointer to the value to copy.</param>
<typeparam name="T">The type of value to copy.</typeparam>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.CopyBlock(System.Byte@,System.Byte@,System.UInt32)">
<summary>Copies bytes from the source address to the destination address.</summary>
<param name="destination">The destination address to copy to.</param>
<param name="source">The source address to copy from.</param>
<param name="byteCount">The number of bytes to copy.</param>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.CopyBlock(System.Void*,System.Void*,System.UInt32)">
<summary>Copies bytes from the source address to the destination address.</summary>
<param name="destination">The destination address to copy to.</param>
<param name="source">The source address to copy from.</param>
<param name="byteCount">The number of bytes to copy.</param>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.CopyBlockUnaligned(System.Void*,System.Void*,System.UInt32)">
<summary>Copies bytes from the source address to the destination address
without assuming architecture dependent alignment of the addresses.</summary>
<param name="destination">The destination address to copy to.</param>
<param name="source">The source address to copy from.</param>
<param name="byteCount">The number of bytes to copy.</param>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.CopyBlockUnaligned(System.Byte@,System.Byte@,System.UInt32)">
<summary>Copies bytes from the source address to the destination address
without assuming architecture dependent alignment of the addresses.</summary>
<param name="destination">The destination address to copy to.</param>
<param name="source">The source address to copy from.</param>
<param name="byteCount">The number of bytes to copy.</param>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.InitBlock(System.Byte@,System.Byte,System.UInt32)">
<summary>Initializes a block of memory at the given location with a given initial value.</summary>
<param name="startAddress">The address of the start of the memory block to initialize.</param>
<param name="value">The value to initialize the block to.</param>
<param name="byteCount">The number of bytes to initialize.</param>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.InitBlock(System.Void*,System.Byte,System.UInt32)">
<summary>Initializes a block of memory at the given location with a given initial value.</summary>
<param name="startAddress">The address of the start of the memory block to initialize.</param>
<param name="value">The value to initialize the block to.</param>
<param name="byteCount">The number of bytes to initialize.</param>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.InitBlockUnaligned(System.Byte@,System.Byte,System.UInt32)">
<summary>Initializes a block of memory at the given location with a given initial value
without assuming architecture dependent alignment of the address.</summary>
<param name="startAddress">The address of the start of the memory block to initialize.</param>
<param name="value">The value to initialize the block to.</param>
<param name="byteCount">The number of bytes to initialize.</param>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.InitBlockUnaligned(System.Void*,System.Byte,System.UInt32)">
<summary>Initializes a block of memory at the given location with a given initial value
without assuming architecture dependent alignment of the address.</summary>
<param name="startAddress">The address of the start of the memory block to initialize.</param>
<param name="value">The value to initialize the block to.</param>
<param name="byteCount">The number of bytes to initialize.</param>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.Read``1(System.Void*)">
<summary>Reads a value of type <typeparamref name="T">T</typeparamref> from the given location.</summary>
<param name="source">The location to read from.</param>
<typeparam name="T">The type to read.</typeparam>
<returns>An object of type <typeparamref name="T">T</typeparamref> read from the given location.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.ReadUnaligned``1(System.Byte@)">
<summary>Reads a value of type <typeparamref name="T">T</typeparamref> from the given location
without assuming architecture dependent alignment of the addresses.</summary>
<param name="source">The location to read from.</param>
<typeparam name="T">The type to read.</typeparam>
<returns>An object of type <typeparamref name="T">T</typeparamref> read from the given location.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.ReadUnaligned``1(System.Void*)">
<summary>Reads a value of type <typeparamref name="T">T</typeparamref> from the given location
without assuming architecture dependent alignment of the addresses.</summary>
<param name="source">The location to read from.</param>
<typeparam name="T">The type to read.</typeparam>
<returns>An object of type <typeparamref name="T">T</typeparamref> read from the given location.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.SizeOf``1">
<summary>Returns the size of an object of the given type parameter.</summary>
<typeparam name="T">The type of object whose size is retrieved.</typeparam>
<returns>The size of an object of type <typeparamref name="T">T</typeparamref>.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.Subtract``1(``0@,System.Int32)">
<summary>Subtracts an element offset from the given reference.</summary>
<param name="source">The reference to subtract the offset from.</param>
<param name="elementOffset">The offset to subtract.</param>
<typeparam name="T">The type of reference.</typeparam>
<returns>A new reference that reflects the subraction of offset from pointer.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.Subtract``1(``0@,System.IntPtr)">
<summary>Subtracts an element offset from the given reference.</summary>
<param name="source">The reference to subtract the offset from.</param>
<param name="elementOffset">The offset to subtract.</param>
<typeparam name="T">The type of reference.</typeparam>
<returns>A new reference that reflects the subraction of offset from pointer.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.SubtractByteOffset``1(``0@,System.IntPtr)">
<summary>Subtracts a byte offset from the given reference.</summary>
<param name="source">The reference to subtract the offset from.</param>
<param name="byteOffset"></param>
<typeparam name="T">The type of reference.</typeparam>
<returns>A new reference that reflects the subraction of byte offset from pointer.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.Write``1(System.Void*,``0)">
<summary>Writes a value of type <typeparamref name="T">T</typeparamref> to the given location.</summary>
<param name="destination">The location to write to.</param>
<param name="value">The value to write.</param>
<typeparam name="T">The type of value to write.</typeparam>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.WriteUnaligned``1(System.Byte@,``0)">
<summary>Writes a value of type <typeparamref name="T">T</typeparamref> to the given location
without assuming architecture dependent alignment of the addresses.</summary>
<param name="destination">The location to write to.</param>
<param name="value">The value to write.</param>
<typeparam name="T">The type of value to write.</typeparam>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.WriteUnaligned``1(System.Void*,``0)">
<summary>Writes a value of type <typeparamref name="T">T</typeparamref> to the given location
without assuming architecture dependent alignment of the addresses.</summary>
<param name="destination">The location to write to.</param>
<param name="value">The value to write.</param>
<typeparam name="T">The type of value to write.</typeparam>
</member>
</members>
</doc>

View File

Before

Width:  |  Height:  |  Size: 59 KiB

After

Width:  |  Height:  |  Size: 59 KiB

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,4 @@
// <autogenerated />
using System;
using System.Reflection;
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.8", FrameworkDisplayName = ".NET Framework 4.8")]

View File

@ -0,0 +1 @@
b48526b1af3665af5f9e95da7ac1a7c4e1ac25ca

View File

@ -0,0 +1,95 @@
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/bin/Debug/libHarfBuzzSharp.dylib
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/bin/Debug/x86/libHarfBuzzSharp.dll
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/bin/Debug/x64/libHarfBuzzSharp.dll
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/bin/Debug/arm64/libHarfBuzzSharp.dll
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/bin/Debug/libSkiaSharp.dylib
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/bin/Debug/x86/libSkiaSharp.dll
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/bin/Debug/x64/libSkiaSharp.dll
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/bin/Debug/arm64/libSkiaSharp.dll
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/bin/Debug/BenchtopPDF.exe
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/bin/Debug/BenchtopPDF.pdb
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/bin/Debug/HarfBuzzSharp.dll
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/bin/Debug/QuestPDF.dll
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/bin/Debug/SkiaSharp.dll
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/bin/Debug/SkiaSharp.HarfBuzz.dll
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/bin/Debug/System.Buffers.dll
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/bin/Debug/System.Memory.dll
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/bin/Debug/System.Numerics.Vectors.dll
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/bin/Debug/System.Runtime.CompilerServices.Unsafe.dll
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/bin/Debug/HarfBuzzSharp.pdb
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/bin/Debug/HarfBuzzSharp.xml
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/bin/Debug/QuestPDF.xml
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/bin/Debug/SkiaSharp.pdb
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/bin/Debug/SkiaSharp.xml
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/bin/Debug/SkiaSharp.HarfBuzz.pdb
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/bin/Debug/SkiaSharp.HarfBuzz.xml
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/bin/Debug/System.Buffers.xml
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/bin/Debug/System.Memory.xml
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/bin/Debug/System.Numerics.Vectors.xml
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/bin/Debug/System.Runtime.CompilerServices.Unsafe.xml
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/obj/Debug/BenchtopPDF.csproj.AssemblyReference.cache
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/obj/Debug/BenchtopPDF.csproj.CoreCompileInputs.cache
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/obj/Debug/BenchtopPDF.csproj.CopyComplete
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/obj/Debug/BenchtopPDF.exe
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/obj/Debug/BenchtopPDF.pdb
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/bin/Debug/x64/libSkiaSharp.so
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/bin/Debug/arm/libSkiaSharp.so
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/bin/Debug/arm64/libSkiaSharp.so
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/bin/Debug/musl-x64/libSkiaSharp.so
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/bin/Debug/BenchtopPDF.exe.config
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/obj/Debug/BenchtopPDF.exe.config
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/bin/Debug/x64/libHarfBuzzSharp.so
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/bin/Debug/arm/libHarfBuzzSharp.so
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/bin/Debug/arm64/libHarfBuzzSharp.so
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/bin/Debug/musl-x64/libHarfBuzzSharp.so
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/bin/Debug/BenchTopLogo.jpg
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/bin/Debug/Newtonsoft.Json.dll
/home/tyrel/RiderProjects/BenchtopPDF/BenchtopPDF/bin/Debug/Newtonsoft.Json.xml
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/bin/Debug/libSkiaSharp.dylib
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/bin/Debug/x86/libSkiaSharp.dll
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/bin/Debug/x64/libSkiaSharp.dll
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/bin/Debug/arm64/libSkiaSharp.dll
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/bin/Debug/x64/libSkiaSharp.so
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/bin/Debug/arm/libSkiaSharp.so
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/bin/Debug/arm64/libSkiaSharp.so
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/bin/Debug/musl-x64/libSkiaSharp.so
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/bin/Debug/libHarfBuzzSharp.dylib
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/bin/Debug/x86/libHarfBuzzSharp.dll
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/bin/Debug/x64/libHarfBuzzSharp.dll
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/bin/Debug/arm64/libHarfBuzzSharp.dll
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/bin/Debug/x64/libHarfBuzzSharp.so
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/bin/Debug/arm/libHarfBuzzSharp.so
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/bin/Debug/arm64/libHarfBuzzSharp.so
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/bin/Debug/musl-x64/libHarfBuzzSharp.so
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/bin/Debug/BenchtopPDF.exe.config
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/bin/Debug/BenchtopPDF.exe
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/bin/Debug/BenchtopPDF.pdb
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/bin/Debug/HarfBuzzSharp.dll
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/bin/Debug/Newtonsoft.Json.dll
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/bin/Debug/QuestPDF.dll
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/bin/Debug/SkiaSharp.dll
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/bin/Debug/SkiaSharp.HarfBuzz.dll
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/bin/Debug/System.Buffers.dll
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/bin/Debug/System.Memory.dll
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/bin/Debug/System.Numerics.Vectors.dll
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/bin/Debug/System.Runtime.CompilerServices.Unsafe.dll
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/bin/Debug/HarfBuzzSharp.pdb
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/bin/Debug/HarfBuzzSharp.xml
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/bin/Debug/Newtonsoft.Json.xml
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/bin/Debug/QuestPDF.xml
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/bin/Debug/SkiaSharp.pdb
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/bin/Debug/SkiaSharp.xml
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/bin/Debug/SkiaSharp.HarfBuzz.pdb
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/bin/Debug/SkiaSharp.HarfBuzz.xml
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/bin/Debug/System.Buffers.xml
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/bin/Debug/System.Memory.xml
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/bin/Debug/System.Numerics.Vectors.xml
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/bin/Debug/System.Runtime.CompilerServices.Unsafe.xml
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/obj/Debug/BenchtopPDF.csproj.AssemblyReference.cache
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/obj/Debug/BenchtopPDF.exe.config
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/obj/Debug/BenchtopPDF.csproj.CoreCompileInputs.cache
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/obj/Debug/BenchtopPDF.csproj.CopyComplete
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/obj/Debug/BenchtopPDF.exe
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/obj/Debug/BenchtopPDF.pdb
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/bin/Debug/BenchTopLogo.png
/home/tyrel/code/tyrel.dev/benchtopdevices/BenchtopPDF/BenchtopPDF/bin/Debug/a2lp_cert.png

Binary file not shown.

View File

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="System.Memory" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.1.2" newVersion="4.0.1.2" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>

Binary file not shown.

View File

@ -1,18 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="HarfBuzzSharp" version="2.8.2.4-preview.89" targetFramework="net48" />
<package id="HarfBuzzSharp.NativeAssets.Linux" version="2.8.2.4-preview.89" targetFramework="net48" />
<package id="HarfBuzzSharp.NativeAssets.Win32" version="2.8.2.4-preview.89" targetFramework="net48" />
<package id="HarfBuzzSharp.NativeAssets.macOS" version="2.8.2.4-preview.89" targetFramework="net48" />
<package id="Newtonsoft.Json" version="13.0.3" targetFramework="net48" />
<package id="QuestPDF" version="2023.6.1" targetFramework="net48" />
<package id="SkiaSharp" version="2.88.4-preview.89" targetFramework="net48" />
<package id="SkiaSharp.HarfBuzz" version="2.88.3" targetFramework="net48" />
<package id="SkiaSharp.NativeAssets.Linux.NoDependencies" version="2.88.4-preview.89" targetFramework="net48" />
<package id="SkiaSharp.NativeAssets.Win32" version="2.88.4-preview.89" targetFramework="net48" />
<package id="SkiaSharp.NativeAssets.macOS" version="2.88.4-preview.89" targetFramework="net48" />
<package id="System.Buffers" version="4.5.1" targetFramework="net48" />
<package id="System.Memory" version="4.5.5" targetFramework="net48" />
<package id="System.Numerics.Vectors" version="4.5.0" targetFramework="net48" />
<package id="System.Runtime.CompilerServices.Unsafe" version="4.5.3" targetFramework="net48" />
</packages>

Binary file not shown.

View File

@ -0,0 +1,19 @@
Copyright (c) 2015-2016 Xamarin, Inc.
Copyright (c) 2017-2018 Microsoft Corporation.
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,19 @@
Copyright (c) 2015-2016 Xamarin, Inc.
Copyright (c) 2017-2018 Microsoft Corporation.
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,72 @@
<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<!-- if ShouldIncludeNativeHarfBuzzSharp == False then don't include the native libHarfBuzzSharp -->
<PropertyGroup>
<ShouldIncludeNativeHarfBuzzSharp Condition=" '$(ShouldIncludeNativeHarfBuzzSharp)' == '' ">True</ShouldIncludeNativeHarfBuzzSharp>
<_AppIsFullMac Condition=" '$(XamarinMacFrameworkRoot)' != '' and '$(TargetFrameworkIdentifier)' != 'Xamarin.Mac' and '$(UseXamMacFullFramework)' == 'True' and ('$(OutputType)' == 'Exe' or '$(IsAppExtension)' == 'True') ">True</_AppIsFullMac>
</PropertyGroup>
<!-- handle the case where this is a Xamarin.Mac Full app/extension -->
<ItemGroup Condition=" '$(ShouldIncludeNativeHarfBuzzSharp)' != 'False' and '$(_AppIsFullMac)' == 'True' ">
<NativeReference Include="$(MSBuildThisFileDirectory)..\..\runtimes\osx\native\libHarfBuzzSharp*.dylib">
<Kind>Dynamic</Kind>
<Visible>False</Visible>
</NativeReference>
</ItemGroup>
<!-- copy the native files to the output directory -->
<ItemGroup Condition=" '$(ShouldIncludeNativeHarfBuzzSharp)' != 'False' and '$(_AppIsFullMac)' != 'True' ">
<!-- Windows -->
<_NativeHarfBuzzSharpFile Include="$(MSBuildThisFileDirectory)..\..\runtimes\win-x86\native\libHarfBuzzSharp*.dll">
<Dir>x86\</Dir>
</_NativeHarfBuzzSharpFile>
<_NativeHarfBuzzSharpFile Include="$(MSBuildThisFileDirectory)..\..\runtimes\win-x64\native\libHarfBuzzSharp*.dll">
<Dir>x64\</Dir>
</_NativeHarfBuzzSharpFile>
<_NativeHarfBuzzSharpFile Include="$(MSBuildThisFileDirectory)..\..\runtimes\win-arm64\native\libHarfBuzzSharp*.dll">
<Dir>arm64\</Dir>
</_NativeHarfBuzzSharpFile>
<!-- Linux -->
<_NativeHarfBuzzSharpFile Include="$(MSBuildThisFileDirectory)..\..\runtimes\linux-x86\native\libHarfBuzzSharp*.so">
<Dir>x86\</Dir>
</_NativeHarfBuzzSharpFile>
<_NativeHarfBuzzSharpFile Include="$(MSBuildThisFileDirectory)..\..\runtimes\linux-x64\native\libHarfBuzzSharp*.so">
<Dir>x64\</Dir>
</_NativeHarfBuzzSharpFile>
<_NativeHarfBuzzSharpFile Include="$(MSBuildThisFileDirectory)..\..\runtimes\linux-arm\native\libHarfBuzzSharp*.so">
<Dir>arm\</Dir>
</_NativeHarfBuzzSharpFile>
<_NativeHarfBuzzSharpFile Include="$(MSBuildThisFileDirectory)..\..\runtimes\linux-arm64\native\libHarfBuzzSharp*.so">
<Dir>arm64\</Dir>
</_NativeHarfBuzzSharpFile>
<!-- Linux: Musl -->
<_NativeHarfBuzzSharpFile Include="$(MSBuildThisFileDirectory)..\..\runtimes\linux-musl-x86\native\libHarfBuzzSharp*.so">
<Dir>musl-x86\</Dir>
</_NativeHarfBuzzSharpFile>
<_NativeHarfBuzzSharpFile Include="$(MSBuildThisFileDirectory)..\..\runtimes\linux-musl-x64\native\libHarfBuzzSharp*.so">
<Dir>musl-x64\</Dir>
</_NativeHarfBuzzSharpFile>
<_NativeHarfBuzzSharpFile Include="$(MSBuildThisFileDirectory)..\..\runtimes\linux-musl-arm\native\libHarfBuzzSharp*.so">
<Dir>musl-arm\</Dir>
</_NativeHarfBuzzSharpFile>
<_NativeHarfBuzzSharpFile Include="$(MSBuildThisFileDirectory)..\..\runtimes\linux-musl-arm64\native\libHarfBuzzSharp*.so">
<Dir>musl-arm64\</Dir>
</_NativeHarfBuzzSharpFile>
<!-- macOS -->
<_NativeHarfBuzzSharpFile Include="$(MSBuildThisFileDirectory)..\..\runtimes\osx\native\libHarfBuzzSharp*.dylib" />
<!-- include everything -->
<Content Include="@(_NativeHarfBuzzSharpFile)">
<Link>%(Dir)%(Filename)%(Extension)</Link>
<Visible>False</Visible>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
</ItemGroup>
</Project>

View File

@ -0,0 +1,19 @@
Copyright (c) 2015-2016 Xamarin, Inc.
Copyright (c) 2017-2018 Microsoft Corporation.
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,72 @@
<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<!-- if ShouldIncludeNativeHarfBuzzSharp == False then don't include the native libHarfBuzzSharp -->
<PropertyGroup>
<ShouldIncludeNativeHarfBuzzSharp Condition=" '$(ShouldIncludeNativeHarfBuzzSharp)' == '' ">True</ShouldIncludeNativeHarfBuzzSharp>
<_AppIsFullMac Condition=" '$(XamarinMacFrameworkRoot)' != '' and '$(TargetFrameworkIdentifier)' != 'Xamarin.Mac' and '$(UseXamMacFullFramework)' == 'True' and ('$(OutputType)' == 'Exe' or '$(IsAppExtension)' == 'True') ">True</_AppIsFullMac>
</PropertyGroup>
<!-- handle the case where this is a Xamarin.Mac Full app/extension -->
<ItemGroup Condition=" '$(ShouldIncludeNativeHarfBuzzSharp)' != 'False' and '$(_AppIsFullMac)' == 'True' ">
<NativeReference Include="$(MSBuildThisFileDirectory)..\..\runtimes\osx\native\libHarfBuzzSharp*.dylib">
<Kind>Dynamic</Kind>
<Visible>False</Visible>
</NativeReference>
</ItemGroup>
<!-- copy the native files to the output directory -->
<ItemGroup Condition=" '$(ShouldIncludeNativeHarfBuzzSharp)' != 'False' and '$(_AppIsFullMac)' != 'True' ">
<!-- Windows -->
<_NativeHarfBuzzSharpFile Include="$(MSBuildThisFileDirectory)..\..\runtimes\win-x86\native\libHarfBuzzSharp*.dll">
<Dir>x86\</Dir>
</_NativeHarfBuzzSharpFile>
<_NativeHarfBuzzSharpFile Include="$(MSBuildThisFileDirectory)..\..\runtimes\win-x64\native\libHarfBuzzSharp*.dll">
<Dir>x64\</Dir>
</_NativeHarfBuzzSharpFile>
<_NativeHarfBuzzSharpFile Include="$(MSBuildThisFileDirectory)..\..\runtimes\win-arm64\native\libHarfBuzzSharp*.dll">
<Dir>arm64\</Dir>
</_NativeHarfBuzzSharpFile>
<!-- Linux -->
<_NativeHarfBuzzSharpFile Include="$(MSBuildThisFileDirectory)..\..\runtimes\linux-x86\native\libHarfBuzzSharp*.so">
<Dir>x86\</Dir>
</_NativeHarfBuzzSharpFile>
<_NativeHarfBuzzSharpFile Include="$(MSBuildThisFileDirectory)..\..\runtimes\linux-x64\native\libHarfBuzzSharp*.so">
<Dir>x64\</Dir>
</_NativeHarfBuzzSharpFile>
<_NativeHarfBuzzSharpFile Include="$(MSBuildThisFileDirectory)..\..\runtimes\linux-arm\native\libHarfBuzzSharp*.so">
<Dir>arm\</Dir>
</_NativeHarfBuzzSharpFile>
<_NativeHarfBuzzSharpFile Include="$(MSBuildThisFileDirectory)..\..\runtimes\linux-arm64\native\libHarfBuzzSharp*.so">
<Dir>arm64\</Dir>
</_NativeHarfBuzzSharpFile>
<!-- Linux: Musl -->
<_NativeHarfBuzzSharpFile Include="$(MSBuildThisFileDirectory)..\..\runtimes\linux-musl-x86\native\libHarfBuzzSharp*.so">
<Dir>musl-x86\</Dir>
</_NativeHarfBuzzSharpFile>
<_NativeHarfBuzzSharpFile Include="$(MSBuildThisFileDirectory)..\..\runtimes\linux-musl-x64\native\libHarfBuzzSharp*.so">
<Dir>musl-x64\</Dir>
</_NativeHarfBuzzSharpFile>
<_NativeHarfBuzzSharpFile Include="$(MSBuildThisFileDirectory)..\..\runtimes\linux-musl-arm\native\libHarfBuzzSharp*.so">
<Dir>musl-arm\</Dir>
</_NativeHarfBuzzSharpFile>
<_NativeHarfBuzzSharpFile Include="$(MSBuildThisFileDirectory)..\..\runtimes\linux-musl-arm64\native\libHarfBuzzSharp*.so">
<Dir>musl-arm64\</Dir>
</_NativeHarfBuzzSharpFile>
<!-- macOS -->
<_NativeHarfBuzzSharpFile Include="$(MSBuildThisFileDirectory)..\..\runtimes\osx\native\libHarfBuzzSharp*.dylib" />
<!-- include everything -->
<Content Include="@(_NativeHarfBuzzSharpFile)">
<Link>%(Dir)%(Filename)%(Extension)</Link>
<Visible>False</Visible>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
</ItemGroup>
</Project>

View File

@ -0,0 +1,19 @@
Copyright (c) 2015-2016 Xamarin, Inc.
Copyright (c) 2017-2018 Microsoft Corporation.
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,72 @@
<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<!-- if ShouldIncludeNativeHarfBuzzSharp == False then don't include the native libHarfBuzzSharp -->
<PropertyGroup>
<ShouldIncludeNativeHarfBuzzSharp Condition=" '$(ShouldIncludeNativeHarfBuzzSharp)' == '' ">True</ShouldIncludeNativeHarfBuzzSharp>
<_AppIsFullMac Condition=" '$(XamarinMacFrameworkRoot)' != '' and '$(TargetFrameworkIdentifier)' != 'Xamarin.Mac' and '$(UseXamMacFullFramework)' == 'True' and ('$(OutputType)' == 'Exe' or '$(IsAppExtension)' == 'True') ">True</_AppIsFullMac>
</PropertyGroup>
<!-- handle the case where this is a Xamarin.Mac Full app/extension -->
<ItemGroup Condition=" '$(ShouldIncludeNativeHarfBuzzSharp)' != 'False' and '$(_AppIsFullMac)' == 'True' ">
<NativeReference Include="$(MSBuildThisFileDirectory)..\..\runtimes\osx\native\libHarfBuzzSharp*.dylib">
<Kind>Dynamic</Kind>
<Visible>False</Visible>
</NativeReference>
</ItemGroup>
<!-- copy the native files to the output directory -->
<ItemGroup Condition=" '$(ShouldIncludeNativeHarfBuzzSharp)' != 'False' and '$(_AppIsFullMac)' != 'True' ">
<!-- Windows -->
<_NativeHarfBuzzSharpFile Include="$(MSBuildThisFileDirectory)..\..\runtimes\win-x86\native\libHarfBuzzSharp*.dll">
<Dir>x86\</Dir>
</_NativeHarfBuzzSharpFile>
<_NativeHarfBuzzSharpFile Include="$(MSBuildThisFileDirectory)..\..\runtimes\win-x64\native\libHarfBuzzSharp*.dll">
<Dir>x64\</Dir>
</_NativeHarfBuzzSharpFile>
<_NativeHarfBuzzSharpFile Include="$(MSBuildThisFileDirectory)..\..\runtimes\win-arm64\native\libHarfBuzzSharp*.dll">
<Dir>arm64\</Dir>
</_NativeHarfBuzzSharpFile>
<!-- Linux -->
<_NativeHarfBuzzSharpFile Include="$(MSBuildThisFileDirectory)..\..\runtimes\linux-x86\native\libHarfBuzzSharp*.so">
<Dir>x86\</Dir>
</_NativeHarfBuzzSharpFile>
<_NativeHarfBuzzSharpFile Include="$(MSBuildThisFileDirectory)..\..\runtimes\linux-x64\native\libHarfBuzzSharp*.so">
<Dir>x64\</Dir>
</_NativeHarfBuzzSharpFile>
<_NativeHarfBuzzSharpFile Include="$(MSBuildThisFileDirectory)..\..\runtimes\linux-arm\native\libHarfBuzzSharp*.so">
<Dir>arm\</Dir>
</_NativeHarfBuzzSharpFile>
<_NativeHarfBuzzSharpFile Include="$(MSBuildThisFileDirectory)..\..\runtimes\linux-arm64\native\libHarfBuzzSharp*.so">
<Dir>arm64\</Dir>
</_NativeHarfBuzzSharpFile>
<!-- Linux: Musl -->
<_NativeHarfBuzzSharpFile Include="$(MSBuildThisFileDirectory)..\..\runtimes\linux-musl-x86\native\libHarfBuzzSharp*.so">
<Dir>musl-x86\</Dir>
</_NativeHarfBuzzSharpFile>
<_NativeHarfBuzzSharpFile Include="$(MSBuildThisFileDirectory)..\..\runtimes\linux-musl-x64\native\libHarfBuzzSharp*.so">
<Dir>musl-x64\</Dir>
</_NativeHarfBuzzSharpFile>
<_NativeHarfBuzzSharpFile Include="$(MSBuildThisFileDirectory)..\..\runtimes\linux-musl-arm\native\libHarfBuzzSharp*.so">
<Dir>musl-arm\</Dir>
</_NativeHarfBuzzSharpFile>
<_NativeHarfBuzzSharpFile Include="$(MSBuildThisFileDirectory)..\..\runtimes\linux-musl-arm64\native\libHarfBuzzSharp*.so">
<Dir>musl-arm64\</Dir>
</_NativeHarfBuzzSharpFile>
<!-- macOS -->
<_NativeHarfBuzzSharpFile Include="$(MSBuildThisFileDirectory)..\..\runtimes\osx\native\libHarfBuzzSharp*.dylib" />
<!-- include everything -->
<Content Include="@(_NativeHarfBuzzSharpFile)">
<Link>%(Dir)%(Filename)%(Extension)</Link>
<Visible>False</Visible>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
</ItemGroup>
</Project>

View File

@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
</Project>

View File

@ -0,0 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<!-- if ShouldIncludeNativeHarfBuzzSharp == False then don't include the native libHarfBuzzSharp -->
<PropertyGroup>
<ShouldIncludeNativeHarfBuzzSharp Condition=" '$(ShouldIncludeNativeHarfBuzzSharp)' == '' ">True</ShouldIncludeNativeHarfBuzzSharp>
</PropertyGroup>
<ItemGroup Condition=" '$(ShouldIncludeNativeHarfBuzzSharp)' != 'False' ">
<NativeReference Include="$(MSBuildThisFileDirectory)..\..\runtimes\osx\native\libHarfBuzzSharp.dylib" Kind="Dynamic" />
</ItemGroup>
</Project>

Binary file not shown.

View File

@ -0,0 +1,20 @@
The MIT License (MIT)
Copyright (c) 2007 James Newton-King
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Binary file not shown.

View File

@ -0,0 +1,71 @@
# ![Logo](https://raw.githubusercontent.com/JamesNK/Newtonsoft.Json/master/Doc/icons/logo.jpg) Json.NET
[![NuGet version (Newtonsoft.Json)](https://img.shields.io/nuget/v/Newtonsoft.Json.svg?style=flat-square)](https://www.nuget.org/packages/Newtonsoft.Json/)
[![Build status](https://dev.azure.com/jamesnk/Public/_apis/build/status/JamesNK.Newtonsoft.Json?branchName=master)](https://dev.azure.com/jamesnk/Public/_build/latest?definitionId=8)
Json.NET is a popular high-performance JSON framework for .NET
## Serialize JSON
```csharp
Product product = new Product();
product.Name = "Apple";
product.Expiry = new DateTime(2008, 12, 28);
product.Sizes = new string[] { "Small" };
string json = JsonConvert.SerializeObject(product);
// {
// "Name": "Apple",
// "Expiry": "2008-12-28T00:00:00",
// "Sizes": [
// "Small"
// ]
// }
```
## Deserialize JSON
```csharp
string json = @"{
'Name': 'Bad Boys',
'ReleaseDate': '1995-4-7T00:00:00',
'Genres': [
'Action',
'Comedy'
]
}";
Movie m = JsonConvert.DeserializeObject<Movie>(json);
string name = m.Name;
// Bad Boys
```
## LINQ to JSON
```csharp
JArray array = new JArray();
array.Add("Manual text");
array.Add(new DateTime(2000, 5, 23));
JObject o = new JObject();
o["MyArray"] = array;
string json = o.ToString();
// {
// "MyArray": [
// "Manual text",
// "2000-05-23T00:00:00"
// ]
// }
```
## Links
- [Homepage](https://www.newtonsoft.com/json)
- [Documentation](https://www.newtonsoft.com/json/help)
- [NuGet Package](https://www.nuget.org/packages/Newtonsoft.Json)
- [Release Notes](https://github.com/JamesNK/Newtonsoft.Json/releases)
- [Contributing Guidelines](https://github.com/JamesNK/Newtonsoft.Json/blob/master/CONTRIBUTING.md)
- [License](https://github.com/JamesNK/Newtonsoft.Json/blob/master/LICENSE.md)
- [Stack Overflow](https://stackoverflow.com/questions/tagged/json.net)

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.7 KiB

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

View File

@ -0,0 +1,90 @@
# QuestPDF License
## License Selection Guide
Welcome to QuestPDF! This guide will help you understand how to select the appropriate license for our library, based on your usage context.
The licensing options for QuestPDF include the MIT license (which is free), and two tiers of paid licenses: the Professional License and the Enterprise License.
### License Equality
We believe in offering the full power of QuestPDF to all our users, regardless of the license they choose. Whether you're operating under our Community MIT, Professional, or Enterprise licenses, you can enjoy the same comprehensive range of features:
- Full access to all QuestPDF features.
- Support for commercial usage.
- Freedom to create and deploy unlimited closed-source projects, applications, and APIs.
- Royalty-free redistribution of the compiled library with your applications.
Transitive Dependency Usage
If you're using QuestPDF as a transitive dependency, you're free to use it under the MIT license without any cost. However, you're welcomed and encouraged to support the project by purchasing a paid license if you find the library valuable.
### Non-profit Usage
If you represent an open-source project, a charitable organization, or are using QuestPDF for educational purposes or training courses, you can also use QuestPDF for free under the MIT license.
### Small Businesses
For companies generating less than $1M USD in annual gross revenue, you can use QuestPDF under the MIT license for free.
### Larger Businesses
Companies with an annual gross revenue exceeding $1M USD are required to purchase a paid license. The type of license you need depends on the number of developers working on projects that use QuestPDF:
Professional License - If there are up to 10 developers in your company who are using QuestPDF, you need to purchase the Professional License.
Enterprise License - If your company has more than 10 developers using QuestPDF, the Enterprise License is the right choice.
### Beyond Compliance
Remember, purchasing a license isn't just about adhering to our guidelines, but also supporting the development of QuestPDF. Your contribution helps us to improve the library and offer top-notch support to all users.
## QuestPDF Community MIT License
### License Permissions
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
### Copyright
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
### Limitation Of Liability
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
## QuestPDF Professional and Enterprise Use License
### Do No Harm
By downloading or using the Software, the Licensee agrees not to utilize the software in a manner which is disparaging to QuestPDF, and not to rent, lease or otherwise transfer rights to the Software.
### License Permissions
Grants the use of the Software by a specified number of developers to create and deploy closed-source software for unlimited end user organizations ("The Organization") in multiple locations. This license covers unlimited applications or projects. The Software may be deployed upon any number of machines for the end-use of The Organization. This license also intrinsically covers for development, staging and production servers for each project.
Grants the right to distribute the Software (without royalty) as part of packaged commercial products.
### License Fees
A. If you wish to use the Software in a production environment, the purchase of a license is required. This license is perpetual, granting you continued use of the Software in accordance with the terms and conditions of this Agreement. The cost of the license is as indicated on the pricing page.
B. Upon purchasing a license, you are also enrolled in a yearly, recurring subscription for software updates. This subscription is valid for a period of one year from the date of purchase, and it will automatically renew each year unless cancelled. We recommend maintaining your subscription as long as you are performing active software development to ensure you have access to the latest updates and improvements to the Software.
C. However, it should be noted that the perpetual license allows use of only the latest library revision available at the time of or within the active subscription period, in accordance with the terms and conditions of this Agreement.
D. If you wish to use the Software in a non-production environment, such as for testing and evaluation purposes, you may download and access the source and/or binaries at no charge. This access is subject to all license limitations and restrictions set forth in this Agreement.
### Ownership
QuestPDF shall at all times retain ownership of the QuestPDF Software library and all subsequent copies.
### Copyright
Title, ownership rights, and intellectual property rights in and to the Software shall remain with QuestPDF. The Software is protected by the international copyright laws. Title, ownership rights, and intellectual property rights in and to the content accessed through the Software is the property of the applicable content owner and may be protected by applicable copyright or other law. This License gives you no rights to such content.
### Limitation Of Liability
THIS SOFTWARE IS PROVIDED "AS IS," WITHOUT A WARRANTY OF ANY KIND. ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT, ARE HEREBY EXCLUDED. QUESTPDF AND ITS LICENSORS SHALL NOT BE LIABLE FOR ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR DISTRIBUTING THE SOFTWARE OR ITS DERIVATIVES. IN NO EVENT WILL QUESTPDF OR ITS LICENSORS BE LIABLE FOR ANY LOST REVENUE, PROFIT OR DATA, OR FOR DIRECT, INDIRECT, SPECIAL, CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED AND REGARDLESS OF THE THEORY OF LIABILITY, ARISING OUT OF THE USE OF OR INABILITY TO USE SOFTWARE, EVEN IF QUESTPDF HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

View File

@ -0,0 +1,86 @@
[![QuestPDF Homepage](https://img.shields.io/badge/Homepage%20link-blue?style=badge)](https://www.questpdf.com)
[![Getting started tutorial]( https://img.shields.io/badge/%F0%9F%9A%80%20read-Getting%20Started-blue)](https://www.questpdf.com/getting-started.html)
[![API reference](https://img.shields.io/badge/%F0%9F%93%96%20read-API%20Reference-blue)](https://www.questpdf.com/api-reference/index.html)
[![Patterns and Practices](https://img.shields.io/badge/%F0%9F%94%8D%20read-Patterns%20and%20Practices-blue)](https://www.questpdf.com/design-patterns.html)
[![GitHub Repo stars](https://img.shields.io/github/stars/QuestPDF/QuestPDF?style=badge)](https://github.com/QuestPDF/QuestPDF/stargazers)
[![Nuget version](https://img.shields.io/nuget/v/QuestPdf?style=badge)](https://www.nuget.org/packages/QuestPDF/)
[![Nuget download](https://img.shields.io/nuget/dt/QuestPDF?style=badge)](https://www.nuget.org/packages/QuestPDF/)
### QuestPDF is a modern open-source .NET library for PDF document generation. Offering comprehensive layout engine powered by concise and discoverable C# Fluent API. Easily generate PDF documents, reports, invoices, exports etc.
![Usage animation of the PDF library](https://raw.githubusercontent.com/QuestPDF/QuestPDF-Documentation/main/docs/public/previewer/animation.gif)
👨‍💻 Design PDF documents using C# and employ a code-only approach. Utilize your version control system to its fullest potential.
🧱 Compose PDF document with a range of powerful and predictable structural elements, such as text, image, border, table, and many more.
⚙️ Utilize a comprehensive layout engine, specifically designed for PDF document generation and paging support.
📖 Write code using concise and easy-to-understand C# Fluent API. Utilize IntelliSense to quickly discover available options.
🔗 Don't be limited to any proprietary scripting language or format. Follow your experience and leverage all modern C# features.
⌛ Save time thanks to a hot-reload capability, allowing real-time PDF document preview without code recompilation.
## Simplicity is the key
How easy it is to start and prototype with QuestPDF? Really easy thanks to its minimal API! Please analyse the code below that generates basic PDF document:
```csharp
using QuestPDF.Fluent;
using QuestPDF.Helpers;
using QuestPDF.Infrastructure;
// code in your main method
Document.Create(container =>
{
container.Page(page =>
{
page.Size(PageSizes.A4);
page.Margin(2, Unit.Centimetre);
page.Background(Colors.White);
page.DefaultTextStyle(x => x.FontSize(20));
page.Header()
.Text("Hello PDF!")
.SemiBold().FontSize(36).FontColor(Colors.Blue.Medium);
page.Content()
.PaddingVertical(1, Unit.Centimetre)
.Column(x =>
{
x.Spacing(20);
x.Item().Text(Placeholders.LoremIpsum());
x.Item().Image(Placeholders.Image(200, 100));
});
page.Footer()
.AlignCenter()
.Text(x =>
{
x.Span("Page ");
x.CurrentPageNumber();
});
});
})
.GeneratePdf("hello.pdf");
```
![Minimal PDF example](https://raw.githubusercontent.com/QuestPDF/QuestPDF-Documentation/main/docs/public/minimal-example-shadow.png)
## Let's get started
Begin exploring the QuestPDF library today. You are 250 lines of C# code away from creating a fully functional PDF invoice implementation.
Read the Getting Started tutorial to familiarize yourself with general library architecture, important layout structures as well as to better understand helpful patterns and practices.
Easily start designing your PDF documents, reports, invoices, exports and even more.
[![Getting started tutorial](https://img.shields.io/badge/%F0%9F%9A%80%20read-getting%20started%20tutorial-blue?style=for-the-badge)](https://www.questpdf.com/getting-started)
![Example invoice](https://raw.githubusercontent.com/QuestPDF/QuestPDF-Documentation/main/docs/public/invoice-small.png)

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,19 @@
Copyright (c) 2015-2016 Xamarin, Inc.
Copyright (c) 2017-2018 Microsoft Corporation.
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

File diff suppressed because it is too large Load Diff

Binary file not shown.

View File

@ -0,0 +1,19 @@
Copyright (c) 2015-2016 Xamarin, Inc.
Copyright (c) 2017-2018 Microsoft Corporation.
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

View File

@ -0,0 +1,19 @@
Copyright (c) 2015-2016 Xamarin, Inc.
Copyright (c) 2017-2018 Microsoft Corporation.
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Some files were not shown because too many files have changed in this diff Show More