問題タブ [batik]

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 投票する
2 に答える
864 参照

java - Apache Batik - 例外:「コンテンツはプロローグで許可されていません」PDF を JPEG に変換する

一部の PDF を JPEG に変換しようとすると、「コンテンツはプロローグでは許可されていません」というメッセージとともに例外が発生します。SVGをPDFに変換してからPDFを画像に変換する2段階の操作を実行しています。

Batik が対象とする直接プロセスを実行しようとすると、この問題に直面しています。

これが私のコードです。

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

java - SVG ファイルから非バッファ java.awt.Image を作成する

Swing & Batikのソリューションによく似た既存のコードがいくつかあります: SVG ファイルから ImageIcon を作成しますか?

しかし、私の画像の宛先は PDF であり、PDF を拡大するとピクセルが表示されるのが気になります。ソース データと宛先データが両方ともベクター グラフィックである場合は、直接レンダリングできるはずです。

私たちが使用しているライブラリ (iText) は java.awt.Image を取りますが、SVG をレンダリングする java.awt.Image を取得する方法がわかりません。バティックにはそれを行う方法がありますか?

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

java - SVG から画質の低下

私の要件は、.SVG を画像に変換することです。SVG ファイルは、内部ツールによって生成されます。私は2つのアプローチでこれらを試しています:

  1. JPEG トランスコーダを使用して SVG を画像に変換します。私の SVG ファイルは複雑なマップで、テキストが含まれています。結果の画像の品質は大幅に低下し、テキストが読めなくなり、ぼやけています。
  2. SVG を PDF に、PDF を画像に変換します。Batik を使用して SVG から PDF を実行し、PDFRenderer を使用して画像に PDF を実行しています。
    PDF を画像に変換すると、判読できない画像が生成されます。
0 投票する
2 に答える
1791 参照

java - Batik を使用して SVG ファイルを読み取るときにカスタム要素ファクトリを使用する

古いプログラムからエクスポートされた大きな (1 MB) svg ファイルを読み込もうとしています。このプログラムまたはデータにアクセスできません。私はこのエクスポートされた svg ファイルしか持っていません。おそらく、このソースから新しくエクスポートされた svg ファイルを定期的にインポートする必要があります。Batik を使用して最初に見つけた問題は、このファイルを読み取るときに非常に厳密であるということです。たとえば、Firefox では、このファイルの読み取りと表示に問題はありません。Batik (文書内のいくつかの「カスタム」タグのため、Squiggle を含めて表示できません)。私が得る例外は...

...だから、完全には役に立たないリンクを使用して、バティック Dom 拡張機能を書く 私は次のように書くことができました...

しかし、同じエラーが発生します。 System.out.println() ステートメントがヒットすることはないため、ファクトリが正しく登録されていないようです。余談ですが、Firefoxのように理解できないことをスキップするように、Batikの厳密さを緩和する方法はありますか?

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

java - 境界ボックスと特定の単語に基づいて SVG フォントのサイズを相対的に変更する方法

SVG を使用して、長方形の中にテキストを描画する必要があります。パスで定義されたアイコンがあり、アイコンの形状に基づいて、各アイコンのテキスト キャンバス領域を任意に選択しました。私がする必要があるのは、テキストがテキストキャンバス領域内で (水平方向および垂直方向に) 中央に配置されるように、テキスト (要求ごとに変更される可能性があります) を描画し、使用するフォントのサイズを変更して、テキストキャンバス領域内に完全に収まるようにすることです。キャンバス。

私がこれまで行ってきたことは、Batik を使用して生の画像を生成し、次に java.awt を使用してその上にテキストを描画することです。これは、キャンバス領域の 80% の font-height から開始し、レンダリングされたフォントの幅を (フォント メトリックを使用して) チェックし、キャンバス領域の幅よりも大きい場合は、5% 縮小することによって行われました。収まるまで一度に。最初に適合する場合、ループは含まれないため、比較的効率的です (少なくとも当面の間)。

ただし、このアプローチはいくつかの領域に当てはまりますが、最も重要なのはアイコンにストロークを追加する場合です。ストロークが増えるとアイコンのバウンディング ボックスが予期せず変化するため、SVG 自体内にフォントを描画することを望んでいました。

SVG/Batikで、フォントが収まるまで同様の方法でサイズを変更できますか? どうすればいいですか?誰かがこれのための良いリソースを教えてくれますか? Google/Stackoverflow で適切な回答が見つかりませんでしたが、明らかな回答を見逃した場合は、代わりにそこに送ってください。

よろしくお願いします。

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

java - コマンドラインからの SVG 生成は失敗しますが、NetBeans では成功します

奇妙な問題があります。私は現在、svg 生成を試しており、次のコードを使用して svg ファイルを生成しています。

プログラムを NetBeans で実行すると、次のように生成されます。

これはブラウザに正しく表示されます。ただし、cmd で実行すると、ファイルの内容は次のようになります。

この場合、ブラウザは次のエラーを表示します。

ただし、Rúccc の代わりに Ruccc と入力すると、コマンド ラインからもブラウザーからもすべて問題なく使用できます。問題は、ハンガリー語の ú の文字の存在だと思います。svg がコマンドラインから正しく生成されるように、Java で svg 生成を使用してハンガリー文字を処理するにはどうすればよいですか? ご意見ありがとうございます。

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

java - JSVGCanvas.getSVGDocument() は null を返していますか?

Java を使用して SVG を操作するために、batikSVG の操作に問題があるようです。SVG を JSVG キャンバスに問題なく表示できますが、getSVGDocument を使用してキャンバスの SVGDocument を表示しようとすると、null が返されるようです。それはなぜですか。また、実際のドキュメントを入手するにはどうすればよいですか?

最後の行は、doc が null である場所をテストし、常に null を出力します。助けてください!

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

java - Highchart Java を使用して画面外で SVG を生成する

提供されたパラメーターに基づいて svg を生成できる HighChart 用の Java API (エクスポート API ではない) があるかどうか疑問に思っています

現時点で私が考えることができる唯一の方法は、Chart ポイントを含むダミー ページに POST し、SVG にエクスポートし、Javascript を使用してエクスポート サービスに送信し、Batik を使用して PNG に変換し、画像ストリームとして返すことです。 .

ただし、必要なのは、DB からのパラメーターによって提供される JVM でイメージ ストリームを取得することだけです。上記の方法には 2 つの要求と応答のペアが必要であり、最もクリーンなソリューションではないことを除けば、サーバー上でこの操作が頻繁に行われるため、オーバーヘッドが発生すると思います。