Heim  >  Artikel  >  Backend-Entwicklung  >  So zeigen Sie Bilder im C-Sprachcode an

So zeigen Sie Bilder im C-Sprachcode an

下次还敢
下次还敢Original
2024-04-04 22:39:291248Durchsuche

Um Bilder in C-Sprache anzuzeigen, können Sie die SDL2-Bibliothek initialisieren Ressourcen.

So zeigen Sie Bilder im C-Sprachcode an

Bilder in C-Sprache anzeigen

In C-Sprache können Sie die SDL2-Bibliothek (Simple DirectMedia Layer) zum Anzeigen von Bildern verwenden. Die folgenden Schritte beschreiben, wie Sie SDL2 zum Anzeigen von Bildern in C verwenden:

<code class="c">#include <stdio.h>
#include <SDL2/SDL.h>

int main() {
  if (SDL_Init(SDL_INIT_VIDEO) != 0) {
    fprintf(stderr, "SDL_Init Error: %s\n", SDL_GetError());
    return 1;
  }</code>
2. Erstellen Sie ein Fenster

<code class="c">  SDL_Window *window = SDL_CreateWindow("Image Viewer", SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED, 800, 600, SDL_WINDOW_SHOWN);
  if (window == NULL) {
    fprintf(stderr, "SDL_CreateWindow Error: %s\n", SDL_GetError());
    SDL_Quit();
    return 1;
  }</code>
4 . Bild laden

<code class="c">  SDL_Renderer *renderer = SDL_CreateRenderer(window, -1, SDL_RENDERER_ACCELERATED);
  if (renderer == NULL) {
    fprintf(stderr, "SDL_CreateRenderer Error: %s\n", SDL_GetError());
    SDL_DestroyWindow(window);
    SDL_Quit();
    return 1;
  }</code>
5. Bildtextur erstellen

<code class="c">  SDL_Surface *image = SDL_LoadBMP("image.bmp");
  if (image == NULL) {
    fprintf(stderr, "SDL_LoadBMP Error: %s\n", SDL_GetError());
    SDL_DestroyRenderer(renderer);
    SDL_DestroyWindow(window);
    SDL_Quit();
    return 1;
  }</code>
7. Bild rendern

<code class="c">  SDL_Texture *texture = SDL_CreateTextureFromSurface(renderer, image);
  SDL_FreeSurface(image);
  if (texture == NULL) {
    fprintf(stderr, "SDL_CreateTextureFromSurface Error: %s\n", SDL_GetError());
    SDL_DestroyRenderer(renderer);
    SDL_DestroyWindow(window);
    SDL_Quit();
    return 1;
  }</code>
9. Schleife

<code class="c">  SDL_RenderClear(renderer);</code>
10. Zerstöre Ressourcen

<code class="c">  int w, h;
  SDL_QueryTexture(texture, NULL, NULL, &w, &h);
  SDL_Rect dstrect = { 0, 0, w, h };
  SDL_RenderCopy(renderer, texture, NULL, &dstrect);</code>

Das obige ist der detaillierte Inhalt vonSo zeigen Sie Bilder im C-Sprachcode an. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn