Vra

Goeie middag,

Ek het 'n bietjie moeite met NET se interne (System.Drawing) gebaseer Meta File / Image hantering van WMF lêers wat deursigtige areas containt. Basies wanneer ek 'n MetaFile.LoadFile (...) te doen en neem dit om dit te verlos as 'n tiff / png, ens, sommige gebiede van daardie bron lêers ontbreek. Ek kan nie regtig pen dit neer, maar dit -seems- soos die vektor-gebaseerde inligting binne die meta net werk goed, maar die pixel gebaseer gebiede (bv 'n plek binne die WMF beeld) ontbreek.

Is daar iemand weet van 'n betroubare, net inheemse en nie 3de party manier om WMF lêers behoorlik te omskep (soos in .. die finale beeld pixel gebaseer lyk soos die WMF .. net .. goed .. pixelated)?

Cheers en dankie, -J

Was dit nuttig?

Oplossing 2

Ok, goed die skynbaar mees betroubare manier om Metafiles (WMF / EMF) te omskep in 'n ander formaat is om te gebruik png as uitvoer formaat, as iewers in die MSDN beskrywing Metafiles word intern gehanteer / in elk geval omskep in png formaat ( met alfa ens) en bv 'n Metafile.Save ( "somewher" ...) by verstek sou uitset in png ImageFormat.

So in die geval dat jy nie wil hê om 'n nie-png beeld uit 'n meta insette te skep, die beste resultaat te kry as jy gaan die ekstra myl, herskep & stoor dit as 'n PNG, en neem dit png en weer te transformeer dit aan jou finale formaat. Kinda kreupeles, maar dan weer .. wmf self is vreemd in elk geval en ek het tot die (my persoonlike) gevolgtrekking dis bose kom. ;)

-J

Ander wenke

Die probleem is dat NET is GDI +, terwyl WMF / EMF is GDI. Dit is belangrik om te weet dat GDI + is nie versoenbaar met GDI, hulle het heeltemal anders API's en vermoëns. Dus, sommige bedrywighede in GDI Metafiles optree nie soos verwag. Deursigtige bitmaps, maar ook wêreld transformasies op Metafiles ens dikwels nie regtig werk as advertized deur Microsoft.

Die beste wat ek tot dusver gekry het, is om die meta skakel na moedertaal GDI +, wat vereis navolging die GDI stapel en die toepassing van 'n paar groot tweaks om teks posisionering ens regkry.

Het jy 'n blik op EMFExplorer, die inligting gevind kan daar baie help. http://www.codeproject.com/KB/GDI-plus/emfexplorer. ASPX

Gelisensieer onder: CC-BY-SA met toeskrywing
Nie verbonde aan StackOverflow
scroll top