js でのいくつかの印刷メソッド

方法 1:printJsライブラリを使用して印刷機能を実装する

1. プラグインを導入します。

まず、HTML ファイルにライブラリを含めますprintJs<head>ライブラリ ファイルは、タグに次のコードを追加することで導入できます。

<script src="https://printjs-4de6.kxcdn.com/print.min.js"></script>
<link rel="stylesheet" href="https://printjs-4de6.kxcdn.com/print.min.css">

printJsこれにより、ライブラリの JavaScript ファイルと CSS ファイルが CDN からロードされます。

2. 印刷ボタンを作成します。

印刷アクションをトリガーするボタンを HTML ファイル内に作成します。例えば:

<button id="printButton">Print</button>

3. 印刷イベント リスナーを追加します。

JavaScript ファイルで、次のコードを使用して、ユーザーが印刷ボタンをクリックしたときに印刷操作をトリガーするクリック イベント リスナーを追加します。

document.getElementById('printButton').addEventListener('click', function() {
    
    
  printJS({
    
    
    printable: 'myElementId', // 要打印的元素的ID
    type: 'html'
  });
});

上記のコードでは、myElementId印刷する要素の実際の ID に置き換えます。ページ全体を印刷することも、印刷する特定の要素を指定することもできます。

完全なサンプルコードは次のとおりです。

<!DOCTYPE html>
<html>
<head>
  <title>PrintJS Example</title>
  <script src="https://printjs-4de6.kxcdn.com/print.min.js"></script>
  <link rel="stylesheet" href="https://printjs-4de6.kxcdn.com/print.min.css">
</head>
<body>
  <h1>PrintJS Example</h1>
  <div id="myElementId">
    <p>This is the content to be printed.</p>
  </div>
  <button id="printButton">Print</button>

  <script>
    document.getElementById('printButton').addEventListener('click', function() {
      
      
      printJS({
      
      
        printable: 'myElementId',
        type: 'html'
      });
    });
  </script>
</body>
</html>

上の例では、ユーザーが「印刷」ボタンをクリックすると、印刷操作がトリガーされて<div id="myElementId">コンテンツが印刷されます。

これが適切に機能するためには、ライブラリをロードする前に、printJsWeb ページが jQuery ライブラリをロードしていることを確認する必要があることに注意してください。ライブラリは jQuery に依存しているためです。printJsprintJs

printJsこの詳細なチュートリアルが、ライブラリを使用した印刷機能の実装に役立つことを願っています。

さまざまな方法を使用して印刷機能を実装する詳細な手順を次に示します。

方法2:window.print()使い方

  1. 印刷アクションをトリガーするボタンを HTML ファイル内に作成します。例えば:
<button id="printButton">Print</button>
  1. 印刷イベント リスナーを追加する: JavaScript ファイルで、次のコードを使用して、ユーザーが印刷ボタンをクリックしたときに印刷操作をトリガーするクリック イベント リスナーを追加します。
document.getElementById('printButton').addEventListener('click', function() {
    
    
  window.print();
});

方法3:使用window.open()方法

  1. 印刷アクションをトリガーするボタンを HTML ファイル内に作成します。例えば:
<button id="printButton">Print</button>
  1. 印刷イベント リスナーを追加する: JavaScript ファイルで、次のコードを使用して、ユーザーが印刷ボタンをクリックしたときに印刷操作をトリガーするクリック イベント リスナーを追加します。
document.getElementById('printButton').addEventListener('click', function() {
    
    
  var printWindow = window.open('', '_blank');
  printWindow.document.open();
  printWindow.document.write('<html><head><title>Print</title></head><body>');
  printWindow.document.write('<h1>Content to be printed</h1>');
  printWindow.document.write('</body></html>');
  printWindow.document.close();
  printWindow.print();
});

方法 4: 電子印刷機能を使用する

  1. レンダリング プロセスでは、次のコードを使用して印刷メッセージをメイン プロセスに送信します。
const {
    
     ipcRenderer } = require('electron');
ipcRenderer.send('print');
  1. メイン プロセスでは、次のコードを使用して印刷メッセージをリッスンし、印刷操作をトリガーします。
const {
    
     ipcMain, BrowserWindow } = require('electron');
ipcMain.on('print', (event) => {
    
    
  let win = BrowserWindow.getFocusedWindow();
  win.webContents.print();
});

これらの詳細な手順が印刷機能の実装に役立つことを願っています。

使用するシーン

使用window.print()方法

使用するシーン:

  • これは、ページ全体を印刷するだけの場合に簡単で便利な方法です。

アドバンテージ:

  • シンプルで使いやすく、追加のライブラリや依存関係を導入する必要はありません。
  • ページ全体を印刷できます。

欠点:

  • 印刷されたスタイルとレイアウトは、画面に表示されるものと正確に一致しない場合があります。
  • 特定の要素やコンテンツを選択して印刷する方法はありません。

使用window.open()方法

使用するシーン:

  • これは、印刷コンテンツのスタイルとレイアウトをカスタマイズしたい場合、または特定の要素のみを印刷したい場合の、より柔軟なアプローチです。

アドバンテージ:

  • 印刷コンテンツのスタイルとレイアウトはカスタマイズできます。
  • 特定の要素またはコンテンツを選択して印刷できます。

欠点:

  • コンテンツを印刷するには、HTML コードを手動で記述する必要があります。
  • 印刷操作を行うと、新しいブラウザ ウィンドウがポップアップ表示されます。

電子印刷機能を利用する

使用するシーン:

  • これは、Electron フレームワークを使用してデスクトップ アプリケーションを開発しており、アプリケーションに印刷機能を実装する必要がある場合に適した方法です。

アドバンテージ:

  • 印刷機能は Electron アプリケーションに簡単に実装できます。
  • Electron が提供する API を使用して、より高度な印刷制御やカスタマイズを行うことができます。

欠点:

  • Electron アプリケーションでのセットアップと構成が必要です。
  • Electron フレームワークでのみ利用可能です。

印刷.js

使用するシーン:

  • Print.js は、ブラウザーでより柔軟でカスタマイズ可能な印刷機能が必要な場合に最適です。
  • 特定の要素やコンテンツを印刷する必要がある場合や、印刷スタイルやレイアウトをカスタマイズする必要がある場合に適しています。

アドバンテージ:

  • 印刷コンテンツのスタイル、レイアウト、動作をカスタマイズするための豊富な API とオプションを提供します。
  • HTML 要素、PDF ファイル、画像の印刷をサポートします。
  • さまざまなブラウザやデバイスと互換性があります。

欠点:

  • 追加のライブラリと依存関係を導入する必要があります。
  • ある程度の学習コストと設定コストが必要です。

ニーズや使用環境に応じて、適切な方法を選択して印刷機能を実装できます。この情報がお役に立てば幸いです

おすすめ

転載: blog.csdn.net/ACCPluzhiqi/article/details/131803570