question

Como ler um arquivo de bitmap usando python?

Se eu tiver um arquivo de bitmap, por exemplo, myfile.bmp, como lê-lo com python, alterar algum valor de bits e salve novamente o arquivo? Obrigado!
resposta Resposta
Você pode usar o livre, open source, funções de biblioteca de Python de terceiros para fazer isso.

Você tem algumas opções em qual biblioteca de terceiros para usar.

PIL (Python imaging library) funciona em lotes de diferentes plataformas. MS-Windows, Linux, etc. Ele tem uma API bem arrumado e limpo. Ele pode ler & exibir arquivos de imagem. Pode também processamento de imagem e salvar imagens em arquivos de disco também.

Existem Win32 extensões (MS-Windows) para Python que dão seus programas Python acesso direto à API do Win32, COM e aplicativos de gravação GUI, mesmo. É um bom pacote para quem já sabe MS-Windows APIs, quero aproveitar serviços/componentes do Windows ou precisa chamar um monte de APIs do Windows. O problema é que seu programa pode ser executado somente no MS-Windows. No seu caso, que pode não ser qualquer problema em tudo desde os arquivos BMP são geralmente somente de interesse para as pessoas usando o Windows ou fazer um ícone favorito para seu servidor web.

A última versão do Python é 2.6.4.

A versão mais recente do Mac OS X (10.6, "Snow Leopard") vem com Python 2.6.4

Distribuições Linux variam com o que eles incluem ferramentas de programação. Você pode encontrar Python e PIL já estão instalados. Se sua versão do Linux é novo, você pôde mesmo ter a versão mais recente do Python & PIL. Se você não fizer isso, use qualquer Gerenciador de pacotes veio com sua distribuição e instalá-los de seu CD de instalação ou na Internet.

MS-Windows só vem com linguagens de programação proprietárias, então você precisa fazer o download separadamente. Eles não servem para atravessar os desenvolvedores de plataforma a maneira que o Linux e Apple/Mac.

Obter Python do python.org web site. Eles têm um arquivo MSI (instalação de Microsoft) que torna simples para que você possa instalá-lo em seu computador com MS-Windows. Verifique se há suporte para sua versão do MS-Windows. Depois que fizer isso, não há mais um passo.

Para obter as extensões de win32 para Python no MS-Windows, cabeça sobre ao SourceForge.net e baixar o instalador de projeto 'pywin32'. Isso lhe dará acesso para o Win32 APIs et al.

Eu não trabalho muito com arquivos BMP ou Win32 API muito mais mas eu acho que as funções de API do Windows para eles têm "DIB" no nome (Bitmap independente de dispositivo).

Você provavelmente deseja criar um objeto DIB, use uma função para definir os bits com os valores que você ler de um DIB armazenado em um arquivo BMP. Então possivelmente esticar seu DIB com uma função de API ou cortá-lo, embora provavelmente você não fizer isso e deve ignorar alongamento/corte. Você pode usar as funções de elementos gráficos de Win32 API nele. () Por último mas não menos importante, gravar o DIB em um arquivo usando a API do Win32. Eu acho que a Microsoft poderia ter uma nota técnica e/ou c programa de exemplo que você pode usar como um exemplo.

Agora, se você apenas deseja alterar alguns pixels você pode escolher diretamente manipular os pixels correspondentes, mas tenha cuidado. A ausência de disposição os bits na estrutura de dados podem lançar você uma bola curva ou dois se você não leia a documentação da API de perto.

ComentáriosComentários
Acho que a resposta não está correta ou que você gostaria de acrescentar mais
alguma informação? Envie o seu comentário abaixo..

Guest


HTML não é permitido!

Image Code

Digite os caracteres que aparecem na imagem por isso sabemos que você é humano!

Receber um email quando alguém acrescenta outro comentário a esta pergunta


Topo da página


Home  Terms
Copyright © Accelerated Ideas 2005-2024
All rights reserved