mirror of
https://github.com/soukoku/ntwain.git
synced 2026-01-26 13:39:47 +08:00
#74 expose memory transfer data as-is.
This commit is contained in:
@@ -71,8 +71,7 @@
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="ModernWpf.Core, Version=2.0.0.0, Culture=neutral, PublicKeyToken=c99d0cfbea7491ef, processorArchitecture=MSIL">
|
||||
<HintPath>..\..\packages\ModernWpf.Core.2.0.0-alpha94\lib\net40-Client\ModernWpf.Core.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
<HintPath>..\..\packages\ModernWpf.Core.2.0.0-alpha96\lib\net40-Client\ModernWpf.Core.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Data" />
|
||||
|
||||
@@ -274,7 +274,8 @@ namespace Sample.WPF
|
||||
|
||||
void _session_TransferReady(object sender, TransferReadyEventArgs e)
|
||||
{
|
||||
if (_session.CurrentSource.Capabilities.ICapXferMech.GetCurrent() == XferMech.File)
|
||||
var mech = _session.CurrentSource.Capabilities.ICapXferMech.GetCurrent();
|
||||
if (mech == XferMech.File)
|
||||
{
|
||||
var formats = _session.CurrentSource.Capabilities.ICapImageFileFormat.GetValues();
|
||||
var wantFormat = formats.Contains(FileFormat.Tiff) ? FileFormat.Tiff : FileFormat.Bmp;
|
||||
@@ -286,6 +287,11 @@ namespace Sample.WPF
|
||||
};
|
||||
var rc = _session.CurrentSource.DGControl.SetupFileXfer.Set(fileSetup);
|
||||
}
|
||||
else if (mech == XferMech.Memory)
|
||||
{
|
||||
// ?
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
string GetUniqueName(string dir, string name, string ext)
|
||||
@@ -315,19 +321,28 @@ namespace Sample.WPF
|
||||
ImageSource GenerateThumbnail(DataTransferredEventArgs e)
|
||||
{
|
||||
BitmapSource img = null;
|
||||
if (e.NativeData != IntPtr.Zero)
|
||||
|
||||
switch (e.TransferType)
|
||||
{
|
||||
using (var stream = e.GetNativeImageStream())
|
||||
{
|
||||
if (stream != null)
|
||||
case XferMech.Native:
|
||||
using (var stream = e.GetNativeImageStream())
|
||||
{
|
||||
img = stream.ConvertToWpfBitmap(300, 0);
|
||||
if (stream != null)
|
||||
{
|
||||
img = stream.ConvertToWpfBitmap(300, 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(e.FileDataPath))
|
||||
{
|
||||
img = new BitmapImage(new Uri(e.FileDataPath));
|
||||
break;
|
||||
case XferMech.File:
|
||||
img = new BitmapImage(new Uri(e.FileDataPath));
|
||||
if (img.CanFreeze)
|
||||
{
|
||||
img.Freeze();
|
||||
}
|
||||
break;
|
||||
case XferMech.Memory:
|
||||
// TODO: build current image from multiple data-xferred event
|
||||
break;
|
||||
}
|
||||
|
||||
//if (img != null)
|
||||
|
||||
@@ -4,6 +4,6 @@
|
||||
<package id="Microsoft.WindowsAPICodePack-Core" version="1.1.0.2" targetFramework="net4-client" />
|
||||
<package id="Microsoft.WindowsAPICodePack-Shell" version="1.1.0.0" targetFramework="net4-client" />
|
||||
<package id="ModernWpf" version="2.0.0-alpha94" targetFramework="net40-client" />
|
||||
<package id="ModernWpf.Core" version="2.0.0-alpha94" targetFramework="net40-client" />
|
||||
<package id="ModernWpf.Core" version="2.0.0-alpha96" targetFramework="net40-client" />
|
||||
<package id="MvvmLightLibs" version="5.3.0.0" targetFramework="net40-client" />
|
||||
</packages>
|
||||
Reference in New Issue
Block a user