「Xamarin.Mac/CGImageをファイルに保存する」の版間の差分
ナビゲーションに移動
検索に移動
(→関連項目) |
|||
1行目: | 1行目: | ||
− | ==実装1== | + | == 実装1 == |
Xamarin.Mac 2.0系の場合はCGImageDestination.Createのまま。 | Xamarin.Mac 2.0系の場合はCGImageDestination.Createのまま。 | ||
Xamarin.Mac 1.0系の場合はCGImageDestination.FromUrlに変更する。 | Xamarin.Mac 1.0系の場合はCGImageDestination.FromUrlに変更する。 | ||
37行目: | 37行目: | ||
</source> | </source> | ||
− | ==関連項目== | + | == 関連項目 == |
*[[MonoMac/NSImageをファイルに保存する]] | *[[MonoMac/NSImageをファイルに保存する]] | ||
*[[Xamarin.Mac/NSViewの描画内容をファイルに保存する]] | *[[Xamarin.Mac/NSViewの描画内容をファイルに保存する]] | ||
47行目: | 47行目: | ||
*[[Xamarin.Mac/効果音を再生する]] | *[[Xamarin.Mac/効果音を再生する]] | ||
− | ==参考文献== | + | == 参考文献 == |
{{reflist}} | {{reflist}} | ||
{{stub}} | {{stub}} | ||
+ | |||
+ | [[category: Xamarin.Mac]] | ||
+ | [[category: Core Graphics]] |
2017年6月13日 (火) 01:36時点における版
実装1
Xamarin.Mac 2.0系の場合はCGImageDestination.Createのまま。 Xamarin.Mac 1.0系の場合はCGImageDestination.FromUrlに変更する。
using System;
using Foundation;
using CoreGraphics;
using ImageIO;
namespace Library
{
public static class CGImageExtensions
{
public static bool Save(this CGImage cgImage, string path, string typeIdentifier)
{
using (var url = NSUrl.FromFilename(path))
using (var dst = CGImageDestination.Create(url, typeIdentifier, imageCount:1))
{
if (dst == null)
{
return false;
}
dst.AddImage(cgImage);
return dst.Close();
}
}
}
}
引数typeIdentifierはMobileCoreServices.UTTypeに定義されている定数文字列群を指定する。 拡張子で自動判別するようにしてMobileCoreServices.UTTypeを無視するようにした方が直感的かもしれない。
cgImage.Save(save, MobileCoreServices.UTType.PNG);
関連項目
- MonoMac/NSImageをファイルに保存する
- Xamarin.Mac/NSViewの描画内容をファイルに保存する
- Xamarin.Mac/CoreGraphicsの基本的な使い方
- Xamarin.Mac/動画から静止画を抽出する
- Xamarin.Mac/スクリーンキャプチャを撮る
- Xamarin.Mac/CGImageをNSImageに変換する
- Xamarin.Mac/NSOpenGLViewを使う
- Xamarin.Mac/効果音を再生する