This commit is contained in:
Kathy Ruffing 2010-11-08 14:27:14 +00:00
parent 6afde922e3
commit 5dc4b9f861

View File

@ -292,7 +292,7 @@ namespace VEPROMS.CSLA.Library
cfg.Printing_Length = length;
cfg.Printing_Color = MSWordToPDF.OverrideColor;
doc.Config = cfg.ToString();
doc.UserID = Environment.UserName;
doc.UserID = Volian.Base.Library.VlnSettings.UserID;
doc.DTS = _MyFile.LastWriteTime;
doc.Save();
string pdfTmp = MSWordToPDF.ToPDFReplaceROs(_MyDocument);
@ -445,24 +445,7 @@ namespace VEPROMS.CSLA.Library
}
}
LBDocumentClass myDoc = MyApp.Documents.Open(myFile.FullName, false);
float newTop = (float)myDocStyle.Layout.TopRow;
float newLeft = (float)myDocStyle.Layout.LeftMargin;
float newLength = (float)myDocStyle.Layout.PageLength;
float newWidth = (float)myDocStyle.Layout.PageWidth;
float oldTop = myDoc.PageSetup.TopMargin;
float oldLeft = myDoc.PageSetup.LeftMargin;
float oldBottom = myDoc.PageSetup.BottomMargin;
float oldRight = myDoc.PageSetup.RightMargin;
float oldHeight = myDoc.PageSetup.PageHeight;
float oldWidth = myDoc.PageSetup.PageWidth;
float newRight = oldWidth - (newWidth + newLeft);
if (newRight < 0) newRight = 0;
float newBottom = oldBottom - newTop;
//Console.WriteLine("{0},{1},{2},{3},{4},{5},{6},{7},{8},{9}", newTop, newLeft, newLength, newWidth, oldTop, oldLeft, oldBottom, oldRight,oldHeight,oldWidth);
myDoc.PageSetup.BottomMargin = 0;// 11 * 72 - (newTop + newLength);
myDoc.PageSetup.RightMargin = newRight;
myDoc.PageSetup.LeftMargin = newLeft;
myDoc.PageSetup.TopMargin = newTop;
AdjustMargins(myDocStyle, myDoc, true);
LBSelection sel = FindRO();
while (sel != null)
{
@ -562,6 +545,44 @@ namespace VEPROMS.CSLA.Library
}
}
public static void AdjustMargins(DocStyle myDocStyle, LBDocumentClass myDoc, bool printingMode)
{
float newTop = (float)myDocStyle.Layout.TopRow;
float newLeft = (float)myDocStyle.Layout.LeftMargin;
float newLength = (float)myDocStyle.Layout.PageLength;
float newWidth = (float)myDocStyle.Layout.PageWidth;
float oldTop = myDoc.PageSetup.TopMargin;
float oldLeft = myDoc.PageSetup.LeftMargin;
float oldBottom = myDoc.PageSetup.BottomMargin;
float oldRight = myDoc.PageSetup.RightMargin;
float oldHeight = myDoc.PageSetup.PageHeight;
float oldWidth = myDoc.PageSetup.PageWidth;
float newRight = oldWidth - (newWidth + newLeft);
if (newRight < 0) newRight = 0;
float newBottom = oldBottom - newTop;
//Console.WriteLine("{0},{1},{2},{3},{4},{5},{6},{7},{8},{9}", newTop, newLeft, newLength, newWidth, oldTop, oldLeft, oldBottom, oldRight,oldHeight,oldWidth);
if (printingMode)
{
myDoc.PageSetup.BottomMargin = 0;// 11 * 72 - (newTop + newLength);
myDoc.PageSetup.RightMargin = newRight;
myDoc.PageSetup.LeftMargin = newLeft;
myDoc.PageSetup.TopMargin = newTop;
}
else
{
myDoc.PageSetup.TopMargin = 0;
myDoc.PageSetup.LeftMargin = 0;
myDoc.PageSetup.RightMargin = (8.5F * 72) - newWidth + newLeft;
// For OHLP, docstyle (ohlpdoc.in) in 16-bit for "Cover Page", pagelen seems to be incorrect. It would
// put out text on a second page. The following code is to catch this condition and reset the bottom margin.
// 11 * 72 -> 11 inches converted to points. newLength is printable part so BottomMargin is unprintable part
if (newTop + 36 > ((11 * 72) - newLength)) // 36 is 1/2 inch
myDoc.PageSetup.BottomMargin = newTop + 36; // makes an 1/2 inch bottom margin
else
myDoc.PageSetup.BottomMargin = (11 * 72) - newLength;
}
}
public static void CloseApp()
{
WaitMS(300);// This was added because MSWord will sometimes get the error below