作者clifflu (缺钱啦 @@)
看板Visual_Basic
标题Re: [.NET] 用PrintDocument印中文字的问题
时间Fri Sep 9 23:19:20 2005
※ 引述《Tox (It's up to you)》之铭言:
: 而我也拿来试试看
: 改了example中 Font那个部分 改成
: printFont = New Font("细明体", 10)
: 或者改成printFont = New Font("TW Cen MT", 10)
: 印出来都还是乱码
: Public Sub Printing()
: Try
: streamToPrint = New StreamReader(filePath)
我猜想上面这行错误的可能性很大, 主因是 .Net 中编码为 unicode
但是目前多数 OS / Editor 在开档时仍然会以 Big5 的方式写入.
StreamReader 可以在 filePath 之後, 加上参数 Encoding
(System.Text.Encoding (s ? 忘了)) 但里面明显没有 Big5 的选项.
这时候, 只要选 "Default" 就可以了, 它会以 OS 的读法为准.
这是我自己以 StreamReader 读取含有中文字 (Big5) 遇到乱码的
处理方式.
: Try
: printFont = New Font("Arial", 10)
: Dim pd As New PrintDocument
: AddHandler pd.PrintPage, AddressOf pd_PrintPage
--
鬼压床怎麽办
骑上去啊
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.217.134
※ 编辑: clifflu 来自: 140.112.217.134 (09/10 00:16)