Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Naprawa uszkodzonych plików *.PNG

Ostatnio zmodyfikowano 2024-08-13 20:13
Autor Wiadomość
tBane
Temat założony przez niniejszego użytkownika
Naprawa uszkodzonych plików *.PNG
» 2024-08-11 22:55:56
Witam.
Uszkodziłem niechcący pliki *.PNG. Wczytuje je poniższym kodem. Da się jakoś zdiagnozować gdzie jest błąd i naprawić ?

C/C++
void editPixels() {
   
   
sf::Image i;
   
i.loadFromFile( "assets/sets/items/wool hat/attackBottom0.png" );
   
   
sf::Color color = sf::Color( 255, 255, 255 );
   
sf::Color newColor = i.getPixel( 0, 0 );
   
   
string folder_path = "assets/sets/items/plate armor/";
   
folder_path = "assets/monsters/bies/";
   
   
std::vector < std::string > png_files;
   
   
for( const auto & entry: filesystem::directory_iterator( folder_path ) ) {
       
if( entry.is_regular_file() && entry.path().extension() == ".png" ) {
           
png_files.push_back( entry.path().string() );
       
}
    }
   
   
for( auto & png: png_files ) {
       
sf::Image img;
       
img.loadFromFile( png.c_str() );
       
       
for( int y = 0; y < img.getSize().y; y++ )
           
 for( int x = 0; x < img.getSize().x; x++ ) {
           
if( img.getPixel( x, y ) == color ) {
               
img.setPixel( x, y, newColor );
           
}
           
        }
       
       
img.saveToFile( png.c_str() );
   
}
   
}

Failed to load image "assets/monsters/bies/idleTop0.png". Reason: Image not of any known type, or corrupt
Failed to load image "assets/monsters/bies/idleRight0.png". Reason: Image not of any known type, or corrupt
Failed to load image "assets/monsters/bies/idleBottom0.png". Reason: Image not of any known type, or corrupt
Failed to load image "assets/monsters/bies/idleLeft0.png". Reason: Image not of any known type, or corrupt
Failed to load image "assets/monsters/bies/attackTop0.png". Reason: Image not of any known type, or corrupt
Failed to load image "assets/monsters/bies/attackRight0.png". Reason: Image not of any known type, or corrupt
Failed to load image "assets/monsters/bies/attackBottom0.png". Reason: Image not of any known type, or corrupt
Failed to load image "assets/monsters/bies/attackLeft0.png". Reason: Image not of any known type, or corrupt
Failed to load image "assets/monsters/bies/runTop0.png". Reason: Image not of any known type, or corrupt
P-181432
pekfos
» 2024-08-11 23:07:36
Przywróć z backupu. Nie powinno być problemu skoro projekt trzymasz na githubie.

 Da się jakoś zdiagnozować gdzie jest błąd i naprawić ?
Może jakby mieć pliki w których jest problem..? O ile coś z nich zostało. Pewnie mają zero bajtów, a z pustego i Salomon nie wczyta.
P-181434
tBane
Temat założony przez niniejszego użytkownika
» 2024-08-12 15:59:20
no właśnie nie zdążyłem zrobić bakcupa na githubie. Pliki nie są puste - mają poprawne rozmiary tylko nie mogę ich wczytać. Pliki wyglądają następująco:

https://drive.google.com/drive/folders/1safqETkre-wU1d0OjKeQB_AqExMPMTZy?usp=drive_link
P-181437
pekfos
» 2024-08-12 17:19:03
Te pliki zawierają same zera. Będziesz miał nauczkę by nie pisać narzędzi które nadpisują pliki wejściowe. Albo nie odpalaj ich na jedynej kopii. Ciekawe jak w ogóle udało ci się uzyskać takie uszkodzenie.
P-181438
tBane
Temat założony przez niniejszego użytkownika
» 2024-08-12 18:11:10
Skąd wiadomo, że te pliki zawierają same zera. Jak to sprawdzić?
P-181439
pekfos
» 2024-08-12 18:51:40
Najlepiej hex edytorem, na przykład HxD (https://mh-nexus.de/en/hxd/).
P-181440
tBane
Temat założony przez niniejszego użytkownika
» 2024-08-13 20:13:24
Faktycznie są same zera. No szkoda, będę musiał grafiki na nowo zrobić. Dzięki za pomoc. :-)
P-181441
« 1 »
  Strona 1 z 1