我們在工作中遇到了如下場景:編輯小妹需要發佈圖文混排的內容,圖片有點偏多,一篇內容約有20來張圖片,一天要發佈200多篇,用編輯器自帶的圖片上傳有點效率不夠。
目標:提升上傳效率.
方法一. 直接上word 另存爲html,再把裏面的圖片單獨上傳到指定目錄,再把html 代碼放到編輯器內,提交後數據適配一下。此方法比較適合word 版內容發佈.具體實例,不做詳述。
方法二. 用firefox ,編輯器可以支持 截圖後粘貼。通常直接用qq截圖,提交後 數據爲html5 圖片,ie下不顯示,再折騰折騰轉爲常規html img 就好了,代碼如下。
PS: 最近公事私事,事事煩心,越來越沒精力專注的做開發了,時間倉促,更多的是表達一種使工作便利的想法,還想各位批評指正。
目標:提升上傳效率.
方法一. 直接上word 另存爲html,再把裏面的圖片單獨上傳到指定目錄,再把html 代碼放到編輯器內,提交後數據適配一下。此方法比較適合word 版內容發佈.具體實例,不做詳述。
方法二. 用firefox ,編輯器可以支持 截圖後粘貼。通常直接用qq截圖,提交後 數據爲html5 圖片,ie下不顯示,再折騰折騰轉爲常規html img 就好了,代碼如下。
1
2
3
4
5
|
//data 爲提交表單數據,數組格式 $data = $_POST [ "data" ]; $data = filter( $data ); //轉換data 數據 // 剩下的事件,插入數據庫,生成靜態貼之類。。。 |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
//轉換處理 function filter( $data ) { if ( sizeof( $data )) { foreach ( $data as $key => $val ): if (preg_match_all( "/<img\s+src=\"data:image\/png;base64,([^\"]+)\"/iU" , $val , $match )) { if (sizeof( $match [1])) { foreach ( $match [1] as $key2 => $val2 ): list( $newFilePath , $newFileName ) = create_png_name(); file_put_contents ( $newFilePath , base64_decode ( $val2 ) ); $val = str_replace ( "<img src=\"data:image/png;base64,$val2\"" , "<img src = '$newFileName'" , $val ); // echo $val; endforeach ; } $data [ $key ] = $val ; } endforeach ; } return $data ; } function create_png_name() { $fileName = "/upload/attached/" . date ( "Y-m-d" ). "/" . date ( "ymdhis" ).rand(1000,9999). ".jpg" ; $file = $_SERVER [ "DOCUMENT_ROOT" ] . $fileName ; $dir = pathinfo ( $file , PATHINFO_DIRNAME ); if ( ! is_dir ( $dir )) { mkdir ( $dir , 0777 , 1);} return array ( $file , $fileName ); } |
PS: 最近公事私事,事事煩心,越來越沒精力專注的做開發了,時間倉促,更多的是表達一種使工作便利的想法,還想各位批評指正。