One, save view as Image
public class Imagehelper {
Save view to Bitmap public Bitmap createbitmap (view view) {int widthspec = View.MeasureSpec.makeMeasureSpec (vi Ew.getlayoutparams (). width, View.MeasureSpec.EXACTLY); int heightspec = View.MeasureSpec.makeMeasureSpec (View.getlayoutparams (). height, View.MeasureSpec.EXACTLY); View.measure (Widthspec, Heightspec); int measurewidth = View.getmeasuredwidth (); int measureheight = View.getmeasuredheight (); View.layout (0, 0, measurewidth, measureheight); int width = view.getwidth (); int height = view.getheight (); Bitmap Bitmap = bitmap.createbitmap (width, height, Bitmap.Config.ARGB_8888); Canvas canvas = new canvas (bitmap); View.draw (canvas); return bitmap; }/** * Save bitmap to local and copy and Refresh album * * @param context context * @param mbitmap picture information * @param savepath save Path ( TEMPORARY) * @param filename * @return * *//public String savebitmap (Context context,bitmap mbitmap,string s Avepath,sTring fileName) {public String savebitmap (Context context,bitmap mbitmap,string savepath) {File filepic; try {filepic = new File (Savepath); if (!filepic.exists ()) {Filepic.getparentfile (). Mkdirs (); Filepic.createnewfile (); } fileoutputstream fos = new FileOutputStream (filepic); Mbitmap.compress (Bitmap.CompressFormat.JPEG, N, FOS); Fos.flush (); Fos.close (); } catch (IOException e) {//TODO auto-generated catch block E.printstacktrace (); Return "Save picture to local times wrong:" +e.getmessage (); }//Next insert the file into the system library//try {//MediaStore.Images.Media.insertImage (Context.getcontentresolver (),// Filepic.getabsolutepath (), fileName, NULL);////mytoastutils.showshorttoast (context, "Save succeeded"); } catch (FileNotFoundException e) {////mytoastutils.showshorttoast (context, "Save Failed");//E.printstacktrace ();//return "Insert file into system Library failed:" +e.getmessage ();//}//Last Notification Gallery Update Context.sendbroadcast (new Intent (Intent.action_media_scanner_scan_file, Uri.fromfile (new FILE (f Ilepic.getpath ()))); return "Success"; }}
Second, save the HTML code as a PDF
Need to introduce three jar packages: Itextpdf-5.5.jar, Jsoup-1.7.jar, Xmlworker-5.5.3.jar
public class Pdfhelper {///Save File Method public String createpdf (string rawhtml, String fileName, Contextwrapper context) {File File = new file (fileName); try{Document document = new document (); PDFWriter writer = pdfwriter.getinstance (document, new FileOutputStream (file)); Document.open (); HTML String htmltext = Jsoup.clean (rawhtml, whitelist.relaxed ()); InputStream InputStream = new Bytearrayinputstream (Htmltext.getbytes ()); PDF xmlworkerhelper.getinstance (). parsexhtml (writer, document, InputStream, NULL, Charse T.defaultcharset (), New MyFont ()); Document.close (); Return ""; } catch (FileNotFoundException e) {e.printstacktrace (); Return "error|" +e.getmessage (); } catch (Documentexception e) {e.printstacktrace (); Return "error|" +e.getmessage (); } catch (IOExceptione) {e.printstacktrace (); Return "error|" +e.getmessage (); }} public class MyFont implements Fontprovider {private static final String Font_path = "/system/fonts/droi Dsansfallback.ttf "; private static final String Font_alias = "My_font"; Public MyFont () {fontfactory.register (Font_path, Font_alias); } @Override Public Font getfont (string fontname, String encoding, Boolean embedded, float size, int style, Basecolor color) {return Fontfactory.getfont (Font_alias, Basefont.identity_h, basefont.embedded, size, style, color); } @Override public boolean isregistered (String name) {return name.equals (Font_alias); } }}
Android Development saves view as an implementation of image and saves HTML in PDF format