AdobeReader
特定のディレクトリからファイルを印刷するために使用するwinformアプリを使用しています。最近、このアプリをリファクタリングし、AdobeReader をGhost スクリプトに置き換えました。AdobeReader はドキュメントを適切に印刷します (フォント、配置、行間隔などのドキュメント形式に従って)。ただし、Ghost スクリプトは、ドキュメント形式に準拠せずにドキュメントを印刷します。アドバイスはありますか?
参考までに:PrintParamter
は印刷するファイル名/パスの詳細を囲むカスタム型で、GetDefaultPrinter()
デフォルトのプリンターを返すヘルパー メソッドです。
private void PrintDocument(PrintParamter fs, string printerName = null, bool isPortrait = true,
int noOfCopies = 1, bool printInGrey = false)
{
var filename = fs.FullyQualifiedName ?? string.Empty;
printerName = printerName ?? GetDefaultPrinter();
var processArgs = string.Format("-noquery {0} -dNumCopies={1} -all {4} -printer \"{2}\" \"{3}\"",
isPortrait ? "-portrait" : "-landscape", noOfCopies != 1 ? noOfCopies : 1,
printerName, filename, printInGrey ? "-grey" : "-colour");
try
{
var gsProcessInfo = new ProcessStartInfo
{
WindowStyle = ProcessWindowStyle.Hidden,
FileName = _ghostScriptLocation,
Arguments = processArgs
};
using (var gsProcess = Process.Start(gsProcessInfo))
{
gsProcess.WaitForExit();
}
}