fork download
  1. Imports System
  2. Imports System.Drawing
  3.  
  4. Public Class Test
  5. Public Shared Sub Main()
  6. Console.WriteLine("-- Horizontal --")
  7. For Each Name As String In [Enum].GetNames(GetType(ContentAlignment))
  8. Dim Value As Integer = [Enum].Parse(GetType(ContentAlignment), Name)
  9. Dim ConvertedValue As Integer = ContentToStringAlignment(Value, False)
  10. Console.WriteLine("{0,-14}{1,-8}: {2} {3}", Name, "(" & Value & ")", ConvertedValue, "(" & [Enum].GetName(GetType(StringAlignment), ConvertedValue) & ")")
  11. Next
  12.  
  13. Console.WriteLine(Environment.NewLine & "-- Vertical --")
  14. For Each Name As String In [Enum].GetNames(GetType(ContentAlignment))
  15. Dim Value As Integer = [Enum].Parse(GetType(ContentAlignment), Name)
  16. Dim ConvertedValue As Integer = ContentToStringAlignment(Value, True)
  17. Console.WriteLine("{0,-14}{1,-8}: {2} {3}", Name, "(" & Value & ")", ConvertedValue, "(" & [Enum].GetName(GetType(StringAlignment), ConvertedValue) & ")")
  18. Next
  19. End Sub
  20.  
  21. Public Shared Function ContentToStringAlignment(ByVal Alignment As ContentAlignment, ByVal Vertical As Boolean) As StringAlignment
  22. If Vertical = True Then Return CType(Math.Floor(Math.Log(CType(Alignment, Integer), 16)), StringAlignment)
  23. Return CType(Math.Log(CType(Alignment, Integer) Mod 5, 2), StringAlignment)
  24. End Function
  25. End Class
Success #stdin #stdout 0.03s 24488KB
stdin
Standard input is empty
stdout
-- Horizontal --
TopLeft       (1)     : 0 (Near)
TopCenter     (2)     : 1 (Center)
TopRight      (4)     : 2 (Far)
MiddleLeft    (16)    : 0 (Near)
MiddleCenter  (32)    : 1 (Center)
MiddleRight   (64)    : 2 (Far)
BottomLeft    (256)   : 0 (Near)
BottomCenter  (512)   : 1 (Center)
BottomRight   (1024)  : 2 (Far)

-- Vertical --
TopLeft       (1)     : 0 (Near)
TopCenter     (2)     : 0 (Near)
TopRight      (4)     : 0 (Near)
MiddleLeft    (16)    : 1 (Center)
MiddleCenter  (32)    : 1 (Center)
MiddleRight   (64)    : 1 (Center)
BottomLeft    (256)   : 2 (Far)
BottomCenter  (512)   : 2 (Far)
BottomRight   (1024)  : 2 (Far)