LEADTOOLS画像ファイルサポート(Leadtools.Codecsアセンブリ)

フレームを表示

LoadPsdChannelメソッド








ロードする画像ファイルの名前を格納しているString

結果として生じるimageビット数。有効値は以下の通りです:

意味
0 オリジナルファイルのビット数(変換しません)を保持します。
8への1 結果として生じるimageの指定されたピクセル当たりビット。
12 結果として生じるimageの12ビット/ピクセル。
16 結果として生じるimageの16ビット/ピクセル。
24 結果として生じるimageの24ビット/ピクセル。
32 結果として生じるimageの32ビット/ピクセル。
48 結果として生じるimageの48ビット/ピクセル。
64 結果として生じるimageの64ビット/ピクセル。
目的のカラーオーダー。
ロードするチャネルのインデックス。このインデックスはゼロから始まります。第1チャネルをロードするには0を、第2チャネルをロードするには1を渡します。
ロードしたチャネルに関する情報で更新されるCodecsPsdChannelInfoオブジェクト。チャネル情報が不要な場合は、このパラメーターにNULL参照を渡します。
指定されたチャネルを指定されたPSDファイルからロードします。
構文
'Declaration
 
Public Function LoadPsdChannel( _
   ByVal fileName As String, _
   ByVal bitsPerPixel As Integer, _
   ByVal order As CodecsLoadByteOrder, _
   ByVal channelIndex As Integer, _
   ByVal channelInfo As CodecsPsdChannelInfo _
) As RasterImage
'Usage
 
Dim instance As RasterCodecs
Dim fileName As String
Dim bitsPerPixel As Integer
Dim order As CodecsLoadByteOrder
Dim channelIndex As Integer
Dim channelInfo As CodecsPsdChannelInfo
Dim value As RasterImage
 
value = instance.LoadPsdChannel(fileName, bitsPerPixel, order, channelIndex, channelInfo)
 function Leadtools.Codecs.RasterCodecs.LoadPsdChannel( 
   fileName ,
   bitsPerPixel ,
   order ,
   channelIndex ,
   channelInfo 
)

パラメーター

fileName
ロードする画像ファイルの名前を格納しているString
bitsPerPixel

結果として生じるimageビット数。有効値は以下の通りです:

意味
0 オリジナルファイルのビット数(変換しません)を保持します。
8への1 結果として生じるimageの指定されたピクセル当たりビット。
12 結果として生じるimageの12ビット/ピクセル。
16 結果として生じるimageの16ビット/ピクセル。
24 結果として生じるimageの24ビット/ピクセル。
32 結果として生じるimageの32ビット/ピクセル。
48 結果として生じるimageの48ビット/ピクセル。
64 結果として生じるimageの64ビット/ピクセル。
順序
目的のカラーオーダー。
channelIndex
ロードするチャネルのインデックス。このインデックスはゼロから始まります。第1チャネルをロードするには0を、第2チャネルをロードするには1を渡します。
channelInfo
ロードしたチャネルに関する情報で更新されるCodecsPsdChannelInfoオブジェクト。チャネル情報が不要な場合は、このパラメーターにNULL参照を渡します。

戻り値

このメソッドがロードするRasterImageオブジェクト。
解説

PSDファイルのみをロードするには、このメソッドを使用します。

このメソッドは通常のロードまたはLoadAsyncメソッドに同様に機能しますが、それはPSDファイルからチャネルだけをロードします。それは、channelIndexで指定されているチャネルをロードします。

このメソッドを呼び出す前に、ファイルのチャネルの数などの、ファイル情報を取得または設定する必要があるかもしれません。CodecsPsdImageInfoを参照してください

ファイルのチャネルの数は、CodecsPsdImageInfo.Channelsで示されます。この数が0であるならば、ファイルは任意のチャネルを封じ込めにしません、そして、このメソッドは呼び出されるべきでありません。

サンプル

このサンプルは、PSDファイルからオールチャネルをロードします

Copy Code  
Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.ImageProcessing
Imports Leadtools.ImageProcessing.Color
Imports Leadtools.Drawing
Imports Leadtools.Svg

      
Public Sub LoadPsdChannels()
   Dim codecs As New RasterCodecs()
   Dim srcFileName As String = Path.Combine(LEAD_VARS.ImagesDir, "Sunflower.psd")

   Dim imageInfo As CodecsImageInfo = codecs.GetInformation(srcFileName, False)
   For iCount As Integer = 0 To imageInfo.Psd.Channels - 1
      Dim ChannelInfo As New CodecsPsdChannelInfo()
      Dim ChannelImage As RasterImage = codecs.LoadPsdChannel(srcFileName, 0, CodecsLoadByteOrder.Rgb, iCount, ChannelInfo)

      Dim destFileName As String = Path.Combine(LEAD_VARS.ImagesDir, "Channel_")
      destFileName = destFileName & iCount & ".Bmp"

      codecs.Save(ChannelImage, destFileName, RasterImageFormat.Bmp, ChannelImage.BitsPerPixel)

      ChannelImage.Dispose()
   Next
   ' Clean up
   codecs.Dispose()
