亚洲有码Av一区二区三区_国产高清啪啪免费视频_69色视频国产_国产成人人人爆出白浆_国产精品自在线拍国_一本久久伊人热热精品无码_午夜性刺激在线看免费带字幕_助力高品质欧美狂喷水_亚洲精品日韩无码_精品无码一区二区三区蜜臀_麻豆高清国产AV_熟妇人素无码中文字幕_亚洲a级片在线观看_国产欧美日韩三区_99国产成人高清在线观看

ARTICLE DETAIL

資訊詳情

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

鴻蒙6.1 arkui.componentSnapshot組件截圖坑:返回PixelMap不是dataURL

鴻蒙6.1 arkui.componentSnapshot組件截圖坑:返回PixelMap不是dataURL 本文是「鴻蒙 6.1 API 23 開(kāi)發(fā)坑系列」第 2 篇ArkUI 桶第 2 篇。本篇講ohos.arkui.componentSnapshotnamespaceAPI 10鴻蒙 6.1 API 23 基座——組件截圖三個(gè)方法get/getSync/createFromBuilder。鴻蒙坑根因①import坑——import { componentSnapshot } from編譯錯(cuò)has no exported member必須import componentSnapshot fromdefault import② 返回值坑——get(id)返回Promiseimage.PixelMap不是dataURL字符串React html2canvas 返回 dataURLimage.PixelMap是像素圖有g(shù)etImageInfo/getPixelBytes可讀像素③createFromBuilder(builder)的 builder 參數(shù)是CustomBuilderBuilder裝飾的函數(shù)不是 Component。一、開(kāi)篇鴻蒙 componentSnapshot 不是 html2canvas是「返回 PixelMap 像素圖」你寫(xiě) React 時(shí)組件截圖用html2canvas返回 canvas → toDataURL 轉(zhuǎn) dataURL 字符串// React html2canvas返回 canvas → toDataURL 轉(zhuǎn) dataURL 字符串 async function snapshotComponent() { // ? html2canvas 返回 HTMLCanvasElementtoDataURL() 轉(zhuǎn) dataURL 字符串 const canvas: HTMLCanvasElement await html2canvas(document.getElementById(target)) const dataURL: string canvas.toDataURL(image/jpeg, 0.9) // ? dataURL 字符串 // ? React html2canvas返回 canvas → dataURL 字符串不是 PixelMap 像素圖 }你寫(xiě)鴻蒙 ArkTS 時(shí)組件截圖用componentSnapshot.get(id)返回Promiseimage.PixelMap像素圖// ArkTS componentSnapshot返回 Promiseimage.PixelMap 像素圖不是 dataURL 字符串 import componentSnapshot from ohos.arkui.componentSnapshot // ? default import import image from ohos.multimedia.image async function snapshotComponent() { // ? get(id) 返回 Promiseimage.PixelMapimage.PixelMap 是像素圖不是 dataURL const pixelMap: image.PixelMap await componentSnapshot.get(snapshotTarget) const imageInfo: image.ImageInfo await pixelMap.getImageInfo() // ? PixelMap 有 getImageInfo/getPixelBytes 可讀像素不是 dataURL 字符串 const width: number imageInfo.size.width const height: number imageInfo.size.height }React html2canvas vs 鴻蒙 componentSnapshot 的區(qū)別React 把組件截圖當(dāng) canvas 轉(zhuǎn) dataURLhtml2canvas 返回 HTMLCanvasElement toDataURL() 轉(zhuǎn) dataURL 字符串base64 編碼字符串ArkTS 把組件截圖當(dāng) PixelMap 像素圖componentSnapshot.get 返回 Promiseimage.PixelMapimage.PixelMap 是像素圖有 getImageInfo/getPixelBytes 可讀像素不是 dataURL 字符串。根因不是 dataURL 字符串是 PixelMap 像素圖——鴻蒙返回 image.PixelMap 像素圖有 getImageInfo/getPixelBytes 可讀像素。二、根因鴻蒙 componentSnapshot 的三個(gè)綁定機(jī)制鴻蒙ohos.arkui.componentSnapshotnamespaceAPI 10有三個(gè)截圖方法每個(gè)返回image.PixelMap像素圖。綁定機(jī)制來(lái)自三重根因。機(jī)制 1import 坑——default import 不是 named import鴻蒙坑根因import { componentSnapshot } from編譯錯(cuò)——必須import componentSnapshot from// ? 鴻蒙坑import { componentSnapshot } from 編譯錯(cuò)has no exported member // ? 編譯錯(cuò)Module ohos.arkui.componentSnapshot has no exported member componentSnapshot // ? 錯(cuò)誤信息Did you mean to use import componentSnapshot from ohos.arkui.componentSnapshot instead? import { componentSnapshot } from ohos.arkui.componentSnapshot // ? named import 編譯錯(cuò) // ? 正確用法default importcomponentSnapshot 是 default export 不是 named export import componentSnapshot from ohos.arkui.componentSnapshot // ? default import // 鴻蒙坑根因componentSnapshot 是 default export必須 default import 不是 named importimport 坑根因ohos.arkui.componentSnapshot的componentSnapshot是declare namespacedefault namespace export不是 named export所以import { componentSnapshot }觸發(fā)has no exported member componentSnapshot編譯錯(cuò)。正確用法是import componentSnapshot fromdefault import。機(jī)制 2get 返回 Promiseimage.PixelMap 不是 dataURL 字符串鴻蒙坑根因get(id)返回Promiseimage.PixelMap像素圖不是 dataURL 字符串// ? get(id): Promiseimage.PixelMap 異步截圖返回 Promiseimage.PixelMap不是 dataURL import componentSnapshot from ohos.arkui.componentSnapshot import image from ohos.multimedia.image async function asyncSnapshot() { // ? get(id) 返回 Promiseimage.PixelMapimage.PixelMap 是像素圖不是 dataURL const pixelMap: image.PixelMap await componentSnapshot.get(snapshotTarget) // ? PixelMap 有 getImageInfo/getPixelBytes 可讀像素 const imageInfo: image.ImageInfo await pixelMap.getImageInfo() const width: number imageInfo.size.width const height: number imageInfo.size.height // 鴻蒙坑根因get 返回 Promiseimage.PixelMap 像素圖React html2canvas 返回 dataURL 字符串 } // ? getSync(id): image.PixelMap 同步截圖API 12直接返回不用 await function syncSnapshot() { // ? getSync 是 API 12 同步方法直接返回 image.PixelMap 不用 await const pixelMap: image.PixelMap componentSnapshot.getSync(snapshotTarget) // 鴻蒙坑getSync 是 API 12 同步方法不是 Promise 不用 await }get vs getSync 的區(qū)別get(id): Promiseimage.PixelMap異步截圖API 10返回 Promise 需要 awaitgetSync(id): image.PixelMap同步截圖API 12直接返回 image.PixelMap 不用 await不是 Promise。鴻蒙坑getSync 是 API 12 同步方法不是 Promise 不用 await直接返回 image.PixelMap。image.PixelMap vs dataURL 的區(qū)別image.PixelMap是鴻蒙像素圖接口有 getImageInfo/getPixelBytes 可讀像素release 釋放資源dataURL是 base64 編碼字符串React html2canvas 返回?zé)o getImageInfo/getPixelBytes。根因不是 dataURL 字符串是 PixelMap 像素圖——鴻蒙返回 image.PixelMap 像素圖有 getImageInfo/getPixelBytes 可讀像素。機(jī)制 3createFromBuilder(builder) 的 builder 參數(shù)是 CustomBuilder 不是 Component鴻蒙坑根因createFromBuilder(builder)的 builder 參數(shù)是CustomBuilderBuilder裝飾的函數(shù)不是 Component// ? createFromBuilder(builder) 從 CustomBuilder 截圖builder 參數(shù)是 Builder 函數(shù)不是 Component import componentSnapshot from ohos.arkui.componentSnapshot // ? Builder 裝飾的函數(shù)是 CustomBuilder 類(lèi)型createFromBuilder 的 builder 參數(shù) Builder function MySnapshotBuilder() { Column({ space: 4 }) { Text(CustomBuilder 截圖內(nèi)容).fontSize(14).fontColor(#28a745) } .padding(12).backgroundColor(#d4edda).borderRadius(8) } async function builderSnapshot() { // ? createFromBuilder(builder) 返回 Promiseimage.PixelMap // ? 鴻蒙坑builder 參數(shù)是 CustomBuilderBuilder 函數(shù)不是 Component const pixelMap: image.PixelMap await componentSnapshot.createFromBuilder(MySnapshotBuilder) // 鴻蒙坑根因builder 參數(shù)是 CustomBuilderBuilder 裝飾的函數(shù)不是 Component }createFromBuilder 的 builder 參數(shù)坑createFromBuilder(builder: CustomBuilder, ...)的 builder 參數(shù)是CustomBuilder類(lèi)型Builder裝飾的函數(shù)引用不是 Component 實(shí)例不是 build() 返回值。鴻蒙坑傳 Component 實(shí)例或 build() 返回值會(huì)類(lèi)型錯(cuò)——必須傳Builder裝飾的函數(shù)引用MySnapshotBuilder不是MySnapshotBuilder()。三、真機(jī)配圖鴻蒙 arkui.componentSnapshot 組件截圖坑——get/getSync/createFromBuilder真機(jī)配圖展示鴻蒙 arkui.componentSnapshot 組件截圖坑初始態(tài)鴻蒙 6.1 arkui.componentSnapshot 組件截圖坑標(biāo)題截圖目標(biāo)組件紅框 idsnapshotTarget四角文字左上/右上/左下/右下場(chǎng)景1~4 卡片get/getSync/createFromBuilder/截圖存文件要點(diǎn)說(shuō)明get(id) 異步截圖態(tài)點(diǎn)擊「① get(id) 異步截圖」按鈕snapshotStatus 顯示「? componentSnapshot.get(id) 異步截圖成功PixelMap 1066x278」截圖次數(shù) 1——get 返回 Promiseimage.PixelMap 驗(yàn)證getSync(id) 同步截圖態(tài)點(diǎn)擊「② getSync(id) 同步截圖」按鈕syncSnapshotStatus 顯示「? componentSnapshot.getSync(id) 同步截圖成功返回 image.PixelMap不用 await」截圖次數(shù) 2——getSync 同步返回 image.PixelMap 驗(yàn)證createFromBuilder 態(tài)點(diǎn)擊「③ createFromBuilder 截圖」按鈕builderSnapshotStatus 顯示「? createFromBuilder(builder) 截圖成功PixelMap 393x78」截圖次數(shù) 3——createFromBuilder 從 CustomBuilder 截圖驗(yàn)證截圖存文件態(tài)點(diǎn)擊「⑦ 截圖存文件」按鈕savedFilePath 顯示「/data/storage/…/cache/snapshot_*.jpeg」截圖次數(shù) 4——PixelMap 存文件驗(yàn)證image.createImagePacker fs.writeSync四、真解法鴻蒙 componentSnapshot 的三個(gè)場(chǎng)景場(chǎng)景 1get(id) 異步截圖 getSync(id) 同步截圖——90% 場(chǎng)景首選get/getSync 截圖用componentSnapshot.get(id)componentSnapshot.getSync(id)// ? 場(chǎng)景 1get(id) 異步截圖 getSync(id) 同步截圖API 10/1290% 場(chǎng)景首選 import componentSnapshot from ohos.arkui.componentSnapshot // ? default import import image from ohos.multimedia.image // ? get(id): Promiseimage.PixelMap 異步截圖API 10返回 Promise 需要 await async function asyncSnapshot() { const pixelMap: image.PixelMap await componentSnapshot.get(snapshotTarget) const imageInfo: image.ImageInfo await pixelMap.getImageInfo() // PixelMap 像素圖getImageInfo 讀尺寸getPixelBytes 讀像素 } // ? getSync(id): image.PixelMap 同步截圖API 12直接返回不用 await function syncSnapshot() { const pixelMap: image.PixelMap componentSnapshot.getSync(snapshotTarget) // getSync 同步返回 image.PixelMap不是 Promise 不用 await } // get/getSync 截圖90% 場(chǎng)景首選返回 image.PixelMap 像素圖不是 dataURL鴻蒙 componentSnapshot API 真名坑import componentSnapshot from ohos.arkui.componentSnapshotdefault import 不是 named importget(id: string, callback?: AsyncCallbackimage.PixelMap, options?: SnapshotOptions): void異步截圖API 10callback 可選get(id: string, options?: SnapshotOptions): Promiseimage.PixelMapPromise 異步截圖API 10返回 Promiseimage.PixelMapgetSync(id: string, options?: SnapshotOptions): image.PixelMap同步截圖API 12直接返回 image.PixelMapimage.PixelMap像素圖接口getImageInfo/getPixelBytes/releaseSysCapSystemCapability.ArkUI.ArkUI.Fullcrossplatform跨平臺(tái)atomicservice原子化服務(wù)SnapshotOptionsAPI 15SnapshotRegion/left/right/top/bottom 矩形區(qū)域截圖。場(chǎng)景 2createFromBuilder(builder) 從 CustomBuilder 截圖createFromBuilder 截圖用componentSnapshot.createFromBuilder(MyBuilder)Builder裝飾函數(shù)// ? 場(chǎng)景 2createFromBuilder(builder) 從 CustomBuilder 截圖API 10 import componentSnapshot from ohos.arkui.componentSnapshot // ? Builder 裝飾的函數(shù)是 CustomBuilder 類(lèi)型createFromBuilder 的 builder 參數(shù) Builder function MySnapshotBuilder() { Column({ space: 4 }) { Text(CustomBuilder 截圖內(nèi)容).fontSize(14).fontColor(#28a745).fontWeight(FontWeight.Bold) Text(createFromBuilder 從 Builder 截圖).fontSize(10).fontColor(#888) } .padding(12).backgroundColor(#d4edda).borderRadius(8) } async function builderSnapshot() { // ? createFromBuilder(builder) 返回 Promiseimage.PixelMap // ? 鴻蒙坑builder 參數(shù)是 CustomBuilderBuilder 函數(shù)引用不是 Component 實(shí)例 const pixelMap: image.PixelMap await componentSnapshot.createFromBuilder(MySnapshotBuilder) // ? createFromBuilder 也有 callback 和 delay/checkImageStatus/options 參數(shù) // componentSnapshot.createFromBuilder(MyBuilder, 500, true, options) // delay500ms, checkImageStatustrue } // createFromBuilder 從 CustomBuilder 截圖builder 參數(shù)是 Builder 函數(shù)引用不是 Component鴻蒙 createFromBuilder API 真名坑createFromBuilder(builder: CustomBuilder, callback?: AsyncCallbackimage.PixelMap, delay?: number, checkImageStatus?: boolean, options?: SnapshotOptions): voidcallback 異步API 10createFromBuilder(builder: CustomBuilder, delay?: number, checkImageStatus?: boolean, options?: SnapshotOptions): Promiseimage.PixelMapPromise 異步API 10CustomBuilder是Builder裝飾的函數(shù)類(lèi)型傳函數(shù)引用MyBuilder不是調(diào)用MyBuilder()delay延遲截圖毫秒數(shù)等組件渲染完checkImageStatus檢查圖片狀態(tài)true 等圖片加載完再截圖鴻蒙坑builder 參數(shù)傳 Component 實(shí)例或 build() 返回值會(huì)類(lèi)型錯(cuò)——必須傳Builder裝飾的函數(shù)引用。場(chǎng)景 3PixelMap 存文件——image.createImagePacker fs.writeSyncPixelMap 存文件用image.createImagePacker().packing()打包 JPEG buffer fs.writeSync寫(xiě)文件// ? 場(chǎng)景 3PixelMap 存文件——image.createImagePacker fs.writeSyncAPI 10 import componentSnapshot from ohos.arkui.componentSnapshot import image from ohos.multimedia.image import fs from ohos.file.fs async function snapshotAndSave() { // ? get(id) 截圖返回 PixelMap const pixelMap: image.PixelMap await componentSnapshot.get(snapshotTarget) // ? image.createImagePacker() 打包 PixelMap 為 JPEG buffer const imagePacker: image.ImagePacker image.createImagePacker() const jpegBuffer: ArrayBuffer await imagePacker.packing(pixelMap, { format: image/jpeg, // ? format: image/jpeg 不是 jpeg quality: 90 // ? quality: 0-100 }) imagePacker.release() // ? release 釋放 ImagePacker // ? fs.openSync 打開(kāi)文件 fs.writeSync 寫(xiě) buffer fs.closeSync 關(guān)文件 const context getContext(this) // ? getContext 獲取 Contextdeprecated 警告但仍可用 const cacheDir: string context.cacheDir // ? cacheDir 緩存目錄 const filePath: string cacheDir /snapshot_ Date.now() .jpeg const fileFd: number fs.openSync(filePath, fs.OpenMode.CREATE | fs.OpenMode.WRITE_ONLY).fd // ? .fd 取文件描述符 fs.writeSync(fileFd, jpegBuffer) // ? writeSync(fd, buffer) 第一參傳 fd fs.closeSync(fileFd) // ? closeSync(fd) 關(guān)文件 } // PixelMap 存文件image.createImagePacker().packing JPEG buffer fs.writeSync(fd, buffer)鴻蒙 PixelMap 存文件 API 真名坑image.createImagePacker(): image.ImagePacker創(chuàng)建打包器API 10imagePacker.packing(pixelMap, options?: image.PackingOption): PromiseArrayBuffer打包 PixelMap 為 bufferAPI 10PackingOption{ format: image/jpeg, quality: 90 }format 是image/jpeg不是jpegquality 0-100imagePacker.release()釋放打包器fs.openSync(path, mode): fs.File同步打開(kāi)文件API 10.fd取文件描述符fs.writeSync(fd: number, buffer: ArrayBuffer)同步寫(xiě) bufferAPI 10第一參傳 fd 文件描述符不是 File 實(shí)例fs.closeSync(fd: number)同步關(guān)文件鴻蒙坑fs.writeSync第一參傳file.fd文件描述符不是 File 實(shí)例方法是 namespace 頂層函數(shù)getContext(this)已 deprecated 警告但仍可用推薦用this.getContext()或組件 Context。五、一句話哲學(xué)寫(xiě)鴻蒙 ArkUI 記住componentSnapshot 不是 html2canvas 是「返回 image.PixelMap 像素圖」——鴻蒙 6.1 API 23ohos.arkui.componentSnapshotnamespaceAPI 10鴻蒙 6.1 API 23 基座SysCap SystemCapability.ArkUI.ArkUI.Fullcrossplatform atomicservice。根因不是 dataURL 字符串是 PixelMap 像素圖——import componentSnapshot from? default import?import { componentSnapshot } from編譯錯(cuò)has no exported memberget(id): Promiseimage.PixelMap異步截圖API 10返回 Promiseimage.PixelMap 像素圖不是 dataURL 字符串image.PixelMap 有 getImageInfo/getPixelBytes/release 可讀像素getSync(id): image.PixelMap同步截圖API 12直接返回 image.PixelMap 不用 await 不是 PromisecreateFromBuilder(builder: CustomBuilder): Promiseimage.PixelMap從 CustomBuilder 截圖builder 參數(shù)是Builder裝飾的函數(shù)引用不是 Component 實(shí)例有 delay/checkImageStatus/options 參數(shù)image.createImagePacker().packing(pixelMap, { format: image/jpeg, quality: 90 })打包 PixelMap 為 JPEG bufferformat 是image/jpeg不是jpegfs.writeSync(fd, buffer)寫(xiě)文件第一參傳file.fd文件描述符是 namespace 頂層函數(shù)不是 File 實(shí)例方法。componentSnapshot 返回 image.PixelMap 像素圖不是 dataURL 字符串是鴻蒙 6.1 arkui.componentSnapshot 組件截圖坑核心能力系列回鏈鴻蒙 7.0 新特性篇 1~17沉浸式毛玻璃/Component3D/智能體框架/方舟引擎/星盾安全/星河互聯(lián)/空間音頻/可變字體/游戲快啟/分布式數(shù)據(jù)盾/LTPO 可變幀率/AI 文檔識(shí)別/多形態(tài)服務(wù)窗口/AI 反詐/機(jī)密計(jì)算/空間計(jì)算/小藝全面進(jìn)化鴻蒙 6.1 API 23 開(kāi)發(fā)坑系列篇 1「ArkUI.modifier 裝飾器坑」——attributeModifier AttributeModifier 狀態(tài)化節(jié)點(diǎn)修改器鴻蒙 6.1 API 23 開(kāi)發(fā)坑系列篇 2「arkui.componentSnapshot 組件截圖坑」——get/getSync/createFromBuilder 返回 image.PixelMap本文真機(jī) demo 完整代碼// 鴻蒙 6.1 API 23 開(kāi)發(fā)坑系列篇 2arkui.componentSnapshot 組件截圖坑——get/getSync/createFromBuilder 返回 image.PixelMap 根因 import componentSnapshot from ohos.arkui.componentSnapshot import image from ohos.multimedia.image import fs from ohos.file.fs Builder function MySnapshotBuilder() { Column({ space: 4 }) { Text(CustomBuilder 截圖內(nèi)容).fontSize(14).fontColor(#28a745).fontWeight(FontWeight.Bold) Text(createFromBuilder 從 Builder 截圖).fontSize(10).fontColor(#888) } .padding(12) .backgroundColor(#d4edda) .borderRadius(8) } Entry Component struct Index { State log: string (未操作) State snapshotStatus: string (未截) State syncSnapshotStatus: string (未截) State builderSnapshotStatus: string (未截) State pixelMapWidth: number 0 State pixelMapHeight: number 0 State snapshotCount: number 0 State savedFilePath: string (未存) State lastError: string (無(wú)錯(cuò)) aboutToAppear() { this.log 鴻蒙 6.1 arkui.componentSnapshot 組件截圖坑get/getSync/createFromBuilder 返回 image.PixelMap } async demonstrateAsyncSnapshot() { try { const pixelMap: image.PixelMap await componentSnapshot.get(snapshotTarget) const imageInfo: image.ImageInfo await pixelMap.getImageInfo() this.pixelMapWidth imageInfo.size.width this.pixelMapHeight imageInfo.size.height this.snapshotStatus ? componentSnapshot.get(id) 異步截圖成功PixelMap this.pixelMapWidth x this.pixelMapHeight this.log ? get(id) 返回 Promiseimage.PixelMap不是 dataURLPixelMap 像素圖 this.pixelMapWidth x this.pixelMapHeight this.snapshotCount this.lastError (無(wú)錯(cuò)) } catch (e) { this.lastError ? get 異步截圖錯(cuò) e.message } } demonstrateSyncSnapshot() { try { const pixelMap: image.PixelMap componentSnapshot.getSync(snapshotTarget) this.syncSnapshotStatus ? componentSnapshot.getSync(id) 同步截圖成功返回 image.PixelMap不用 await this.snapshotCount this.lastError (無(wú)錯(cuò)) } catch (e) { this.lastError ? getSync 同步截圖錯(cuò) e.message } } async demonstrateBuilderSnapshot() { try { const pixelMap: image.PixelMap await componentSnapshot.createFromBuilder(MySnapshotBuilder) const imageInfo: image.ImageInfo await pixelMap.getImageInfo() this.builderSnapshotStatus ? createFromBuilder(builder) 截圖成功PixelMap imageInfo.size.width x imageInfo.size.height this.snapshotCount this.lastError (無(wú)錯(cuò)) } catch (e) { this.lastError ? createFromBuilder 截圖錯(cuò) e.message } } async savePixelMapToFile(pixelMap: image.PixelMap): Promisestring { try { const imagePacker: image.ImagePacker image.createImagePacker() const jpegBuffer: ArrayBuffer await imagePacker.packing(pixelMap, { format: image/jpeg, quality: 90 }) imagePacker.release() const context getContext(this) const cacheDir: string context.cacheDir const filePath: string cacheDir /snapshot_ Date.now() .jpeg const fileFd: number fs.openSync(filePath, fs.OpenMode.CREATE | fs.OpenMode.WRITE_ONLY).fd fs.writeSync(fileFd, jpegBuffer) fs.closeSync(fileFd) return filePath } catch (e) { this.lastError ? savePixelMapToFile 錯(cuò) e.message return (存文件失敗) } } async demonstrateSnapshotAndSave() { try { const pixelMap: image.PixelMap await componentSnapshot.get(snapshotTarget) const filePath: string await this.savePixelMapToFile(pixelMap) this.savedFilePath filePath this.log ? get(id) 截圖 image.createImagePacker() 打包 JPEG fs.writeSync 存文件 filePath this.snapshotCount this.lastError (無(wú)錯(cuò)) } catch (e) { this.lastError ? 截圖存文件錯(cuò) e.message } } build() { Column({ space: 8 }) { Text(鴻蒙 6.1 arkui.componentSnapshot 組件截圖坑) .fontSize(18).fontWeight(FontWeight.Bold).margin({ top: 16, bottom: 4 }) Text(get/getSync/createFromBuilder 返回 image.PixelMap 根因) .fontSize(11).fontColor(#888).margin({ bottom: 8 }) Column({ space: 4 }) { Text(截圖目標(biāo)組件idsnapshotTarget).fontSize(12).fontColor(#dc3545).fontWeight(FontWeight.Bold) Text(componentSnapshot.get(snapshotTarget) 截這個(gè) Column).fontSize(9).fontColor(#888) Row({ space: 8 }) { Text(左上).fontSize(10).fontColor(#2563eb) Text(右上).fontSize(10).fontColor(#ff6600) } Row({ space: 8 }) { Text(左下).fontSize(10).fontColor(#28a745) Text(右下).fontSize(10).fontColor(#ffc107) } } .id(snapshotTarget) .width(80%) .padding(12) .backgroundColor(#f8d7da) .borderRadius(8) .border({ width: 2, color: #dc3545 }) Column({ space: 6 }) { Text(場(chǎng)景 1componentSnapshot.get(id) 異步截圖API 10返回 Promiseimage.PixelMap) .fontSize(12).fontColor(#2563eb).fontWeight(FontWeight.Bold) Text(get 是 async 返回 Promiseimage.PixelMap不是 sync 返回 dataURL 字符串) .fontSize(9).fontColor(#888) Button(① get(id) 異步截圖).height(30).fontSize(9).backgroundColor(#2563eb20) .onClick(() this.demonstrateAsyncSnapshot()) Text(this.snapshotStatus).fontSize(9).fontColor(#2563eb).margin({ top: 4 }) Text(PixelMap 尺寸${this.pixelMapWidth}x${this.pixelMapHeight}).fontSize(8).fontColor(#2563eb).margin({ top: 2 }) } .width(92%).padding(8).backgroundColor(#e0f0ff).borderRadius(8) Column({ space: 6 }) { Text(場(chǎng)景 2componentSnapshot.getSync(id) 同步截圖API 12返回 image.PixelMap) .fontSize(12).fontColor(#ff6600).fontWeight(FontWeight.Bold) Text(getSync 是 API 12 同步方法直接返回 image.PixelMap 不用 await) .fontSize(9).fontColor(#888) Button(② getSync(id) 同步截圖).height(30).fontSize(9).backgroundColor(#ff660020) .onClick(() this.demonstrateSyncSnapshot()) Text(this.syncSnapshotStatus).fontSize(9).fontColor(#ff6600).margin({ top: 4 }) } .width(92%).padding(8).backgroundColor(#fff3e0).borderRadius(8) Column({ space: 6 }) { Text(場(chǎng)景 3createFromBuilder(builder) 從 CustomBuilder 截圖API 10) .fontSize(12).fontColor(#28a745).fontWeight(FontWeight.Bold) Text(builder 參數(shù)是 CustomBuilder 類(lèi)型Builder 裝飾的函數(shù)不是 Component) .fontSize(9).fontColor(#888) Button(③ createFromBuilder 截圖).height(30).fontSize(9).backgroundColor(#28a74520) .onClick(() this.demonstrateBuilderSnapshot()) Text(this.builderSnapshotStatus).fontSize(9).fontColor(#28a745).margin({ top: 4 }) } .width(92%).padding(8).backgroundColor(#d4edda).borderRadius(8) Column({ space: 6 }) { Text(場(chǎng)景 4截圖 存文件image.createImagePacker fs.writeSync) .fontSize(12).fontColor(#dc3545).fontWeight(FontWeight.Bold) Text(PixelMap → image.createImagePacker().packing JPEG buffer → fs.writeSync 存文件) .fontSize(9).fontColor(#888) Button(⑦ 截圖存文件).height(30).fontSize(9).backgroundColor(#dc354520) .onClick(() this.demonstrateSnapshotAndSave()) Text(存文件路徑${this.savedFilePath}).fontSize(8).fontColor(#dc3545).margin({ top: 4 }) } .width(92%).padding(8).backgroundColor(#f8d7da).borderRadius(8) Column({ space: 3 }) { Text(鴻蒙 6.1 arkui.componentSnapshot 組件截圖坑要點(diǎn)) .fontSize(10).fontColor(#6c757d).fontWeight(FontWeight.Bold) Text(① ohos.arkui.componentSnapshot namespace API 10鴻蒙 6.1 API 23 基座) .fontSize(8).fontColor(#2563eb) Text(② get(id): Promiseimage.PixelMap 異步截圖返回 Promiseimage.PixelMap 不是 dataURL) .fontSize(8).fontColor(#ff6600) Text(③ getSync(id): image.PixelMap 同步截圖API 12直接返回不用 await) .fontSize(8).fontColor(#28a745) Text(④ createFromBuilder(builder): Promiseimage.PixelMap 從 CustomBuilder 截圖) .fontSize(8).fontColor(#dc3545) Text(⑤ 鴻蒙坑get 返回 Promiseimage.PixelMapReact html2canvas 返回 dataURL 字符串) .fontSize(8).fontColor(#dc3545) Text(⑥ image.PixelMap 是像素圖不是 dataURL——有 getImageInfo/getPixelBytes 可讀像素) .fontSize(8).fontColor(#2563eb) Text(⑦ PixelMap 存文件image.createImagePacker().packing(buffer) fs.writeSync(fd, buffer)) .fontSize(8).fontColor(#ff6600) Text(⑧ createFromBuilder 的 builder 參數(shù)是 CustomBuilderBuilder 函數(shù)不是 Component) .fontSize(8).fontColor(#28a745) Text(⑨ SnapshotOptionsAPI 15SnapshotRegion/left/right/top/bottom 矩形區(qū)域截圖) .fontSize(8).fontColor(#6c757d) Text(⑩ React 對(duì)比componentSnapshot 不是 html2canvas——鴻蒙返回 PixelMap 像素圖不是 dataURL) .fontSize(8).fontColor(#17a2b8) } .width(92%).padding(6).backgroundColor(#f8f9fa).borderRadius(8) Row({ space: 12 }) { Text(截圖次數(shù): ${this.snapshotCount}).fontSize(9).fontColor(#28a745) Text(PixelMap: ${this.pixelMapWidth}x${this.pixelMapHeight}).fontSize(9).fontColor(#2563eb) } .margin({ top: 6 }) Text(日志${this.log}).fontSize(9).fontColor(#333).margin({ top: 6 }) Text(錯(cuò)誤${this.lastError}).fontSize(8).fontColor(#dc3545).margin({ top: 2 }) Text(鴻蒙 6.1API 10arkui.componentSnapshotget/getSync/createFromBuilder 返回 image.PixelMap 像素圖) .fontSize(8).fontColor(#6c757d).margin({ top: 6 }) } .width(100%).height(100%).alignItems(HorizontalAlign.Center) } }寫(xiě)鴻蒙 ArkUI 記住componentSnapshot 不是 html2canvas 是「返回 image.PixelMap 像素圖」——鴻蒙 6.1 API 23ohos.arkui.componentSnapshotnamespaceAPI 10鴻蒙 6.1 API 23 基座SysCap SystemCapability.ArkUI.ArkUI.Fullcrossplatform atomicservice。根因不是 dataURL 字符串是 PixelMap 像素圖——import componentSnapshot from? default import?import { componentSnapshot } from編譯錯(cuò)has no exported memberget(id): Promiseimage.PixelMap異步截圖API 10返回 Promiseimage.PixelMap 像素圖不是 dataURL 字符串image.PixelMap 有 getImageInfo/getPixelBytes/release 可讀像素getSync(id): image.PixelMap同步截圖API 12直接返回 image.PixelMap 不用 await 不是 PromisecreateFromBuilder(builder: CustomBuilder): Promiseimage.PixelMap從 CustomBuilder 截圖builder 參數(shù)是Builder裝飾的函數(shù)引用不是 Component 實(shí)例有 delay/checkImageStatus/options 參數(shù)image.createImagePacker().packing(pixelMap, { format: image/jpeg, quality: 90 })打包 PixelMap 為 JPEG bufferformat 是image/jpeg不是jpegfs.writeSync(fd, buffer)寫(xiě)文件第一參傳file.fd文件描述符是 namespace 頂層函數(shù)不是 File 實(shí)例方法。componentSnapshot 返回 image.PixelMap 像素圖不是 dataURL 字符串是鴻蒙 6.1 arkui.componentSnapshot 組件截圖坑核心
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
操久久久久久| 国产亚州精品美女久久久免费| 91精品少妇搡搡搡| 偷拍综合亚洲| 91无遮挡| 色情乱伦AV| www成人啪啪18秘 免费| 中文字幕av乱伦| 粉嫩少妇自慰在线| 综合网 欧美| 久干9操| 在线观看国产黄色| 狠狠搞 亚洲91| 精品小视频在线| 欧美日韩精品国产91| 亚洲国产97| 久久久无码av精| 全球成人中文在线| 亚洲人在线成线成人| 精品一区二区久久| 精品国产人成在线| 97视频620| 久久久久久加勒比| 99久热| 欧美18禁91| 青青操视频在线| 国产精品日日摸天天碰| 情侣开房子拍 日韩无码 女的很漂亮| 91性感网站| 97人人夜| 国产精选三级在线观看| 中文字幕国产| 亚洲 日本 一 二 三| 呻吟 欧美 日本 中出| 国产三级资源在线观看| 啊啊啊啊好疼视频| yiqicaoav| 91人妻Pr| 日本激情免费大片| 漂亮人妻被强中文字幕hd| 国产欧美一级在线观看| 神马久久啊啊| 久久98| 国产 日韩 欧美一区| 亚洲制服欧美另类内射| 日本三级韩国三级美三级91| www.操| 一本色道综合久久欧美| 91成人久久| 中文字幕一区二区韩| 97欧美色资源| 婷婷激情五月| 手机看片1024你懂的国产| 久区视频| 99久久9| 操91| 亚洲综合影片| 国产精品福利视频| 亚洲综合小视频小说在线观看| 人妻少妇被猛烈进入中| 变态另类专区| 日本不卡二三区| 国模吧 一区二区三区| 自拍内地三级在线观看| 国内毛片四区| 超碰97综合网| 香蕉国产97| 91女人的网站| 亚洲熟妇自偷自拍另欧美| 北约熟女超碰| 亚洲天堂7777| 色哟哟511老熟女| 婷婷10月天青娱乐| 成人区人妻精品一| 97国产色图| 青青操青娱乐| 六月天婷婷| 国产福利精品最新在线 | 亚洲风情在线观看| 热热色91| 超碰2017| 日日操丁香五月天| 一区二区三区免费岛国片| 欧美18 在线观看| 草草影院最新网址| 福利视频一区二区微拍| 岛国黄色大片网站| 免费A V在线播放| 日本欧美亚洲高清在线看| 中文字幕一区二区三区字幕| 国产精品宅男免费| 日韩紧密久久| 91女优在线观看| 青草园大香蕉| 最近二区三区视频大全| 免费a v| 天天干电影| 青青青青青手机视频| 日韩欧美蜜桃精品久久中文字幕久久 | 婷婷亚洲综合| 黄色污污污污污污网站| 欧美色吧综合| 性色av蜜臀av色欲aV| 久久极品一区二区| 国产一| 久久综合精品一区二区三区| 成人精品水蜜桃久久久久久久| 欧美激情亚洲情色| 日韩免费三级黄片电影| α√在线| 开心激情站| 色香av| 韩国三级一线观看久| 久久精品 六十路 熟女 欧美| 久久超碰网| 激情抓乳插进去啪啪啪日韩 | 国产盗摄美女如厕大神作品在线观看| 超碰综合色| 综合另类| 色女99一级片在线观看| 亚洲视频,小说| 视频在线中文字幕| 香蕉久久AⅤ...| 五月天精品| 尤物视频网 刘玥| 国产中文字幕在线观看| 97在线精品观看视频| 日日黄色三级网站| 亚洲砖码砖专无区2023| 青青青青草av在线观看| 美國A片| 夜夜高潮夜夜爽高清视频一| 久久久久久久九九九九九九| 久久精品一区一起草| 欧美aa一级片| 3028国产精品| 麻豆区久久久久亚| 熟妇在线视频一区二区| 色屁屁影院www国产| 91女网站| 中文字幕AV乱伦| 91精品成人| 久久天天艹| 91亚洲丝袜| 爱爱60秒免费视频| 国产一区二区成人av在线播放| 97久久免费| 亚洲一区二区中文字幕| 天天拍夜夜| 91av一区二区在线观看| 很狠操| 成人综合色网| av婷婷色婷婷色六月| 夜夜爽夜夜爽| 亚洲九九爱| 婷婷日韩一区二区三区中文字幕在线| 一本精品日本在线视频精品| 精精品人妻一区二区三区| 啊嗯好大视频在线观看| 久久一级无码精品毛片6| 抽插亚洲无码| 人人澡人人澡人人| 欧美日日人人天天| AV不卡在线| 在线观看不卡一区二区三区| 青青草福利视频| 超硑97精品| 日日狠狠久久偷偷色综合免费| .精品人妻一区二区三| 九九九九97| 亚洲。日韩。欧美| 九九综合| 中文字幕天天天天天| 黄色网址在线免费观看| 永久免费av无码网站国产app | 久久线上视频免费看| 人澡逼| 特级丰满少妇一级AAAA爱毛片 | 91成人无码| 色97干| 久久人| 欧美不卡在线美女| 91制服丝袜| 久久偷拍人| 99re免费视频精品全部| 成人三一级一片aaa| 宅男影院久久久,99| 好爽视频在线观看| 免费精品国偷自产在线在线| 无码一区免费在线不卡| 美女尤物人人操| 日韩人人精品| 久久久久9999| 国产一区二区欧美日本| 天天色综合图片| 久久人爽| 黄片免费视频2019| 久9热| 97 超碰 人人做 人人爱| 久欲AV| 麻豆尤物视频网| 国产一级内射无挡观看| 精产品久久| 97干色| 蜜乳av一区二区| 亚洲美女黄色| 呦呦一区| 国产原创自拍| 久草资源在线视频官方总站日韩丝袜美腿| 丁香六月婷| 亭亭丁香激情| 日本免费二区三区| 十八禁视频网站| 蜜臀人妻少妇久久在线观看| 欧美色图片欧美色图| 日韩av性爱在线播放| 国产麻豆福利av在线播放| 亚洲AV资源| 色欲天香天天综合网-成年人三级片网站-欧美乱妇狂野-日韩国产专区-久久久久久 | 久久精品中文字幕无码l| 午夜精品视频777| av在线人气 | 东北少妇高潮zzzz| 一个人在线看的黄色电影网站| 国产综合久| 人人操肉肉| 偷拍超碰| 91久久免费视频互動交流| 91香蕉国产尤物视频| 日本国产欧美高清在线| 国产 大胆 对白| 国产网站在线播放| 四季av一区二区凹凸精品小说| av毛片aaaaa免费看| 日本免费不卡二区| 成人在线日韩| 亚洲图片欧美色| 欧美九九爱| 日韩精品国产一区二区| 91麻豆一二三区| · —级AA伦aa坐爱午夜极速ⅴA一区天天噪天天噪天天噪 | 97超碰亚洲| 超碰1997| 伊人色综合超碰| av在线免费一区二区| 偷拍综合亚洲| 久久99热这里只频精品6学生| 日本 情色 1区| 日本女厕偷拍| 操人无码| 久99| 午夜理论片在线观看免费| 丝袜美腿操av| 夜夜国产一区| 91熟女熟妇视频网站| 日本欧美一区二区三区免费| 夜夜狼人妻| 中文字幕一区二区三四五区日日骚| 黄色片A级一区二区三区| 亚洲精品人体| 综合操逼| 天天爽天天操| 人妻铁牛TV| 久久久女人| 亚洲色悠悠久久88| 黄片免费视频2019| 日产精品久久久一区二区| 极品色社| 玖玖97综合| 婷婷丁香五月激情啪啪| 女人午夜视频777| 欧美v日韩v亚洲v最新在线| 狠狠色综合网| 久久久久久AV无码免费网站| AA丁香综合激情| 久久久免费的精品| 香蕉热人人精品| 人人人摸人人| 久久久性| 1人人看人人摸人人操| 激情小说激情视频| 欧美激情久操网| 水多多映视AV| 精品无码一区二区三区| 精品久久无码午夜福利| 色翁荡息又大又硬又粗又爽| 操逼大黄片| 久久精品国产96精品亚洲拳交| 婷婷丁香久久| 91成人久久 | 久久久97| 97超碰人操| 中日韩久久久免费看| 人妻丝袜日本| 日韩免费大片一级播放| 亚洲精品三| 免费的av网| 亚洲自拍欧美国产首页网曝| 粉嫩AV输入| 天天综合网视频91| 爱逼综合| 亚洲一区二区三区播放在线| av网页一区二区三区| 日本性爱少妇| 综合网亚洲| 乱伦1色页| 韩日精品四区| 97超碰国产亚洲精品资源| 91在线观看,天天综合| www.大香| 亚洲综合色婷婷| 欧美色一二三| 亚洲婷婷丁香在线| 精品无吗久久| 欧日韩一二三f区| 国产一区二区三区影片| 精品成人av一区二区三区在线| 97天天做| 亚洲精品影视老司机| 天天综合91在线| av久日| jk白丝没脱就开始啪啪| 91jk色拍| 最新岛国大片| 五月丁香久久| 99re这里只有精品9| 双插性欧美一二三区| 人妻日日干| 日本亚欧爱爱| 国产操逼逼网| 动漫av中文| 天天干一区二区| 日产123区精品免费观看| 国产9 9在线 | 亚洲| 蜜臀久久一区二区| 性色av大全| 美女丝袜激情小说| 日本三级大片| 国产黄片精品在线| 330dv亚洲成年视频网| 国内精品伊人久久久久影院会| 夜色97| 国产精品国产自产高清AV| 97情超碰色| 91精品成人www| 91国模| 国产天天噜一噜久久久| 夜夜狠狠躁日日躁色视频| 中文字幕一区二区三区高清| 色99在线| 翔田千里AV无码秘 三区| 91激情综合| 久久国产视频性吧 | 欧美人妻久久精品二区三区| 91在线一起| 9999久久久| 亚洲av成人精品一区| 涩涩五月天| 综合少妇网| 中文字幕78| 大香蕉操久久| 中文字幕日韩人妻视频一区二区三区| 午夜毛片亚洲精品片国产久久久| 久久视频,这里只有精品 | 91少妇人妻| 久久在肏| 亚洲美女AV无码| 中国韩国明星一极片一区乱码毛片人妻熟女一区二区三区 | 英伦大奶子熟妇吊带| 青青草操逼逼视频| 午夜男人一级A片7777| 亚洲免费成人在线高清无码视频| 奇米狠999| Sekablack无码一区| 精品少妇999| 老女人碰碰在线碰碰视频| 久久熟妇五十路一区| 九九无码久久精品视频| 99色悠悠| 操逼精品视频| 骚日日av| 天天看天天日天天操| 香蕉国产精品麻豆亚洲欧美日韩| 久久透逼视频| 97资源视频| 911粉嫩人妻| 色 婷97| 四虎永久在线精品免费网址| 黄色高清久久无码依人| 老女人91| 蜜臀一区二区三区在线| 超碰在线观看av不卡| 日韩美女操b| 成人午夜视频免费播放| 日日天天久久啊啊aaa| 内射中国少妇高清视频免费视频 | 艹精品| 婷婷月色| 97色视频在线| 九九热三级片| 精品国产久热在线观看| 亚洲天堂第一页| 91M一社| 国产大陆天天艹| 精品久久久久,69国产成人精| 美女久久久久久久| 精品久| 日本三级久| 中国黑人三级片网站上区| 亚洲 欧美 第一页 | 成人夜夜爽| 四虎影视国产精品| 377p欧洲日本亚洲大胆| 高凊专区人人操| 国产精品伦理| 人妻精品视频一区二区| 久久亚洲人妻| 性久久久| 狠狠搞 亚洲91| 影音先锋日本乱伦| 亚州人妻| 不卡啪啪视频| 青青草依人大香蕉| 俺去久久| 亚洲春色欧美激情自拍| 污污污8888| 最近2019中文字幕国语免费版| 欧美91精彩| 日韩去日本高清在| 亚洲人码13| 亚洲91色| 亚洲第一页欧美| 一区操逼| 嗯嗯啊啊好疼| 日本精品成人无码| 亚洲成人性爱网站在线播放| 国产青青美女玩逼视频| 欧美日韩国产色图在线| 国产精品96| 五月开心久久AV官网| 欧美性爱日韩性爱| 欧美性五月| 日韩女模中文造逼| 成人免费性爱视视| 无码人妻毛片丰满熟妇精品区 | 亚洲最大AV网| 97超碰色| 国产精品久久久久久久久久二区三区| 99ri视频| 黄色片一区二区三区四区五区| 91精品国产乱码| 97WW精品| 日本三级大片| JULIA一区二区三区在线播放| 国产一国产一级毛片古装| 亚春色色| 东京热,男人的天堂| 日日夜夜青青草母狗| 国产精品岛国片在线观看| 青娱乐休闲视频在线观看| 蜜桃传媒视频第一区入口在线看| 一区二区视频你懂的| 蜜桃久久综合视频| 99热亚洲| 志村玲子视频一区二区| jk白丝没脱就开始啪啪| 三男一女不戴套的A片| 97色网| 91 丝袜在线播放| 亚洲AV在线资源| a片亚洲一本通视频| 亚洲国产一级中文综合久久天堂在线免费观看 | 亚洲精品国产熟女久久久| 色噜噜人妻丝袜AV资源| 热久久国产精品视频大陆精品| 深夜操逼网| 欧美亚洲AN| 欧美 亚洲 另类 综合| 日韩精品影视| 97免费视频在线观看| 国产肏逼网站| 国产一在线观看| 香港澳门日本三级网站| 黄色香蕉视频网站一区| 强上我不卡卡| 麻豆人妻偷人精品无码视频| 精品免费一区二区三区在线亚洲人成| 久久五月综合| 手机不卡视频不卡在线一二三区| 97超碰人操| 亚洲高清欧美总合| 在线视频 亚洲精品| 91色宗合| 亚洲成av人片色午夜乱码| 欧美玖玖爱免费玖玖| 日本黄色精品| 黄页视频网站野外| 狼人综合婷婷激情四射| 国产精品动态一区二区三区四四| 五月天社区| 亚洲不卡不卡中文字幕不卡| 一区二区三区成人| 日本精品中文字幕视频| 亚洲阿v天堂无码z2018| 肉丝网站91| 射欧美综合| 色欧洲97| 九九九九9999| 91久久伊人婷婷青青草| 久久久久无码一妻区| 青青草好吊色| 熟女突然公开看18禁影片| 9999久久久久| 亚洲综合伊人| 看日韩操逼| surenchaopeng| 国产av激情无码久久天堂| www.狠狠干.coom| 精品人妻一区二区三区四区不卡在| 国产精品久久久久久 百度| 青青草日本中文字幕 | 亚洲国产一区二区三区四区国产| 伊人久日| 黑丝少妇在线观看| 人人做,人人操,人人摸| 蜜伊人色综合97| 一级AV性爱| 东京热,男人的天堂| 777琪琪午夜免费A片| 试看福利| 中文字幕精品资源在线| 亚洲色人阁| 五月综合久久| 777AV电影| 久久久久久久久久久久久女过产乱-少妇高潮一区二区三区喷水-成人AV | a片在线播放| 91在线限制级| 天天日天天干天天整| 中国AV美女| 国产欧洲精品亚洲午夜拍精品| 国产伦乱91| 9色国产精品一区粉嫩 | 国产偷拍网站| 果冻传媒一区二区三区| 亚洲日本成人动漫| a一区二区三区乱码在线| 天欧美在线| 亚洲精品精品一区二区| 99re久久| 操逼逼无码| 蜜臀99999| www.色婷婷| 欧洲亚洲国产综合在线| 嫩草 我啊~嗯~在线| 人妻熟女字幕一区二区| 久草午夜| 97色在线| 四虎AV无码| 自拍盗摄一区| 亚av顶级裸体一区二区三区四区五区| 97自拍一区| 9精品久久| 色九色久| 色色毛片| 亚洲欧洲国产综合av| 91在线色综合| 日本淫穴在线| 少妇无码999| 91成人高清在线观看| 黄色AAAAAAAAAAA大片| 丰满的三级少妇欧美久久久| 欧美精品在线观看| 白嫩91在线亚洲| 亚洲欧美成人网站AAA| 日韩久久.一级黄色片| 久久草在线综合视频| 天天操天天射青青草| 日本精品久久久久久久| 男人天堂网址| 婷婷五月天基地| 欧美999999| 天天色图| 婷婷久久综合| 啊啊啊久久| 婷婷亚洲综合| 9ⅰ久久久天天| 私人尤物在线精品不卡| 天天干美少妇一区| 久久偷偷色综合蜜桃| 亚洲日本激情| 亚洲日韩av一区二区三区百合| 美女91av| 日本性爱网址| 97超碰中文| 日本成人A片免费看| 美女主播色欲91抠b在线播放| 久久久夜夜夜| 亚洲欧洲视频小说在线观看| 好涩综合| 国产白领连续中出在线观看| 蜜臀久久99精品久久久久久成人小说 | 嗯啊不要在线| 欧美 亚洲精品首页| 激情五月综合| 日本一区不卡| 激情文学欧美| 久久25| 色噜噜人妻av 中文字幕| 大逼色网站| 久久久人体| 日韩国产精品人妻无码久久久| 中文字幕啊啊啊在线观看视频| 超碰导航97| 人人爱夜夜爱| 思思热久久成人| 久久精品男人的天堂| 99超级碰免费视频| 在线午夜成人无码视频| 九九成人精品| 国产精选三级在线观看| 欧美激情一区| 在线播放中文字幕| 欧美日韩狠狠爱| 成人五月香网在线| 国产日韩欧美亚洲精品95| 国产成人啪一区二区| 麻豆久久久一区二区| 欧美激情另类一区二区| 综合色区偷拍| 综合色久欲| 日韩欧美被操黄免费观看| 国产超碰AV在线精品| 久久久免费视频18| 午夜福利在线视频1000| 天天看少妇| 色五月综合| 屁屁影院一区二区三区国产| 亚洲AV无码乱码| 亚洲国产日韩精品久久久| 久日91在线| 99re9这里只有精品| 天天插天天干| 在线观看一卡二卡| 色五月婷婷中文字幕| 强奸国产精品视频| 欧美极品性爱天天射| 日韩电影在线观看网址| 欧美成人性活片| 亚洲欧美黄| 九色黄站| 国产精品麻豆成人av| 欧美色就是色| 欧美一区二区男人天堂| 丰满欧美少妇| 青青国产精品在线| 人妻精品综合中文字幕在线 | 欧美 亚洲 91| 美国三级日本三级久久99| 欧美洲精品一级| 美国精品国产精品| 九九热午夜欧亚国产视频| 欧美天堂亚洲电影院一区在线播放| 艳美熟妇先锋一二三区| 亚洲三级网址久久最新| 好吊爽好吊爽在线视频,中文字幕精品一区二区日本,国产良妇出轨视频在线观看, | 亚洲毛片基地专区| 超碰超碰欧美| 蜜桃视频一区二区三区 | 久久偷偷色综合蜜桃| 国内精品嫩模A∨私拍小视频| 亚洲图片 欧美电影| 国产一区在线观看无码AV| 顶级少妇BT天堂| 国产一级舔足在线观看| 国产自产91区13区| 亚洲午夜未满十八勿入网站日本又色又爽又黄 | 桑老女人九区| www熟女乱伦com| 欧美日韩少妇色情| 91在线视频观看国产| 91丨豆花丨熟女| 三级激情网站| 国产亚洲精品农村妇女| 三级AV入口| 黄色AAAAAAAAAAA大片| 亚洲无线码欧洲精品区别| 久久艹逼视频| 亚洲欧美内射| 国产呦精品一区二区三区下载| V A在线| 超碰九7| 凹凸视频在线一区二区| av橘色网站| 久热这里| 日韩成人精品| 精品久久99| 五十路熟女人妻一区二区在线观看 | 精品一区二区三区四区外站| 新亚洲无码| 中文无码一二三区| 亚洲国产综合图区中文字幕| 天天干,天天日| 青青在线视频免费| 五月婷婷激情| 五十路熟女人妻一区二区三区四区五| 五月天啪啪| 国产女大学生AV| 91麻豆天美传媒HD| av强奸乱轮| 精品久久艹| 五月丁香六月婷| 97香蕉网| 激情人妻另类| 五月天婷婷色| 黄色免费一级在线毛片| 国产25页| 国产精品电影| 亚洲码在线中文在线观看| 日韩欧美中文字| 色人久久| 国产性爱在线视频一区二区| 亚洲国产一级精品毛一级精品看免费视频| 午夜天堂精品久久| 青娱乐日韩无码| 亚洲国产一区二区日韩专区| 久久久久久裸体| 91女在线观看| av日韩在线观看电影| 一级性爱网| 999九九精品| 深爱五月天| 郑州宾馆老熟女露脸啪啪| 好吊色综合| 久久久一区二区| 久草新免费| 情色日播放AV| 亚洲91极品| 在线观看综合精品亚洲| 亚洲国产成人福利在线观看| 中文字幕一区二区三区50路| nuu12国产麻豆精品| 97硬碰| 亚洲人在线| 色色五月天婷婷| 最新av网站在线观看| 日韩电影中文字幕| 影音资源男人日韩| 色www精品视频在线观看| 97久久久| 好爽视频在线观看视频 | 国产sv美女内射| 久久精品国产99久久,亚洲日韩久久日本一区一区三区 | 天天综合网合集91| 亚洲一区制服诱惑| 91九九九吃| 97超色| 日韩综合97p| 精品国产乱码久久久久久网站入口| 日韩精品人妻中文字幕不卡乱码| 97精品97久久| 精品一级| jazzjazz国产精品麻豆| 亚洲国产成人精品999| 免费观看成人www精品视频| 黄片qw| 日韩人妻 中文字幕| 婷婷五月色| 国产白领连续中出在线观看| 干B| 欧美日韩人妻精品系列一区二区三区| 欧美天天搞| 欧美日韩啪啪电影| 在线观看日韩av不卡| 69精品少妇一区二区三区蜜桃| 国产性感在线观看| 欧美天天在线| 日日爱99| 天天日天天干天天整| 无码91| 密臀国产在线| 成人精品一区二区91毛片不卡| 国产树林里野战在线看| 亚洲天堂自拍| 99热这里都是精品| 噜噜噜在线视频| 超碰国产情侣自拍网| 91熟女视频网| 青青伊人这里只有精品| 91狠婷| 日韩91网| 久操不卡视频| 中文字幕一区二区三四五区日日骚| 色婷婷久久| 欧洲精品欧洲精品| 九九无码| 欧美色综合图片| 色人久久| 正在播放:深夜激情大战,自带黑丝袜全力输出骚穴 | 热热色91| 国产熟女少妇一区| www.91人妻.com| 亚洲人精品久久久| 肥臀熟女福利视频一区二区| 国产日韩欧美亚洲精品95| 97超级久久| AV丝袜少妇| 韩国久久97| 亚洲欧美精品福利在线| 久久国产在线一区二区| 久久久久久无码人妻中文字幕| 久久极品一区二区| 麻豆啪啪啪视频| 操迟操逼在巾线Fre看| 火箭成精品视频884必出精品| 免费看污网址| 夜夜操91744565| 99视频内射三四| h无码动漫在线观看| 日韩免费高清大片在线| 男人天堂欧美| 人妻久久| 综合色区偷拍| 亚洲第一页色网| 欧美精品,四区。五区| 青青草字幕AV| 超碰久在线天天做| 超碰久久网| 很狠操| 天天爱综合网| 骚货 中文字幕 av| 国产91丝袜在线播放蜜月| 物业黑人 AV一区| 日韩人人精品| 青青草依人大香蕉| 综合五月天| 女性91网站| 色欲天天婬色婬香WWW夜色| 国产亚洲色停停久久99精品91| 国产精品午夜AV完会免费| 久久久亚洲熟妇熟女| 久超碰在| 婷婷丁香在线| 欧美成年人性爱视频免费观看| 麻豆天美AV传媒第一页| 亚洲性少妇| 精品妇操一区二区三区| 97视频在线视频| 天天日老熟妇| 噜噜吧,噜噜色,噜噜| 性爱综合一区二区| 久草成人影片| 中文字幕一区二区三区四五区| 亚洲日韩青青草色月| 天天射影院| 精品-91人妻子系列| 黄色香蕉视频网站一区| 精精品人妻一区二区三区| 丝袜高跟澳门91视频| 嗯~啊~快点 死我视频| 亚洲性爱高潮影院| 任你爽视频| 久久久精品成人国产| 国产精品一二三在线看| 先锋激情∨在线视频播放| 久久精品国产亚洲AV清纯| 清纯唯美亚洲综合| 96麻豆精品一区二区三区| 综合亚洲网| 日本久久久精品电影| 亚洲久草AV色图| 操逼逼福利视频| 亚洲精品1区| 97超碰色屌| 青青草在线视频美女| 国产精品午夜AV完会免费 | 93人人操人人| 91逼逼女人91| 久久综合久色欧美综合狠狠| 久久久人妻| 天天干人妇| 亚州色国| a片偷拍视频| 五月天激情网图片| 久久视频,这里只有精品| 性色AV网站| 色色操| 天天情欲宗合网| 性饥渴少妇av无码毛片| 青青草自拍视频在线播放| 五月婷婷青青草娱乐伊人| 毛片久久| 久久的网站啊啊啊啊啊| 久久春色| 亚洲国产综合久久天堂| 91成人久久| 天天躁日日躁AAAAXXXX国产 | 好爽视频在线观看视频| 亚洲日韩美国人妻| 美女大乳久久久久久久女人18| 亚洲精品第一| 粉嫩国产精品久久久| 人人操人人肉久久精品| 午夜大香蕉| 97超碰色情| 亚洲 91 在线| 欧洲在线性爱视频| 另类亚洲图色| 岛国色情视频在线观看| 亚洲资源网| 尤物一级在线免费观看| 日韩成人人妻网站| 亚洲日韩AV视色| 翔田千里一区二区三区奶水| 久久久久久免费电影| 日韩无码嘿咻黑热久| 免费人成?大片在线播放| 成人毛片免费| 91精品网站| 欧美日韩小说| 极品一区二区三区免费| 最新欧洲欧美日本激情网站| 久久久久久国产无码精品| 99999精品成人| 91综合色噜噜| 99热99在线| 午夜精品久久99蜜桃的功能章节| 日本不卡三级网在线播放| 操逼操逼视频操逼| 97在线观看免费视频| 丰满熟女人妻一区二区三五十一路| 日韩在线视频1234| 夜夜草网站| 欧美亚洲日本视频久久久| 欧美大香蕉久| 国产精品国产精品国产| 久久精品国产97欧美精品亚洲| 青娱乐999| 精品免费一区二区三区在线亚洲人成| jazzjazz国产精品麻豆| 男人天堂无码| 亚州精品人妻一二三区| 蜜臀人妻少妇久久在线观看| 日韩操人| 91黑人无码激情在线| 操我无码| 秋霞免费AV| 6080YYY午夜理论片在线观看| www国产精品| 欧美激情亚洲| 五月天久久人妻| 97欧美色综合| 日韩精品人妻中文字有码在线| 亚洲综合网图| 91精品人妻一区二区三区蜜桃臀| 欧美国产日韩清纯唯美| 日本 欧美 国产一区| 亚洲熟女中文字幕在线| 日韩激情中文字幕有码| 欧美一级欧美三级在线观看| 日韩伦理久 久久 清纯| 男人的天堂一区三区| 2019亚洲男人天堂| 色情综合网| 久久久久亚洲熟妇熟女| 天天综合91在线| 亚洲成熟国产精品美女| 国产精品久久aV| 99热在线只有精品| 亚洲熟女诱惑| 日韩乱中文| 96精品久久久久中文字幕| 欧美欧美啪啪视频| 欧美日韩午夜精品一区二区三区| 97在线视频免费看| 亚洲男人的天堂va亚洲男人社| 国产一区自拍欧美日韩| 日韩偷拍色图| 欧美日韩狠狠爱| 人妻一区久久二区三区色播| 九九九九AV| 日韩在线观看中文字幕视频| 五月天加勒比啪| 一级岛国大片| 人妻插插人妻人| 丰满人妻aA一区二区三区| 啊啊啊好爽快点啊啊啊嗯嗯| 骚鸭AV| 欧美精品自慰系列寂寞少妇| 玖玖爱伊人玖玖爱| av午夜影院在线播放| 亚洲精品蜜桃久久久久久久| A级毛片在线看免费| 婷婷99| 久久超碰、| 2019亚洲男人天堂| 欧美综合色,www| 欧美日韩99| 亚洲AV无线| 91超碰人人操| 久久有码| 日韩九九九| 欧美v亚洲v综合v国产v妖精| 亚洲九九夜夜| 日韩AV噜噜噜一区二区三区四区| 亚洲成aⅴ人片不卡无码| 久久久久9| 日韩熟女精品无码专区一区二区| 一区二区不卡免费| 国产成久久综合片| 亚洲成人网站在线观看| 亚洲欧洲第二视频在线观看色图| 另类欧美色| 久久久久久久久久久久久女过产乱-少妇高潮一区二区三区喷水-成人AV | 骚逼高潮久久精品| 亚热日本熟女| 亚洲欧美日韩制服另类| 五月丁香影视| 欧美另类天堂| 唐山老熟妇露脸啪啪叫| 97 国产一区| 久久精品一区二区三区四区五区| 午夜黄色免费在线观看| 久操大香蕉超碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰 | 思思视频免费看网站| 天堂岛av| 怡春院久久| 性爱1区| 天操天操夜操夜月操月年年操操| 九九综合久久中文字幕| 91色爽欧美| 高清国产精品福利网站| 五月丁香六月婷| 国产又粗又长又大的视频| 日韩激情啪啪| 人乳av| 亚洲欧美国产其他二区| www. 男人天堂成人在线| 日本性爰一道本| 天操老女人| 无码国产Av| 人人搡人人肉久久精品| 日韩激情毛片一级久久久| 中文字幕少妇色| 51国产午夜精品视频| 中文字幕丝袜人妻| 国产精品久久久久无码Av网曝门 | 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区老师黑人潮喷一 | 国产精品久久久鸭无码的功能| 老司机午夜精品福利视频一区二区 | 大香蕉av在线| 热热色91| 欧美少妇大量自拍视频在线观看| 一起草在线视频| 91丝袜美女| 欧美日韩人妻婷婷一区| 国产日产精品久久快鸭的功能介绍| 欧美白嫩女HD| 久久久久亚洲AV无码专区少妇| 欧美在线 亚洲| 亚洲性爱无码乱伦av| 亚洲图片 欧美电影| 激情深爱五月天| 探花精品 一区二区| 97色色色综合网站| 国产精品激情久久久久久久| 亚洲熟女少妇免费视频| 激情五月天网| 99久久无码| 老司机免费视频在线91| 另类小色呦| 综合色欧美| 操人妻逼91| 国产一区二区av综合| 97在线视频免费看| 欧美九九99久久精品| 国产精品久久久无码AV网站| 色欧美在线| 极品粉嫩一区二区| 乱欲一区二区| 97超碰香蕉| 久久九精品| 亚欧精品久久久久久久久久久| 91AV入口| 9久9久9久9久视频网站| 日本三级日本三级三级人妇四虎| 亚洲国产婷婷在线播放| 激情小说激情视频| 精品国产一区二区三区久久久蜜臀 | 久久精品国产亚洲AV成人直播| 日韩91网站| 蜜桃久久精品一区二区三区| 久操婷婷| 精品欧美А∨无码黑人大荫蒂| 青青草公开在线免费不卡视频| 97硬碰| 99精品无码| 无码天天操| 中文字幕99999| 91劲爆| 99九九久久| 日日日日日| 免费看A片毛毛片在线播| 色牛aV| 亚洲欧美综合网| 亚码人妻| 人人手机欧洲亚洲国产人妻| 日韩不卡a级视频专区| 中国熟女老妇仑乱一区二区三区| 91色人| 女人的天堂大香蕉网| 黑丝内射一区二区三区| 人妻精品一区二区在线| 国产午夜福利电影免费在线观看| 99少妇| 男人天堂无码| 青青草色插素人| 色噜噜国产在线| 99欧美| 一区二区娱乐网站| 乱伦av麻豆| 国产精品久久久久久高清无码免费看 | 国产品精品自在在线午夜免费| 俺也射| 一区二区三区成人| 啊啊啊啊啊啊好湿好爽视频| 九九九999久久久网站| 国产极品精品美女视频| 少妇高潮九九九九| julia国产在线| 天天大干大香蕉| 亚洲色图自拍| 日韩美女高潮喷水视频| 第45页一区二区| 伊人久久亚洲中文字幕| 亚洲情色91| 99色视频| 久操大香蕉手机视频在线看| 999岛国大片| 久久性爱免费送| 亚洲强奸乱伦影视网| 日韩人妻 中文字幕| 亚洲中文字幕久久人妻| 日韩在线性爱免费视频| 日韩中文字幕国产| 中文字幕乱码人妻二区三区| 国产亚洲福利第一页丝袜| 一级毛片电影免费看| 超碰午夜| 欧洲在线性爱视频| 日韩一级欧美一级国产一级台湾| 男人的天堂2019| 测评在线观看AV| 伊人网免费视频| 激情五月综合开心五月| 无码外流操逼视频| 精品久久久久久中文字幕三区| 草莓精品视频在线免费观看| 九九精品99| 黑人无码一区二区| 欧美成人一区二区三区在线播放|