Поделиться через


Image.FromFile Метод

Определение

Создает объект Image из указанного файла.

Перегрузки

FromFile(String)

Создает объект Image из указанного файла.

FromFile(String, Boolean)

Создает объект Image из указанного файла, используя внедренную информацию управления цветом из файла.

FromFile(String)

Исходный код:
Image.cs
Исходный код:
Image.cs
Исходный код:
Image.cs

Создает объект Image из указанного файла.

public:
 static System::Drawing::Image ^ FromFile(System::String ^ filename);
public static System.Drawing.Image FromFile (string filename);
static member FromFile : string -> System.Drawing.Image
Public Shared Function FromFile (filename As String) As Image

Параметры

filename
String

Строка, содержащая имя файла, из которого следует создать объект Image.

Возвращаемое значение

Объект Image, создаваемый этим методом.

Исключения

Формат файла не является допустимым форматом изображения.

-или-

GDI+ не поддерживает формат пикселей файла.

Указанный файл не существует.

filename имеет значение Uri.

Примеры

В следующем примере кода показано, как использовать методы FromFileGetPropertyItem и SetPropertyItem . Этот пример предназначен для использования с Windows Forms. Чтобы запустить этот пример, вставьте его в форму и обработайте событие формы Paint , вызвав DemonstratePropertyItem метод , передав e как PaintEventArgs.

private:
   void DemonstratePropertyItem( PaintEventArgs^ e )
   {
      // Create two images.
      Image^ image1 = Image::FromFile( "c:\\FakePhoto1.jpg" );
      Image^ image2 = Image::FromFile( "c:\\FakePhoto2.jpg" );

      // Get a PropertyItem from image1.
      PropertyItem^ propItem = image1->GetPropertyItem( 20624 );

      // Change the ID of the PropertyItem.
      propItem->Id = 20625;

      // Set the PropertyItem for image2.
      image2->SetPropertyItem( propItem );

      // Draw the image.
      e->Graphics->DrawImage( image2, 20.0F, 20.0F );
   }
private void DemonstratePropertyItem(PaintEventArgs e)
{

    // Create two images.
    Image image1 = Image.FromFile("c:\\FakePhoto1.jpg");
    Image image2 = Image.FromFile("c:\\FakePhoto2.jpg");

    // Get a PropertyItem from image1.
    PropertyItem propItem = image1.GetPropertyItem(20624);

    // Change the ID of the PropertyItem.
    propItem.Id = 20625;

    // Set the PropertyItem for image2.
    image2.SetPropertyItem(propItem);

    // Draw the image.
    e.Graphics.DrawImage(image2, 20.0F, 20.0F);
}
Private Sub DemonstratePropertyItem(ByVal e As PaintEventArgs)

    ' Create two images.
    Dim image1 As Image = Image.FromFile("c:\FakePhoto1.jpg")
    Dim image2 As Image = Image.FromFile("c:\FakePhoto2.jpg")

    ' Get a PropertyItem from image1.
    Dim propItem As PropertyItem = image1.GetPropertyItem(20624)

    ' Change the ID of the PropertyItem.
    propItem.Id = 20625

    ' Set the PropertyItem for image2.
    image2.SetPropertyItem(propItem)

    ' Draw the image.
    e.Graphics.DrawImage(image2, 20.0F, 20.0F)
End Sub

Комментарии

Управляемый GDI+ имеет встроенные кодировщики и декодеры, которые поддерживают следующие типы файлов:

  • BMP

  • GIF

  • JPEG

  • PNG

  • TIFF

Файл остается заблокированным до тех пор, пока не Image будет удален.

Если файл не имеет допустимого формата изображения или GDI+ не поддерживает формат пикселей файла, этот метод создает OutOfMemoryException исключение.

Примечание

Класс Image не поддерживает альфа-прозрачность в растровых изображениях. Чтобы включить альфа-прозрачность, используйте изображения PNG с 32 битами на пиксель.

См. также раздел

Применяется к

FromFile(String, Boolean)

Исходный код:
Image.cs
Исходный код:
Image.cs
Исходный код:
Image.cs

Создает объект Image из указанного файла, используя внедренную информацию управления цветом из файла.

public:
 static System::Drawing::Image ^ FromFile(System::String ^ filename, bool useEmbeddedColorManagement);
