一般的な方法だとacrobatを使うそうですが、有料ソフトです。フリーで使えるソフトはないですか。画質を落とさずにpng化できる方法はないですか。サイトからだと画質が粗くなってしまい、ソフトでも有料じゃないと画質が粗くなるものばかりです。金出せ寝ないなら泣き寝入りでしょうか。20344d3407337fe469e1136012a.png)ないなら泣き寝入りでしょうか。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答5件
0
ImageMagickのconvertを使うのはどうでしょうか?
convert sample.pdf sample.png
デフォルトでは、75dpiなので、300dpiにしたい場合は次のようにします。
convert -density 300 -units PixelsPerInch sample.pdf sample.png
ただし、解像が高すぎると失敗するようです。(A4サイズなら500dpiぐらいまで?)
ImageMagick自体はどのOSでも入れられます(入れ方はOSによって異なります)。一緒にGhostScriptも入れないとPDFの変換は動作しない場合がありますのでご注意ください。また、コマンドラインですので大量のPDFをバッチ処理で一斉に変換もできますし、各言語にライブラリもありますので、アプリに組み込むことも可能です。
その他の方法として、Electronでpdf.jsを使ってcanvas上にPDFを表示させ、それをPNGとして保存させるという手があるかと思います。Carloでも良いかもしれません。
なお、PDFは埋め込み画像を除いてベクトル画像(特にフォント)の集合体であり、PNGのようなビットマップ画像にした場合、どんなに高解像度に設定しても画質は落ちます。画質が全く落ちないようにしたい場合は、ベクトル画像であるSVG等に変換する事を検討してください(PDF2SVGを使うと便利かも知れません)。
投稿2019/04/13 22:29
総合スコア21735
0
Free Spire.PDF for JavaはPDFをPNGに変換できる
Javaコード
import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; import com.spire.pdf.PdfDocument; import com.spire.pdf.graphics.PdfImageType; import javax.imageio.ImageIO; public class PDFPageToImage { public static void main(String[] args) throws IOException { //PdfDocument クラスのインスタンスを作成する PdfDocument pdf = new PdfDocument(); //PDFドキュメントを読み込む pdf.loadFromFile("C:/Sample.pdf"); //最初のページを画像に変換し、画像のDpiを設定する BufferedImage image= pdf.saveAsImage(0, PdfImageType.Bitmap,500,500); //画像を.pngファイルとして保存する ImageIO.write(image, "PNG", new File("画像.png")); } }
投稿2022/10/14 03:32
総合スコア62
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
仮想プリンタを使うのが簡単でしょう。たとえば
https://www.cube-soft.jp/cubepdf/
出力先としてPDF,PNG,TIFF,JPEG,BMPなどが選択でき、解像度は600dpiまで選択可能。
投稿2019/04/13 19:50
総合スコア13671
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
画質はわかりませんが印刷機能を使って画像に出力する方法はありますね。
http://www.ksky.ne.jp/~yamama/prtgraph/index.htm
投稿2019/04/13 17:05
総合スコア759
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。