2016-05-21 13 views
1

java.awt.Imageをitextに直接追加できるかどうかは疑問でした。私が見てきたこの質問へのすべての応答はこれまでjava.awt.Imageをitextに直接追加します

ImageIO.write(img, "png", "output.png); 

その後com.itextpdf.text.Image方法にImage.getInstance()

Image iTextImage = Image.getInstance("output.png"); 

このソリューションの作品を使用してそれをフェッチディスクにイメージを書き込むことが示唆しますかなりエレガントではありません。これをもっとうまくいく方法はありますか?

+0

長い答えは以下のとおりです。簡単な答えは、あなたのIDEが提供する自動補完の提案を試してみましたか?おそらくそうではないでしょう。なぜなら、あなたは尋ねる必要がなかったからです。 –

答えて

3

あなたはiTextのAPI documentation for the Image classを見れば、あなたはイメージを使用するファイル名以外、他の多くの方法があることが表示されます。

  • static Image getInstance(byte[] imgb)
  • static Image getInstance(byte[] imgb, boolean recoverFromImageError)Image
  • のインスタンスを取得しますstatic Image getInstance(Image image)Imageのインスタンスを取得します
  • static Image getInstance(Image image, Color color)java.awt.ImageからImageのインスタンスを取得します。
  • static Image getInstance(Image image, Color color, boolean forceBW)java.awt.ImageからImageのインスタンスを取得します。
  • static Image getInstance(int width, int height, boolean reverseBits, int typeCCITT, int parameters, byte[] data)ImageをCCITT G3またはG4圧縮で作成します。
  • static Image getInstance(int width, int height, boolean reverseBits, int typeCCITT, int parameters, byte[] data, int[] transparency)ImageをCCITT G3またはG4圧縮で作成します。
  • static Image getInstance(int width, int height, byte[] data, byte[] globals) JBIG2 Imageを作成します。
  • static Image getInstance(int width, int height, int components, int bpc, byte[] data)Imageのインスタンスをrawモードで取得します。
  • static Image getInstance(int width, int height, int components, int bpc, byte[] data, int[] transparency) rawモードのImageのインスタンスを取得します。
  • static Image getInstance(PdfContentByte cb, Image awtImage, float quality)java.awt.ImageからImageのインスタンスを取得します。
  • static Image getInstance(PdfTemplate template)
  • Image
  • static Image getInstance(PdfWriter writer, Image awtImage, float quality)のインスタンスを取得java.awt.ImageからImageのインスタンスを取得します。
  • static Image getInstance(PRIndirectReference ref)既存のイメージを再利用します。
  • static Image getInstance(String filename)Image
  • static Image getInstance(String filename, boolean recoverFromImageError)
  • static Image getInstance(URL url)
  • static Image getInstance(URL url, boolean recoverFromImageError)のインスタンスを取得しImageのインスタンスを取得します。

java.awt.Imageの公式Webサイトでの使用方法の例があります。 ImageTypesの例を参照してください。

// Adding a java.awt.Image 
java.awt.Image awtImage = 
    Toolkit.getDefaultToolkit().createImage(RESOURCE); 
img = com.itextpdf.text.Image.getInstance(awtImage, null); 
document.add(new Paragraph(
    String.format("%s is an image of type %s", 
    "java.awt.Image", img.getClass().getName()))); 
document.add(img); 
+1

私の答えを掃除してくれてありがとうブルーノ。(私が推測する):D –

+0

私はしばしば同じ問題を抱えています。リンクやコードスニペットをコピーする必要がある場合、電話からの応答は簡単ではありません。 –

関連する問題