obsługa błędów JPG

0

witam

tworzę program w którym jest między innymi sprawdzanie rozdzielczości pliku jpg
nie wiedziałem jak to zrobić inaczej więc zrobiłem przez jpg.loadfromfile i później jpg.height / width
z tym, że nie wszystkie pliki się otwierają (nie mam pojęcia czemu, na niektórych wywala błąd, ale zawsze na tych samych)

  1. czy da się wyciągnąć rozdzielczość bez ładowania (przyśpieszy pracę, prawda?)
  2. jeśli nie to jak sprawdzić przed załadowaniem pliku i wywaleniem błędu czy program da radę go wczytać? tak żeby w razie błędu pomijał plik, ewentualnie robił coś w związku z błędem, a później kontynuował przerabianie plików

a przy okazji... w necie jest multum informacji jak obsługiwać jpg, a jak szukam czegoś o np gifach to znajduję tylko komponent :/ jak wyglądają podstawowe operacje na gifach i png? stworzenie obrazka, załadowanie z pliku, zamiana na bmp?

Z góry dzięki za pomoc
Pozdrawiam

0

dzięki!
a jak wczytać rozdzielczość obrazka bez ładowania pliku?
i jak obsługuje się gif'y i png?

0

do gifów i png masz komponenty, a jak wolisz po swojemu to użyt TimageList, załaduj tam klatki i wyświetlaj poklei np w pętli

0

nie chodzi o animowanie gifów na piechotę
tylko wczytanie, wydobycie rozdzielczości, przerobienie na bmp
z użyciem tylko standardowych komponnentów

0

zastanawiam się czy wczytanie np kilkuset plików nie spowolni działania programu, czy nie szybciej będzie wyciągnąć rozdzielczość bez ładowania pliku do pamięci. tylko sęk w tym że nie wiem jak to zrobić, nawet na jpg'u

0

Wiem że w delphi macie do wszystkiego komponenty ;-P, ale możesz spróbować ręcznie.

Np. GIF - http://www.wotsit.org/list.asp?search=gif&button=GO! - znalazłem dokładny opis formatu - http://www.wotsit.org/download.asp?f=gif&sc=333789306 - wczytujesz 7 i 8 bajt jako szerokość a 9 i 10 jako wysokość (w formacie little endian, ale tym się raczej nie musisz przejmować)

Co do jpg i png już nie sprawdzałem, szukaj na tamtej stronie informacji o tych formatach.
http://www.wotsit.org/list.asp?search=jpg&button=GO!
http://www.wotsit.org/list.asp?search=png&button=GO!
A jak się już zniechęcisz to powróć do komponentów ;)

0

ciekaw jestem jak się w delphi wczytuje któryśtam z kolei bajt pliku... no ale ok...
nie chce komponentów bo nie pracuje na delphi tylko na lazarusie bo jest darmowy, legalny i komercyjny

1 użytkowników online, w tym zalogowanych: 0, gości: 1