我可以在自己的C#项目中调用FontForge的某些功能吗?

时间:2012-01-24 14:20:16

标签: c# windows-7 fonts cygwin fontforge

我已经在Windows7操作系统中成功安装了Cygwin和FontForge,它们看起来工作得很好。我发现FontForge是一个强大的工具~~但是我有一个非常幼稚的问题......我可以调用FontForge的一些功能吗?我自己的C#项目? 这是我第一次使用开源项目,我不知道如何将开源代码与我自己的代码结合起来〜

1 个答案:

答案 0 :(得分:1)

我目前正在构建一个使用fontforge的项目,我从C#调用它作为启动bash.exe并将fontforge作为命令行参数运行的进程。

以下是一个例子:

Process p = new Process();
string cygwinDir = @"c:\cygwin\bin";
p.StartInfo.FileName = Path.Combine(cygwinDir, "bash.exe");
p.StartInfo.Arguments = "--login -c \"fontforge.exe -script '" + this.cygwinWorkPath + "script.pe";
p.StartInfo.WorkingDirectory = this.windowsWorkPath;
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.RedirectStandardError = true;
p.Start();
p.WaitForExit();

var standardError = p.StandardError.ReadToEnd();
var standardOutput = p.StandardOutput.ReadToEnd();
var exitCode = p.ExitCode;

cygwinWorkpath类似于/ myworkfolder,windowsWorkPath就像c:\ cygwin \ myworkfolder。