jak skalować ikony ico?

0

Na razie nie robię programu, ale już w myślach mam pomysł na jeden i przydałyby się jakieś mini porady od was.

Tak na oko w uproszczeniu:

procedure WczytajIkone(sciezka: String);
begin
Form1.Image1.Picture.Icon.Handle:= ExtractIcon(Form1.Handle, PChar(sciezka), 0);
end;

i pod buttonem:

begin
WczytajIkone('D:\programy\JakisProgram\PrzykladowoOdtwarzaczFilmow.exe');
end;

I to powinno wyciągnąć ikonkę z dowolnego programu i wyświetlić ją na TImage. Z tego co pamiętam, zmieniając właściwości w TImage, skalowania (zmniejszenia/zwiększania wielkości) ikony nie zrobimy i stąd pytanie - jak naprościej i najlepiej zmniejszać ikonę lub ją zwiększać, standardowo ikony mają 32x32 pixele o ile pamiętam. Program zawsze przy starcie będzie wczytywał wiele ikon z wielu programów (nie będzie ikon zapisywał na dysku).

Także proszę o jakieś mini porady. Nie musicie wcale kodu wklejać, wystarczy nakierować mnie na coś, czy mam "zapisywać" na sekundę ikonkę i jakimś sposobem przekonwertować ją na JPG, czy na coś i bawić się, czy może nie trzeba takich rzeczy robić, wystarczy coś innego?

Niebawem będziecie jeść kolację więc życzę smacznego wszystkim.

0

Także proszę o jakieś mini porady. Nie musicie wcale kodu wklejać, wystarczy nakierować mnie na coś, czy mam "zapisywać" na sekundę ikonkę i jakimś sposobem przekonwertować ją na JPG, czy na coś i bawić się, czy może nie trzeba takich rzeczy robić, wystarczy coś innego?

Wystarczy spróbować wczytać ją w odpowiednim rozmiarze używając ExtractIconEx, jeżeli to nie pomoże to jest coś takiego jak TPicture.Icon.RawImage chociaż rzutowanie to też osoba ogarnięta jest w stanie zrobić (czytaj: za trudne dla ciebie). Generalnie to widzę że mamy do czynienia z osobą która twierdzi że gotowca nie potrzebuje natomiast nie wie nic, więc dalsze porady nie mają sensu. Gdybyś wiedział jak się programuje to byś to zrobił bez problemów.

Niebawem będziecie jeść kolację więc życzę smacznego wszystkim.

Zaraz będziesz programować więc powodzenia.

0
nowe napisał(a)

Z tego co pamiętam, zmieniając właściwości w TImage, skalowania (zmniejszenia/zwiększania wielkości) ikony nie zrobimy

Ikona jest zrobiona więc jej robić nie trzeba; Zmiany zostaną wprowadzone, ale zmienisz jedynie gabaryty kontrolki, nie samej ikony, więc ten sposób nie prowadzi do rozwiązania problemu;

nowe napisał(a)

standardowo ikony mają 32x32 pixele o ile pamiętam.

Standardowo gdzie? Ikony mogą mieć przeróżne rozmiary (16x16, 24x24, 32x32, 48x48, 96x96, 128x128, 256x256 lub inne dowolne, nawet 1x1), więc nie ma standardowych;

nowe napisał(a)

Nie musicie wcale kodu wklejać, wystarczy nakierować mnie na coś, czy mam "zapisywać" na sekundę ikonkę i jakimś sposobem przekonwertować ją na JPG, czy na coś i bawić się, czy może nie trzeba takich rzeczy robić, wystarczy coś innego?

Mogę napisać w ciemno - w sieci jest wiele bibliotek z filtrami graficznymi, które można wykorzystac we własnym projekcie; Możesz się nimi posłużyć niekoniecznie zapisując ikonę do pliku - zapewne obsługują strumienie;

-321oho napisał(a)

Generalnie to widzę że mamy do czynienia z osobą która twierdzi że gotowca nie potrzebuje natomiast nie wie nic, więc dalsze porady nie mają sensu.

Exactly;

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