Zdravím, tak problém jsem vyřešil. Řešení je dost kostrbaté, háže to jednu vyjímku ale účel splňuje.
Dim Mem As New MemoryStream
Dim Img As Image
'Nejprve se graf uloží ve vektorovém formátu do MemoryStream
Chart1.SaveImage(Mem, ChartImageFormat.EmfDual)
'Stream se pak načte do Image, tady to háže vyjímku ArgumetException, každopádně dám F8 a ten MemoryStream to načte
Img = Image.FromStream(Mem)
'Nakonec se image hodí do Bitmapy, nastaví se rozlišení a exportujeme
Dim Bit As New Bitmap(Img, šířka, výška)
Bit.SetResolution(300, 300)
Bit.Save(Name, Imaging.ImageFormat.Tiff)
Výsledný TIF je mnohem menší (kB) než vektorový EMF (MB) a při tisku je ostrý jako břitva. Kdyby se s tím taky někdo drbal jako já, tak mu to možná pomůže. Pokud by jste mi někdo poradil jak přejít tu vyjímku, aby mi ji aplikace nehlásila a běžela dál bez upozornění a pozastavení aplikace budu rád.
|