https://github.com/mauricioreisdoefer/bmp-viewer
A bitmap image viewer with SDL3
https://github.com/mauricioreisdoefer/bmp-viewer
bitmap bmp c-language file-handling image-viewer sdl3
Last synced: 4 months ago
JSON representation
A bitmap image viewer with SDL3
- Host: GitHub
- URL: https://github.com/mauricioreisdoefer/bmp-viewer
- Owner: MauricioReisdoefer
- License: mit
- Created: 2026-02-10T10:28:53.000Z (4 months ago)
- Default Branch: main
- Last Pushed: 2026-02-14T06:41:36.000Z (4 months ago)
- Last Synced: 2026-02-15T01:54:24.868Z (4 months ago)
- Topics: bitmap, bmp, c-language, file-handling, image-viewer, sdl3
- Language: C
- Homepage:
- Size: 284 KB
- Stars: 2
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Roadmap: ROADMAP.md
Awesome Lists containing this project
README
# BMP Viewer
Um visualizador de imagens BMP simples desenvolvido em C utilizando a biblioteca SDL3.
## Funcionalidades
* Carregamento e exibição de imagens no formato BMP.
* Redimensionamento da janela de exibição com base nas dimensões fornecidas.
* Manipulação básica de eventos da janela (fechar).
* Conversão para preto e branco (`bw`).
* Inversão de cores (`inv`).
* Ajuste de brilho (`bright `).
## Como Usar
Para utilizar o BMP Viewer, siga os passos abaixo:
### Pré-requisitos
Você precisará ter o compilador GCC e a biblioteca SDL3 instalados em seu sistema.
* **GCC** (GNU Compiler Collection)
* **SDL3 Development Libraries**
### Compilação
Navegue até o diretório raiz do projeto e execute o seguinte comando para compilar o programa:
```shell
gcc main.c bmp.c utils.c -o bmp_viewer -IC:/libs/SDL3/include -LC:/libs/SDL3/lib -lSDL3
```
**Nota**: O caminho para os includes (`-I`) e bibliotecas (`-L`) da SDL3 (`C:/libs/SDL3/include` e `C:/libs/SDL3/lib`) pode variar dependendo da sua instalação. Certifique-se de ajustá-los conforme necessário para o seu ambiente.
### Execução
Após a compilação, você pode executar o visualizador fornecendo os seguintes argumentos:
```shell
./bmp_viewer [filtros]
```
#### Argumentos
* ``: Fator de escala horizontal (ex: 1, 2, 4). Um valor de `2` exibirá a imagem com metade da largura original.
* ``: Fator de escala vertical (ex: 1, 2, 4). Um valor de `2` exibirá a imagem com metade da altura original.
* ``: O caminho completo para o arquivo de imagem BMP de 24 bits que você deseja visualizar.
* `[flags]`: (Opcional) Um ou mais flags a serem aplicados à imagem. As flags disponíveis são:
* `bw`: Converte a imagem para preto e branco.
* `inv`: Inverte as cores da imagem.
* `bright `: Ajusta o brilho da imagem. O `` deve ser um número inteiro.
* `contrast `: Ajusta o contraste da image. O `` deve ser um número inteiro.
* `sepia`: Aplica um efeito de fotografia antiga, ajustando os canais RGB para tons amarelados/marrom.
* `save `: Salva a imagem no local determinado em ``. `` deve ser uma string.
#### Exemplos de Uso
1. **Visualizar uma imagem sem filtros, com redimensionamento:**
```shell
./bmp_viewer 2 2 bitmap_image.bmp
```
*Se a imagem original for 700x300 pixels, ela será exibida como 350x150 pixels.*
2. **Visualizar uma imagem em preto e branco:**
```shell
./bmp_viewer 1 1 bitmap_image.bmp bw
```
3. **Visualizar uma imagem com cores invertidas e brilho ajustado:**
```shell
./bmp_viewer 1 1 bitmap_image.bmp inv bright 50
```
4. **Visualizar uma imagem com múltiplos filtros:**
```shell
./bmp_viewer 2 2 bitmap_image.bmp bw inv bright -100
```
## Licença
Este projeto está licenciado sob a Licença MIT. Veja o arquivo `LICENSE` no repositório para mais detalhes.