Přeskočit na obsah
Zpět na blog
řešení problémů
26. února 2026
GuruPDF Team
15 min čtení

Proč převod obrázků na vašem počítači selhává (a jak opravit každou chybu)

HEIC se neotevírá? ImageMagick „no decode delegate“? Python Pillow padá na RGBA? Tento průvodce pokrývá všechny běžné chyby převodu obrázků ve Windows, macOS a Linuxu — s reálnými chybovými kódy, vysvětlením a nejjednodušším řešením.

Převod obrázků mezi formáty zní, jako by měl být jednoduchý — stačí změnit příponu, že? Ve skutečnosti ale tisíce uživatelů každý den narážejí při převodu obrázků na svých lokálních počítačích na záhadné chyby, poškozené výstupy a pády softwaru. Zatímco online nástroje jako GuruPDF zvládnou úplně stejné převody bezchybně během několika sekund.

Tento článek jde do hloubky u nejčastějších chyb při převodu obrázků na Windows, macOS a Linuxu, vysvětluje, proč vznikají, a ukazuje, jak se jim úplně vyhnout.

Nejběžnější formáty obrázků (a proč si spolu ne vždy rozumí)

Než se pustíme do chyb, pojďme si ujasnit formáty, které způsobují nejvíc problémů:

Format Full Name Compression Transparency Typical Use
JPG/JPEG Joint Photographic Experts Group Ztrátová Ne Fotky, webové obrázky
PNG Portable Network Graphics Bezeztrátová Ano Snímky obrazovky, loga, grafika
WebP Web Picture Obojí Ano Moderní optimalizace pro web
HEIC/HEIF High Efficiency Image Container Ztrátová/Bezeztrátová Ano Fotky z iPhone/iPad (iOS 11+)
AVIF AV1 Image File Format Ztrátová/Bezeztrátová Ano Webový formát nové generace
SVG Scalable Vector Graphics N/A (vektor) Ano Ikony, ilustrace, loga
TIFF Tagged Image File Format Bezeztrátová Ano Tisk, skenování, archivace
BMP Bitmap Žádná Ne Starší formát Windows
GIF Graphics Interchange Format Bezeztrátová 1-bit Animace, jednoduchá grafika
EPS Encapsulated PostScript N/A (vektor) Ne Tiskový design, profesionální grafika
DJVU DjVu Ztrátová Ne Naskenované dokumenty, knihy

Problém? Většina operačních systémů a vestavěných nástrojů nativně podporuje jen hrstku z nich. A právě tady chyby začínají.

Chyba #1: „Windows Photo Viewer Can't Open This Picture“ (HEIC/AVIF/WebP)

Kódy a zprávy, které se vám mohou zobrazit:

"Windows Photo Viewer can't open this picture because either Photo Viewer
doesn't support this file format, or you don't have the latest updates."
"It looks like we don't support this file format."
— Microsoft Photos app
"0xc00d5212: This item was encoded in a format that's not supported."

Proč k tomu dochází: Windows 10/11 nativně nepodporují HEIC (výchozí formát fotek z iPhone od iOS 11) ani AVIF. Musíte si z Microsoft Store nainstalovat „HEIF Image Extensions“ (0,99 $) a „AV1 Video Extensions“. Podpora WebP byla přidána až ve Windows 10 verze 1809 a novější.

Pokus o lokální řešení: Nainstalovat balíčky kodeků, použít prohlížeče třetích stran nebo zkusit nástroje příkazové řádky jako ImageMagick:

bash
magick convert input.heic output.jpg

Jenže ImageMagick vyžaduje instalaci dalších „delegates“ (libheif, libde265), což často končí chybou:

convert: delegate failed `"dwebp" -pam "%i" -o "%o"' @ error/delegate.c/InvokeDelegate/1911.
convert: no decode delegate for this image format `HEIC' @ error/constitute.c/ReadImage/746.

Snadné řešení: Nahrajte své soubory HEIC, AVIF nebo WebP do GuruPDF a jedním kliknutím je převeďte na JPG nebo PNG — bez kodeků, bez instalací, bez chyb.

Chyba #2: „No Decode Delegate“ — ImageMagick bez potřebných kodeků

Celá chybová hláška:

