Hallo,
ich habe Dir mal ein Bsp. wie man sowas machen könnte.
Das Script hängt einen Menüpunkt "Test_PDF" in Dienstprogramme ein.
Jetzt kannst Du einfach die Seiten im Seitennavigator selektieren
und den Menüpunkt ausführen. Dann werden die selektierten Seiten unter
"C:\temp\eplan\Pdf_test.pdf" erzeugt.
Denke mal das zeigt Dir den Weg auf, weitere Anpassungen wie Aufruf über
einen Button oder den Filenamen für das PDF anzupassen dürften ja kein
Problem mehr darstellen.
Einzige Voraussetzung:
Das Script funktioniert erst ab der Eplan P8 API Version 1.9.10 BL3725
Hoffe das hilft Dir weiter.
Gruß Fritz
public class Script
{
public string GetProjectPages()
{
string strProject = "";
ActionCallingContext ProjectContext = new ActionCallingContext();
ProjectContext.AddParameter("TYPE", "PAGES");
new CommandLineInterpreter().Execute("selectionset",ProjectContext);
ProjectContext.GetParameter("PAGES", ref strProject);
return strProject;
}
public string GetProject()
{
string strProject = "";
ActionCallingContext ProjectContext = new ActionCallingContext();
ProjectContext.AddParameter("TYPE", "PROJECT");
new CommandLineInterpreter().Execute("selectionset", ProjectContext);
ProjectContext.GetParameter("PROJECT", ref strProject);
return strProject;
}
[Start]
[DeclareAction("export_pdf")]
public void PDFExport()
{
string[] projectPage;
string projectPages;
string project;
projectPages = GetProjectPages();
projectPage = projectPages.Split(';');
project = GetProject();
MessageBox.Show(project);
MessageBox.Show(projectPages);
ActionCallingContext PDFExportContext = new ActionCallingContext();
PDFExportContext.AddParameter("TYPE", "PDFPAGES");
PDFExportContext.AddParameter("PROJECTNAME", project);
for (int i = 1; i <= projectPage.Length; i++)
{
MessageBox.Show("PAGENAME" + i.ToString() + ":" + projectPage[i - 1]);
PDFExportContext.AddParameter("PAGENAME"+ i.ToString(),projectPage[i-1]);
}
PDFExportContext.AddParameter("EXPORTFILE", @"C:\temp\eplan\Pdf_test.pdf");
PDFExportContext.AddParameter("BLACKWHITE", "1");
PDFExportContext.AddParameter("USESIMPLELINK", "0");
PDFExportContext.AddParameter("FASTWEBVIEW", "1");
new CommandLineInterpreter().Execute("export", PDFExportContext);
return;
}
[DeclareMenu]
public void MenuFunction()
{
Eplan.EplApi.Gui.Menu oMenu = new Eplan.EplApi.Gui.Menu();
oMenu.AddMenuItem("Test_PDF", "export_pdf");
}
}
------------------
Um zu sehen, musst Du die Augen offen halten.
Um zu erkennen, musst Du sie schliessen und denken.
[Diese Nachricht wurde von FML am 17. Jun. 2009 editiert.]
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP