掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
QuickReportのプレビュー画面が、PCのディスプレイの拡大縮小の設定によって小さくなります (ID:150933)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
Mr.XRAY さん お返事、有り難うございます。 教えて頂いた内容で試してみましたが、力不足でうまくいきませんでした。 更に海外情報を探してみたら、基本的には教えて頂いたQRPrntr.pas 内の CreateMetafileCanvas メソッドのコード を変更する方法なのですが、下記のコードをそのまま使用することで、解決しました。 有り難うございました。今後ともよろしくお願いいたします。 procedure TQRPrinter.CreateMetafileCanvas; function scaleToNativeDeskRes(pVal: Integer): Integer; var tTemp: HDC; begin tTemp := GetDC(0); try Result := Round((pVal * GetDeviceCaps(tTemp, VERTRES)) / GetDeviceCaps(tTemp, DESKTOPVERTRES)); finally ReleaseDC(0, tTemp); end; end; begin FMetafile := TMetafile.Create; //{$define HIRES} {$ifdef HIRES} // try a high res canvas XFactor := GetDeviceCaps(aPrinter.Handle, LogPixelsX) / 254; YFactor := GetDeviceCaps(aPrinter.Handle, LogPixelsY) / 254; FMetafile.Width := XSize(PaperWidthValue); FMetafile.Height := YSize(PaperLengthValue); FCanvas := TMetafileCanvas.Create(FMetafile, aprinter.Handle); FCanvas.Font.PixelsPerInch := GetDeviceCaps(aprinter.Handle, LOGPIXELSY); {$else} FMetafile.Width := scaleToNativeDeskRes(XSize(PaperWidthValue)); FMetafile.Height := scaleToNativeDeskRes(YSize(PaperLengthValue)); FCanvas := TMetafileCanvas.Create(FMetafile, 0); // FCanvas.Font.PixelsPerInch := MetafileDPI; //*** YFactor := Screen.PixelsPerInch / 254; XFactor := YFactor; SetGraphicsMode( FCanvas.handle, GM_ADVANCED); {$endif} //FHyperlinks := TList.Create; end;
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.