# dxConvertPixels (Cliente)

> Converte uma imagem guardada numa string para outro formato, em segundo plano, e entrega o resultado a uma função.

- **Plataforma**: MY Multiplayer (MYMP)
- **Tipo**: Função Lua
- **Lado**: Cliente
- **Categoria**: Desenho na tela
- **URL**: https://wiki.mymp.gg/pt/dxConvertPixels

## Sintaxe

```lua
bool dxConvertPixels(string pixels, string format, function callback [, int quality = 80])
```

## Parâmetros

| Nome | Tipo | Descrição |
| --- | --- | --- |
| `pixels` | `string` | Os pixels. |
| `format` | `string` | Formato de destino: `plain`, `png` ou `jpeg`. |
| `quality` | `int` | Qualidade do `jpeg`, de 0 a 100. *(padrão: `80`)* |
| `callback` | `function` | Recebe os pixels convertidos, ou `false` se a conversão falhou. |

## Retorno

`true` se a conversão começou. `false` se o formato de origem não foi reconhecido ou se a conversão é de ou para `dds`.

## Exemplo

```lua
local target = dxCreateRenderTarget(256, 256)

dxGetTexturePixels(target, function(pixels)
    if not pixels then return end
    dxConvertPixels(pixels, "jpeg", 90, function(jpeg)
        if jpeg then
            local file = fileCreate("snapshot.jpg")
            fileWrite(file, jpeg)
            fileClose(file)
        end
    end)
end)
```

### Vindo do MTA

No MTA o resultado é devolvido na hora. No MYMP ele chega numa função, porque a conversão roda numa thread de trabalho.

## Veja também

- [dxGetTexturePixels (Cliente)](https://wiki.mymp.gg/pt/dxGetTexturePixels.md): Lê os pixels de uma imagem e os entrega a uma função, alguns quadros depois.
- [dxGetPixelsFormat (Cliente)](https://wiki.mymp.gg/pt/dxGetPixelsFormat.md): Detecta o formato de uma imagem guardada numa string.
- [dxSetTexturePixels (Cliente)](https://wiki.mymp.gg/pt/dxSetTexturePixels.md): Escreve pixels numa textura criada por script ou num render target.
