Konwertuj png do dll

Konwertuj PNG na DLL

Spakuj plik PNG jako Windows resource DLL lub zastąp zgodny zasób ikony i bitmapy.

Konwertuj pliki PNG online

Nie mamy jeszcze dedykowanego konwertera online dla PNG na DLL, ale pliki PNG możesz przekonwertować online na te i inne formaty:

Jak konwertować png do dll

Program Windows może wymagać obrazu spakowanego wewnątrz biblioteki DLL jako zasobu albo istniejąca biblioteka DLL może wymagać zastąpienia swojej ikony lub bitmapy. Nie jest to zwykła konwersja formatu obrazu: plik PNG musi zostać osadzony w nowo zbudowanej bibliotece DLL zasobów albo przekonwertowany do typu zasobu oczekiwanego przez aplikację hosta.

Czym jest format PNG

PNG (Portable Network Graphics) to format rastrowy używany przez przeglądarki internetowe, narzędzia do wykonywania zrzutów ekranu, aplikacje do projektowania, takie jak Adobe Photoshop i GIMP, oraz oprogramowanie przechowujące grafikę interfejsu. Wykorzystuje kompresję bezstratną i obsługuje przezroczystość za pomocą kanału alfa, dzięki czemu nadaje się do zrzutów ekranu, logo, ikon i obrazów interfejsu użytkownika.

Czym jest format DLL

DLL oznacza Dynamic-Link Library. DLL to plik Windows Portable Executable, który może zawierać kod wykonywalny, eksportowane funkcje oraz zasoby, takie jak ikony, okna dialogowe, ciągi znaków, manifesty lub dane surowe. Programy ładują biblioteki DLL w czasie działania, aby współdzielić funkcje lub pobierać spakowane zasoby.

DLL nie jest formatem obrazu. Plik PNG osadzony w DLL nadal zawiera dane PNG; nie staje się kodem wykonywalnym. Program odbierający musi znać typ i identyfikator zasobu albo biblioteka DLL musi implementować eksportowane funkcje i konwencję wywołań oczekiwane przez program.

Jak spakować PNG w nowej bibliotece DLL

Zbuduj resource-only DLL

Zainstaluj Microsoft Visual Studio Build Tools lub Windows SDK, a następnie otwórz Developer Command Prompt for Visual Studio. Umieść plik PNG i skrypt zasobów o nazwie resources.rc w tym samym katalogu:

101 RCDATA "image.png"

RCDATA przechowuje oryginalne bajty PNG bez ich dekodowania lub ponownej kompresji. Skompiluj i połącz zasób:

rc /fo resources.res resources.rc
link /dll /noentry /out:images.dll resources.res

Wynikowy plik images.dll to resource-only DLL bez eksportowanych funkcji. Zgodna aplikacja musi pobrać zasób o identyfikatorze 101 za pomocą funkcji Win32, takich jak FindResource, LoadResource, LockResource i SizeofResource, a następnie zdekodować bajty za pomocą biblioteki obsługującej PNG, takiej jak Windows Imaging Component (WIC).

Zbuduj standardowe zasoby ikon lub bitmap

Używaj tej metody tylko wtedy, gdy aplikacja docelowa oczekuje standardowego zasobu Windows zamiast dowolnych danych PNG. Przekonwertuj obraz za pomocą ImageMagick:

magick image.png image.ico
magick image.png image.bmp

Plik ICO może zawierać kilka rozmiarów ikon i głębi kolorów. Zasób BMP zazwyczaj nie zachowuje przezroczystości PNG równie niezawodnie, a konwersja może zwiększyć rozmiar pliku. Zadeklaruj wymagane typy zasobów w pliku resources.rc:

101 ICON "image.ico"
102 BITMAP "image.bmp"

Skompiluj bibliotekę DLL zasobów za pomocą:

rc /fo resources.res resources.rc
link /dll /noentry /out:images.dll resources.res

Aplikacja wyszukująca zasób ICON nie użyje automatycznie zasobu RCDATA zawierającego PNG. Identyfikatory zasobów, typy zasobów oraz wszelkie oczekiwane konwencje nazewnictwa muszą być zgodne z programem hosta.

Zastąp obraz w istniejącej bibliotece DLL

Jeśli biblioteka DLL zawiera już wymagany kod programu i strukturę zasobów, użyj Resource Hacker, aby zastąpić istniejącą ikonę, bitmapę lub zgodny zasób danych surowych. Otwórz kopię biblioteki DLL, wybierz odpowiedni zasób, wybierz Action → Replace Icon lub Action → Replace Bitmap, podaj zgodny plik .ico lub .bmp i zapisz plik pod nową nazwą. Zastąpienie dowolnych danych PNG wymaga znalezienia właściwego zasobu RCDATA oraz zachowania jego identyfikatora i oczekiwanego formatu; polecenie zastępowania ikony nie może automatycznie konwertować każdego zasobu PNG.

Narzędzia online i desktopowe

Usługi online, takie jak CloudConvert lub Convertio, mogą konwertować PNG do ICO, gdy rzeczywistym wymaganiem jest plik ikony, ale nie mogą określić identyfikatorów zasobów biblioteki DLL, jej eksportowanego interfejsu, architektury ani ABI. Użyj Visual Studio Build Tools lub Windows SDK do utworzenia biblioteki DLL, ImageMagick do przygotowania plików ICO lub BMP oraz Resource Hacker do edycji zgodnych istniejących zasobów. Unikaj przesyłania zastrzeżonych obrazów lub bibliotek DLL do usług online.

Ograniczenia zgodności i jakości

  • Nie istnieje uniwersalna konwersja PNG do DLL. Cel może wymagać określonego typu zasobu, identyfikatora, eksportowanej nazwy, konwencji wywołań, architektury Windows lub wersji DLL.
  • Biblioteka DLL 32-bitowa musi zostać załadowana do procesu 32-bitowego, a biblioteka DLL 64-bitowa do procesu 64-bitowego. Windows nie może załadować biblioteki DLL o niewłaściwej architekturze do istniejącego procesu.
  • Przechowywanie PNG jako RCDATA zachowuje jego oryginalną kompresję bezstratną i kanał alfa, ale aplikacja musi go zdekodować. Konwersja do BMP może usunąć lub zmienić przezroczystość i może utworzyć większy plik.
  • Edycja podpisanej lub chronionej biblioteki DLL unieważnia jej podpis cyfrowy i może spowodować problemy z sumami kontrolnymi, sprawdzaniem wersji, instalatorami, aktualizacjami lub ładowaniem aplikacji. Zachowaj oryginalną kopię zapasową i modyfikuj oprogramowanie innych firm tylko wtedy, gdy zezwala na to jego licencja.

Porównanie formatu PNG z DLL

Jak formaty PNG i DLL wypadają w porównaniu pod względem najważniejszych cech dla tej konwersji.

Porównanie formatów plików PNG i DLL
Cecha .PNG Portable Network Graphics .DLL Dynamic-Link Library
Kompresja Bezstratne Bez kompresji
Przezroczystość Tak
Animacja Nie Nie
Warstwy Nie Nie
Głębia kolorów True color z alpha (32-bit)
Obsługa metadanych Rozbudowany Podstawowy
Otwiera się w przeglądarce internetowej Tak, natywnie Nie
Typowy rozmiar pliku Mały Średni
Otwarty standard Tak Nie
Najlepszy do Publikacja w sieci Osadzanie w aplikacjach
Wprowadzono 1996 1993
Twórca PNG Development Group Microsoft
Typ MIME image/png