欧美成人午夜精品久久久,国产?V天堂一区二区三区,欧美精品va在线观看,亚洲一区二区三区免费在线观看,av无码精品一区二区久久,欧美性爱视频不卡一区三区,欧美乱人伦视频在线观看,国产一级牲交高潮

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運營的一線實戰(zhàn)洞察。

Excel服務(wù)端截圖:jar選型、渲染參數(shù)、水印與線上排障

Excel服務(wù)端截圖:jar選型、渲染參數(shù)、水印與線上排障 簡介面向需要在 Java 項目中實現(xiàn) Excel 表格與圖表截圖導(dǎo)出的開發(fā)者這份資料圍繞 Aspose.Cells 去水印與截圖場景整理適合作為個人學(xué)習(xí)與功能驗證的參考。壓縮包共 5 個文件約 12MB包含 2 個 jar 庫文件、1 個 Java 演示程序、1 個 xlsx 示例工作簿和 1 個本地 Maven 導(dǎo)入說明覆蓋從依賴引入到樣例運行的多個環(huán)節(jié)。已有 922 人學(xué)習(xí)下載說明該方向具備一定實踐需求。讀者可借助演示代碼快速理解 Aspose.Cells 的調(diào)用方式結(jié)合示例工作簿對照截圖與圖表導(dǎo)出效果并通過導(dǎo)入說明減少本地倉庫配置時的阻礙資源描述中也提示了使用細節(jié)與缺失代碼的查閱位置便于進一步排查問題。需注意僅供個人學(xué)習(xí)請勿用于商業(yè)用途。1. 一張 Excel 預(yù)覽圖背后jar 包選型與那條甩不掉的水印上周有人把一個 excel截圖jar.zip 丟過來說用 Aspose.cells 把 Excel 導(dǎo)成截圖右下角永遠壓著一條紅色評估字樣問「去水印」是不是改個配置就能解決。我拆開看完結(jié)論是這類 jar 包真正要解決的是「服務(wù)端把 xlsx 穩(wěn)定渲染成 PNG」這件事本身不復(fù)雜真正麻煩的是三處評估版限制怎么判定、渲染參數(shù)怎么影響成圖、容器里字體和線程怎么處理。它適合需要批量出表格預(yù)覽圖、報表縮略圖、審批留檔圖的后端同學(xué)不適合只想在瀏覽器里看表格的前端場景那種情況直接上在線表格組件更劃算。下面按「怎么選鏈路、怎么跑通、參數(shù)怎么調(diào)、水印從哪來、線上怎么排查」的順序拆一遍。2. 三條渲染鏈路怎么選從 POI 拼圖到 jar 包直出在動手之前先想清楚一件事Excel 截圖不是「把文件讀出來」這么簡單它本質(zhì)是一次排版渲染要把單元格樣式、列寬、合并、條件格式、嵌入圖片、圖表全部還原成像素。不同鏈路能還原的比例差別很大選錯了后面全是補丁。2.1 三條鏈路的能力邊界對照落到工程上常見的就三條路我按實際踩過的順序列一下。鏈路樣式還原圖表/圖片部署依賴單頁耗時典型適用場景POI 逐單元格繪制需自己寫 Graphics2D基本不支持純 Java低幾十 ms固定模板、列數(shù)極少的對賬表轉(zhuǎn) PDF 再轉(zhuǎn)圖高支持需裝辦公套件進程中高2-5 s報表留檔、打印級輸出渲染庫直接出圖高支持純 Java 字體文件中200-800 ms服務(wù)端批量預(yù)覽、接口同步返回第一條路很多人一開始都會試POI 讀出 CellStyle拿 BufferedImage 一格一格畫。小表格能跑一旦遇到合并單元格、條件格式色階、凍結(jié)窗格就得不停補分支補到最后代碼比業(yè)務(wù)還長。第二條路是把 xlsx 丟給無頭辦公套件轉(zhuǎn)成 PDF再用 pdftoppm 轉(zhuǎn) PNG還原度是三條里最高的代價是要在容器里裝一個幾百 MB 的進程冷啟動慢并發(fā)還要自己池化。第三條就是這份 jar 包走的路純 Java 進程內(nèi)渲染一次調(diào)用直接吐 PNG 到磁盤或 OutputStream接口里能同步返回是預(yù)覽場景最省事的一種。選型判斷其實就一句話如果預(yù)覽圖要跟著接口實時返回、QPS 有要求走第三類如果是每天定時生成一批留檔圖、對還原度要求極高第二條更穩(wěn)如果表格結(jié)構(gòu)固定到列數(shù)都不變第一條成本最低。2.2 把 jar 包塞進 Maven 工程兩種引入方式如果目標版本能從倉庫拉到直接在 pom 里聲明就行版本號以你手上 jar 包的實際版本為準別照抄別人的dependency groupIdcom.aspose/groupId artifactIdaspose-cells/artifactId version${aspose-cells.version}/version /dependency拿到的是 zip 里的獨立 jar就走本地安裝把它推進本地倉庫或私服團隊其他人就不用各自拷貝了# -Dfile 指向解壓后的真實 jar 路徑 # groupId/artifactId 保持與官方坐標一致后面換倉庫版不用改 import mvn install:install-file \ -Dfile./lib/aspose-cells.jar \ -DgroupIdcom.aspose \ -DartifactIdaspose-cells \ -Dversion0.0.0-local \ -Dpackagingjar \ -DgeneratePomtrue這里幾個參數(shù)值得說一下-DgeneratePomtrue會順手生成一個最小 pom否則依賴進私服后別人拉下來是殘缺的-Dversion建議帶個-local后綴一眼能看出這是手工裝進去的包將來換正式版好排查。還有一種寫法是用scopesystem/scope加systemPath直接引本地文件我不推薦——打 fat jar 的時候極容易漏掉本地跑得好好的上線就 NoClassDefFoundError屬于典型的「本地玄學(xué)、線上血淚」。提示安裝完成后執(zhí)行一次mvn dependency:tree | grep -i aspose確認依賴真的進來了比對著 pom 猜快得多。2.3 跑通第一張導(dǎo)出圖最小可運行示例先別急著封裝工具類寫一個能一次跑通的 main把整條鏈路走一遍后面所有參數(shù)都在這個骨架上加。import com.aspose.cells.*; public class ExcelToPng { public static void main(String[] args) throws Exception { // 1. 授權(quán)必須在第一次 new Workbook 之前加載否則本進程內(nèi)會一直按評估版渲染 License license new License(); try { license.setLicense(license.xml); } catch (Exception e) { // 不要靜默吞掉否則線上只能看到水印看不到真實原因 System.err.println(授權(quán)加載失敗輸出將帶評估水印: e.getMessage()); } // 2. 加載工作簿 Workbook wb new Workbook(input.xlsx); // 3. 渲染參數(shù) ImageOrPrintOptions opts new ImageOrPrintOptions(); opts.setImageType(ImageType.PNG); // 輸出格式 opts.setHorizontalResolution(200); // 橫向 DPI opts.setVerticalResolution(200); // 縱向 DPI opts.setOnePagePerSheet(true); // 整表壓到一頁大表慎用見 3.2 opts.setOnlyArea(true); // 只導(dǎo)出打印區(qū)域 opts.setPrintingPage(PrintingPageType.IGNORE_BLANK); // 跳過空白頁 // 4. 逐 sheet 逐頁輸出 WorksheetCollection sheets wb.getWorksheets(); for (int i 0; i sheets.getCount(); i) { Worksheet ws sheets.get(i); if (ws.getName().startsWith(_)) { continue; // 約定下劃線開頭的是隱藏的輔助頁 } SheetRender render new SheetRender(ws, opts); for (int page 0; page render.getPageCount(); page) { String path String.format(out/%s_p%d.png, ws.getName(), page); render.toImage(page, path); } } } }這段代碼有幾個設(shè)計點值得展開。第一授權(quán)加載放在最前面是因為渲染庫在類初始化階段就會讀取授權(quán)狀態(tài)一旦帶著評估狀態(tài)建過 Workbook該 JVM 進程內(nèi)后續(xù)再設(shè)置也可能不生效只能重啟。第二用SheetRender而不是工作簿級一次性導(dǎo)出好處是能按 sheet 跳過隱藏頁、能拿到單頁的 pageCount 做分頁控制輸出文件名也好定位問題。第三setOnlyArea(true)依賴工作表里已經(jīng)設(shè)好的打印區(qū)域沒設(shè)的話等于導(dǎo)出整個已用區(qū)域邊界行為和你的預(yù)期可能差一截下一章會專門講。跑通之后你會得到out/下一批 PNG文件名帶 sheet 名和頁碼出問題能直接對上是哪一頁。這一步別省很多人一上來就封裝成 Spring Bean結(jié)果連原始異常長什么樣都沒見過。3. 導(dǎo)出參數(shù)逐項拆成圖質(zhì)量全押在這六個開關(guān)上同樣一個 xlsx參數(shù)調(diào)不對出來的圖可能是右邊切掉一列、中間糊成一片、或者整張圖只有 3 像素高。這一章把真正影響成圖的幾個開關(guān)拆開講。3.1 分辨率與像素格式200 DPI 是不是萬能解DPI 決定的是「一英寸排多少像素」而 Excel 的頁面單位是英寸所以輸出位圖的像素尺寸約等于紙張寬英寸× DPI。A4 橫向 11.69 英寸200 DPI 下就是 2338 像素寬。這個尺寸丟給前端做縮略圖綽綽有余做 OCR 識別也基本夠用。常見的三檔取值我一般這么定場景建議 DPI單頁像素A4 橫向備注列表頁縮略圖96-1201123-1403 px體積小加載快詳情頁預(yù)覽150-2001754-2338 px中文小字號仍可辨認打印/OCR/留檔3003508 px體積大注意內(nèi)存格式選擇上PNG 適合帶透明背景和線條清晰的表格JPEG 體積小但表格細線容易出鋸齒一般不用。要透明背景就opts.setTransparent(true)但只有 PNG 支持設(shè)成 JPEG 會直接報錯或者被忽略。這里有個容易被忽略的賬位圖內(nèi)存是「寬 × 高 × 4 字節(jié)」。300 DPI 的 A4 單頁就是 3508 × 2480 × 4 ≈ 34 MB如果你把一張 50 頁的表壓成一頁尺寸會翻幾十倍JVM 直接原地起飛。先算清楚這個乘法比事后加-Xmx有用得多。ImageOrPrintOptions hiRes new ImageOrPrintOptions(); hiRes.setImageType(ImageType.PNG); hiRes.setHorizontalResolution(96); // 縮略圖檔 hiRes.setVerticalResolution(96); hiRes.setTransparent(false); // 白底更適合直接鋪在頁面上上面這段是我給列表頁用的配置96 DPI 出來的圖大概 100-300 KB七牛或 OSS 上存幾十萬張也不心疼。詳情頁再單獨走一套 200 DPI 的渲染兩套參數(shù)分開配置別想著一個配置吃所有場景。3.2 打印區(qū)域、縮放與分頁整表壓一頁的代價setOnePagePerSheet(true)是最容易被濫用的一個開關(guān)。它的語義是「把這個 sheet 的所有內(nèi)容縮放到一頁里」聽起來很美好實際效果是一張 500 行的表會被壓成高度只有幾個像素的細條字全糊在一起。正確的姿勢是先定打印區(qū)域再定縮放策略// 只渲染 A1 到 H40 這塊區(qū)域避免把整個已用區(qū)域拖進來 ws.getPageSetup().setPrintArea(A1:H40); // 橫向鋪滿 1 頁寬縱向允許多頁保持字號可讀 ws.getPageSetup().setOrientation(PageOrientationType.LANDSCAPE); ws.getPageSetup().setFitToPagesWide(1); ws.getPageSetup().setFitToPagesTall(0); // 0 表示縱向不限制參數(shù)含義setFitToPagesWide(1)是橫向壓到 1 頁setFitToPagesTall(0)表示縱向按內(nèi)容自然分頁不強行壓。這樣出來的效果是橫向不失真、縱向該分幾頁分幾頁SheetRender.getPageCount()會如實返回頁數(shù)。如果你確實要整表一頁比如給文件列表出個總覽縮略圖那就得加保護先判斷已用區(qū)域的行數(shù)超過閾值我一般設(shè) 200 行就退回分頁模式或者把 DPI 降到 72。另外setPrintingPage(PrintingPageType.IGNORE_BLANK)建議常開很多模板表尾部有一堆空白頁不去掉會白白多渲染幾張全白圖還占存儲。參數(shù)作用建議值副作用setOnePagePerSheet整表壓一頁小表 true大表 false大表嚴重壓縮變形setOnlyArea只導(dǎo)出打印區(qū)域true未設(shè)打印區(qū)域時行為等同整表setPrintingPage空白頁處理IGNORE_BLANK無setFitToPagesWide橫向頁數(shù)1列太多時字會很小3.3 列寬、合并單元格與右側(cè)截斷「右邊少一列」是這類渲染里最常見的一類反饋成因有三個得分開看。第一個是打印區(qū)域沒覆蓋到最后一列。setOnlyArea(true)生效的前提是工作表里有明確的打印區(qū)域如果你的模板是從別的系統(tǒng)導(dǎo)出的打印區(qū)域可能還停留在 A1:F30而你新加了 G、H 兩列那截斷是必然的。解決辦法是導(dǎo)出前動態(tài)重設(shè)// 先讓列寬按內(nèi)容自適應(yīng)再按已用區(qū)域重新圈定打印區(qū)域 ws.autoFitColumns(); Cells cells ws.getCells(); int maxRow cells.getMaxDataRow(); // 最后一個有數(shù)據(jù)的行 int maxCol cells.getMaxDataColumn(); // 最后一個有數(shù)據(jù)的列 if (maxRow 0 maxCol 0) { String area CellsHelper.cellIndexToName(0, 0) : CellsHelper.cellIndexToName(maxRow, maxCol); ws.getPageSetup().setPrintArea(area); }這段邏輯的順序很關(guān)鍵必須先autoFitColumns()再取getMaxDataColumn()否則列寬還是模板里的舊值。CellsHelper.cellIndexToName是把「行號、列號」翻譯成「A1、H40」這種字符串的工具方法比手寫列號字母轉(zhuǎn)換靠譜。第二個成因是列寬在容器里被算「寬」了。xlsx 里存的列寬單位是「標準字符數(shù)」渲染時需要按字體度量換算成像素容器里少了字體文件就會回退到默認字體寬度整體偏移最后一列就被擠出打印區(qū)域。這個問題的表現(xiàn)是「本地正常、服務(wù)器截斷」和 5.1 的中文方框是同一個根因處理方式也一樣。第三個是合并單元格跨頁被切斷。橫向合并的單元格如果正好壓在分頁線上渲染時會被拆成兩半。這種情況沒法靠參數(shù)修只能調(diào)整打印區(qū)域或者在模板階段就把合并范圍收在單頁內(nèi)。我一般的做法是模板評審階段就用 200 DPI 導(dǎo)一次圖人眼看一遍有沒有跨頁斷裂比上線后被業(yè)務(wù)反饋強。4. 水印是怎么冒出來的評估版限制的判定與正規(guī)消除路徑這是整個包里最敏感也最容易被問的一環(huán)。先把話說清楚渲染庫在未授權(quán)狀態(tài)下導(dǎo)出圖片時加一條評估字樣這是產(chǎn)品本身的授權(quán)機制不是 bug也不是配置項。所謂「去水印」正規(guī)路徑只有一條——拿到授權(quán)并正確加載繞過授權(quán)去改 jar 包里的字符串屬于侵權(quán)而且這類包通常帶完整性校驗改了大概率啟動報錯或者行為異常得不償失。4.1 三種典型水印形態(tài)與快速判定評估狀態(tài)的輸出有幾個穩(wěn)定特征可以先做判定再決定后續(xù)動作形態(tài)出現(xiàn)位置是否授權(quán)問題處置方式底部紅色評估字樣每頁圖片最下方是加載授權(quán)文件頁面中部斜向半透明大字覆蓋內(nèi)容區(qū)是加載授權(quán)文件每頁右上角小角標固定偏移位置是加載授權(quán)文件內(nèi)容整體偏移、底部被裁位置不定否打印區(qū)域/頁邊距問題判定方法很樸素用同一份 xlsx在加載授權(quán)前后各導(dǎo)一次圖肉眼比對。如果兩次圖的差異只在上述固定位置那就是授權(quán)如果差異在內(nèi)容區(qū)那是渲染參數(shù)問題別往授權(quán)上賴。還有一種情況要單獨提導(dǎo)出的 PDF 干凈、導(dǎo)出的 PNG 有水印。這種一般是不同輸出路徑走了不同的編碼實現(xiàn)個別版本上確實存在差異但結(jié)論不變——沒授權(quán)就是沒授權(quán)換個格式只是換個地方出現(xiàn)。4.2 License 的加載時機為什么本地沒事、上線就有這是最高頻的一個坑本地 IDE 里跑得好好的打成 jar 部署到服務(wù)器就帶水印日志里干干凈凈什么異常都沒有。原因基本都是這一行// 錯誤寫法jar 包內(nèi)運行時相對路徑指向的是工作目錄不是 classpath license.setLicense(license.xml);打成可執(zhí)行 jar 之后license.xml被壓在 jar 內(nèi)部FileInputStream那種相對路徑解析指向的是進程工作目錄文件根本不存在拋出的異常又被catch吞了于是靜默降級成評估版。正確寫法是從 classpath 讀流import com.aspose.cells.License; import java.io.InputStream; public final class LicenseHolder { private static volatile boolean loaded false; public static synchronized void init() { if (loaded) { return; } // 從 classpath 根目錄讀取jar 內(nèi) jar 外都能命中 try (InputStream in LicenseHolder.class.getResourceAsStream(/license.xml)) { if (in null) { throw new IllegalStateException(license.xml 不在 classpath 根目錄); } new License().setLicense(in); loaded true; } catch (Exception e) { // 拋出去讓啟動失敗而不是帶著水印跑一整年 throw new IllegalStateException(授權(quán)加載失敗, e); } } }幾個細節(jié)try-with-resources保證流關(guān)閉setLicense只讀取一次讀完后流可以關(guān)volatile加synchronized是防并發(fā)重復(fù)初始化雖然重復(fù)調(diào)用本身無害但能省掉一次無謂的 IO最關(guān)鍵的是異常必須往外拋——授權(quán)失敗的靜默降級是所有「線上帶水印」問題的共同源頭寧可讓應(yīng)用起不來。Spring 項目里在PostConstruct或ApplicationRunner里調(diào)用一次LicenseHolder.init()就夠了注意要在任何一次產(chǎn)出圖片的調(diào)用之前完成。熱部署場景比如某些開發(fā)容器會重建 classloader下靜態(tài)標記會被重置這種情況老老實實每次用之前判一下loaded為 false 就重新初始化。還有一點授權(quán)文件不要放進src/main/resources/public這類會被靜態(tài)資源映射出去的目錄也不要打進前端產(chǎn)物。它就應(yīng)該是 classpath 根目錄下一個安靜的文件。4.3 不引入商業(yè)庫時的替代渲染鏈路如果項目預(yù)算卡死、或者只是內(nèi)部小工具那就別硬上商業(yè)庫了走第二條鏈路用無頭辦公套件轉(zhuǎn) PDF 再轉(zhuǎn)圖效果同樣能打。# 第一步xlsx - pdf--headless 保證無 GUI 環(huán)境下可運行 soffice --headless \ --convert-to pdf \ --outdir ./pdf \ ./input.xlsx # 第二步pdf 每頁 - png-r 控制 DPI與前面的分辨率概念一致 pdftoppm -png -r 200 ./pdf/input.pdf ./out/sheet參數(shù)說明--headless必須加否則在沒有顯示服務(wù)的容器里會直接退出--convert-to pdf后面可以跟過濾器參數(shù)微調(diào)紙張和邊距一般默認就夠pdftoppm的-r是 DPI-png指定輸出格式輸出文件會自動帶上頁碼后綴。這條鏈路的問題也得提前知道單次轉(zhuǎn)換有 2-5 秒的進程冷啟動并發(fā)高了 CPU 直接打滿所以必須用固定大小的進程池去跑別在請求線程里同步調(diào)容器鏡像要裝中文字體否則一樣是方框轉(zhuǎn)換結(jié)果受套件版本影響同一個文件在不同版本上邊距可能差幾個像素做像素比對時要留容差。5. 五條線上翻車記錄Excel 截圖服務(wù)的排查清單下面這五條都是我在實際服務(wù)里遇到過的現(xiàn)象、原因、解決按順序?qū)懹龅筋愃瓢Y狀可以直接對號入座。5.1 中文全部變成方框現(xiàn)象本地 Windows 開發(fā)機出圖完全正常部署到 Linux 容器后所有中文變成豆腐塊方框數(shù)字和英文不受影響。原因渲染時按字體名去系統(tǒng)里找字體容器基礎(chǔ)鏡像只帶了西文字體找不到中文字體就回退到內(nèi)置默認字體默認字體沒有中文字形。這不是編碼問題別去查 UTF-8。解決兩步走。鏡像里裝字體同時代碼里顯式指定字體目錄雙保險。# Dockerfile 片段裝 fontconfig 并把字體拷進系統(tǒng)目錄 apt-get update apt-get install -y fontconfig mkdir -p /usr/share/fonts/truetype/app cp ./fonts/*.ttf /usr/share/fonts/truetype/app/ fc-cache -fv// 啟動時注冊字體目錄第二個參數(shù) true 表示遞歸掃描子目錄 FontConfigs.setFontFolder(/usr/share/fonts/truetype/app, true); // 如果知道模板里指定的具體字體名再釘一層默認字體防止回退 FontConfigs.setDefaultFontName(Microsoft YaHei);fc-cache -fv這步別省緩存不刷新的話字體裝了也可能找不到。驗證方法是先跑一次導(dǎo)出看圖里的中文實在不確定就臨時在容器里執(zhí)行fc-list | grep -i cjk能看到字體名就說明裝進去了。5.2 大表導(dǎo)出直接 OOM現(xiàn)象一張二十萬行的對賬表導(dǎo)出時堆內(nèi)存幾分鐘內(nèi)漲到上限進程 OOM 退出偶爾不退出但產(chǎn)出的 PNG 是一張純白圖。原因開啟了setOnePagePerSheet(true)等于要求把整表壓進一張位圖。按 3.1 的算法寬高都會被拉到極限單張位圖占用幾個 GB 是常態(tài)堆里放不下就直接掛。純白圖的成因是位圖尺寸超過了底層圖像庫的上限返回了一張空圖但沒拋異常。解決三重限制一起上。行數(shù)超閾值就強制分頁、限制最大像素尺寸、降 DPI。// 行數(shù)保護超過閾值不走「整表一頁」 int maxRow ws.getCells().getMaxDataRow(); boolean tooLarge maxRow 200; opts.setOnePagePerSheet(!tooLarge); if (tooLarge) { opts.setHorizontalResolution(96); // 大表降 DPI 省內(nèi)存 opts.setVerticalResolution(96); }另外導(dǎo)出前后打一行已用區(qū)域尺寸的日志出問題時第一眼就能看出是不是尺寸失控比事后 dump 堆棧快。5.3 并發(fā)下偶發(fā)空白圖或花屏現(xiàn)象單線程跑一百次全對用線程池壓到 8 并發(fā)偶爾出現(xiàn)空白 PNG或者圖片下半截是花的。原因Workbook和SheetRender都不是線程安全的多個線程共享同一個實例內(nèi)部狀態(tài)互相踩另一個常見原因是輸出文件名沖突兩個任務(wù)寫同一個路徑后寫的截斷前一個。解決一任務(wù)一實例輸出路徑帶唯一標識。// 每個任務(wù)獨立加載不要緩存 Workbook 復(fù)用 Workbook wb new Workbook(inputPath); String outName String.format(out/%s_%s_p%d.png, UUID.randomUUID(), ws.getName(), page); render.toImage(page, outName);注意new Workbook(inputPath)這個動作本身開銷不大百毫秒級別為了省這點開銷去做實例池池化非線程安全的對象是給自己挖坑。真要優(yōu)化優(yōu)化的是線程池大小和單機并發(fā)數(shù)不是復(fù)用 Workbook。5.4 右邊界總少一列現(xiàn)象業(yè)務(wù)反饋「表格最后一列看不到」人工打開 xlsx 明明是完整的。原因三種可能按概率排——打印區(qū)域沒覆蓋到最后一列setOnlyArea(true)開著但打印區(qū)域是模板遺留值列寬自適應(yīng)沒跑導(dǎo)致最后一列被擠出頁面。解決按 3.3 的順序處理先autoFitColumns()再用getMaxDataColumn()重設(shè)打印區(qū)域最后才渲染。改完拿一張「列數(shù)剛好卡在邊界」的測試表跑一遍別用列數(shù)很寬的表驗證——寬表會把問題掩蓋掉因為縮放下最后一列總能擠進去一點。5.5 水印只在服務(wù)器出現(xiàn)現(xiàn)象IDE 里跑出來干干凈凈打 jar 部署后每張圖底部都有紅字日志無異常。原因見 4.2授權(quán)文件用相對路徑讀、異常被吞。開發(fā)階段 IDE 的工作目錄是項目根目錄license.xml就在那兒所以能讀到打 jar 之后工作目錄變了文件在 jar 內(nèi)相對路徑失效。解決改成 classpath 讀流異常不吞并且在應(yīng)用啟動完成后打一行授權(quán)狀態(tài)日志。最省事的自檢是啟動時導(dǎo)一張 1x1 的測試圖檢查輸出文件尺寸和內(nèi)容區(qū)是否為空白——評估水印會占掉底部一條尺寸特征很明顯。6. 從能出圖到敢上線像素級校驗與并發(fā)壓測的兩個抓手出圖這件事最怕的不是報錯是「不報錯但不對」。所以我習(xí)慣在上線前加一道自動驗收用像素統(tǒng)計代替肉眼。6.1 用像素統(tǒng)計做自動驗收思路很簡單把圖轉(zhuǎn)灰度統(tǒng)計接近白色245的像素占比再統(tǒng)計寬高比。全白圖的白占比接近 1.0被嚴重壓縮的圖寬高比會明顯偏離紙張比例。from PIL import Image import numpy as np def check_png(path, min_ratio0.02, max_ratio0.98): img Image.open(path).convert(L) arr np.array(img) h, w arr.shape ink_ratio float((arr 245).mean()) # 非白像素占比即「有內(nèi)容的比例」 aspect w / h problems [] if ink_ratio min_ratio: problems.append(f疑似空白圖 ink{ink_ratio:.4f}) if ink_ratio max_ratio: problems.append(f疑似花屏 ink{ink_ratio:.4f}) if not (0.6 aspect 1.8): problems.append(f寬高比異常 aspect{aspect:.2f}) return problems for p in [out/sheet1_p0.png, out/sheet1_p1.png]: print(p, check_png(p) or OK)閾值我給的是經(jīng)驗值正常表格的非白像素占比一般在 3%-40% 之間低于 2% 基本可以判定為空白頁可能是空白頁沒過濾高于 98% 說明整張被填滿了通常是花屏或渲染溢出。寬高比同理A4 橫向約 1.41A4 縱向約 0.71超出 0.6-1.8 這個區(qū)間就該人工看一眼。這套檢查塞進 CI 很容易準備三張固定測試表普通表、寬表、空表每次構(gòu)建跑一遍導(dǎo)出加校驗任何一項失敗就攔住。比人工點開看可靠得多而且成本幾乎為零。6.2 線程池與內(nèi)存上限的配合并發(fā)這塊有個粗算公式單張圖內(nèi)存 ≈ 寬 × 高 × 4 字節(jié)再乘以同時在渲染的任務(wù)數(shù)就是瞬時峰值。假設(shè) 200 DPI 的 A4 橫向約 2338 × 1654 × 4 ≈ 15 MB8 并發(fā)就是 120 MB加上 Workbook 本身的內(nèi)存一般是文件體積的 5-15 倍一張 5 MB 的 xlsx 就是 25-75 MB。所以-Xmx1g跑 8 并發(fā)并不寬裕。我的經(jīng)驗配比是-Xmx設(shè) 2g 的情況下固定線程池大小取 4 到 6單任務(wù)超時設(shè) 30 秒超時直接返回降級圖比如一張帶「預(yù)覽生成中」的靜態(tài)占位圖。線程池用固定大小而不是緩存池緩存池在流量尖峰時會瞬間拉起幾十個線程瞬間把堆打滿這類 OOM 的現(xiàn)場往往連堆棧都留不下來。從那以后我每次接這類截圖需求都會強制走一遍「授權(quán)自檢 三張測試表 像素校驗 4 并發(fā)壓測」這四步哪怕項目再小也不跳。跳過哪一步后面就會在哪一步被業(yè)務(wù)找回來。這份 zip 里主要是 jar 包和兩個示例工程拿到后先按 2.2 的install:install-file裝進本地倉庫跑通 2.3 的 main再按 4.2 把授權(quán)加載改對基本就能接進自己的服務(wù)里了。希望幫到你。本文還有配套的精品資源點擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
99热这里只有精品69| 激情五月婷婷综合| 夜夜躁婷婷AV| 97操在线视频| 管管補管管紱| 97在线视频人妻九色| 粉嫩av蜜桃av蜜臀av| 激情九月婷婷| 亚洲欧洲中文日韩久久AV乱码 | 欧美色婷婷| www。五月天激情| 婷五月丁香俺| 极品另类| AV中文网| 综合激情五月丁香9999久久精| 99精品久久久久久久婷婷久久 | 91精品久久久久久久| 久热超碰91| 婷婷五月天毛片| 天天噜天天插| 人人操五月天| 婷婷va| 丁香五月激情宗合网| 激情丁香五月激情婷婷| aaa久久| 久久九色| 7777精品伊人久久久大香线蕉最新版| 五月天成人在线| 99免费热视频在线| 97碰碰久久| 久久这里只有精彩| 卡视频1区2区| 人妻肉射免费观看| 丁香六月婷婷基地| 丁香婷婷人妻综合网| 99精品视频网站| 99色热| 色婷婷XXXXX| 天天综合亚洲| 久婷首页| 久热中文字幕| 欧美日本综合网| 婷婷六月啪啪| 色婷丁香91| 亚洲 精品 综合 精品| 五月色亚洲| 无码动漫AV| 激情综合丁香五月| 好色婷婷| 免费AV播放| 日本色噜| 五月综合缴情网| 五月婷婷草| 亚洲综合激情五月久久| 天天做天天爱| 激情五月天色爱| 色约约视频一区二区三区四区五区| 五月婷婷在线观看| www.精品久9| 五月狠狠| 丁香六月中文| 九九综舍久久| 男人大jjc女人免费视频| 丁香五月婷婷六月| 五月色婷婷中文字幕| a久久| 五月丁香综合中文| 五月天婷亚洲天综合网综合 | 五月丁香操婷逼| 91精品在线看| 激情五月婷婷丁香综合网| 色五月婷婷在线| 婷婷色五月天第7色| 97人人干视频| 亚洲一区先锋影音| 天天日天天做天天舔| 婷婷黄色| 天天爽综合网| 五月五婷婷网| 大香蕉婷婷久久| 欧美性生交XXXXX无码小说| 亚洲综合婷婷六月丁香五月| 色婷婷六月性| 五月婷婷色综图片| 狠狠九九婷婷韩| www.狠狠操| 欧美色色色色色色| 日日天天干| 欧美99| 九热精品| 久久视频在线| 激情五月婷婷色| 婷婷色色狠狠| 亚洲色色色色色| 亚洲色婷婷视频| 天天干天天操天天干天天操天天干天天操 | 五月天婷婷黄色| 美女91一起草| 婷婷刺激综合| 久久婷婷人人| 久久九九玖玖| 色婷婷亚洲| www.精品99| 九热精品| 色综合爽| 巴基斯坦粉嫩无码视频| 天天婷婷| 大香蕉网站,大香蕉综合| 午夜丁香久久久久久| 亚洲欧美婷婷五月色综合| 久久99热这里只频精品6学生| 亚洲字幕AV一区二区三区四区| 欧美色图45678| 激情合网婷婷| 99操久久| 9九色首页| 丁香六月婷婷激情综合| 只有久久精品免费| 99精品无码| 91精品久| 久久婷婷五月综合色播| 色色五月天婷婷| 人妻激情久久| 亚洲五月天综合| 亚洲热综合| 99久久网站| 婷婷综合干| 91碰碰碰| 久久久999精品| 河北真实伦对白精彩脏话| 久久综合网桃花| 九九热这里有精品视频| AV性爱在线| 97碰| 欧美天天搞| 97色伦另类图片小说视频| 久久色五月天| 青青日韩| 日本婷婷五月天| 六月成人网| 国产精典视频在线观看| 超碰资源在线| 激情亭亭五月| 97碰碰视频| 97伦乱| 亚洲色综合| 五月婷婷婷丁香播| 91成人看片| 婷婷五月天在线观看免费| 狠狠色色| 五月丁香婷婷激情在线视频| 五月丁香色婷婷| 色五月网址| 天天激情欧美美女| 久久丁香五月| 婷婷五月天AV| 98毛片| 中文字幕在线资源| 99精品热视频只有精品10| 91ncm视频| 精品9197碰| 婷婷综合激情五月中文字幕| 欧美色五月| 亚洲精久久| 99热丁香| 久久永久网址| 中国女人做爰A片| 亚洲性受XXXX五月丁香| 激情综合婷婷| www.五月激情红色| 高清 码 免费看片短视频| 任你日视频| 玖玖婷婷视频| 国产亚洲在线观看| 婷婷五月天激情在线观看| 99热这里只有精品55| 五月丁香久久| 久久久精品人妻| 噜一噜免费视频| 九九热在线视频观看| 亚洲综合字幕色色| 亚洲愉拍99热成人精品| 婷婷婷婷婷婷婷婷| 久草大| 91狠狠综合久久久| 五月婷婷深爱六月| 影音先锋偷偷色男人站| 丁香五月天激情视频| 五月丁香 六月婷婷a| 国产看真人毛片爱做A片 | 激情综合网络插| 日日干日日| 九九久久99| 日本在线播放97| 天堂草在线观看| 丁香婷婷午夜| 91久久综合亚洲鲁鲁五月天| 婷婷色五月亚洲| 99热在线观看| 五月天婷婷基地综合网| 五月花婷婷最新| 激情综合文学| 婷婷久久五月天| 99这里只有精品在线| 色九九中文字幕| 五月天开心激情综合网| 深爱 五月天| www.韩日视频| 六月婷婷五月丁香| 五月播播| 亚洲AV激情五月综合网| 欧美啪啪9| 色色色色色色色色综合网| 深爱激情网五月| 综合久久十| 激情九月综合| 五月激情小说网| www.狠狠| 中文在线成人| 成人做爰A片免费看网站找不到了 国产露脸150部国语对白 | 人妻视频在线| 99热在线观看亚洲区| 六月婷婷综合激情| 久久九九亚洲| 成人做爰黄A片免费看直播室男男| 久久精热| 五月天激情无码高清| 亚洲婷婷激情综合激情999精品| 99热这里| www.zbzhongsen.com| 丁香六月激情网C0W| 蜜臀丁香黄色婷婷五月天| 密着浓厚中出乚交尾GvG935| 婷婷在线视频| 丁香五月天啪啪| 开心五月天激情网站| 99精品自拍视频| 99天堂在线观看免费视频| 久久丁香五月天| 深爱激情网五月天| 亚洲色亚洲精品| 久久天天天| 久久超级碰视频| 91九九九九| 五月丁香六月激情欧美综合| 五月丁香婷婷色色| 超碰成人在线观看| 五月综合激情| 天天色粽合合合合合合合| 天天色天天舔天天爱天天爽| 天天草天天日| 99热只有这里才是精品| 亚洲综合婷婷六月丁香五月| 久久机只有这里精品| 激情综合网色五月| 久久久久久97| 97色在线观看视频| 超碰在线观看9| 色级婷婷| 国产午夜精品一区二区| www,超碰| 激情久久肏屄视频| 婷婷五月av| 超碰色婷婷| 伊人久热91| 久久这里只有精品视频15| 色综合久| 色青青电影色五月| 97国产精品女人碰碰| 婷婷久久大香蕉| 人妻久久久久久| 99精品性爱| 久久色情| 午夜少妇在线观看视频| 日韩在线观看网址| 久热久69| 99九九玖玖| 国产成人AV在线播放| 日韩性爱无码| 91vip在线观看| 成人在线不卡| 五月亭亭激情综合| 婷婷日日夜夜| 久草A片| 九九精品综合| 国产精品国产成人国产三级| 青青久久五月天丁香婷婷| 九九综合网| 97伦色婷婷| 一区二区aV电影免费看| 无码人妻电影| 五月精品免费XXX| 武汉美女啪啪视频免费一级片 | 成人精品99| 精品久久66| 丁香五月色| 久久久久网站| 国产看真人毛片爱做A片| 成人免费120分钟啪啪| www.91热久久| 色色激情网| 99热6这里只有精品6| 天天综合永久| w婷婷五月婷婷w| 婷婷五月天小说网| 日本综合99| 伊人9在线| 久久这里这里有精品免费视频| 亚洲综合丁香五月| 9热在线观看| 婷婷金品综合视频| 丁香六月狠狠干| 99这里都是精品| 美女婷婷激情亚洲| 99热人人| 五月天啪啪啪| 免费观看全黄做爰的视频| 五月天久草| 色婷婷色99国产综合精品| 激情宗合哪里能看| 五月婷婷色| www.婷婷| 91九色国产| 99热这里只有精品一区| 婷婷五月天激情网| 日韩xx在线| 久久这里只有精彩| 玖玖五月丁香| 大香蕉婷婷婷| 激情五月综合六月丁香婷婷狠狠干| 大香蕉欧美在线| 五月丁香六月情| 欧洲色色| 97精品在线| 婷婷五月精品中文字幕| 热久久这里只有精品| 99婷婷五月天激情| 婷婷丁香五月亚洲| 婷婷丁香中文字幕| 干婷婷五月天| 欧美激情综合色综合啪啪五月| 97久久精品视频| 99久久a线观| 亚韩在线视频| 五夜丁香| 噜噜狠狠色综合久| 亚洲色综合色网| 天天操九九插| 超碰成人免费| 婷婷久久欧美| 五月天婷婷色综合| 深爱激情五月天色婷婷| 天天舔天天爽| 热久69| 精品色色网| 欧美人妻一区二区| 99综合视频| 综合性爱网| 六月婷欧美丁香综合| 婷婷综合五月天激情| 任你爽视频| 亚洲自拍天堂| 14色综合婷婷| 日本啪啪天堂| 五月婷婷天| 日熟女| 色色色热| 丁香五月色五月| 激情五月婷婷视频一区二区三区| 成人AV播放| 天天干-天天日| 婷婷成人基地| 色婷婷先锋| 9色婷婷| 五月婷婷久久激情| 狠狠操狠狠色| 五月婷亚洲精品| 五月桃花网综合| 天天狠狠色| 婷婷五月天性色| 欧美Va在线| 久久六月婷婷| 综合网亚洲| 激情亭亭五月| 天天综合色| 五月天丁香成人社| 丁香六月婷婷久久综合| 九九热99精品在线| 国产精品成人网站| 人妻熟妇国产精品| AⅤ色区| www.lchjjc.com| 婷婷五点亚洲| 97欧美在线| 九久9精品| 天天婷婷综合| 99色在线观看视频者| 五月深爱激情网| 天啪色| 开心激情网在线| 久大香蕉| http:色情日本com| 丁香五月影院| 秋霞三级影视资源| 国产精品A片在线| 狠狠狠色激情综合适合| 丁香婷婷精品视频| 婷婷五月天亚洲综合网| 色99视频| 开心五月色婷婷综合开心网| 9久国产精品| 99爱在线视频| 亚洲热热视频| 在线,国产,色,热视频| 色综合久久之分久久| 天天日天天爱天天噪| 91日本在线免费| 婷丁香五月天| 深爱五月天 开心网| 色碰97| 五月丁香免费视频| 色婷婷丁香香香蕉视频| WWW·天天操·视频?| 99热婷婷| 99热在线精品观看| 青青草99热久久精品国| 丰满少妇猛烈A片免费看观看| 韩国三级五月天婷婷。| 丁香五月网络网络| 亚洲成人网站在线| 95精品区一区二| 先锋资源91| 九九热在视频| 97福利视频| 97自拍视频网| 欧美色综合天天久久综合精品| 日日操天天操| www.热99热| 91九色熟女| 九九婷婷激情综合网| 91在线日| 亚洲色婷婷五月天| 五月激情久久综合网| 婷婷操逼| 嫩模aV在线| 任我干视频在线观看| 九九精品热| 天天五月天综合网址| 国产欧美婷婷五月| 五月丁香六月色婷婷综合五月天| 色色色综合色| 国产午夜精品一区二区| 99啪视频在线观看| 免费91久久精品| 亚洲中文字幕网| 亚洲午夜一区二区| 国产精品VA在线| 久久人人人人妻| 电影蜘蛛女| 五月香蕉网| 色婷婷导航| VA色婷婷| 丁香婷婷大香蕉| 热久精品| 深爱五月婷婷| 色色色热热热| 激情五月天综合网| 五月丁香影院| 色婷婷五月综合在线| 久久99热久久99精品| 天天爽曰日爽| 狠狠五月激情婷婷直播片| 欧美激情 日韩无码 婷婷 五月天| 人人摸人人操人人爽| 九九性爱网| 五月狠狠| 国外亚洲成AV人片在线观看| 亚洲春色奇米影视| 欧美五月停| 99在线资源视频| 天天色中文字幕女优AV| 五月丁香综合网| 亚洲成人日韩无码精品| 最新久久99视频网站| 亚洲国产精品VA在线看黑人| 91无码一区人妻A片蜜| 国产乱妇乱子在线播视频播放网站| 九九热在线视频| 99视频只有精品| 色婷婷综合视频| 最近中文字幕在线中文视频| 成人在线观看精品| 久热re在线视频| 婷婷五月天美女| 79亚洲精品少妇| 久久久久8888| Xx色综合| 五月婷婷福利| 99热丁香| 丁香五月激情五月| 99综合入口| 五月丁香啪。| 嫩草AV久久伊人妇女超级A| 26UUU| 日韩成人AV在线| 九九Av| 91丨九色丨国产打屁股| 五月丁香婷婷激情在线| 丁香五月天之婷婷影院| 五月天伊人| 超碰成人黄色网| 久热A片| 91成人电影| 婷婷八月激情| 亚洲va欧洲va国产va不卡| 另类综合国产| 五月天色五月天| 婷婷综合五月天亚洲综合| 欧美丁香五月| 日本不卡一区二区三区| 色5月婷婷色| 99热首页在线30| 在线观看av网站| 日本欧美成人片AAAA| 五月天婷婷激情在线色图| 九九热九九| 日本色狠狠| AVDV久久| 色婷婷情片| 都市激情久久| 丁香六月婷婷综合缴| 成人av在线网站| 色伦专区97中文字幕| 色五月综合97| 精品99网站| 婷婷五月天综合网| 久久人操-久草婷婷-成人AV| 久久婷婷网| 天天夜天天色天天| 天天日夜夜拍| 久久人人添人人爽添人人片αV| 五月丁香久久久久| 97色色综合| 久草五月婷婷| 九九精品少妇| 天天碰天天插天天操| 开心五月深爱五月| 欧美综合激情| 涩涩五月天综合| 精品人妻久久久久久| 青青草视频免费观看| 97超碰在线免费观看| 热久久66| 欧美色色色| 久超超碰| 六月激情网| 黃色三级三级三级三级 qixing300.shrkbk.com www.jinbozs.com tianmiaosw.com | 伊人干综合| 人人爱人人摸人人澡| 天天干一干| 中文无码婷婷| 色色色婷婷五月天| 97热九九| AA丁香综合激情| 九九爱精品网站| 26uuuavcom| 噜噜噜久久| 大香蕉久久久久| 久久久久久久久人妻| 4438全国最大视频成人网站在线观看| 亚洲丁香五月| 91jiuseshunv| WWW,五月| 91久操| 精品久久久人妻| 五月丁香激情综合网| 啪啪啪综合网| 五月天激日本色情在线| 超pen个人视频97| 久久人人人人妻| 五月丁香婷婷五月色| 国产熟女日日骚五月丁香爱| 欲色人妻| 99九九精品视频| 秋霞性爱AV| 日日干夜夜干| 色五月婷激情| 五月丁香少妇| 色偷偷五月天| 欧美va亚洲va在线播放| 97超碰欧美中文字幕| 九月婷婷激情| 亚洲俩性性爱图片久久第六页| 99精品国产在热久久| 五月涩涩网| 综合五月丁香97| www.婷婷五月| www.五月婷婷久久.com| 婷婷中文字暮| 丁香五月香蕉| 五月天影院| 久久婷网| 国产精产国品一二三在观看| 26uuu在线观看| 超碰av在线| http:色情日本com| 狠狠综合网| 激情五月天久久丁香| 国产看真人毛片爱做A片| 五月丁香六月综合激情无码软件亮点| 91九色国产| 无遮羞AV| 99精品久久久久久久婷婷| 婷婷五月天少妇| 99热99草97| 五月开心网| 天天做天天摸| 99热 免费| 亚洲AV永久无码影院黑人| 婷婷五月亚洲综合| 亚洲天堂aaa| 精品久色| 婷婷丁香五月激情密臀av| 人人摸人人| 丁香六月情| 爱爱色五月天| 国产ava| 狠狠干五月| 色五月琪琪| 久久亚洲婷婷| 欧美激情 日韩无码 婷婷 五月天| 九九激情| 日韩在线看AV| 婷婷五月色天| 九九热婷婷| 成人网丁香五月| 99日本精品视频热| 超碰在线播放免费观看| 亚洲综合网在线| 激情五月婷婷五月| 丁香五月欧美色综合| 热99热9| 婷婷五月天伊人在线| 五月婷婷导航| Av在线资源| 亚洲精品字幕在线观看| 色五月婷婷影院| 免费视频无码| 五月天婷婷色综合| 人人爱人人添| 射久久丁香五月| www.夜夜夜| 《诡秘之主》在线观看| 超碰超碰在线| 日韩高清成人| 综合一区二区三区| 天天干,天天操,天天射| 色婷婷综合丁香五月天| 五月婷婷丁香五月| 丁香五月成人自拍| 狠狠色噜噜狠狠狠777奇米| 欧美激情性做爰免费视频| 久久久婷婷| 91九色国产| 五月丁香成人| 婷婷五月天久久久| 在线色色| 欧美这里只有精品| 五月天激情网图片| 丁香五月天堂网| 色播综合| 亚洲精品无人区| 五月色综合| 国产精产国品一二三在观看| 国产精产国品一二三在观看| 香蕉AV777XXX色综合一区| 丁香五月花| 怡红院AV亚洲一区二区三区H | 婷婷丁香视频| 99青青草| 色情成人五月天| 26uuu丁香婷婷五月| 天堂综合久| 99热最新精品| 99∨VTV| 99热这里只有精品9| 成人综合网站| 亚洲欧美成人在线观看| 色一情一乱一乱一区9| 免费人人操| 久久丁香五月婷婷| 亚洲第一色色色色| 婷婷五月天免费| 91婷婷五月天嫩女| 色人久久| 高潮毛片又色又爽免费| 日本wwww在线| 色婷久| 91人操人人人操人| 久热久色| 五月天婷婷色小说| 五月丁香婷婷导航视频| 激情六月婷婷| 免费无码毛片一区二区A片| 国外亚洲成AV人片在线观看| 99ri国产精品| 婷婷五月AV| 五月丁香av在线| 天天xxxxxx天天日| 九九热中文| 久久这里只有精品热在99| 九九在线热九九在线热99热| 五月婷婷婷色| 精品九九在线观看视频| 99视频在线观看欧| 超碰色综合| 色色婷| 激情婷婷五月天丁香| 99操免费视频| 五月丁激情| 五月天婷婷视频| 五月婷婷亚洲| 色婷婷成人做爰A片免费看网站 | 国产VA亚洲VA96| 六月婷婷久久| 少妇性BBB搡BBB爽爽爽电影| 亚洲综合999| 激情五月天久久丁香| 九九99一区| 大香蕉520| 男同色五月开心五月激情五月| 91视频综合网| 婷婷五月综合激情小说| 成人一级片| 日韩欧美成人一区二区三区| 黄色成人网站在线播放| 五月天深爱激情网| 国产精品久久..4399| 国产精女同一区二区三区久| 成人网址在线观看| 五月丁香六月婷婷欧美综合| 天天操天天操天天操天天操天天操天天操天天操天天操天天操 | 在线五月婷| 人人爽人人射-美女久久久久久久久久-成人AV| 亚洲丁香网| 丁香五月五月婷婷| 人妻在线网站| 五月丁香激情婷婷综合| 人人爱国产| 九九人人看| 久久婷婷五月综合色播| 丁香五月天视频| 奇米网大香蕉| 久久这里有精品视频| 久久ww| 婷婷七月丁香色色| 99思思热只有在这里看| 99re在线播放| 婷婷五月综合在线| 五月丁香六月激情综合| 色色色1网址| 中文网av| 精品国产一区二区三区四区阿崩| 激情图片亚洲| 99色色| 琪琪色热色色| 色五月综合在线| 97碰 在线视频观看| 狠狠肏综合网| 99国产精品久久久久久久久久久| 精品激情| 欧美日韩91| 国产精品成人AV在线| 久热这里| 《丁香激情综合久久伊人久久》影视在线观看 -高清预告手机免费播放 -三妹影院 | 51XX午夜影福利| WWW,五月| 不卡成人免费| 色五月丁香婷婷综合| 天天日天天插| www色婷婷久久综合久色| www.婷婷六月天| 久草性爱| 超碰在线视屏| www.天天色综合| 欧美日韩99| 亚洲性受XXXX五月丁香| 九月丁香| 色婷婷五月六月丁香综合视频| 99在线播放视频| 大香蕉精品视频| 99热老司机| 久久视网36| 泰州成人视频| 成人五月天在线视频在线观看| 国产67194| 五月六月丁香婷婷在线观看| 一本大道嫩草AV无码专区| 色婷婷五月网| 五月丁香久久激情综合| 色婷久久| 日本69日人视频| 激情综合亚洲| 色婷婷五月天成人网| 亚洲岛国电影| 色综合色色色| 丁香六月啪啪| 91一起操| www、色色色| 99偷拍视频在线日本| 五月天成人综合| 色丁香五月天射婷婷爱婷婷| 婷婷久久综合| 热99精品视频| 伊人色综合影院视频| 天堂A∨在线| 五月婷婷丁香大陆免费| 久久婷婷伊人| 婷婷丁香综合| 吾爱AV导航| 五月久久婷婷丁香| 日日想日日夜日日操| 天堂久久丁香| 婷久久| 色色色99韩| 婷五月天| 香蕉综合网| 伊人色欲五月天| ...婷婷五月综合不卡,国产在线手机 | 久久九九思思| 大香蕉人妻| 人人天堂操| 久久看婷婷| 久热伊人| 热久久这里只有精品| 中文字幕亚洲-区久久99婷婷| 人妻AV在线| 婷婷综合爱| 久久久91| 99在线播放| 97色色色色色| 综合图片色色| sS丁香五月婷婷| 色色色9 9 9| 51国精产品自偷自偷综合| 色爱五月天| 亚洲网站在线鸭子av| 《丁香激情综合久久伊人久久》影视在线观看 -高清预告手机免费播放 -三妹影院 | 色99免费视频中文| 色五月在线观看| 青草少妇激情| 丁香五月综合激情久久潮喷| 加勒比日本一区二区三区| 六月激情婷婷| 国产免费一区二区三州老师F1F1| 天天干天天叉| 国产噜一噜天天噜| 午夜爱爱网站| 97操碰98| 色伦专区97中文字幕| 这里只有精品视频| 色五狠狠| 色六月丁香婷婷狠狠干| 色婷婷亚洲| 九一九九黄色| 亚洲愉拍99热成人精品| 综合色色婷婷| 99热热这里只精品996小说| 天天色域综合网| 秋霞午夜理论| 丁香六月婷婷激情综合| 激情九九六月激情免费视频| 天天肏天天舔AV| av中文在线| 性色五月天| 99riAV国产精品视频| 婷婷五月丁香香蕉| 五月婷婷激情69| 色婷婷综合中心| 99九九在线观看免费| 婷五月天| 色色综合热| 无码成人播放器| 日本欧美成人片AAAA| 天天舔天天爽| 日本色婷婷| 五月婷婷五月天| 狼人婷婷综合| 色欲午夜无码久久久久久张津瑜| 99热综合网| 五日激情综合| 丁香六月婷婷激情| 五月天狠狠网| 婷婷五月综合激情免费视频| 六月狠狠综合| 色五月成人在线| 亚洲综合婷婷五月天| 激情婷婷五六月天| 婷婷丁香五月激情图片| 久久五月婷婷开心网| 国产va在线视频| 思思色综合网站| 天天色天天干天天插| 99热国内| 婷婷六月丁香久| 色婷婷影音| 五月天婷婷黄色| 丁香五月六月婷婷殴美综合| 五月丁香香蕉| 色五月大| 婷婷五月天丁香| 玖玖在线视频| 日韩精品AV一区二区三区| 精品一二三区久久AAA片| 青草青草视频2免费观看| 万月丁香狠狠爱| 级人人91| 六月婷婷七月丁香| 在线观看的av| 99热欧| 亚洲mm色| 开心激情婷婷| 综合色色色| 丁香六月激情综合| 一级视频网址| 色婷婷综合丁香五月天| 五月丁香福利| 色之综合网| www.成人婷婷综合| 日本久久综合| 日本乱子人伦在线视频| 国产欧美大香蕉一区| 日韩成人电影Av| 色5月婷婷| 色五月婷婷五月久久| 开心激情网在线| 亚洲精品99| 亚洲亚洲人成综合网络| 超级碰碰视频无码| 插逼综合网| 久久综合伊人综合在线| 天天插AV丝袜中| 久99久精品| 少妇人妻人伦A片| 色五月婷婷91在线| 丁香五月天欧洲在线| www.日日夜夜| 丁香伊人网| 在线视频区| www.色九月| 狠狠va| 色五月天电影| 香蕉久久国产AV一区二区| 性做久久久久久久免费看| 亚洲免费在线观看岛国| 色必久悠悠影院| 婷婷丁香五月亚洲综合网在线视频观看| 久久精品4| 少妇人妻丰满做爰XXX| 91热视频色网站| 天天干天天干天天干天天干天天干天天| 欧美婷婷精品激情| 精品一区二区三区免费毛片爱| 色吧网综合| 在线va网站| 五月天四色房丁香亭亭| 久久婷婷亚洲| 91久久综合亚洲噜噜成人在线| 五月色婷婷综合色| 五月丁香激情综合啪啪| 亚洲欧洲午夜成人精品av| 久九男女天堂| 韩日在线熟女| 六月激情网| 色天使色综合| 丁香五月婷婷深五月| 思思热在线| 第四色色色色色丁香五月天| 激情婷婷丁香五月天小说| 五月丁香综合影院| 婷婷五月激情黄色| 日韩狠狠色婷婷| 日韩婷婷| 婷婷色六月| 人人人人人人人草| www色色com| 色五月天激情| 综合色影| 免费看片在线观看| 性生活久久人妻| 99在线精品视频在线观看| 老师把我爽高潮了免费A片| 婷婷丁香五月激情图片| 亚洲丁香花色| 超碰色综合| 97色色综合| 色色色色色日韩午夜激情| 涩涩网五月天| 大香蕉啪啪啪| site:wpjngj.com| 色综合色色| AV操逼网| 狠狠色噜噜狠狠狠狠综合| 色色色五月| 思思国产99| 九月婷婷激情久久| 99精品无码网站| 爱99干99| 狠狠丁香| 99热这里只有精彩| 99re熱| 婷婷综合| 狠狠艹狠狠艹| www.五月天| 丁香五月天激情五月天激情五月天激情网| 人人干av| 99热婷婷| 五月开心久久| 欧洲精品欧洲情| 丁香五月婷婷基地| 色五月婷婷少妇人妻| 久综合网| 丁香六月婷婷久久综合| 久久激情网| 五月婷丁香花| 丁香五月AV| 五月婷婷婷自由综合| www,黄色在线,con| 思思精品热在线| 大香蕉伊人丁香五月| 欧美性色五月天| 91N 一起草| 97 A I色色| AA久久| 99九九精品| 激情婷婷丁香色五月综合| 婷婷五月天VI| 夜夜谢天天干| 婷婷色五月开心五月| 99热综合| 99热国产在| 色婷婷中文| 女人被男人吃奶到高潮| www.综合久久.com| 99精品在这里| 99久久精品网| 日本天堂久久| 五月婷婷影| 99视频在线观看欧| 玖玖@三月天天丁香婷婷| 操日视频| 亚洲五月天色| 久久您您综合网| 天堂久久性| 亚洲成人免费在线| 亚洲性爱AV在线| 色五月欧美| 色色激情五月天| 无码一区精品一区视频| 99热这里只有精品8| 伊人久久99| 人五月天婷婷喷水| www,久久久| 天天干天天日日| 色播五月综合网| 亚洲无码另类| 色永久| 视频这里只有精品| 99免费超碰在线| 狼人婷婷久久| 99亚洲大片精品永久在线观看| 国产精品A片在线| 五月天狠狠| 激情五月色播五月| 久久激情五月| 久久婷鲁| 五月天综合| av中文网站| 婷婷五月天AV网| 91亚洲免费片| 五月丁香六月婷综合成人综合 | 99九九在线观看免费| 另类图片激情五月天| 婷婷九月狠狠色| 丁香伍月婷电影全集| 色色婷婷丁香五月天| 色婷婷五月综合在线| 久久xxxx| 碰人人97| 欧美三级巜人妻互换| 久久激情五月| 色五狠狠| 丁香五月aV| 久久丁香| 色色综合院| 操人妻AV| 婷婷色在线| 日本欧美成人片AAAA| 伊人五月天婷婷| 伦乱美欧| 黄色片精品| 久久182| 碰超亚洲| www.99久久久| 婷婷五月另类网站| 亚洲性图一区二区三区| 免费超碰在线观看| 9l视频自拍9l九色成人| 久久五月天婷婷| 色噜噜狠狠狠综合曰曰曰| 如何安全看伊人婷婷| 丁香婷婷九月| 激情综合色婷婷啪啪六月天| αv中文字幕在线观| 99色在线观看| 五月丁香婷婷综合网| 丁香五月天狠狠| 大香蕉在线观看9| 五月天婷婷五月| 六月色狠狠色| 三区激情四射av| 美女被操一区二区| 草草女人亚洲| 办公室少妇激情呻吟A片在线观看| 色婷婷九月| 色色色色色色色色色色色色色97| 这里只有精品在线观看视频| 播五月丁香六月| 日日操夜夜爽天天天| 色五月婷婷丁香国产在线| VA日本视频| 五月丁香综合激情| 另类在线| 久久网站免费亚洲| 狠狠综合网| 婷婷啪啪| 欧美激情 日韩无码 婷婷 五月天| 97干视频在线| 色婷婷9| 婷婷亚洲日本| 婷婷成人在线| 日韩精品一区二区亚洲AV观看| 五月婷婷丁香啪啪| 國語久久婷| 丁香五月色五月| 婷婷天堂综合| 亚洲色婷婷色| 天天操夜夜啊| 亚洲色情一区二区三区四区| 婷婷丁香激情五月| 午夜爱爱爱成人| 久久这里只有国产视频| 色五月影视| 人人干人人操人人摸| 狼人婷婷综合| 国产成人99久久亚洲综合精品| 九九热视频在线观看| 色色色com| 亚洲精品V天堂中文字幕| 婷婷五月成人| 五月婷婷欧美| 日本高清久久| 任你爽精品免费视频6| 欧美日韩成人在线| 久热在线中文字幕色999舞| 丁香五月婷婷影视先锋| 成人小说色图婷婷五月| 久热精品在看| 粉嫩av懂色av蜜臀av熟妇| 五月婷婷激情网| 色噜噜,噜噜色| 思思久久青草热| 99热这里只有精品66| 99热9999| 激情99| 日本天堂网站99| 超碰猛烈的性猛交| 色八月婷婷| 美女妹子后射视频网站在线观看| 亚洲综合色色色| 9久精品| 久久看九九90| 欧美在线看| 欧美色色色色色色色色色色影视| 欧美婷婷色五月| 激情综合无码| 一本大道嫩草AV无码专区| 丁香九月综合在线| 日日爱678| 狠狠干无码| 久久激情网| 国产干逼片| 九九99精品| 天天爽人人爽| 色婷婷免费观看| 97久久久久久久久久久| 久操97| 亚洲成人色五月婷婷综合| 婷婷激情五月天在线| 色五月天丁香婷婷| 黑人糟蹋人妻HD中文字幕| 婷婷五月天丁香久久| 丁香婷婷婷| 久久久激情视频| 天天情色综合网| 久色视频| 久久大香蕉伊人| 很很操96| 五月天丁香久久| 国产av网| 99人人干人人| 狠狠狠狠操| www.狠狠| 熟女网站久久| 丁香涩涩五月天| 色综合天天综合成人网| 久热爱大香蕉在线蜜臀悦色| 天天爽—爽| 久久婷婷五月| 五婷婷综合网| 91操色| 99热在线观看| 九色1区视频在线| 成人小说 五月天 婷婷| 午夜天堂啪啪| 国产精自产拍久久久久久蜜| 色播激情婷婷| 人妻AV在线观看| 婷婷开心激情五月激情网| 婷婷五月花| 亚洲美女高潮久久久久久69| 九九色热| 91成人看| 日日色五月天| A久久| 五月伊人网| 色婷婷先锋| 色婷婷精| 色丁香久久久| 人妻丰满精品一区二区A片| 精a品a视a频| 另类 在线| 婷婷自拍| 激情五月丁香亭亭| 一级韩国产精品毛| 久久五月天黄色五月天色网址| 五月婷婷六月丁香| 色婷婷成人| 天天干天干| 91丨九色丨熟女| 69久久99精品久久久久婷婷| 欧美啪啪网| 激情五月天婷婷丁香 | 丁香五月激情综合| 激情综合五月激情XXXX| 无码人妻激情| 久久激情五月天| 中文字幕不卡+婷婷五月| 久久免费操| WWW.17C亚洲精品| www.99精品视频| 久久在线大香蕉| 99男人天堂| 99自拍视频网站| 另类激情五月| 五月丁香六月激情欧美综合|