Zoals de topictitel al zegt zoek ik een manier om Visio vanaf de commandline te 'besturen', op zo'n manier dat ik een document kan converteren van .vsd naar .png formaat. Nu is het heel eenvoudig om een VB-macro te schrijven die dat doet (lang leve de 'record macro' optie):
..maar dat werkt dan alleen als ik binnen Visio die macro opstart. Wat ik dus graag wil, is vanaf de commandline visio opstarten cq. een bepaald .vsd document laten openen, en dan bovenstaande actie uitvoeren.
Ik weet dat dit moet kunnen met DDE of vast ook wel met COM ofzo, maar ben benieuwd of er een makkelijke manier is om dit vanuit een of andere scripting-taal te doen (de gebruikte techniek kan me geen ruk schelen, als het maar werkt). Ik heb op internet wel wat voorbeelden gevonden die iets dergelijks met Excel kunnen, maar dat is dan meteen weer 300 regels niet-compilerende C-code enzo - ik mag hopen dat het ook simpeler moet kunnen
Misschien zijn er wel commandline-opties om visio te starten en meteen een macro uit te laten voeren, maar als dit zo is heb ik het in ieder geval nog niet kunnen uitvinden...
Om even uit te leggen wat het idee is: voor mijn werk maak ik nogal eens plaatjes/diagrammen met Visio. Deze sla ik vervolgens op als .png om ze vervolgens in LaTeX-documenten te kunnen gebruiken. Dat werkt prima, alleen moet je na elke minieme wijziging aan een diagram opnieuw 'save as' kiezen, png opzoeken in die lijst, bestaande file overschrijven, latex-document opnieuw genereren. Nu heb je voor dat laatste gewoon een Makefile, waar ik dus graag een commando aan zou toevoegen dat Visio opent en automatisch de diagrammen omzet naar .png (eventueel alleen als de timestamp van de .vsd nieuwer is dan die van de .png, maar dat soort dingen lukken me wel..).
Op die manier kan ik dan gewoon de .vsd-files editen, en zolang ik ze maar opsla, gaat het omzetten naar PNG dan vanzelf zodra ik m'n latex-document weer eens genereer.
Iemand een idee hoe je dat makkelijk kunt doen?
code:
1
| Application.ActiveWindow.Page.Export "plaatje.png" |
..maar dat werkt dan alleen als ik binnen Visio die macro opstart. Wat ik dus graag wil, is vanaf de commandline visio opstarten cq. een bepaald .vsd document laten openen, en dan bovenstaande actie uitvoeren.
Ik weet dat dit moet kunnen met DDE of vast ook wel met COM ofzo, maar ben benieuwd of er een makkelijke manier is om dit vanuit een of andere scripting-taal te doen (de gebruikte techniek kan me geen ruk schelen, als het maar werkt). Ik heb op internet wel wat voorbeelden gevonden die iets dergelijks met Excel kunnen, maar dat is dan meteen weer 300 regels niet-compilerende C-code enzo - ik mag hopen dat het ook simpeler moet kunnen
Misschien zijn er wel commandline-opties om visio te starten en meteen een macro uit te laten voeren, maar als dit zo is heb ik het in ieder geval nog niet kunnen uitvinden...
Om even uit te leggen wat het idee is: voor mijn werk maak ik nogal eens plaatjes/diagrammen met Visio. Deze sla ik vervolgens op als .png om ze vervolgens in LaTeX-documenten te kunnen gebruiken. Dat werkt prima, alleen moet je na elke minieme wijziging aan een diagram opnieuw 'save as' kiezen, png opzoeken in die lijst, bestaande file overschrijven, latex-document opnieuw genereren. Nu heb je voor dat laatste gewoon een Makefile, waar ik dus graag een commando aan zou toevoegen dat Visio opent en automatisch de diagrammen omzet naar .png (eventueel alleen als de timestamp van de .vsd nieuwer is dan die van de .png, maar dat soort dingen lukken me wel..).
Op die manier kan ik dan gewoon de .vsd-files editen, en zolang ik ze maar opsla, gaat het omzetten naar PNG dan vanzelf zodra ik m'n latex-document weer eens genereer.
Iemand een idee hoe je dat makkelijk kunt doen?