void RecreateMaterial(CompositeMode mode) { _compositeMaterial = null; switch (mode) { case CompositeMode.Additive: _compositeMaterial = new Material(_compositeShaders[0]); break; case CompositeMode.Screen: _compositeMaterial = new Material(_compositeShaders[1]); break; case CompositeMode.Luminance: _compositeMaterial = new Material(_compositeShaders[2]); break; case CompositeMode.Alpha: _compositeMaterial = new Material(_compositeShaders[3]); break; case CompositeMode.Bypass: _compositeMaterial = new Material(_compositeShaders[4]); break; default: break; } }
public void DrawImage( ID2D1Image image, InterpolationMode interpolationMode = InterpolationMode.Linear, CompositeMode compositeMode = CompositeMode.SourceOver) { DrawImage(image, null, null, interpolationMode, compositeMode); }
public void DrawImage( ID2D1Image image, Vector2 targetOffset, InterpolationMode interpolationMode = InterpolationMode.Linear, CompositeMode compositeMode = CompositeMode.SourceOver) { DrawImage(image, targetOffset, null, interpolationMode, compositeMode); }
void Start() { SetInputTextures(_input1.GetTexture(), _input2.GetTexture()); _texture = new RenderTexture(1920, 1080, 24, RenderTextureFormat.ARGB32); _prevMode = _compositeMode; RecreateMaterial(_compositeMode); }
private void cccRadioButton_CheckedChanged(object sender, EventArgs e) { if (cccRadioButton.Checked) { compositeMode = CompositeMode.CCC; SetBarcodeProperties(); imagePanel.Invalidate(); } }
public void DrawImage( ID2D1Effect effect, InterpolationMode interpolationMode = InterpolationMode.Linear, CompositeMode compositeMode = CompositeMode.SourceOver) { using (var output = effect.Output) { DrawImage(output, null, null, interpolationMode, compositeMode); } }
public Compositer() { currentMode = CompositeMode.Copy; }
public void setCompositeMode(CompositeMode p) { currentMode = p; }
public Code128Encoder(Symbology symbology, string barcodeMessage, string compositeMessage, CompositeMode compositeMode, EncodingMode encodingMode) { this.symbolId = symbology; this.barcodeMessage = barcodeMessage; this.compositeMessage = compositeMessage; this.isCompositeSymbol = !String.IsNullOrEmpty(compositeMessage); this.compositeMode = compositeMode; this.encodingMode = encodingMode; }
public static void DrawImage(this DeviceContext context, D2DEffect effect, InterpolationMode interpolationMode, CompositeMode compositeMode) { context.DrawImage(effect.NativeEffect, interpolationMode, compositeMode); }
public static void DrawImage(this RenderContext context, ID2DImage image, float destX, float destY, float srcX, float srcY, float srcWidth, float srcHeight, InterpolationMode interpolationMode, CompositeMode compositeMode) { context.RenderTarget.DeviceContext2D.DrawImage(image, destX, destY, srcX, srcY, srcWidth, srcHeight, interpolationMode, compositeMode); }
public static void AddComposite(Symbology symbology, string message, Collection <SymbolData> encodedLinearData, CompositeMode compositeMode, int linearSymbolWidth) { int dataColumns = 0; int eccLevel = 0; int compositeShiftCount = 0; int linearShiftCount = 0; BitVector bitStream; hostSymbol = symbology; encodedData = encodedLinearData; linearWidth = linearSymbolWidth; compositeData = MessagePreProcessor.AIParser(message); int inputLength = compositeData.Length; if (inputLength > 2990) { throw new InvalidDataLengthException("2D Component: Input data too long."); } if ((compositeMode == CompositeMode.CCC) && (symbology != Symbology.Code128)) { throw new DataEncodingException("2D Component: Invalid mode, CC-C only valid with a GS1-128 linear component."); } switch (symbology) { // Determine width of 2D component according to ISO/IEC 24723 Table 1. case Symbology.EAN8: dataColumns = 3; linearShiftCount = 3; if (compositeMode == CompositeMode.CCB) { linearShiftCount = 13; } break; case Symbology.EAN13: dataColumns = 4; linearShiftCount = 2; break; case Symbology.UPCE: dataColumns = 2; linearShiftCount = 2; break; case Symbology.UPCA: dataColumns = 4; linearShiftCount = 3; break; case Symbology.Code128: dataColumns = 4; if (compositeMode == CompositeMode.CCC) { linearShiftCount = 7; } break; case Symbology.DatabarOmni: case Symbology.DatabarTruncated: dataColumns = 4; linearShiftCount = 4; break; case Symbology.DatabarLimited: dataColumns = 3; compositeShiftCount = 0; break; case Symbology.DatabarExpanded: dataColumns = 4; compositeShiftCount = 1; while ((encodedData[1].GetRowData()[compositeShiftCount - 1] == 0) && (encodedData[1].GetRowData()[compositeShiftCount] == 1)) { compositeShiftCount++; } break; case Symbology.DatabarStacked: case Symbology.DatabarOmniStacked: dataColumns = 2; compositeShiftCount = 0; break; case Symbology.DatabarExpandedStacked: dataColumns = 4; compositeShiftCount = 1; while ((encodedData[1].GetRowData()[compositeShiftCount - 1] == 0) && (encodedData[1].GetRowData()[compositeShiftCount] == 1)) { compositeShiftCount++; } break; } if (linearShiftCount > 0) { ShiftLinearHost(linearShiftCount); } bitStream = BitStreamEncoder.CompositeBitStream(symbology, compositeData, ref compositeMode, ref dataColumns, ref eccLevel, linearWidth); if (bitStream == null) { throw new InvalidDataLengthException(); } switch (compositeMode) { // Note that eccLevel is only relevant to CC-C. case CompositeMode.CCA: CompositeA(bitStream, dataColumns, compositeShiftCount); break; case CompositeMode.CCB: CompositeB(bitStream, dataColumns, compositeShiftCount); break; case CompositeMode.CCC: CompositeC(bitStream, dataColumns, eccLevel); break; } }
public static void DrawImage(this RenderContext context, Image image, float destX, float destY, float srcX, float srcY, float srcWidth, float srcHeight, InterpolationMode interpolationMode, CompositeMode compositeMode) { var dstOffset = new RawVector2(destX, destY); var srcRect = new RawRectangleF(srcX, srcY, srcX + srcWidth, srcY + srcHeight); context.RenderTarget.DeviceContext2D.DrawImage(image, dstOffset, srcRect, interpolationMode, compositeMode); }
public static void DrawImage(this RenderContext context, Image image, float destX, float destY, InterpolationMode interpolationMode, CompositeMode compositeMode) { var dstOffset = new RawVector2(destX, destY); context.RenderTarget.DeviceContext2D.DrawImage(image, dstOffset, null, interpolationMode, compositeMode); }
public static void DrawImage(this DeviceContext context, D2DEffect effect, float destX, float destY, InterpolationMode interpolationMode, CompositeMode compositeMode) { var dstOffset = new RawVector2(destX, destY); context.DrawImage(effect.NativeEffect, dstOffset, interpolationMode, compositeMode); }
/// <unmanaged>HRESULT ID2D1CommandSink::DrawImage([In] ID2D1Image* image,[In, Optional] const D2D_POINT_2F* targetOffset,[In, Optional] const D2D_RECT_F* imageRectangle,[In] D2D1_INTERPOLATION_MODE interpolationMode,[In] D2D1_COMPOSITE_MODE compositeMode)</unmanaged> public void DrawImage(Image image, RawVector2?targetOffset, RawRectangleF?imageRectangle, InterpolationMode interpolationMode, CompositeMode compositeMode) { DrawImage_(image, targetOffset, imageRectangle, interpolationMode, compositeMode); }
/// <summary> /// /// </summary> /// <param name="source"></param> /// <param name="target"></param> /// <param name="compose"></param> /// <returns></returns> private async Task <MagickImage> Compare(MagickImage source, MagickImage target, bool compose = false) { MagickImage result = null; await Dispatcher.InvokeAsync(async() => { var st = Stopwatch.StartNew(); var tip = new List <string>(); try { if (source is MagickImage && target is MagickImage) { var fuzzy = Math.Min(Math.Max(ImageCompareFuzzy.Minimum, ImageCompareFuzzy.Value), ImageCompareFuzzy.Maximum); if (source.ColorFuzz.ToDouble() != fuzzy) { source.ColorFuzz = new Percentage(fuzzy); } if (target.ColorFuzz.ToDouble() != fuzzy) { target.ColorFuzz = new Percentage(fuzzy); } if (compose) { using (MagickImage diff = new MagickImage(target.Clone())) { diff.Composite(source, CompositeMode, CompareImageChannels); tip.Add($"{"ResultTipMode".T()} {CompositeMode.ToString()}"); result = new MagickImage(diff); await Task.Delay(1); DoEvents(); } } else { using (MagickImage diff = new MagickImage()) { var setting = new CompareSettings() { Metric = ErrorMetricMode, HighlightColor = HighlightColor, LowlightColor = LowlightColor, MasklightColor = MasklightColor }; var distance = source.Compare(target, setting, diff, CompareImageChannels); tip.Add($"{"ResultTipMode".T()} {ErrorMetricMode.ToString()}"); tip.Add($"{"ResultTipDifference".T()} {distance:F4}"); result = new MagickImage(diff); //result.Comment = "NetCharm Created"; await Task.Delay(1); DoEvents(); } } } } catch (Exception ex) { ex.ShowMessage(); } finally { st.Stop(); tip.Add($"{"ResultTipElapsed".T()} {TimeSpan.FromTicks(st.ElapsedTicks).TotalSeconds:F4} s"); if (compose) { ImageCompose.ToolTip = tip.Count > 1 ? string.Join(Environment.NewLine, tip) : DefaultComposeToolTip; ImageCompare.ToolTip = DefaultCompareToolTip; } else { ImageCompare.ToolTip = tip.Count > 1 ? string.Join(Environment.NewLine, tip) : DefaultCompareToolTip; ImageCompose.ToolTip = DefaultComposeToolTip; } } }, DispatcherPriority.Render); return(result); }
/// <unmanaged>HRESULT ID2D1CommandSink::DrawImage([In] ID2D1Image* image,[In, Optional] const D2D_POINT_2F* targetOffset,[In, Optional] const D2D_RECT_F* imageRectangle,[In] D2D1_INTERPOLATION_MODE interpolationMode,[In] D2D1_COMPOSITE_MODE compositeMode)</unmanaged> public void DrawImage(Image image, RawVector2? targetOffset, RawRectangleF? imageRectangle, InterpolationMode interpolationMode, CompositeMode compositeMode) { DrawImage_(image, targetOffset, imageRectangle, interpolationMode, compositeMode); }
public static void DrawImageStripUnit(this RenderContext context, D2DImageStrip2D imageStrip, int index, float destX, float destY, InterpolationMode interpolationMode, CompositeMode compositeMode) { if (index < 0 || index >= imageStrip.Count) { throw new ArgumentOutOfRangeException(nameof(index), index, null); } var srcRect = GetSourceRect(imageStrip, index); context.DrawImage(imageStrip, destX, destY, srcRect.X, srcRect.Y, srcRect.Width, srcRect.Height, interpolationMode, compositeMode); }
public static void DrawImage(this RenderContext context, D2DEffect effect, float destX, float destY, InterpolationMode interpolationMode, CompositeMode compositeMode) { context.RenderTarget.DeviceContext2D.DrawImage(effect, destX, destY, interpolationMode, compositeMode); }
public static void DrawImage(this DeviceContext context, ID2DImage image, float destX, float destY, InterpolationMode interpolationMode, CompositeMode compositeMode) { var dstOffset = new RawVector2(destX, destY); context.DrawImage(image.NativeImage, dstOffset, null, interpolationMode, compositeMode); }