手机网站如何生成app,阿里巴巴网站建设基本内容,wordpress邮箱非必填,seo软件安卓版说明
有时需要把PDF的每一页另存为图片。用Devexpress可以很方便的完成这个功能。 窗体上放置一个PdfViewer。
然后循环每一页 for (int i 1; i pdfViewer1.PageCount; i)
调用 chg_pdf_to_bmp函数获得图片并保存
chg_pdf_to_bmp中调用了PdfViewer的CreateBitmap函数…说明
有时需要把PDF的每一页另存为图片。用Devexpress可以很方便的完成这个功能。 窗体上放置一个PdfViewer。
然后循环每一页 for (int i 1; i pdfViewer1.PageCount; i)
调用 chg_pdf_to_bmp函数获得图片并保存
chg_pdf_to_bmp中调用了PdfViewer的CreateBitmap函数
全部代码 private string pdf_fn ; private void button1_Click(object sender, EventArgs e) { pdf_fn textBox1.Text.Trim(); if (! System.IO.File.Exists(pdf_fn)) return; button1.Enabled false; string dir System.IO.Path.GetDirectoryName(pdf_fn) \ System.IO.Path.GetFileNameWithoutExtension(pdf_fn) .files; if (!System.IO.Directory.Exists(dir)) System.IO.Directory.CreateDirectory(dir); pdfViewer1.LoadDocument(pdf_fn); progressBar1.Value 0; progressBar1.Maximum pdfViewer1.PageCount; Application.DoEvents(); for (int i 1; i pdfViewer1.PageCount; i) { Bitmap bmp chg_pdf_to_bmp(pdfViewer1,i); bmp.Save(dir\i.ToString().jpg, ImageFormat.Jpeg ); bmp.Dispose(); progressBar1.Value progressBar1.Value 1; Application.DoEvents(); } MessageBox.Show(保存在 dir下); button1.Enabled true; } private string pdf_fn ;private void button1_Click(object sender, EventArgs e){pdf_fn textBox1.Text.Trim();if (! System.IO.File.Exists(pdf_fn))return;button1.Enabled false;string dir System.IO.Path.GetDirectoryName(pdf_fn) \ System.IO.Path.GetFileNameWithoutExtension(pdf_fn) .files;if (!System.IO.Directory.Exists(dir))System.IO.Directory.CreateDirectory(dir);pdfViewer1.LoadDocument(pdf_fn);progressBar1.Value 0;progressBar1.Maximum pdfViewer1.PageCount;Application.DoEvents();for (int i 1; i pdfViewer1.PageCount; i){Bitmap bmp chg_pdf_to_bmp(pdfViewer1,i);bmp.Save(dir\i.ToString().jpg, ImageFormat.Jpeg ); bmp.Dispose();progressBar1.Value progressBar1.Value 1;Application.DoEvents();}MessageBox.Show(保存在 dir下);button1.Enabled true;} public Bitmap chg_pdf_to_bmp(DevExpress.XtraPdfViewer.PdfViewer VW_PDF, int i_page_no, int max_w 210 * 4 * 3) { DevExpress.Pdf.PdfDocument _pdf_document null; VW_PDF.CurrentPageNumber i_page_no; VW_PDF.Refresh(); System.Reflection.PropertyInfo fiDocument VW_PDF.GetType().GetProperty(Document, BindingFlags.Instance | BindingFlags.NonPublic); _pdf_document fiDocument.GetValue(VW_PDF, null) as DevExpress.Pdf.PdfDocument; PdfPage pdfpage _pdf_document.Pages[i_page_no - 1]; SizeF page_sf VW_PDF.GetPageSize(i_page_no); int pw (int)(page_sf.Width / pdfpage.UserUnit * 500); int ph (int)(page_sf.Height / pdfpage.UserUnit * 500); int bmp_w pw; //pw * 3 / 2; int bmp_h ph; //ph * 3 / 2; if (bmp_w max_w) bmp_w max_w; Bitmap bmp VW_PDF.CreateBitmap(i_page_no, bmp_w); return bmp; } public Bitmap chg_pdf_to_bmp(DevExpress.XtraPdfViewer.PdfViewer VW_PDF, int i_page_no, int max_w 210 * 4 * 3){DevExpress.Pdf.PdfDocument _pdf_document null;VW_PDF.CurrentPageNumber i_page_no;VW_PDF.Refresh();System.Reflection.PropertyInfo fiDocument VW_PDF.GetType().GetProperty(Document, BindingFlags.Instance | BindingFlags.NonPublic);_pdf_document fiDocument.GetValue(VW_PDF, null) as DevExpress.Pdf.PdfDocument;PdfPage pdfpage _pdf_document.Pages[i_page_no - 1];SizeF page_sf VW_PDF.GetPageSize(i_page_no);int pw (int)(page_sf.Width / pdfpage.UserUnit * 500);int ph (int)(page_sf.Height / pdfpage.UserUnit * 500);int bmp_w pw; //pw * 3 / 2;int bmp_h ph; //ph * 3 / 2; if (bmp_w max_w)bmp_w max_w;Bitmap bmp VW_PDF.CreateBitmap(i_page_no, bmp_w);return bmp;}