public static System.Drawing.Image FromFile (string filename, bool useEmbeddedColorManagement);
static member FromFile : string * bool -> System.Drawing.Image
Public Shared Function FromFile (filename As String, useEmbeddedColorManagement As Boolean) As Image

Параметры

filename
String

Строка, содержащая имя файла, из которого следует создать объект Image.

useEmbeddedColorManagement
Boolean

Значение true для использования информации управления цветом, внедренной в файл изображения; в противном случае — значение false.

Возвращаемое значение

Объект Image, создаваемый этим методом.

Исключения

Формат файла не является допустимым форматом изображения.

-или-

GDI+ не поддерживает формат пикселей файла.

Указанный файл не существует.

filename имеет значение Uri.

Примеры

В следующем примере кода показано, как получить новое растровое изображение с помощью FromFile метода . Он также демонстрирует TextureBrush.

Этот пример предназначен для использования с Windows Forms. Create форму, содержащую кнопку с именем Button2. Вставьте код в форму и свяжите Button2_Click метод с событием кнопки Click .

private:
   void Button2_Click( System::Object^ /*sender*/, System::EventArgs^ /*e*/ )
   {
      try
      {
         Bitmap^ image1 = dynamic_cast<Bitmap^>(Image::FromFile( "C:\\Documents and Settings\\"
         "All Users\\Documents\\My Music\\music.bmp", true ));
         TextureBrush^ texture = gcnew TextureBrush( image1 );
         texture->WrapMode = System::Drawing::Drawing2D::WrapMode::Tile;
         Graphics^ formGraphics = this->CreateGraphics();
         formGraphics->FillEllipse( texture, RectangleF(90.0F,110.0F,100,100) );
         delete formGraphics;
      }
      catch ( System::IO::FileNotFoundException^ ) 
      {
         MessageBox::Show( "There was an error opening the bitmap."
         "Please check the path." );
      }
   }
private void Button2_Click(System.Object sender, System.EventArgs e)
{
    try
    {
        Bitmap image1 = (Bitmap) Image.FromFile(@"C:\Documents and Settings\" +
            @"All Users\Documents\My Music\music.bmp", true);

        TextureBrush texture = new TextureBrush(image1);
        texture.WrapMode = System.Drawing.Drawing2D.WrapMode.Tile;
        Graphics formGraphics = this.CreateGraphics();
        formGraphics.FillEllipse(texture, 
            new RectangleF(90.0F, 110.0F, 100, 100));
        formGraphics.Dispose();
    }
    catch(System.IO.FileNotFoundException)
    {
        MessageBox.Show("There was an error opening the bitmap." +
            "Please check the path.");
    }
}
Private Sub Button2_Click(ByVal sender As System.Object, _
    ByVal e As System.EventArgs) Handles Button2.Click
    Try
        Dim image1 As Bitmap = _
            CType(Image.FromFile("C:\Documents and Settings\" _
            & "All Users\Documents\My Music\music.bmp", True), Bitmap)

        Dim texture As New TextureBrush(image1)
        texture.WrapMode = Drawing2D.WrapMode.Tile
        Dim formGraphics As Graphics = Me.CreateGraphics()
        formGraphics.FillEllipse(texture, _
            New RectangleF(90.0F, 110.0F, 100, 100))
        formGraphics.Dispose()

    Catch ex As System.IO.FileNotFoundException
        MessageBox.Show("There was an error opening the bitmap." _
            & "Please check the path.")
    End Try

End Sub

Комментарии

Управляемый GDI+ имеет встроенные кодировщики и декодеры, которые поддерживают следующие типы файлов:

  • BMP

  • GIF

  • JPEG

  • PNG

  • TIFF

Если файл не имеет допустимого формата изображения или GDI+ не поддерживает формат пикселей файла, этот метод создает OutOfMemoryException исключение.

Файл остается заблокированным до тех пор, пока не Image будет удален.

Параметр useEmbeddedColorManagement указывает, применяет ли новый Image объект цветовую коррекцию в соответствии со сведениями об управлении цветом, внедренными в файл изображения. Внедренные сведения могут включать профили Международного консорциума цветов (ICC), гамма-значения и сведения о цветности.

Примечание

Класс Image не поддерживает альфа-прозрачность в растровых изображениях. Чтобы включить альфа-прозрачность, используйте изображения PNG с 32 битами на пиксель.

См. также раздел

Применяется к