0

Unicode (中国語) 文字列をプリンター (実際には PDFCreator) で印刷しようとしていますが、得られるのは文字の垂直印刷だけです。

TextOutWからインポートされた関数を使用しますgdi32.dll

TextOutW dest.hDC, x, y, StrConv(szText, vbUnicode), Len(szText)

そして、「0.12」を印刷しようとすると(漢字を印刷しても、とにかく同じ結果が得られます)、

0
.
1
2

この関数を使用すると、dest.PrintUnicode を印刷できません。

とにかく、TextOutW画面上で素晴らしく機能します。

誰でもこれを解決するのを手伝ってもらえますか?

4

1 に答える 1

1

の定義はszText? VB6文字列ですか?その場合は試してください

Private Declare Function  Lib "gdi32" Alias "TextOutW" ( _
  ByVal hdc As Long, ByVal x As Long, ByVal y As Long, _
  ByVal lpStringU As Long, ByVal nCount As Long) As Long  

TextOutW dest.hDC, x, y, StrPtr(szText), Len(szText) 

ノート

  • StrPtrいいえStrConv(... , vbUnicode)
  • DeclareTextOutW持っているByVal lpStringU As Long
于 2012-11-22T17:06:43.403 に答える