Existe um limite de tamanho de arquivo no Paint.NET

Existe um limite de tamanho de arquivo no Paint.NET

Posso abrir tifs menores sem problemas, mas esses tifs com mais de 100 MB não podem ser abertos no Paint.NET. Não creio que seja problema de memória, pois outros softwares podem abrir sem problemas (IrfanView, XNViewPortable). Esta é uma limitação do software?

"Ocorreu um erro não especificado ao abrir o arquivo."

http://dl.dropbox.com/u/1156285/PaintDotCrash_OpenBifTif.avi

Estou usando o Paint.NET v3.5.5 (versão final 3.55.3767.28608) no XP SP3.

Atualizar:

Eu pensoJoel Coehoorna resposta está no caminho certo. Converti a imagem para preto e branco, resultando em um tamanho de arquivo de pouco menos de 5 MB. Em seguida, tentei abrir e recebi o erro novamente.

Usando o original, tentei de tudo e acabei descobrindo que se reduzisse os pixels de 6000x6000 para 5000x5000, poderia abrir a imagem no Paint.NET (até mesmo em cores de 24 bits).

Responder1

Parece que você está recebendo uma exceção OutOfMemory. A exceção .Net OutOfMemory é um pouco enganadora. É muito mais comum ver essa exceção quando você fica semespaço de endereço, que é um pouco diferente da memória física. Isso significa que coisas como verificar o gerenciador de tarefas para ver quanta memória está sendo usada podem não ajudar a rastrear o problema.

Em vez disso, o problema é provavelmente o resultado de um bug no Paint.Net, de modo que certas partes da imagem são colocadas pelo tempo de execução .Net em algo chamado Large Object Heap. O arquivo é então carregado de forma que esse mesmo conjunto de memória seja criado e destruído diversas vezes, talvez de forma que fique um pouco maior a cada vez. O coletor de lixo não libera ou compacta muito bem o espaço de endereço do Large Object Heap (mesmo que a memória física tenha sido liberada ou paginada) e, de repente, você recebe uma exceção OutOfMemory.

A solução é a Microsoft alterar o comportamento do tempo de execução .Net em relação ao LOH, de modo que possa entrar e compactar o LOH em determinadas situações (talvez mediante solicitação ou antes de lançar a exceção OutOfMemory), ou para o Programa Paint.Net para corrigir a maneira como ele carrega o arquivo, de modo que ele cresça corretamente qualquer estrutura de dados existente que esteja causando o problema, em vez de recriá-la continuamente.

Responder2

A maneira como um arquivo como esse é armazenado na memória afeta a quantidade de memória necessária. Os outros aplicativos podem ser mais eficientes em termos de memória.

Dada a sua descrição, realmente parece que o Paint.NET está sem memória. Você pode tentar abrir o Gerenciador de Tarefas ao tentar abrir o arquivo para ver se o uso de memória aumenta.

Responder3

pode estar tentando alocar um bloco contíguo de memória para ler o arquivo, tente fechar o máximo de aplicativos possível e tente abri-lo novamente.

informação relacionada