resize BMP do duzych rozmiarow np 7000x10000pix

0

hej
mam problem przy zmienianiu rozmiaru (rozciaganiu) obrazka wiekszych rozmiarow. Na przyklad:

var
o1, o2 : TBitmap;
rozmiarDocelowy : TRect;

begin


   o1 := TBitmap.Create;
   o2 := TBitmap.Create;
   o2.Width :=     7000;
   o2.Height :=      10000;
   o1.LoadFromFile('c:/obr/oryg.bmp');
   o2.Canvas.StretchDraw(rect(0,0,7000,10000), o1);
   o2.SaveToFile('c:/obr/rozszerzony.bmp');
end;

i wywala mi napis W magazynie brak miejsca do wykonania tego polecenia
Jak sobie z tym poradzic ? Te rozmiary 7000x10000 to w sumie normalny obrazek na jedna strone do wydruku.

//dopisane
W sumie to sie nie dziwie ze to wywala bo obrazek taki jest gigantyczny. POzostaje pytanie jak rozciagnac maly obrazek aby byl wydrukowany na cala strone?
Prosze o pomoc

0

Podziel go na kawałki np 100 kawałków 700x1000. Z zapisem do pliku będzie troche gorzej. Bedziesz musiał samemu napisać procedure zapisu. Specyfikacje formatu bmp znajdziesz na http://myfileformats.com

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