convert: no decode delegate for this image format `WEBP' @ error/constitute.c/ReadImage/746.
convert: no decode delegate for this image format `SVG' @ error/constitute.c/ReadImage/746.
convert: no decode delegate for this image format `EPS' @ error/constitute.c/ReadImage/746.

Proč k tomu dochází: ImageMagick patří mezi nejoblíbenější nástroje pro práci s obrázky v příkazové řádce, ale ve výchozím stavu nemá dekodéry pro všechny formáty. Každý formát vyžaduje knihovnu „delegate“:

  • WebP vyžaduje libwebp
  • HEIC vyžaduje libheif + libde265
  • AVIF vyžaduje libavif + dav1d
  • SVG vyžaduje librsvg nebo Inkscape
  • EPS vyžaduje Ghostscript (gs)
  • DJVU vyžaduje djvulibre

Instalace na Windows je obzvlášť bolestivá — musíte stáhnout předkompilované DLL, dát je do správného adresáře a doufat, že se verze shodují.

Na macOS:

bash
brew install imagemagick --with-librsvg --with-libheif --with-webp

Často selže s:

Error: invalid option: --with-librsvg

Protože Homebrew změnil strukturu „formula“ a tyto volby byly odstraněny.

Na Linuxu (Ubuntu/Debian):

bash
sudo apt install imagemagick libheif-dev libwebp-dev

Stejně to může selhat, protože systémový ImageMagick byl zkompilovaný bez daného delegáta. Museli byste kompilovat ze zdroje:

bash
./configure --with-heic=yes --with-webp=yes
make && sudo make install

Což může trvat 10+ minut a může to být v konfliktu se systémovými balíčky.

Chyba #3: „Not a JPEG File: Starts With 0x89“ — špatná přípona souboru

Chybové zprávy:

Not a JPEG file: starts with 0x89 0x50
Corrupt JPEG data: premature end of data segment
libpng error: Not a PNG file
IHDR: CRC error

Proč k tomu dochází: Někdo přejmenoval soubor PNG na .jpg (nebo naopak). Přípona neodpovídá skutečnému binárnímu obsahu. Bajty 0x89 0x50 jsou „magic number“ PNG (první bajty každého PNG jsou 89 50 4E 47). JPEG soubory začínají FF D8 FF.

Překvapivě často se to stává při:

  • stahování obrázků z webu (servery někdy nastaví špatné hlavičky Content-Type)
  • hromadném přejmenování souborů bez skutečného převodu
  • e-mailových klientech nebo chatovacích aplikacích, které potichu mění přípony

Jak zjistit skutečný formát:

bash
file mysterious-image.jpg
# Output: mysterious-image.jpg: PNG image data, 1920 x 1080, 8-bit/color RGBA

Na Windows (PowerShell):

powershell
Format-Hex -Path .\image.jpg -Count 4
# If you see 89 50 4E 47, it's actually a PNG
# If you see FF D8 FF, it's a real JPEG

Výhoda online: GuruPDF automaticky rozpozná skutečný formát souboru bez ohledu na to, co říká přípona, a správně jej převede.

Chyba #4: Chyby při převodu v Python Pillow (PIL)

Běžné chybové zprávy:

python
PIL.UnidentifiedImageError: cannot identify image file 'photo.heic'
python
OSError: cannot write mode RGBA as JPEG
python
OSError: cannot write mode P as JPEG
python
PIL.Image.DecompressionBombError: Image size (178956970 pixels) exceeds limit of 89478485 pixels

Proč k tomu dochází: Knihovna Pillow v Pythonu je jasná volba pro programový převod obrázků, ale má výrazná omezení:

  1. Bez podpory HEIC bez pillow-heif (samostatná instalace vyžadující systémové knihovny)
  2. RGBA do JPEG selže, protože JPEG nepodporuje průhlednost — nejdřív musíte převést na RGB
  3. Paletový režim (P) do JPEG vyžaduje převod na RGB
  4. Velké obrázky spouštějí ochranu proti „decompression bomb“ (bezpečnostní funkce)

Typický „workaround“ kód, se kterým lidé bojují:

python
from PIL import Image

img = Image.open("photo.png")

# Handle transparency for JPEG output
if img.mode in ('RGBA', 'LA', 'P'):
    background = Image.new('RGB', img.size, (255, 255, 255))
    if img.mode == 'P':
        img = img.convert('RGBA')
    background.paste(img, mask=img.split()[-1])
    img = background

img.save("photo.jpg", "JPEG", quality=95)

To je spousta „boilerplate“ jen kvůli převodu jednoho obrázku. A stejně to bez dalších knihoven nezvládne HEIC, AVIF ani WebP.

Chyba #5: macOS Preview „Could Not Be Exported“

Chybové zprávy:

"The document 'image.webp' could not be exported as 'image.png'."
"The file isn't compatible with QuickLook."
"The document could not be opened. The file format is not supported."

Proč k tomu dochází: macOS Preview.app podporuje slušný rozsah formátů, ale starší verze macOS (před Ventura) nativně nepodporují WebP ani AVIF. Dokonce i na novějších verzích se převod mezi některými kombinacemi formátů potichu nezdaří nebo vyprodukuje poškozený výstup.

Běžné chyby příkazu macOS sips:

bash
sips -s format jpeg input.webp --out output.jpg
# Error: Unable to render input.webp as JPEG
# Error 4: no such operation
bash
sips -s format png input.svg --out output.png
# Error: Unable to render SVG

Nástroj sips (Scriptable Image Processing System) je součástí macOS, ale podporuje jen omezenou sadu formátů: JPEG, TIFF, PNG, GIF, BMP a PICT.

Chyba #6: Selhání převodu obrázků ve FFmpeg

Běžné chyby:

[image2 @ 0x...] Could not open file : output.webp
av_interleaved_write_frame(): Invalid argument
Avi/ASF stream 0 is not an image stream. Use -c:v png/mjpeg/... to encode it.
[svg @ 0x...] Cannot determine type of input
[heic @ 0x...] Unknown decoder 'heic'
Discarding frame which has a bad interlace type

Proč k tomu dochází: FFmpeg je primárně nástroj na video a i když umí převody obrázků, vyžaduje konkrétní podporu kodeků při kompilaci. Mnoha systémově instalovaným verzím FFmpeg chybí podpora HEIC/AVIF/WebP.

Chyba #7: Chyby hromadného zpracování v GIMP

Chybové zprávy v konzoli Script-Fu:

Error: ( : 1) eval: unbound variable: file-webp-save
batch command experienced an execution error:
Error: Procedure 'file-heif-load' not found
(gimp:12345): LibGfig-WARNING **: Bad path: /home/user/.gimp-2.10/gfig

Proč k tomu dochází: GIMP potřebuje pluginy pro novější formáty. Plugin pro WebP nemusí být nainstalovaný, podpora HEIF vyžaduje libheif a podpora AVIF vyžaduje GIMP 2.10.22+. Hromadné zpracování přes Script-Fu nebo Python-Fu přidává další vrstvu složitosti.

Chyba #8: „EXIF Data Lost“ — zničení metadat při převodu

Tohle není chybová hláška — jde o tichou ztrátu dat, které si spousta lidí všimne až příliš pozdě.

Co se ztratí:

  • Nastavení fotoaparátu (clona, čas závěrky, ISO)
  • GPS souřadnice (kde byla fotka pořízena)
  • Datum a čas pořízení
  • Informace o autorských právech
  • Barevný profil (sRGB, Adobe RGB, ProPhoto RGB)
  • Orientace (informace o otočení — vede k fotkám „na boku“)

Nástroje, které často odstraňují EXIF:

  • Windows Paint (odstraní vše)
  • mnoho online konvertorů (z „důvodů soukromí“, bez upozornění)
  • ImageMagick (standardně odstraňuje, pokud to explicitně neřídíte pomocí -strip)
  • Python Pillow (vyžaduje explicitní práci s EXIF přes exif=img.info.get('exif', b''))

Problém s orientací je obzvlášť zrádný:

Warning: JPEG file has EXIF orientation tag but image data is not rotated.
Auto-rotating image based on EXIF orientation.

Některé nástroje obrázek otočí, ale neaktualizují EXIF tag, což vede k dvojímu otočení v některých prohlížečích a správnému zobrazení v jiných.

Chyba #9: Problémy s barevným prostorem a ICC profily

Chybové zprávy:

lcms: not a valid ICC profile
color profile 'sRGB IEC61966-2.1' is not compatible with 'CMYK'
libpng warning: iCCP: known incorrect sRGB profile
JCS_CMYK JPEG image passed to JFIF converter

Proč k tomu dochází: Profesionální obrázky často používají barevný prostor CMYK (pro tisk) nebo wide-gamut profily (Adobe RGB, ProPhoto RGB). Při převodu do webových formátů (které používají sRGB) bez správné správy barev vznikají vybledlé nebo přesaturované barvy.

Co uvidíte: Obrázek, který na obrazovce vypadá perfektně, se po převodu změní na neonově zelený nebo bahnitě hnědý. Nebo profesionální fotka úplně přijde o syté barvy.

Technický důvod: CMYK má 4 barevné kanály (Cyan, Magenta, Yellow, Key/Black), zatímco RGB má 3 (Red, Green, Blue). Naivní převod neaplikuje správnou barevnou transformaci, a výsledkem jsou výrazně nesprávné barvy.

Chyba #10: Pády „File Too Large“ nebo „Out of Memory“

Chybové zprávy:

java.lang.OutOfMemoryError: Java heap space
Traceback: MemoryError
Fatal error: Allowed memory size of 134217728 bytes exhausted
convert: cache resources exhausted `input.tiff' @ error/cache.c/OpenPixelCache/3945.
convert: width or height exceeds limit `input.tiff' @ error/cache.c/OpenPixelCache/3912.

Proč k tomu dochází: Soubor TIFF o velikosti 100 MB při 300 DPI může mít rozlišení 8000×6000 pixelů. V paměti bez komprese je to:

  • 8000 × 6000 × 4 bajty (RGBA) = 192 MB RAM pro jediný obrázek
  • zpracování (změna velikosti, převod formátu) vyžaduje 2–3× tolik
  • dávkový převod 10 takových obrázků může spotřebovat 4–6 GB RAM

Většina desktopových aplikací a skriptů obrázky nezpracovává „streamově“ — načte celý obrázek do paměti najednou.

Výchozí limity v policy ImageMagick bývají příliš restriktivní:

# /etc/ImageMagick-6/policy.xml
<policy domain="resource" name="memory" value="256MiB"/>
<policy domain="resource" name="disk" value="1GiB"/>
<policy domain="resource" name="width" value="16KP"/>
<policy domain="resource" name="height" value="16KP"/>

Možná budete muset upravit policy.xml a limity zvýšit, ale to vyžaduje administrátorský přístup a porozumění konfiguraci XML.

Chyba #11: Převod SVG na rastrový obrázek — noční můry s „renderingem textu“

Běžné problémy:

Pango-WARNING **: failed to choose a font, expect ugly output
rsvg-convert: error: Error reading SVG: "Unexpected end of XML input"
cairo-WARNING: cairo_surface_destroy: Cannot modify an already-finished surface

Proč k tomu dochází: SVG soubory často odkazují na fonty, které v systému nemáte nainstalované. Při převodu do PNG nebo JPG renderovací engine dosadí výchozí font a úplně se změní vzhled textu. Přechody, filtry a vložené obrázky v SVG přidávají další možné body selhání.

Příklad problému s fonty:

Vaše SVG používá font-family: "Helvetica Neue", ale váš Linux server má pouze Liberation Sans. Výstup vypadá „jemně“ špatně — jiné rozestupy písmen, jiné řezy, posunutý text.

Proč online převod prostě funguje (když lokální nástroje ne)

Po všech těch chybách vás možná napadne: proč online nástroje zvládají tyto převody tak hladce?

1. Předkonfigurované prostředí: Online nástroje jako GuruPDF běží na serverech, kde jsou všechny kodeky, knihovny a delegáti předem nainstalované a správně nakonfigurované. Žádné chybějící libheif, žádná špatná politika ImageMagick, žádný chybějící Ghostscript.

2. Automatická detekce formátu: Server pozná skutečný formát souboru podle binární hlavičky (magic bytes), ne podle přípony. PNG zamaskované jako .jpg? Žádný problém.

3. Správná správa barev: Nástroje na straně serveru korektně zpracují ICC profily a převody barevných prostorů, takže zachovají vzhled obrázků.

4. Správa paměti: Cloudové servery mají dostatek prostředků a zpracovávají obrázky efektivně, takže zvládnou velké TIFF soubory i skeny ve vysokém rozlišení bez nedostatku paměti.

5. Vždy aktuální: Podpora nových formátů jako AVIF a HEIC se přidává na serveru. Na počítači nemusíte nic aktualizovat.

6. Bez instalačních bolestí: Žádná Python prostředí, žádný Homebrew, žádné DLL peklo, žádné úpravy policy.xml, žádná kompilace ze zdroje.

Nástroje GuruPDF pro převod obrázků

GuruPDF podporuje širokou škálu převodů formátů obrázků — zdarma a přímo v prohlížeči:

Z fotek a obrázků:

Vektorové a specializované formáty:

Nástroje pro optimalizaci:

Závěr: Přestaňte bojovat se svým počítačem

Pokud jste někdy strávili 30 minut snahou nainstalovat libheif na Windows, nebo jste přemýšleli, proč váš CMYK TIFF po převodu do JPG zezelenal, nebo vás zmátla chyba „no decode delegate“ — nejste sami. Převod obrázků by měl být jednoduchý, ale lokální nástroje ho zbytečně komplikují.

Až příště budete potřebovat převést obrázek, zkuste ho nejdřív nahrát do GuruPDF. Zvládne každý formát, zachová kvalitu a funguje v jakémkoli prohlížeči na jakémkoli zařízení. Žádné instalace, žádné chybové kódy, žádná frustrace.

Váš čas je lepší věnovat skutečné práci než ladění delegátů ImageMagick.