2017-06-17 36 views
0

pdfboxとjavaの初心者です - ロゴの書式設定などでPDF文字を複製しようとしています。文の中で現在、WordUtils.wrapを使用して段落文字列を追加し、次にbegin.Textなどを解析して表示します(drawStringはこれを選択できません - 私はそれを使用するマルチフォントの情報を探しました)。フィールド値はテキストと長さが異なるため、表示するフォントを検索、分割、変更することはできません。これを行うためのタグを使用できません(私は考えることができるすべてを試しました!)が、太字の始まりと太字の終わりのための単一のchar識別子を使用する方法があることを望みますか? 1つの問題は、識別子が段落の同じ行に終わるという保証がないことです。 UGH。私が大胆にする必要があるテキストを除いて、他のすべてが完璧です。誰にも何か提案はありますか?私はこれを達成するためにpdfboxを使用する必要があります - Itextを使用することはできません。助けてください!ありがとうございました!!PDFBOX - WordUtils.wrap - 太字と太字でないテキストを同じ行に表示する必要があります

+1

PDFBoxは低レベルで、段落/書式設定は行いません。これらのURLは長さと位置に関するすべてのもので、https://stackoverflow.com/questions/13701017/calculation-string-width-in-pdfbox-seems-only-to-count-charactersとhttps:///stackoverflow.com/questions/27600166/calculate-correct-width-of-a-text。質問を編集して、あなたがしたコードとあなたがしたいことを示すことをお勧めします。 (すべての問題ではなく、ただ一つ)。 –

+0

'WordUtils.wrap' - あなたはApacheのコモンズユーティリティを意味しますか?モノスペースフォントだけを使用しない限り、行の折り返しのために個々のグリフ幅を考慮する必要があります(cf.例えば[この回答](https://stackoverflow.com/a/19683618/1729265)。 – mkl

答えて

0

解決済み - 私はそれを理解しました。あなたの提案をありがとう!私はポジショニングを使用したくないので、できるだけシンプルに保つ必要がありました。結局、何百もの手紙を実装する必要があります。 Utils.wrapを書式設定ではなくラインパーサーとして厳密に使用しているので、すばらしいです。 2つの識別子を使用する - 3つのチェック - 1)同じ行で、2)1つの行で太字で始まり、3)別の行で太字で終わる。 ""で分割文字列を使用し、識別子と等しいかどうかをチェックします。書式設定は完璧です。いくつかのクレイジーな理由識別子が文字のテキストに含まれている場合は、修正する必要があります。これは第1回目の展開に有効です。
もう一度おねがいします。

関連する問題