Fixed #5 for TWFix32 conversion exception in extension method.

This commit is contained in:
soukoku 2014-04-15 18:45:41 -04:00
parent 3ae070e3a3
commit af40d11103
2 changed files with 18 additions and 2 deletions

View File

@ -372,7 +372,8 @@ namespace NTwain
/// <returns></returns>
public static IList<TWFix32> CapGetDPIs(this TwainSession session)
{
return session.GetCapabilityValues(CapabilityId.ICapXResolution).Cast<TWFix32>().ToList();
var list = session.GetCapabilityValues(CapabilityId.ICapXResolution);
return list.Select(o => o.ConvertToFix32()).ToList();
}
/// <summary>

View File

@ -1,4 +1,5 @@
using System;
using NTwain.Data;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
@ -67,5 +68,19 @@ namespace NTwain.Values
{
return (ushort)(value >> 16);
}
/// <summary>
/// Tries to convert to a value to <see cref="TWFix32"/> if possible.
/// </summary>
/// <param name="value">The value.</param>
/// <returns></returns>
public static TWFix32 ConvertToFix32(this object value)
{
if (value is TWFix32)
{
return (TWFix32)value;
}
return (TWFix32)Convert.ToSingle(value);
}
}
}