Eu posso abrir pequenos tifs sem problema, mas esses tifs em 100 + MB não podem ser abertos no Paint.NET. Não acho que seja problema de memória, porque outro software pode ser aberto sem problemas (IrfanView, XNViewPortable). Esta é uma limitação de 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 de compilação 3.55.3767.28608) no XP SP3.
Atualizar:
eu acho que Joel Coehoorn A resposta está no caminho certo. Eu converti a imagem para preto / branco, resultando em um tamanho de arquivo de pouco menos de 5MB. Em seguida, tentou abrir e recebeu o erro novamente.
Usando o original, eu tentei todos os tipos de coisas e, eventualmente, descobri que, se eu reduzisse os pixels de 6000x6000 para 5000x5000, eu poderia abrir a imagem no Paint.NET (até 24 bits de cor).
Respostas:
Parece que você está recebendo uma exceção OutOfMemory. A exceção .Net OutOfMemory é um pouco enganosa. É muito mais comum ver essa exceção quando você fica sem espaço de endereçamento , 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 é 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 o heap de objetos grandes. O arquivo é então carregado de tal maneira que esse mesmo conjunto de memória é criado e destruído várias vezes, talvez de tal forma que fique um pouco maior a cada vez. O coletor de lixo não libera 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ê obtém uma exceção OutOfMemory.
A solução é para a Microsoft alterar o comportamento do tempo de execução do .Net em relação ao LOH, de modo que ele possa compactar o LOH em determinadas situações (talvez sob 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, seja qual for a estrutura de dados existente, causando o problema, em vez de recriá-lo repetidas vezes.
fonte
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.
fonte
talvez esteja tentando alocar um bloco de memória contíguo para ler o arquivo, tente fechar o máximo de aplicativos possível e tente abrir novamente.
fonte