Bitmap for UWP
画像の反転
機能 > 変換の適用 > 画像の反転

画像の反転とは、垂直あるいは水平方向に元画像の鏡像を作成することです。Bitmap では、FlipRotator クラスの TransformOptions プロパティを使用して、画像を水平方向あるいは垂直方向に反転させることができます。TransformOptions プロパティは、TransformOptions 列挙値にて変換オプションを設定します。

以下の画像は、水平方向に反転した画像を示しています。

以下のコードは、ボタンのクリックイベントでイメージを水平方向に反転させる方法を実装しています。この例では、「クイックスタート」セクションで作成したサンプルを使用します。

Private Async Function UpdateImageSource() As Task
    Dim sb As SoftwareBitmap = btmp.ToSoftwareBitmap()
    Await sbs.SetBitmapAsync(sb)
    img.Source = sbs
End Function

Private Async Function ApplyTransform(t As BaseTransform) As Task
    Dim bm = btmp.Transform(t)
    btmp.Dispose()
    btmp = bm
    Await UpdateImageSource()
End Function
Private Async Sub btnFlip_Click(sender As Object, e As RoutedEventArgs)
    Await ApplyTransform(New FlipRotator(TransformOptions.FlipHorizontal))
End Sub
private async Task ApplyTransform(BaseTransform t)
{
    var bm = btmp.Transform(t);
    btmp.Dispose();
    btmp = bm;
    await UpdateImageSource();
}

private async void btnFlip_Click(object sender, RoutedEventArgs e)
{
    await ApplyTransform(new FlipRotator(TransformOptions.FlipHorizontal));
}

同様に、TransformOptions 列挙型の FlipVertical 値を使用して画像を垂直方向に反転できます。

関連トピック