問題タブ [qprinter]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1478 参照

qt - QPrinter で PDF に印刷すると QPainter がクラッシュする

クラスQPrinterおよびQPainterを使用して、Windows 仮想デバイスで PDF ファイルに印刷しています。QPainterオブジェクトは、PDF ファイルのパスと名前を入力できるダイアログ ウィンドウを開きます。

意図した用途では正しく機能します。ただし、ダイアログで [キャンセル] ボタンを押すと、アプリケーションがクラッシュします。エラーを再現するコード スニペットを次に示します。

[キャンセル] ボタンを押すと、 QPainter::begin()の呼び出し中にアプリケーションがクラッシュします。何か不足していますか?その方法にバグがある可能性はありますか?

更新: QPainter::begin() への呼び出しを try-catch で保護しても、クラッシュは防止されませんでした:

0 投票する
0 に答える
226 参照

qt - QPrinter を使用してプロッターに非常に大きな画像を印刷する

Qtベースのアプリから、多くのベクターデータを含むプロッターの世界地図に印刷する必要があります。Plotter には 80 GB のハード ドライブがあり、高解像度のイメージを印刷できます。すべてのデータは QGraphicsScene にロードされます。

A4は、テスト中の速度を向上させるために使用しています。

ベクターデータをロードした後、水平ストリップでタイル(256x256 px)をロードし、ストリップをペインターにレンダリングし、シーンからタイルをクリアします。ストリップシーンでレンダリングしているため、使用可能なメモリを超えていませんが、QPainter は削除されるまでデータをプリンターに送信しません。そのため、アプリはすぐにメモリ不足になります。各サイクルステップで QPainter::end() を呼び出す機会がありますが、この方法では各ストリップが通常のプリンターの異なるページに印刷されるため、プロッターのナイフを制御できなくなるとすぐに、プロッターは各ストリップをカットすると思います. したがって、これは解決策ではありません。QPainter にデータを送信させてキャッシュをクリアさせながら、同じ印刷セッションを維持するにはどうすればよいですか?

0 投票する
0 に答える
567 参照

c++ - Cutting labels on a label printer to the correct size in Qt/C++?

I have a Brother QL700 label printer. I want to print a BarCode on this printer. I have successfully generated a barcode in code 39 format in QString and display this barcode on a QLabel->setText(QString). Now I want to print this barcode on a label printer. I am doing the following things but it does not give me the desired result.

This code will print the barcode on the label printer, but does not cut the paper after 45 mm. It cuts the paper at 297mm (i.e. in A4 size of 210x297mm).

That means the printer assumes that the size of paper is QPrinter::A4 but I have given it a custom size. It should be printed using the size I specified, but it's not happening.

How can I properly tell the label printer to use the specified paper size so that it will cut the printed labels correctly?

0 投票する
0 に答える
193 参照

printing - png を印刷するとピクセル化されます

テキストと R.png ファイルがあります。これらは、PDFファイルと「実際の」プリンターに印刷したいと考えています。

私は次のコードでそれを行います:

ピクセル化された R.png ファイルを除いて、これは正常に機能します。

draw メソッドに次の行を追加して、問題を解決しようとしていました。

その後、作成された pdf は正常に見えますが、印刷されたファイルはまだピクセル化されています。添付の画像「setDevicePixelRatioで印刷されたpdf」と「setDevicePixelRatioで作成されたpdf」をご覧ください。

ここで私が間違っていることを誰か教えてください。

プリンタードライバーで解像度を変更してこの問題を解決しようとしましたが、うまくいきませんでした。私にとって奇妙なことは、Elipse がどのような場合でも問題なく見えることです。

残念ながら、添付の R.png は、私の問題を示すための単なる例です。文字だけの描画では置き換えられません。

事前に助けてくれてありがとう!

setDevicePixelRatio で印刷された PDF setDevicePixelRatio で 作成された PDF

0 投票する
2 に答える
1562 参照

c++ - QStringListModel コンテンツを印刷するにはどうすればよいですか?

QStringListModel の内容を 'void MainWindow::on_pbImprime_clicked()' でプリンターに出力する必要があります。問題なく Qstring を出力していますが、QStringListModel のデータを QString テキストに配置する方法がわかりません。アイディアがある?

これが私のコードです:

私の悪い英語で申し訳ありません。助けてくれてありがとう。

0 投票する
2 に答える
390 参照

c++ - QThread および QPrinter 使用時のメモリ リーク

私はQThread印刷作業に使用していますQPrinter

PrintWorkerはこのように見えます:

そしてprint方法はこれです:

アプリを呼び出す前にprint()、印刷後に約 9MB のメモリが公開されPrintWorker::print()、アプリのメモリ使用量が 26MB になりました

emit done別の世界では、最後の部分を削除しPrintWorker::print()ても問題はありません。

ジョブの終了後に予想されるのは、メモリ使用量が 26MB に減少することです - スレッド スペース + _printer+_printDialogオブジェクト サイズ ≈ 14MB

では、これの何が問題なのですか?

0 投票する
0 に答える
228 参照

qt - Qt Print QStandardItemModel

「QStandardItemModel」の行を印刷したい。私はこのコードを使用します。動作しますが、テーブルは美しくありません。行の高さを調整する方法がわかりません。また、テーブルの最初の行のセルの幅に基づいて列の幅を設定する方法もわかりません。

ここに画像の説明を入力