本文整理匯總了C#中PdfSharp.Drawing.XMatrix.ToWpfMatrix方法的典型用法代碼示例。如果您正苦於以下問題:C# XMatrix.ToWpfMatrix方法的具體用法?C# XMatrix.ToWpfMatrix怎麽用?C# XMatrix.ToWpfMatrix使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類PdfSharp.Drawing.XMatrix
的用法示例。
在下文中一共展示了XMatrix.ToWpfMatrix方法的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C#代碼示例。
示例1: AddTransform
/// <summary>
/// Gets or sets the transformation matrix.
/// </summary>
void AddTransform(XMatrix transform, XMatrixOrder order)
{
//if (!this.transform.Equals(value))
{
XMatrix matrix = this.transform;
matrix.Multiply(transform, order);
this.transform = matrix;
matrix = this.defaultViewMatrix;
matrix.Multiply(this.transform, XMatrixOrder.Prepend);
#if GDI
if (this.targetContext == XGraphicTargetContext.GDI)
{
#if DEBUG
System.Drawing.Drawing2D.Matrix m = (System.Drawing.Drawing2D.Matrix)matrix;
this.gfx.Transform = m;
#else
this.gfx.Transform = (System.Drawing.Drawing2D.Matrix)matrix;
#endif
}
#endif
#if WPF
if (this.targetContext == XGraphicTargetContext.WPF)
{
#if !SILVERLIGHT
MatrixTransform mt = new MatrixTransform(transform.ToWpfMatrix());
#else
MatrixTransform mt = new MatrixTransform();
mt.Matrix = transform.ToWpfMatrix();
#endif
if (order == XMatrixOrder.Append)
mt = (MatrixTransform)mt.Inverse;
this.gsStack.Current.SetTransform(mt);
}
#endif
if (this.renderer != null)
this.renderer.Transform = this.transform;
}
}
示例2: Flatten
/// <summary>
/// Converts each curve in this XGraphicsPath into a sequence of connected line segments.
/// </summary>
public void Flatten(XMatrix matrix, double flatness)
{
#if CORE
// Just do nothing.
#endif
#if CORE___
throw new NotImplementedException("XGraphicsPath.Flatten");
#endif
#if GDI
try
{
Lock.EnterGdiPlus();
_gdipPath.Flatten(matrix.ToGdiMatrix(), (float)flatness);
}
finally { Lock.ExitGdiPlus(); }
#endif
#if WPF || NETFX_CORE
#if !SILVERLIGHT && !NETFX_CORE
_pathGeometry = _pathGeometry.GetFlattenedPathGeometry();
// TODO: matrix handling not yet tested
if (!matrix.IsIdentity)
_pathGeometry.Transform = new MatrixTransform(matrix.ToWpfMatrix());
#else
// AG-HACK
throw new InvalidOperationException("Silverlight/WinRT cannot flatten a geometry.");
// TODO: no, yagni
#endif
#endif
}
示例3: Flatten
/// <summary>
/// Converts each curve in this XGraphicsPath into a sequence of connected line segments.
/// </summary>
public void Flatten(XMatrix matrix)
{
#if GDI
this.gdipPath.Flatten(matrix.ToGdiMatrix());
#endif
#if WPF
this.pathGeometry = this.pathGeometry.GetFlattenedPathGeometry();
this.pathGeometry.Transform = new MatrixTransform(matrix.ToWpfMatrix());
#endif
}
示例4: Flatten
/// <summary>
/// Converts each curve in this XGraphicsPath into a sequence of connected line segments.
/// </summary>
public void Flatten(XMatrix matrix, double flatness)
{
#if GDI
this.gdipPath.Flatten(matrix.ToGdiMatrix(), (float)flatness);
#endif
#if WPF
#if !SILVERLIGHT
this.pathGeometry = this.pathGeometry.GetFlattenedPathGeometry();
// TODO: matrix handling not yet tested
if (!matrix.IsIdentity)
this.pathGeometry.Transform = new MatrixTransform(matrix.ToWpfMatrix());
#else
// AGHACK
#endif
#endif
}