예제 #1
0
        /// <summary>
        ///     Checks whether the given <see cref="AspectRatioOption"/> equals the parameter.
        /// </summary>
        public object Convert(object value, Type targetType, object parameter, string language)
        {
            AspectRatioOption aspectRatioOptionSelected   = (AspectRatioOption)value;
            AspectRatioOption aspectRatioOptionComparison = (AspectRatioOption)int.Parse((string)parameter);

            return(aspectRatioOptionSelected == aspectRatioOptionComparison);
        }
예제 #2
0
 public static IContainer AspectRatio(this IContainer element, float ratio, AspectRatioOption option = AspectRatioOption.FitWidth)
 {
     return(element.Element(new AspectRatio
     {
         Ratio = ratio,
         Option = option
     }));
 }
예제 #3
0
    public static double?ConvertAspectRatioOptionToValue(AspectRatioOption option)
    {
        switch (option)
        {
        case AspectRatioOption.Custom:
            return(null);

        case AspectRatioOption.Square:
            return(1);

        case AspectRatioOption.ThreeByTwo:
            return(1.5);

        case AspectRatioOption.FourByThree:
            return(1.3333);

        case AspectRatioOption.DinA:
            return(0.7070);

        case AspectRatioOption.AnsiA:
            return(0.7741);

        case AspectRatioOption.AnsiB:
            return(0.6458);

        case AspectRatioOption.AnsiC:
            return(0.7728);

        case AspectRatioOption.Kai4:
            return(0.7216);

        case AspectRatioOption.Kai8:
            return(0.6929);

        case AspectRatioOption.Kai16:
            return(0.7216);

        case AspectRatioOption.Kai32:
            return(0.6954);

        case AspectRatioOption.Legal:
            return(0.6067);

        default:
            throw new ArgumentException($"Can't convert AspectRatioOption {option} to value.");
        }
    }