Pergunta

Eu tenho essa classe chamada herói que tem os seguintes atributos. String é para letras, int para os números, etc. O que eu posso usar se eu vou estar salvando uma imagem lá?

public class Hero
{
    [Hero class's attributes (non-image related]
    public byte[] Portrait { get; set; }
    public byte[] Screenshot { get; set; }
}

Retrato e tela vão ser .png ou .jpg. Devo usar um byte [] array para eles? Estou um pouco confuso.

LOL, deixa pra lá. Eu descobri o meu erro. Eu tive que usar System.Windows.Media.Imaging. Vai figura.

Foi útil?

Solução

Eu estou indo para usá-los para apenas mostrando-lhes em um formulário WPF.

BitmapImage é bom para XAML aplicações com base, ou outra classe de derivados BitmapSource pode ser mais apropriado para as suas necessidades, caso contrário, apenas uma planície antiga Bitmap .

Outras dicas

Há uma real Bitmap classe . Gostaria de sugerir fortemente contra o uso de uma matriz de bytes para ele como que ele poderia se tornar corrompido e você iria invalidar a imagem. Se você manteve em um objeto Bitmap, você pode passar diretamente o objeto para o PictureBox controle e torná-lo na tela.

Additonally, ao contrário do formato BMP PNG [assumindo] e JPG não armazenar o formato de pixel da mesma forma ou representação. JPG faz modelo de montagem [dentro de blocos] (onde fica algumas de suas economias e perde informações) e armazena a representação do modelo em vez de valores de cor diretos.

Como é que você vai usá-los? A Imagem classe pode ser mais apropriado. Bitmap pode ser outra boa.

EDIT:

Em seguida, você vai querer usar um BitmapImage . Veja também SO 94456 para algum uso.

Depende:

  1. Se você precisar de manipular a imagem (girar, redimensionar etc), então use Bitmap (ou sua classe base - imagem ).
  2. Se você armazená-lo apenas para passar a imagem para o cliente (UI), então:
    1. Para utilização matriz aplicação web de bytes para que possa ser directamente processado para o fluxo de resposta.
    2. Para o uso do aplicativo WPF o que é fácil de se ligam a (que pode ser BitmapImage , consulte ).
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top