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

199

    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. Mies kateissa Lapualla

      Voi ei taas! Toivottavasti tällä on onnellinen loppu. https://poliisi.fi/-/mies-kateissa-lapualla
      Lapua
      116
      6010
    2. Poliisi tutkii murhaa Paltamossa

      Poliisi tutkii Kainuussa sijaitsevassa Paltamon kunnassa epäiltyä henkirikosta, joka on tapahtunut viime viikon perjanta
      Paltamo
      32
      4107
    3. Olenko joka hetki

      Ajatuksissasi?
      Ikävä
      82
      3362
    4. Jos me voitais puhua

      Jos me voitais puhua tästä, mä sanoisin, että se on vaan tunne ja se menee ohi. Sun ei tarvitse jännittää mua. Mä kyllä
      Ihastuminen
      18
      2996
    5. Jenna meni seksilakkoon

      "Olen oppinut ja elän itse siinä uskossa, että feministiset arvot omaava mies on tosi marginaali. Todennäköisyys, että t
      Maailman menoa
      252
      2064
    6. Joo nyt mä sen tajuan

      Kaipaan sua, ei sitä mikään muuta ja olet oikea❤️ miksi tämän pitää olla niin vaikeaa?
      Ikävä
      88
      2004
    7. Jere, 23, ja Aliisa, 20, aloittavat aamunsa Subutexilla tai rauhoittavilla: "Vaikka mä käytän..."

      Jere, 23, ja Aliisa, 20, ovat pariskunta, joka aloittaa aamunsa Subutexilla tai rauhoittavilla. Jere on ollut koko aikui
      Maailman menoa
      43
      1817
    8. Mikä sinua ja

      kaivattuasi yhdistää ?
      Ikävä
      143
      1795
    9. Olipa ihana rakas

      ❤️🤗😚 Toivottavasti jatkat samalla linjalla ja höpsöttelykin on sallittua, kunhan ei oo loukkaavaa 😉 suloisia unia kau
      Ikävä
      8
      1696
    10. Vain yksi elämä

      Jonka haluaisin jakaa sinun kanssasi. Universumi heitti noppaa ja teki huonon pilan, antoi minun tavata sinut ja rakastu
      Ikävä
      88
      1569
    Aihe