WMF tiedosto

vektor

Tiedoksi että WMF- (Windows MetaFile) tiedoston luku rutiinit on lisätty Lazaruksen fpvectorial pakettiin.

Tosin veikkaan ettei tätä ominaisuutta vielä lisätä seuraavaan Lazaruksen julkaisuun.

Joten jos sille on tarvetta niin pitää hakea kyseiset koodit (esim. Lazaruksen kehitysversio).


(WMF on aika vanhaa tekniikkaa mutta nilmeisesti joku sitäkin tarvitsee).

11

161

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Helpompaa olisi muuttaa formaatti nykypäivän standardeille.

    • kysynpä

      Mihin WMF käytetään ja mikä sen tekee ettei se ei ole nykypäivää?

    • Windows-koodaaja

      Sinänsä hienoa, että WMF:ää osataan edes lukea.

      Mutta minua kiinnostaisi se, miten voisi lukea noita GPL -maailman vektorigrafiikkaformaatteja, ja kirjoittaa ne muunnettuna WMF -tiedostoksi.

      Kas kun Windowsissa on valmis tuki WMF -tiedostoille, mutta EI GPL -maailman vektorigrafiikkaformaateille.

      Eli Windowsissa WMF:n käyttö on erittäin helppoa, GPL -maailman vektorigrafiikkaformaattien käyttö taas on jotain erittäin vaikean ja mahdottoman väliltä.

      M-Karin paskapuheet voi jättää omaan arvoonsa, kuten yleensäkin.

      • Voisit lopettaa nuo paskapuheet kun et ohjelmoinnista mitään tiedä.

        Ohjelmistolisenssit eivät liity mitenkään tiedostoformaatteihin ja WMF korvattiin aikoja sitten Windowsissa EMF :lla kun se WMF toimi siinä sen deprekoidun rajapinnan varassa.

        Windowsissa on kyllä valmis tuki standardille vektorigrafiikalle että ei tarvitse pelleillä "legacyjen" kanssa: https://msdn.microsoft.com/en-us/library/bg124132(v=vs.85).aspx

        Jos standardin SVG:n käyttö on sinulle vaikeata niin silloin vika on sinussa, olet yksinkertaisesti paska.


      • OsaavaGPLVälttäväKoodaja
        M-Kar kirjoitti:

        Voisit lopettaa nuo paskapuheet kun et ohjelmoinnista mitään tiedä.

        Ohjelmistolisenssit eivät liity mitenkään tiedostoformaatteihin ja WMF korvattiin aikoja sitten Windowsissa EMF :lla kun se WMF toimi siinä sen deprekoidun rajapinnan varassa.

        Windowsissa on kyllä valmis tuki standardille vektorigrafiikalle että ei tarvitse pelleillä "legacyjen" kanssa: https://msdn.microsoft.com/en-us/library/bg124132(v=vs.85).aspx

        Jos standardin SVG:n käyttö on sinulle vaikeata niin silloin vika on sinussa, olet yksinkertaisesti paska.

        Taas tyypillistä MKar -sontaa!

        Linkatussa URL:ssa:

        https://msdn.microsoft.com/en-us/library/bg124132(v=vs.85).aspx

        kerrotaan, kuinka upotetaan SVG -vektorigrafiikkaa HTML5 -web -sivulle.

        Mutta jotta tällä olisi ohejlmoinnin kanssa mitään tekemistä, niin joko:

        a) täytyisi olla MKar:in kaltainen vääristynyt käsitys siitä, mitä on ohjelmointi. MKAR:in väitteiden mukaan "ohjelmistot tehdään web -palveluiksi, jotka toimivat pilvipalvelimella, ja joita käyttäjä käyttää web -selaimella". Varsin outo näkemys ohjelmoinnista! Itse ainoa käyttämäni sovellus, joka toimii M-Karin kuvaamalla tavalla, on webmail, ja senkin voisi korvata PC:llä pyörivällä EXE -muotoisella sovelluksella, joka toimisi nopeammin ja jonka käyttöliittymä olisi miellyttävämpi kuin websivuna toteutetun webmailin.

        tai

        b) ohjelmoitaessa tarvittaisiin lisäksi WebBrowser -komponentti, jolla omatekoisen EXE:n sisään saadaan sisäänrakennettu web -selain, jossa SVG -formaatin grafiikkaa voidaan näyttää.

        tai sitten vaihtoehtoisesti olisi pakko tehdä omasta sovelluksesta pieni web -palvelin, ja sitä joutuisi käyttämään web -selaimella sovelluksen oman käyttöliittymän joko sijasta tai lisäksi (ja kokonaisuuden RAM -muistintarve kasvaisi huomattavan paljon).

        WMF (nykyisin kai tosiasiassa EMF, mutta tällä erolla ei ole merkitystä, koska useimmat windows -versiot osaavat käsitellä EMF -tiedostoa samoin kuin alkuperäisiä WMF -tiedostojakin) -tiedostoja sen sijaan voi piirtää piirtopinnalle (Device Context) esim. PlayEnhMetaFile -funktiolla.

        Eipä löydy PlaySVGFile -funktiota !

        Eli jos haluaa edelleen tehdä perinteisiä windows -sovelluksia (jolla ei ole mitään tekemistä html5:n tai pilvipalveluiden kanssa), niin EMF -formaattia on helppo käyttää windowsissa, mutta SVG:n käyttö muuten kuin web -selaimen sisältönä on erittäin vaikeaa, tai vaatisi jotain lisäkirjastoa, joka ei ole Windowsin osa vakiona, ja tällaiset lisäkirjastot tyypillisesti maksavat erikseen.

        Toki on ilmaisia vapaan lähdekoodin fanaatikkojen tekemiä, mutta niitä riivaa tyypillisesti:

        a) GPL -lisenssi, jolloin mikä tahansa tällaista kirjastoa käyttävä ohjelma pakotetaan myös GPL -lisenssin alaiseksi

        b) huono tai olematon dokumentointi (usein harhaanjohtava)

        c) riippuvuus muista vapaan lähdekoodin fanaatikkojen DLL:stä, el isovelluksen asentajalle "DLL hell", kun yrität käynnistää sovellusta: "Sovellus.exe ei voi käynnistyä, koska abc.dll puuttuu".

        Kun sitten jostain metsästät ja asennat abc.dll, seuraavaksi:
        "Sovellus.exe ei voi käynnistyä, koska defg.dll puuttuu".

        Kun sitten jostain metsästät ja asennat defg.dll, seuraavaksi:
        "Sovellus.exe ei voi käynnistyä, koska hijk.dll puuttuu".

        Kaupallisesta kirjastosta joutuu maksamaan, mutta niissä tilanne on parempi: kopioit vain "CommercialSVGsupport.dll" -tiedoston joko PATH:ista löytyvään paikkaan tai EXE:n kanssa samaan hakemistoon, ja sitten sovellus toimii. Nuo kaupalliset kun eivät yleensö vaadi mitään lisäkirjastoja toimiakseen, vaan kaikki tarvittava on jo DLL:n sisään rakennettu.

        Kaupallisten kirjastojen mukana tulee yleensä myös kunnollinen dokumentointi, josta selviää, miten ko. kirjastoa käytetään omasta ohjelmasta käsin.


      • c_vaihtoehto

        Entäs vaihtoehto C)? Tästä hyvä esimerkki VSCode-editori. Työpöytä sovellus web-tekniikalla.

        http://electron.atom.io/


      • OsaavaGPLVälttäväKoodaja kirjoitti:

        Taas tyypillistä MKar -sontaa!

        Linkatussa URL:ssa:

        https://msdn.microsoft.com/en-us/library/bg124132(v=vs.85).aspx

        kerrotaan, kuinka upotetaan SVG -vektorigrafiikkaa HTML5 -web -sivulle.

        Mutta jotta tällä olisi ohejlmoinnin kanssa mitään tekemistä, niin joko:

        a) täytyisi olla MKar:in kaltainen vääristynyt käsitys siitä, mitä on ohjelmointi. MKAR:in väitteiden mukaan "ohjelmistot tehdään web -palveluiksi, jotka toimivat pilvipalvelimella, ja joita käyttäjä käyttää web -selaimella". Varsin outo näkemys ohjelmoinnista! Itse ainoa käyttämäni sovellus, joka toimii M-Karin kuvaamalla tavalla, on webmail, ja senkin voisi korvata PC:llä pyörivällä EXE -muotoisella sovelluksella, joka toimisi nopeammin ja jonka käyttöliittymä olisi miellyttävämpi kuin websivuna toteutetun webmailin.

        tai

        b) ohjelmoitaessa tarvittaisiin lisäksi WebBrowser -komponentti, jolla omatekoisen EXE:n sisään saadaan sisäänrakennettu web -selain, jossa SVG -formaatin grafiikkaa voidaan näyttää.

        tai sitten vaihtoehtoisesti olisi pakko tehdä omasta sovelluksesta pieni web -palvelin, ja sitä joutuisi käyttämään web -selaimella sovelluksen oman käyttöliittymän joko sijasta tai lisäksi (ja kokonaisuuden RAM -muistintarve kasvaisi huomattavan paljon).

        WMF (nykyisin kai tosiasiassa EMF, mutta tällä erolla ei ole merkitystä, koska useimmat windows -versiot osaavat käsitellä EMF -tiedostoa samoin kuin alkuperäisiä WMF -tiedostojakin) -tiedostoja sen sijaan voi piirtää piirtopinnalle (Device Context) esim. PlayEnhMetaFile -funktiolla.

        Eipä löydy PlaySVGFile -funktiota !

        Eli jos haluaa edelleen tehdä perinteisiä windows -sovelluksia (jolla ei ole mitään tekemistä html5:n tai pilvipalveluiden kanssa), niin EMF -formaattia on helppo käyttää windowsissa, mutta SVG:n käyttö muuten kuin web -selaimen sisältönä on erittäin vaikeaa, tai vaatisi jotain lisäkirjastoa, joka ei ole Windowsin osa vakiona, ja tällaiset lisäkirjastot tyypillisesti maksavat erikseen.

        Toki on ilmaisia vapaan lähdekoodin fanaatikkojen tekemiä, mutta niitä riivaa tyypillisesti:

        a) GPL -lisenssi, jolloin mikä tahansa tällaista kirjastoa käyttävä ohjelma pakotetaan myös GPL -lisenssin alaiseksi

        b) huono tai olematon dokumentointi (usein harhaanjohtava)

        c) riippuvuus muista vapaan lähdekoodin fanaatikkojen DLL:stä, el isovelluksen asentajalle "DLL hell", kun yrität käynnistää sovellusta: "Sovellus.exe ei voi käynnistyä, koska abc.dll puuttuu".

        Kun sitten jostain metsästät ja asennat abc.dll, seuraavaksi:
        "Sovellus.exe ei voi käynnistyä, koska defg.dll puuttuu".

        Kun sitten jostain metsästät ja asennat defg.dll, seuraavaksi:
        "Sovellus.exe ei voi käynnistyä, koska hijk.dll puuttuu".

        Kaupallisesta kirjastosta joutuu maksamaan, mutta niissä tilanne on parempi: kopioit vain "CommercialSVGsupport.dll" -tiedoston joko PATH:ista löytyvään paikkaan tai EXE:n kanssa samaan hakemistoon, ja sitten sovellus toimii. Nuo kaupalliset kun eivät yleensö vaadi mitään lisäkirjastoja toimiakseen, vaan kaikki tarvittava on jo DLL:n sisään rakennettu.

        Kaupallisten kirjastojen mukana tulee yleensä myös kunnollinen dokumentointi, josta selviää, miten ko. kirjastoa käytetään omasta ohjelmasta käsin.

        "kerrotaan, kuinka upotetaan SVG -vektorigrafiikkaa HTML5 -web -sivulle."

        Niin mikä hemmetin "web sivu?". Onko asia ymmärrettävä niin, että et tiedä miten sovellusten käyttöliittymiä ohjelmoidaan?

        "a) täytyisi olla MKar:in kaltainen vääristynyt käsitys siitä, mitä on ohjelmointi. "

        Ohjelmointi tarkoittaa tietokoneelle tai vastaavalle laitteelle jollakin tavalla annettavia toimintaohjeita.

        "MKAR:in väitteiden mukaan "ohjelmistot tehdään web -palveluiksi, jotka toimivat pilvipalvelimella, ja joita käyttäjä käyttää web -selaimella"."

        Ei ole mikään pakko. Sen sijaan käyttöliittymien kehittämisessä on tuo selainkomponentti kyllä vakiintunut standardiksi jota käytetään muuten paitsi poikkeustilanteissa.

        "Varsin outo näkemys ohjelmoinnista! Itse ainoa käyttämäni sovellus, joka toimii M-Karin kuvaamalla tavalla, on webmail"

        Käytäthän sinä tätä Suomi24:n Drupaliakin. Aika moni käyttää Googlen ja Microsoftin sovelluksia myös.

        " ja senkin voisi korvata PC:llä pyörivällä EXE -muotoisella sovelluksella, joka toimisi nopeammin ja jonka käyttöliittymä olisi miellyttävämpi kuin websivuna toteutetun webmailin."

        Ei ole mitään ".exe" muotoista sovellusta. .exe on Windowsissa käytettävä, ajettava tiedosto johon on voitu koodi kääntää eri tavoin. Windowseissa esimerkiksi Microsoftin Skype on usein vielä käännetty tuohon mutta se nyt ilmeisesti toimii sinusta hitaasti ja epämiellyttävästi kun käyttää sitä standardia HTML5:sta. Samoin vaikka Microsoftin Visual Studio Code.

        Eli voidaan päätellä, että et oikeasti tiedä ohjelmien tekemisestä yhtään mitään.


      • OsaavaGPLVälttäväKoodaja kirjoitti:

        Taas tyypillistä MKar -sontaa!

        Linkatussa URL:ssa:

        https://msdn.microsoft.com/en-us/library/bg124132(v=vs.85).aspx

        kerrotaan, kuinka upotetaan SVG -vektorigrafiikkaa HTML5 -web -sivulle.

        Mutta jotta tällä olisi ohejlmoinnin kanssa mitään tekemistä, niin joko:

        a) täytyisi olla MKar:in kaltainen vääristynyt käsitys siitä, mitä on ohjelmointi. MKAR:in väitteiden mukaan "ohjelmistot tehdään web -palveluiksi, jotka toimivat pilvipalvelimella, ja joita käyttäjä käyttää web -selaimella". Varsin outo näkemys ohjelmoinnista! Itse ainoa käyttämäni sovellus, joka toimii M-Karin kuvaamalla tavalla, on webmail, ja senkin voisi korvata PC:llä pyörivällä EXE -muotoisella sovelluksella, joka toimisi nopeammin ja jonka käyttöliittymä olisi miellyttävämpi kuin websivuna toteutetun webmailin.

        tai

        b) ohjelmoitaessa tarvittaisiin lisäksi WebBrowser -komponentti, jolla omatekoisen EXE:n sisään saadaan sisäänrakennettu web -selain, jossa SVG -formaatin grafiikkaa voidaan näyttää.

        tai sitten vaihtoehtoisesti olisi pakko tehdä omasta sovelluksesta pieni web -palvelin, ja sitä joutuisi käyttämään web -selaimella sovelluksen oman käyttöliittymän joko sijasta tai lisäksi (ja kokonaisuuden RAM -muistintarve kasvaisi huomattavan paljon).

        WMF (nykyisin kai tosiasiassa EMF, mutta tällä erolla ei ole merkitystä, koska useimmat windows -versiot osaavat käsitellä EMF -tiedostoa samoin kuin alkuperäisiä WMF -tiedostojakin) -tiedostoja sen sijaan voi piirtää piirtopinnalle (Device Context) esim. PlayEnhMetaFile -funktiolla.

        Eipä löydy PlaySVGFile -funktiota !

        Eli jos haluaa edelleen tehdä perinteisiä windows -sovelluksia (jolla ei ole mitään tekemistä html5:n tai pilvipalveluiden kanssa), niin EMF -formaattia on helppo käyttää windowsissa, mutta SVG:n käyttö muuten kuin web -selaimen sisältönä on erittäin vaikeaa, tai vaatisi jotain lisäkirjastoa, joka ei ole Windowsin osa vakiona, ja tällaiset lisäkirjastot tyypillisesti maksavat erikseen.

        Toki on ilmaisia vapaan lähdekoodin fanaatikkojen tekemiä, mutta niitä riivaa tyypillisesti:

        a) GPL -lisenssi, jolloin mikä tahansa tällaista kirjastoa käyttävä ohjelma pakotetaan myös GPL -lisenssin alaiseksi

        b) huono tai olematon dokumentointi (usein harhaanjohtava)

        c) riippuvuus muista vapaan lähdekoodin fanaatikkojen DLL:stä, el isovelluksen asentajalle "DLL hell", kun yrität käynnistää sovellusta: "Sovellus.exe ei voi käynnistyä, koska abc.dll puuttuu".

        Kun sitten jostain metsästät ja asennat abc.dll, seuraavaksi:
        "Sovellus.exe ei voi käynnistyä, koska defg.dll puuttuu".

        Kun sitten jostain metsästät ja asennat defg.dll, seuraavaksi:
        "Sovellus.exe ei voi käynnistyä, koska hijk.dll puuttuu".

        Kaupallisesta kirjastosta joutuu maksamaan, mutta niissä tilanne on parempi: kopioit vain "CommercialSVGsupport.dll" -tiedoston joko PATH:ista löytyvään paikkaan tai EXE:n kanssa samaan hakemistoon, ja sitten sovellus toimii. Nuo kaupalliset kun eivät yleensö vaadi mitään lisäkirjastoja toimiakseen, vaan kaikki tarvittava on jo DLL:n sisään rakennettu.

        Kaupallisten kirjastojen mukana tulee yleensä myös kunnollinen dokumentointi, josta selviää, miten ko. kirjastoa käytetään omasta ohjelmasta käsin.

        "b) ohjelmoitaessa tarvittaisiin lisäksi WebBrowser -komponentti, jolla omatekoisen EXE:n sisään saadaan sisäänrakennettu web -selain, jossa SVG -formaatin grafiikkaa voidaan näyttää."

        Hybridisovelluksissa juurikin tehdään näin. On ihan tavallista, että jos halutaan kääräistä sovellus paikallisesti asennettavaksi ja tehdä siitä samalla siirrettävä niin laitetaan se web komponentti, liitetään siihen tarvittavat alustakohtaiset jutut ja jos on jotain erityisvaatimusta jollekin koodin pätkälle niin voidaan liittää myös natiivia.

        tai sitten vaihtoehtoisesti olisi pakko tehdä omasta sovelluksesta pieni web "-palvelin, ja sitä joutuisi käyttämään web -selaimella sovelluksen oman käyttöliittymän joko sijasta tai lisäksi (ja kokonaisuuden RAM -muistintarve kasvaisi huomattavan paljon)."

        Mikä ongelma siinä web palvelimessa on? Softathan tehdään niin, että palvelinlaitteissa on tallentava osa ja käyttöliittymäosa on päätelaitteissa. Eli ns. pilvi. Ei tarvitse olla mikään palveluna ostettava palvelin vaan voithan sitä ostaa vaikka tämmöisen: https://www.verkkokauppa.com/fi/product/26573/gsgrv/Raspberry-Pi-3-model-B-yhden-piirilevyn-tietokone

        Maksaa kympin mutta tietysti jos on osaaminen on 90-luvulta ja on köyhä ja tyhmä niin ei ole varaa maksaa vaikka viittäkymppiä.

        RAM-muistin tarve tietysti vähenee kun päätelaitteissa ei tarvitse ajaa kuin käyttöliittymiä ja ne toimii samalla, vakiolla selainkomponentilla että ei ole samat kirjastot eri versioina moneen kertaan koneella tai eri ohjelmilla erilaisia käyttöliittymätekniikoita.

        "Eipä löydy PlaySVGFile -funktiota !"

        Yrität tehdä ohjelmia jollain vanhentuneella virityksellä ja tekemällä riippuvuuksia rajapintoihin mitä ollaan poistamassa. Siksi sellaista funktiota ei varmaan näy. Nykyiset vektoriformaatit ovat SVG ja PDF.

        "mutta SVG:n käyttö muuten kuin web -selaimen sisältönä"

        SVG:n voi muuttaa XAML:lle jos haluat Windowsin natiivia.

        Windowsille voi myös tehdä alustariippumattomia, siirrettäviä ohjelmia jotka käännetään laitearkkitehtuurista riippuvaiseksi (Visual C 2015 redistributable olisi silloin alusta). Tässä esimerkkiä: http://doc.qt.io/qt-5/qtsvg-index.html

        Et nyt nähtävästi osaa valita, että onko se softa standardia HTML5:sta mikä käynnistyy pikakuvakkeesta ja on siellä serverillä, onko se joku hybridiohjelma, natiivia Windowsohjelma vai kolmannen osapuolen tekniikalla käännetty Windowsin natiivikirjaston päälle.

        Eri lähestymistavoille on eri käyttötarkoituksia ja riippuu sovelluksesta. Yleisesti ottaen käyttöliittymä ja data ovat eri laitteissa, HTTP:llä tehdään yhteydet suurimmaksi ja HTML5 on se standardi käyttöliittymien tekemiseen mutta toki poikkeustilanteisiin on muitakin keinoja, kuten natiivit tai vaikka se Qt.

        "on erittäin vaikeaa, tai vaatisi jotain lisäkirjastoa, joka ei ole Windowsin osa vakiona, ja tällaiset lisäkirjastot tyypillisesti maksavat erikseen."

        Windowsissa on XAML ja webkomponentti, loppu on ohjelmoijasta kiinni. Teet ilmeisesti jotain väärin.



        "Toki on ilmaisia vapaan lähdekoodin fanaatikkojen tekemiä, mutta niitä riivaa tyypillisesti:"

        GPL lisenssiä käyttää yleensä isojen firmojen ohjelmistokehittäjät, ei ole mitään fanaattisuutta missään.

        "a) GPL -lisenssi, jolloin mikä tahansa tällaista kirjastoa käyttävä ohjelma pakotetaan myös GPL -lisenssin alaiseksi"

        Kirjastoja ei yleensä tehdä missään GPL lisenssillä tuosta syystä vaan käytetään MIT, LGPL tai BSD lisenssejä

        "b) huono tai olematon dokumentointi (usein harhaanjohtava)"

        Tämä ei liity mitenkään lisensointiin.

        "c) riippuvuus muista vapaan lähdekoodin fanaatikkojen DLL:stä, el isovelluksen asentajalle "DLL hell", kun yrität käynnistää sovellusta: "Sovellus.exe ei voi käynnistyä, koska abc.dll puuttuu".

        Kun sitten jostain metsästät ja asennat abc.dll, seuraavaksi:
        "Sovellus.exe ei voi käynnistyä, koska defg.dll puuttuu".

        Kun sitten jostain metsästät ja asennat defg.dll, seuraavaksi:
        "Sovellus.exe ei voi käynnistyä, koska hijk.dll puuttuu".

        Tuo on sinun omaa osaamattomuuttasi. Et osaa ohjelmoida.

        Kaikki koodi mitä on olemassa, on aina riippuvaista jostain. Ammattiohjelmoijat tietävät tämän ja tietävät senkin, että näiden riippuvuuksien ratkomiseen on vuosikymmenien ajan ollut työkalut tai on abstraktoitu jonkun rajapinnan taakse. Teet jotain perustavalla tavalla väärin jos on jotain mystistä dll helliä. Tuollaista sotkuu onnistuu tekemään sellaiset jotka kirjoittavat elämänsä ensimmäisiä tietokoneohjelmia jotka eivät osaa ohjelmoida vielä.


      • OsaavaGPLVälttäväKoodaja kirjoitti:

        Taas tyypillistä MKar -sontaa!

        Linkatussa URL:ssa:

        https://msdn.microsoft.com/en-us/library/bg124132(v=vs.85).aspx

        kerrotaan, kuinka upotetaan SVG -vektorigrafiikkaa HTML5 -web -sivulle.

        Mutta jotta tällä olisi ohejlmoinnin kanssa mitään tekemistä, niin joko:

        a) täytyisi olla MKar:in kaltainen vääristynyt käsitys siitä, mitä on ohjelmointi. MKAR:in väitteiden mukaan "ohjelmistot tehdään web -palveluiksi, jotka toimivat pilvipalvelimella, ja joita käyttäjä käyttää web -selaimella". Varsin outo näkemys ohjelmoinnista! Itse ainoa käyttämäni sovellus, joka toimii M-Karin kuvaamalla tavalla, on webmail, ja senkin voisi korvata PC:llä pyörivällä EXE -muotoisella sovelluksella, joka toimisi nopeammin ja jonka käyttöliittymä olisi miellyttävämpi kuin websivuna toteutetun webmailin.

        tai

        b) ohjelmoitaessa tarvittaisiin lisäksi WebBrowser -komponentti, jolla omatekoisen EXE:n sisään saadaan sisäänrakennettu web -selain, jossa SVG -formaatin grafiikkaa voidaan näyttää.

        tai sitten vaihtoehtoisesti olisi pakko tehdä omasta sovelluksesta pieni web -palvelin, ja sitä joutuisi käyttämään web -selaimella sovelluksen oman käyttöliittymän joko sijasta tai lisäksi (ja kokonaisuuden RAM -muistintarve kasvaisi huomattavan paljon).

        WMF (nykyisin kai tosiasiassa EMF, mutta tällä erolla ei ole merkitystä, koska useimmat windows -versiot osaavat käsitellä EMF -tiedostoa samoin kuin alkuperäisiä WMF -tiedostojakin) -tiedostoja sen sijaan voi piirtää piirtopinnalle (Device Context) esim. PlayEnhMetaFile -funktiolla.

        Eipä löydy PlaySVGFile -funktiota !

        Eli jos haluaa edelleen tehdä perinteisiä windows -sovelluksia (jolla ei ole mitään tekemistä html5:n tai pilvipalveluiden kanssa), niin EMF -formaattia on helppo käyttää windowsissa, mutta SVG:n käyttö muuten kuin web -selaimen sisältönä on erittäin vaikeaa, tai vaatisi jotain lisäkirjastoa, joka ei ole Windowsin osa vakiona, ja tällaiset lisäkirjastot tyypillisesti maksavat erikseen.

        Toki on ilmaisia vapaan lähdekoodin fanaatikkojen tekemiä, mutta niitä riivaa tyypillisesti:

        a) GPL -lisenssi, jolloin mikä tahansa tällaista kirjastoa käyttävä ohjelma pakotetaan myös GPL -lisenssin alaiseksi

        b) huono tai olematon dokumentointi (usein harhaanjohtava)

        c) riippuvuus muista vapaan lähdekoodin fanaatikkojen DLL:stä, el isovelluksen asentajalle "DLL hell", kun yrität käynnistää sovellusta: "Sovellus.exe ei voi käynnistyä, koska abc.dll puuttuu".

        Kun sitten jostain metsästät ja asennat abc.dll, seuraavaksi:
        "Sovellus.exe ei voi käynnistyä, koska defg.dll puuttuu".

        Kun sitten jostain metsästät ja asennat defg.dll, seuraavaksi:
        "Sovellus.exe ei voi käynnistyä, koska hijk.dll puuttuu".

        Kaupallisesta kirjastosta joutuu maksamaan, mutta niissä tilanne on parempi: kopioit vain "CommercialSVGsupport.dll" -tiedoston joko PATH:ista löytyvään paikkaan tai EXE:n kanssa samaan hakemistoon, ja sitten sovellus toimii. Nuo kaupalliset kun eivät yleensö vaadi mitään lisäkirjastoja toimiakseen, vaan kaikki tarvittava on jo DLL:n sisään rakennettu.

        Kaupallisten kirjastojen mukana tulee yleensä myös kunnollinen dokumentointi, josta selviää, miten ko. kirjastoa käytetään omasta ohjelmasta käsin.

        "Kaupallisesta kirjastosta joutuu maksamaan, mutta niissä tilanne on parempi: kopioit vain "CommercialSVGsupport.dll" -tiedoston joko PATH:ista löytyvään paikkaan tai EXE:n kanssa samaan hakemistoon, ja sitten sovellus toimii."

        Sehän menee rikki kun poistat sen sen .dll tiedoston koska siinä on riippuvuus.

        "Nuo kaupalliset kun eivät yleensö vaadi mitään lisäkirjastoja toimiakseen, vaan kaikki tarvittava on jo DLL:n sisään rakennettu."

        Tuossa on kyse riippuvuusten hoitamisesta paketoimalla ne samaan. Tämä ei liity mitenkään kaupallisuuteen.

        Tavallisesti riippuvuudet hoidetaan automaattisesti kun kirjasto kertoo mitä se haluaa toimiakseen ja siksi eri ohjelmointivälineiden ekosysteemeissä on kirjastojen metatiedoissa tiedot riippuvuuksista ja samoin on käyttöjärjestelmien toiminnoilla ne metatiedot, että tarvittavat toiminnot asennetaan ja kytketään päälle mitä jokin vaatii toimiakseen.

        Tämä on näitä tietotekniikan perusasioita mutta jostain syystä et ymmärrä miten näitä hoidetaan ja miten tavallisimmat työkalut ratkovat asian. Sillä ei ole mitään tekemistä ohjelman lisenssin kanssa.

        "Kaupallisten kirjastojen mukana tulee yleensä myös kunnollinen dokumentointi, josta selviää, miten ko. kirjastoa käytetään omasta ohjelmasta käsin."

        Tämä ei liity mitenkään lisensointiin. Qt on esimerkiksi LGPL:ää eikä tämän dokumentoinnissa ole mitään epäselvää: http://doc.qt.io/qt-5/qtsvg-index.html

        Havaintojen perusteella et vain osaa ohjelmoida.


    • L___väli

      Lazarus 1.6.2 ei sisällä WMF-tiedoston tukea (kuin TAChart:n osalta).

    • delphikoodaaja

      Hyödyllisiä linkkejä (konvertoi EMF:ksi)


      https://onlineconvertfree.com/convert/emf/
      https://convertio.co/emf-converter/


      EMF -tiedostojen käsittelyyn on Delphissä valmis tuki, ei tarvitse pelleillä selaintekniikalla.

      TMetafile - tämä luokka osaa suoraan käsitellä EMF (ja myös vanhempaa WMF) -formaattia.

      Windows -ohjelmoinnissa EMF on paras vektorigrafiikkaformaatti.

      M-Karin katteettomat väitteet kannattaa jättää huomiotta, kuten yleensäkin.

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. KUPSinpelaaja vangittu törkeästä rikoksesta

      Tänään tuli uutinen että Kupsin sopimuspelaajs vangittu törkeästä rikoksesta epäiltynä. Kuka pelaaja kysressä ja mikä ri
      Kuopio
      14
      1382
    2. Taasko se show alkaa

      Koo osottaa taas mieltään
      Ikävä
      28
      1265
    3. Minun oma kaivattuni

      Ei ole mikään ilkeä kiusaajatyyppi, vaan sivistynyt ja fiksu sekä ystävällinen ihminen, ja arvostan häntä suuresti. Raka
      Ikävä
      62
      1170
    4. Miksi ihmeessä nainen seurustelit kanssani joskus

      Olin ruma silloin ja nykyisin vielä rumempi En voi kuin miettiä että miksi Olitko vain rikki edellisestä suhteesta ja ha
      Ikävä
      11
      1052
    5. Tervehdys!

      Sä voit poistaa nää kaikki, mut mä kysyn silti A:lta sen kokemuksia sun käytöksestä eron jälkeen. Btw, miks haluut sabot
      Turku
      65
      1006
    6. Persut nimittivät kummeli-hahmon valtiosihteeriksi!

      Persujen riveistä löytyi taas uusi törkyturpa valtiosihteeriksi! Jutun perusteella järjenjuoksu on kuin sketsihahmolla.
      Perussuomalaiset
      27
      1005
    7. Onko ministeri Juuso epäkelpo ministerin tehtäviensä hoitamiseen?

      Eikö hänellä ole kompetenttia hoitaa sosiaali- ja terveysministetin toimialalle kuuluvia ministerin tehtäviä?
      Perussuomalaiset
      9
      993
    8. Kaupungin valtuuston yleisötilaisuus

      YouTubessa katsojia 76 Buahahaha buahahaha buahahaha buahahaha buahahaha buahahaha
      Varkaus
      1
      980
    9. Elia tulee vielä

      Johannes Kastaja oli Elia, mutta Jeesus sanoi, että Elia tulee vielä. Malakian kirjan profetia Eliasta toteutuu kokonaan
      Helluntailaisuus
      30
      979
    10. Sakarjan kirjan 6. luku

      Jolla korva on, se kuulkoon. Sain profetian 22.4.2023. Sen sisältö oli seuraava: Suomeen tulee nälänhätä niin, että se
      Profetiat
      6
      971
    Aihe