forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   2D-программирование (http://forum.boolean.name/forumdisplay.php?f=109)
-   -   Копирование области большого изображения (http://forum.boolean.name/showthread.php?t=13576)

IgorOK 25.10.2010 01:52

Копирование области большого изображения
 
Возникла необходимость скопировать часть изображения из уже загруженного большого изображения 2900х2900. Не могу понять что не так. Pixmap почему-то никак не копируется.

Код:

Graphics 640, 480, 0

Local Directory:String=RequestDir("Выберите папку для обработки")

Print Directory

Local Dir:String[]=LoadDir(Directory)

If Dir.Length=0 Then End

Local CropTop=Int(Input("top %: "))
Local CropBottom=Int(Input("bottom %: "))

For Index=0 To Dir.Length-1
        Local Path:String=Directory+"/"+Dir[Index]
       
        If FileType(Path)=FILETYPE_FILE
                If Lower(ExtractExt(Path))="jpg"

                        Local Image:TImage=LoadImage(Path)
                        Local W=ImageWidth(Image)
                        Local H=ImageHeight(Image)
                       
                        Local CropTopOffset=H/100*CropTop
                        Local CropBottomOffset=H/100*CropBottom
                        Local DstImage:TImage=CreateImage(W, H-CropTopOffset-CropBottomOffset)
                       
                        LockImage DstImage
                                DrawImage(Image, 0, -CropTopOffset)
                                Pixmap:TPixmap=GrabPixmap(0, CropTopOffset, W, H-CropBottomOffset)
                        UnlockImage DstImage
                       
                        SavePixmapJPeg(Pixmap, Directory+"/cc_"+Dir[Index], 80)
                EndIf
        EndIf
Next


SBJoker 25.10.2010 02:18

Ответ: Копирование области большого изображения
 
Не майся хренью юзай
Pixmap.Window и Pixmap.Paste

IgorOK 25.10.2010 10:57

Ответ: Копирование области большого изображения
 
Спасибо!)

В данном случае флага полезности недостаточно) Ты не представляешь как ты меня выручил)))


Часовой пояс GMT +4, время: 16:11.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot