! ----- Some definitions -----
character*80 tmpWMF,skrWMF
integer*4 hdcMeta,hMF
integer*4 len
integer*4 iPix
integer*4 Bx,By
integer*4 TLX,TLY,TRX,TRY
integer*2 i2
integer*4 status
integer*4 xP,yP
character cha
! ----- Write to temorary metafile -----
tmpWMF = 'Temp.wmf'//char(0)
hdcMeta = CreateMetaFile(tmpWMF)
xP = 1024
yP = 728
status = SetWindowOrgEx(hdcMeta,null,null,NULL)
status = SetWindowExtEx(hdcMeta,xP,yP,NULL)
status = Ellipse(hdcmeta,TLX,TLY,TRX,TRY)
hMF = CloseMetaFile(hdcMeta)
status = DeleteMetaFile(hMF)
! ----- Write header to final metafile -----
iPix = 96
Bx = 1024
By = 728
skrWMF = 'FileName.wmf'
len = len_trim(skrWMF)
open(unit=10,file=skrWMF(1:len),form='binary',status='unknown')
i2 = #CDD7.xor.#9AC6.xor.int2(Bx).xor.int2(By).xor.int2(iPix)
write(10) char(#D7),char(#CD),char(#C6),char(#9A) ! Header
write(10) int2(0) ! (Reserved)
write(10) int2(0),int2(0),int2(Bx),int2(By) ! Box
write(10) int2(iPix) ! pix/inch
write(10) int2(0),int2(0) ! (Reserved)
write(10) int2(i2) ! Checksum
! ----- Copy data from temorary metafile to final metafile -----
open(unit=9,file=tmpWMF(1:8),form='binary',status='unknown')
do while(.true.)
read(9,end=89) cha
write(10) cha
enddo
89 continue
close(unit=10)
close(unit=9,status='delete')