none
PageSetupDialog.PageSettings.Margins 單位轉換的問題 RRS feed

  • 一般討論

  •                 fs = New System.IO.FileStream("PrintSet.txt", IO.FileMode.Create, IO.FileAccess.Write)
                    Dim w As New System.IO.StreamWriter(fs)
                    If (System.Globalization.RegionInfo.CurrentRegion.IsMetric) Then
                        Me.PageSetupDialog1.PageSettings.Margins = System.Drawing.Printing.PrinterUnitConvert.Convert(Me.PageSetupDialog1.PageSettings.Margins, Printing.PrinterUnit.Display, Printing.PrinterUnit.TenthsOfAMillimeter)
                    End If
                    w.WriteLine(Me.PageSetupDialog1.PageSettings.Margins.Left)
                    w.WriteLine(Me.PageSetupDialog1.PageSettings.Margins.Right)
                    w.WriteLine(Me.PageSetupDialog1.PageSettings.Margins.Top)
                    w.WriteLine(Me.PageSetupDialog1.PageSettings.Margins.Bottom)
                    w.WriteLine(Me.PageSetupDialog1.PageSettings.PaperSize.PaperName)

    請教各位先進

    我想將 PageSetting.Margins 的設定寫入文字檔

    當我開啟印表機設定時,如果邊界輸入10 (mm)

    PageSetting.Margins.Left 的值會是 39 (好像是.Net自動轉換單位的)

    於是我使用

    System.Drawing.Printing.PrinterUnitConvert.Convert(Me.PageSetupDialog1.PageSettings.Margins, Printing.PrinterUnit.Display, Printing.PrinterUnit.TenthsOfAMillimeter)

    將單位轉回TenthsOfAMillimeter,但轉換的結果是99

    與原本使用者設定會有點差距,該如何解決?

     

    2007年3月19日 上午 08:50