問題タブ [flying-saucer]
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.
ruby-on-rails - Rails act_as_flying_saucer コントローラー外?
私は rufus-scheduler タスクで pdf を作成する必要があるタスクを実行していますが、acts_as_flying_saucer はコントローラーの外では機能しません。
私がやっているタスクはコントローラーで正常に動作しますが、それは大きくて時間がかかり、最悪の部分は、ユーザーがタスクが完了するまで待たなければならないため、スケジューラー内に配置する必要があることです。
これを回避する方法はありますか?
pdf-generation - IText 2 + Flying Saucer:2つのPDFページ間で画像が壊れて表示されないようにするにはどうすればよいですか?
私はhtmlファイルを持っていて、それをpdfファイルに変換するためにフライングソーサーでItext2を使用しています。
問題は、画像がページの終わり近くで始まる場合、フライングソーサーがその一部を現在のページの終わりにレンダリングし、残りを次のページの最初にレンダリングすることです。
画像全体を1ページだけにしたいというのはどうすればいいですか?
pdf - 空飛ぶ円盤を使用して、Webページのキャンバス画像をpdfに変換します
Flying Saucerを使用して、 Web ページからpdfを生成しています。問題が発生しました。問題は、フライングソーサーを使用してキャンバス画像をpdfで印刷する方法です。他の方法はありますか、キャンバス画像を pdf に変換できますか?
java - 印刷ダイアログでflying-saucer/itextで作成されたPDFを開く方法
この質問の背景については、Java / JSPを使用した印刷の確認と、itextを使用した「印刷専用」PDFの作成を参照してください。
iText-2.0.8と次のコードを使用して、印刷ダイアログでPDFを正常に作成して開くことができました。
また、フライングソーサーを使用して、次のコードを使用してXHTMLからPDFを生成することもできました。
しかし、私は2つを一緒に動作させることができないようです...
2番目のコードブロックのようにフライングソーサーを使用してPDFを作成し、そのPDFのオープンアクションをに設定したいとPdfAction.PRINTDIALOG
思います。
空飛ぶ円盤で作成されたPDFが最初に印刷ダイアログで開くように、これら2つのコードセットを連携させるにはどうすればよいですか?
performance - iText/空飛ぶ円盤で生成された PDF 印刷ダイアログの表示を高速化
開いたときに印刷ダイアログを表示する空飛ぶ円盤を使用して PDF を作成しました。これを行うために私が書いたコードは次のとおりです。
PC で PDF を開くと、数秒後に印刷ダイアログが表示されます。
ただし、PDFを非表示のiframeに埋め込むと...
...ページが最初にレンダリングされるときに、PDF 印刷ダイアログが表示されません。
非表示の iframe アプローチは、非常に単純な「テスト」PDF に取り組んでいます。「firstdocprint.pdf」印刷ダイアログが数秒以内に表示され、PDF がわずか 2KB であることが期待されます (単純な「TEST」PDF はわずか 1KB です)。
PDF印刷ダイアログのレンダリングをプログラムで高速化する方法はありますか?
pdf - 生成された XHTML ドキュメントを使用するときに URL リゾルバ ディレクトリを設定しますか?
これが私の現在のワークフローです:
- データベースから POJO をロードします。
- それらを Velocity に渡し、HTML テンプレートをメモリ内でレンダリングします。
- 次に、Flying Saucer と iText を使用して、出力された HTML を PDF にレンダリングします。
この問題は、画像などの相対 URL を解決しようとすると発生します。ドキュメントはメモリ内にあるため、画像やスタイルシートを解決する方法がまったくわかりません。リソースをロードするディレクトリを渡しながら、ドキュメントをメモリ内の String オブジェクトに設定するにはどうすればよいですか?
クライアントにメールで送信するレポートを生成しているだけなので、すべてをメモリ内で行う必要があります。<img src="..."/>
PDF に生成されたときに、HTML テンプレートで相対 URL を解決するにはどうすればよいですか?
css - フライングソーサー/サーブレットのiText PDFがcssファイルを見つけられない
コードスニペットは質問の下部にあります
サーブレットと空飛ぶ円盤/iText を使用して、クライアントのブラウザーで PDF を正常にレンダリングできます。ただし、PDF レンダリングに含まれるスタイル シートを取得する方法がわかりません。
私は次のことを試しましたが、これまでのところ何も機能していません:
- getServletContext().getRealPath("/PDFservlet.css") および "PDFservlet.css" を Web ルート ディレクトリに置く
buf.append("<head><link rel='stylesheet' type='text/css' href='PDFservlet.css' /></head>")
「PDFservlet.css」をWebルートディレクトリ、サーブレットクラスファイルがあるディレクトリ、「classes」ディレクトリのすぐ下に配置しますhref='\PDFservlet.css'
Webルートディレクトリの下のさまざまな場所に「PDFservlet.css」を配置することを除いて、上記と同じです
ここで他に何を試すべきか、クライアントのブラウザーで PDF がレンダリングされるときにこの CSS シートを認識させる方法がわかりません。
ここで私が間違っていることを教えてもらえますか?
また、java.io.IOException: Stream closed
PDF がレンダリングされた後、それがどこから来ているのかわかりません。
これをローカルでテストし、WebLogic Server 10.3.3 を実行しています。
編集 I
サーバー側コードの CSS ファイルの内容を文字列に読み取ることは、代替手段として機能しています (この方法は、ファイルの内容から Java 文字列を作成するにはどうすればよいですか?readFile
での Jon Skeet の投稿に基づいています)。
これは、代替手段として適切なアプローチのように思えますか?
編集Ⅱ
私は iText 用のチャット ルームを作成しました。iText/flying-saucer でいくつかの問題が発生しましたが、専門家の助けを借りて簡単に解決できると思います。機会があれば見てみて、iText の問題に役立つ可能性のある資料を投稿してください: https://chat.stackoverflow.com/rooms/8945/itext
itext - 空飛ぶ円盤の java.util.logging 出力をオンにする
iText と Flying Saucer を使用して PDF をコンパイルしていますが、残念ながら、コンパイル時に Flying Saucer から出力を取得できないようです。私が直面している現在の問題をデバッグできるように、内部で何が起こっているのかを確認できるようにしたいと思っています。
Flying Saucer の java.util.logging を有効にするにはどうすればよいですか? 現在、SLF4J/Logback を使用しています。
pdf - 印刷用の CSS を使用したページ ヘッダーとフッターの作成
Flying Saucer (CSS/HTML を iText に PDF にダンプする) を使用して PDF を作成しており、CSS3 を使用して各ページに画像ヘッダーとフッターを適用しようとしています。
基本的に、この div を各ページの左上に配置したいと思います。
私のCSSは次のようになります。
この div を に入れる方法はありcontent
ますか?
java - OutputStreamを使用したiText/flying-saucer PdfStamper
最初に保存せずにサーブレットを使用してPDFをレンダリングできるようになるまで、私はほぼそこにいます(私は思います)。私はそれをうまくセットアップすることができました、しかし私は最初に印刷ダイアログでクライアントのブラウザでPDFを開かせようとして立ち往生しています。
次の方法でPDFをクライアントに正常に送信できました。
しかし、それを開くときに印刷ダイアログを配置する方法がわかりません。このコードを物理PDFファイルに使用しましたが、OutputStreamの内容をPdfReaderに入力するためのバイト配列として読み取ることができる必要があります(私は思います)。
実際のファイルではなく、OutputStreamを使用してこれを行う方法がわからない...
そこに投稿したい場合は、iTextチャットルームも作成しました:https ://chat.stackoverflow.com/rooms/8945/itext