Win2D/README.md

116 строки
4.7 KiB
Markdown
Исходник Обычный вид История

2014-09-04 02:46:39 +04:00
# Win2D
2014-06-28 00:53:27 +04:00
2014-09-04 02:46:39 +04:00
Win2D is an easy-to-use Windows Runtime API for immediate mode 2D graphics
rendering with GPU acceleration. It is available to C# and C++ developers writing
Windows Store apps for Windows 8.1 and Windows Phone 8.1. It utilizes the power of
Direct2D, and integrates seamlessly with XAML and ICoreWindow.
2014-09-04 02:46:39 +04:00
Win2D is work in progress and evolving rapidly. The goal of releasing this code
in an early, incomplete state is to solicit early developer feedback.
2014-09-04 02:46:39 +04:00
- [Features](http://github.com/Microsoft/Win2D/wiki/Features) - *what's implemented so far*
- [Backlog](http://github.com/Microsoft/Win2D/wiki/Backlog) - *what we plan to add next*
- [Documentation](http://microsoft.github.io/Win2D)
- [Team blog](http://blogs.msdn.com/b/win2d)
- [License](http://www.apache.org/licenses/LICENSE-2.0.html)
2014-09-04 02:46:39 +04:00
- [Contributing](http://github.com/Microsoft/Win2D/blob/master/CONTRIBUTING)
## Code Example
To give you a flavor of what the code looks like, here is a snippet of XAML:
```xml
xmlns:canvas="using:Microsoft.Graphics.Canvas"
<Grid>
<canvas:CanvasControl x:Name="canvasControl" />
</Grid>
```
and C#:
```cs
canvasControl.Draw += canvasControl_Draw;
```
```cs
void canvasControl_Draw(CanvasControl sender, CanvasDrawEventArgs args)
{
args.DrawingSession.Clear(Colors.BlueViolet);
}
```
## Setup
#### Visual Studio
- Download [here](http://www.visualstudio.com/en-us/downloads/download-visual-studio-vs.aspx)
- Requires Visual Studio 2013 Update 2 or greater
- If using Visual Studio Express, requires the 'for Windows' version (not 'for Windows Desktop')
#### Clone Repository
- Go to 'View' -> 'Team Explorer' -> 'Local Git Repositories' -> 'Clone'
2014-09-04 02:46:39 +04:00
- Add the Win2D repository URL (https://github.com/Microsoft/Win2D.git) and hit 'Clone'
#### Build NuGet Packages
- In Windows search, type 'Visual Studio Tools', and select that folder to open it
- Launch 'Developer Command Prompt for VS2013'
2014-09-04 02:46:39 +04:00
- Change directory to your cloned Win2D repository and run 'build'
- Point Visual Studio at the resulting 'bin' directory:
- In Visual Studio, go to 'Tools' -> 'NuGet Package Manager' -> 'Package Manager Settings'
- Choose 'Package Sources'
- Click the '+' button to add a new source
2014-09-04 02:46:39 +04:00
- Set 'Name' to 'Win2D' (or a name of your choosing)
- Set 'Source' to the full path to the 'bin' directory (inside your cloned Win2D repository)
- Click the 'Update' button
- Click 'OK'
#### Quickstart
Follow the steps below to get started on writing your own apps.
- Go to 'File' -> 'New' -> 'Project...'
- Select 'Visual C#' -> 'Store Apps' -> 'Universal Apps'
- Create a 'Blank App (Universal Apps)'
- Set a 'Name' of your choosing
- Click 'OK'
- Go to 'Tools' -> 'NuGet Package Manager' -> 'Manage NuGet Packages for Solution...'
2014-09-04 02:46:39 +04:00
- Select 'Win2D' package and click 'Install'
- Click 'Close'
- Change Solution platform from 'Any CPU' to x86
- You are now ready to hit F5 (Build)
A working sample can be found in the Samples directory.
## Source Directory Structure
Note: For the bulk of interesting product code, go to /winrt/lib.
**/bin** - Binary files generated by the build
**/build** - Shared, build-related resources that are common across projects
- /Assets - Common Windows Store assets used for tests and samples
- /nuget - Resources needed for building the NuGet package
2014-06-28 00:53:27 +04:00
**/numerics** - Cross-platform vector and matrix math library. There are three implementations:
- /Cpp
- /DotNet
- /WinRT
2014-06-28 00:53:27 +04:00
**/obj** - Intermediate files generated by the build
2014-06-28 00:53:27 +04:00
2014-09-04 02:46:39 +04:00
**/samples** - Example projects showing how to use Win2D
2014-06-28 00:53:27 +04:00
2014-09-04 02:46:39 +04:00
**/tests** - Test projects that consume Win2D in a similar way to how an
external customer would. Each one is a Windows Store app. These tests are run for manual
verification.
2014-06-28 00:53:27 +04:00
2014-09-04 02:46:39 +04:00
**/tools** - Standalone utilities, separate from Win2D product code
- /codegen - Generates headers+IDL from XML resource files (you don't have to build this to build Win2D)
- /copyright - Verifies the right copyright banner appears at the top of each source file
- /docs - Tools and scripts for building API reference documentation
2014-06-28 00:53:27 +04:00
2014-09-04 02:46:39 +04:00
**/winrt** - Win2D product code and automated tests
- /dll - Build resources for the product dll
- /docsrc - Source files used to create the reference documentation
- /inc - Common includes
- /lib - All the projected IDL and runtime class implementations!
- /WinRTDirectX - projections for D3D/DXGI types
- /published - Headers that are included directly in the NuGet package for 3rd part consumption
- /test.external - Automated tests that use only the public WinRT interface
- /test.internal - Automated tests that link directly with winrt.lib to access internals of the implementation
- /test.managed - Automated tests written in C#
- /test.nativecomponent - C++/CX component that exposes native functionality for use by test.managed