End Sub

Public NotInheritable Class LEAD_VARS
Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"
End Class
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing;
using Leadtools.ImageProcessing.Color;
using Leadtools.Svg;

      
public void LoadPsdChannels()
{
   RasterCodecs codecs = new RasterCodecs();
   string srcFileName = Path.Combine(LEAD_VARS.ImagesDir, "Sunflower.psd");

   CodecsImageInfo imageInfo = codecs.GetInformation(srcFileName, false);
   for (int iCount = 0; iCount < imageInfo.Psd.Channels; iCount++)
   {
      CodecsPsdChannelInfo ChannelInfo = new CodecsPsdChannelInfo();
      RasterImage ChannelImage = codecs.LoadPsdChannel(srcFileName, 0, CodecsLoadByteOrder.Rgb, iCount, ChannelInfo);

      string destFileName = Path.Combine(LEAD_VARS.ImagesDir, "Channel_");
      destFileName = destFileName + iCount + ".Bmp";

      codecs.Save(ChannelImage, destFileName, RasterImageFormat.Bmp, ChannelImage.BitsPerPixel);

      ChannelImage.Dispose();
   }
   // Clean up 
   codecs.Dispose();
}

static class LEAD_VARS
{
public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images";
}
RasterCodecsExamples.prototype.LoadPsdChannels = function () {
   Tools.SetLicense();
   with (Leadtools) {
      with (Leadtools.Codecs) {
         var codecs = new RasterCodecs();

         var srcFileName = "Assets\\Sunflower.psd";
         var loadFile;
         return Tools.AppInstallFolder().getFileAsync(srcFileName).then(function (loadFileX) {
            loadFile = loadFileX;
            return codecs.getInformationAsync(LeadStreamFactory.create(loadFile), false, 1)
         })
            .then(function (imageInfo) {
               for (var iCount = 0; iCount < imageInfo.psd.Channels; iCount++) {
                  var ChannelImage;
                  var ChannelInfo = new CodecsPsdChannelInfo();
                  var async = codecs.loadPsdChannelAsync(LeadStreamFactory.create(loadFile), 0, CodecsLoadByteOrder.rgb, iCount, ChannelInfo);
                  return WinJS.Promise.join(async).then(function (channelImage) {
                     ChannelImage = channelImage;
                     var destFileName = "Channel_";
                     destFileName = destFileName + iCount + ".Bmp";

                     return Tools.AppLocalFolder().createFileAsync(destFileName)
                  })
                  .then(function (saveFile) {
                     return codecs.saveAsync(ChannelImage, LeadStreamFactory.create(saveFile), RasterImageFormat.bmp, ChannelImage.BitsPerPixel)
                  })
                  .then(function () {

                     ChannelImage.close();
                  });
               }
            }).then(function () {
               // Clean up 
               codecs.close();
            });
      }
   }
}
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing;
using Leadtools.ImageProcessing.Color;

      
public async Task LoadPsdChannels()
{
   RasterCodecs codecs = new RasterCodecs();
   string srcFileName = @"Assets\Sunflower.psd";

   IStorageFile loadFile = await Tools.AppInstallFolder.GetFileAsync(srcFileName);
   CodecsImageInfo imageInfo = await codecs.GetInformationAsync(LeadStreamFactory.Create(loadFile), false, 1);
   for (int iCount = 0; iCount < imageInfo.Psd.Channels; iCount++)
   {
      CodecsPsdChannelInfo ChannelInfo = new CodecsPsdChannelInfo();
      RasterImage ChannelImage = await codecs.LoadPsdChannelAsync(LeadStreamFactory.Create(loadFile), 0, CodecsLoadByteOrder.Rgb, iCount, ChannelInfo);

      string destFileName = "Channel_";
      destFileName = destFileName + iCount + ".Bmp";

      IStorageFile saveFile = await Tools.AppLocalFolder.CreateFileAsync(destFileName);

      await codecs.SaveAsync(ChannelImage, LeadStreamFactory.Create(saveFile), RasterImageFormat.Bmp, ChannelImage.BitsPerPixel);

      ChannelImage.Dispose();
   }
   // Clean up 
   codecs.Dispose();
}
必要条件

ターゲットプラットホーム

参照

参照

RasterCodecsクラス
RasterCodecsメンバ