2

Windows Phone 7.5 の Silverlight を使用して、画像を複数の小さな画像に分割したいと考えています。

まず第一に、これが可能かどうかを知りたいです (最近 Windows Phone API で不愉快な驚きがありました)。

ご協力ありがとうございました。

4

3 に答える 3

4

WriteableBitmapExはWindowsPhoneと互換性があり、Cropまさにそれを行うためのメソッドがあります。計算を行うだけで、トリミングする幅/高さおよびX/Y座標を把握できます。

//this creates the four quadrants of sourceBitmap as new bitmaps

int halfWidth = sourceBitmap.PixelWidth / 2;
int halfHeight = sourceBitmap.PixelHeight / 2;

WriteableBitmap topLeft = sourceBitmap.Crop(0, 0, halfWidth, halfHeight);
WriteableBitmap topRight = sourceBitmap.Crop(halfWidth, 0, halfWidth, halfHeight);
WriteableBitmap bottomLeft = sourceBitmap.Crop(0, halfHeight, halfWidth, halfHeight);
WriteableBitmap bottomRight = sourceBitmap.Crop(halfWidth, halfHeight, halfWidth, halfHeight);

上記の例では、ピクセル単位でずれている可能性があります(テストしていません)が、APIを示しているはずです。

于 2012-06-19T20:34:34.810 に答える
0

ScaleTransform と TranslateTransform を組み合わせて、正しいセクションをレンダリングします。

ScaleTransform (numXTiles,numYTiles)

翻訳 (xTileIndex / numXTiles, yTileIndex / numYTiles);

ImageControl を Grid 内に配置して、クリッピングを行います

于 2012-06-19T20:27:11.477 に答える
0

Silverlight プロジェクトを XNA と組み合わせて、spritebatch.Draw() を使用できます。画像から一部を描画できるソース四角形のパラメーターがあります。

MSDN には、Silverlight と XNA を組み合わせる方法に関するヘルプがあります。 http://msdn.microsoft.com/en-us/library/hh202938(v=vs.92).aspx

于 2012-06-19T20:18:08.860 に答える