Image.FromFile Methode

Definitie

Hiermee maakt u een Image van het opgegeven bestand.

Overloads

Name Description
FromFile(String)

Hiermee maakt u een Image van het opgegeven bestand.

FromFile(String, Boolean)

Hiermee maakt u een Image bestand op basis van het opgegeven bestand met ingesloten informatie over kleurenbeheer in dat bestand.

FromFile(String)

Hiermee maakt u een Image van het opgegeven bestand.

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

Parameters

filename
String

Een tekenreeks die de naam bevat van het bestand waaruit u het Imagebestand wilt maken.

Retouren

Met Image deze methode wordt gemaakt.

Uitzonderingen

Het bestand heeft geen geldige afbeeldingsindeling.

– of –

GDI+ biedt geen ondersteuning voor de pixelindeling van het bestand.

Het opgegeven bestand bestaat niet.

filename is een Uri.

Voorbeelden

In het volgende codevoorbeeld ziet u hoe u de FromFileGetPropertyItem en SetPropertyItem methoden gebruikt. Dit voorbeeld is ontworpen voor gebruik met Windows Forms. Als u dit voorbeeld wilt uitvoeren, plakt u het in een formulier en verwerkt u de gebeurtenis van Paint het formulier door de DemonstratePropertyItem methode aan te roepen, door als door te geven e als 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

Opmerkingen

Beheerde GDI+ heeft ingebouwde coderingsprogramma's en decoders die ondersteuning bieden voor de volgende bestandstypen:

  • BMP

  • GIF

  • JPEG

  • PNG

  • TIFF

Het bestand blijft vergrendeld totdat het Image wordt verwijderd.

Als het bestand geen geldige afbeeldingsindeling heeft of als GDI+ de pixelindeling van het bestand niet ondersteunt, genereert deze methode een OutOfMemoryException uitzondering.

Note

De Image klasse biedt geen ondersteuning voor alfatransparantie in bitmaps. Als u alfatransparantie wilt inschakelen, gebruikt u PNG-afbeeldingen met 32 bits per pixel.

Zie ook

Van toepassing op

FromFile(String, Boolean)

Hiermee maakt u een Image bestand op basis van het opgegeven bestand met ingesloten informatie over kleurenbeheer in dat bestand.

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

Parameters

filename
String

Een tekenreeks die de naam bevat van het bestand waaruit u het Imagebestand wilt maken.

useEmbeddedColorManagement
Boolean

Ingesteld op true het gebruik van kleurbeheergegevens die zijn ingesloten in het afbeeldingsbestand; falseanders.

Retouren

Met Image deze methode wordt gemaakt.

Uitzonderingen

Het bestand heeft geen geldige afbeeldingsindeling.

– of –

GDI+ biedt geen ondersteuning voor de pixelindeling van het bestand.

Het opgegeven bestand bestaat niet.

filename is een Uri.

Voorbeelden

In het volgende codevoorbeeld ziet u hoe u een nieuwe bitmap kunt verkrijgen met behulp van de FromFile methode. Het demonstreert ook een TextureBrush.

Dit voorbeeld is ontworpen voor gebruik met Windows Forms. Maak een formulier met een knop met de naam Button2. Plak de code in het formulier en koppel de Button2_Click methode aan de gebeurtenis van Click de knop.

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

Opmerkingen

Beheerde GDI+ heeft ingebouwde coderingsprogramma's en decoders die ondersteuning bieden voor de volgende bestandstypen:

  • BMP

  • GIF

  • JPEG

  • PNG

  • TIFF

Als het bestand geen geldige afbeeldingsindeling heeft of als GDI+ de pixelindeling van het bestand niet ondersteunt, genereert deze methode een OutOfMemoryException uitzondering.

Het bestand blijft vergrendeld totdat het Image wordt verwijderd.

De useEmbeddedColorManagement parameter geeft aan of de nieuwe Image kleurcorrectie toepast op basis van kleurbeheerinformatie die is ingesloten in het afbeeldingsbestand. Ingesloten informatie kan bestaan uit ICC-profielen (International Color Consortium), gammawaarden en chromaticiteitsinformatie.

Note

De Image klasse biedt geen ondersteuning voor alfatransparantie in bitmaps. Als u alfatransparantie wilt inschakelen, gebruikt u PNG-afbeeldingen met 32 bits per pixel.

Zie ook

Van toepassing op