亚洲有码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
返回資訊列表
亚洲综合骚逼| www.av在线观看| 91这里只有精品| 亚洲av无码国产精品字幕| 超碰在线观看av不卡| 人妻天堂综合网| 97在线视频免费看| 色九九九九久| 人妻9117c| 欧洲中文字幕| 男人天堂黄片| 黑人粗大V S日韩女优视频| 影音先锋视频在线| 色天堂综合| 久久久新亚洲AV| 亚洲aw毛茸茸在线| 国产精品久久99日日| 日韩成人人妻网站| 吻戏激情性巴克| 97在线免费视频观看| 人妻久久久| 风月影院十八禁| 婷婷视频网| 亚洲资源一区| 中 文字幕一区二区三四 五 区日 日 骚| 久久久久亚洲Av无码专区老牛影视 | 国产精品扒开腿做爽爽爽视频| 中文字幕交换人妻| 欧美亚洲今日在线| 欧亚洲精品有视频| 日韩激情啪啪| 国产精品久久| 久久综合久色欧美综合狠狠 | 色噜噜婷婷| 日本99热| 成人性爱视频在线看| 人妻喷水| 欧美日韩99精品麻豆传媒| 亚洲国产91精品一区二区久久| 日本999精品| 亚洲成av人片色午夜乱码| 1204人成网站色www| 夜夜操2028| 污污汅18禁网站在线永久免费观看| 午夜九九| 欧美在线啊啊啊 | 日韩精品怡红院| 亚洲第一精品在线视频| 色香综合| 欧美亚洲| 一个人免费HD91视频| 翔田千里爆乳巨臀无码| 久草免费在线视频| 亚州一区二区| 国产一区二区三区视频在线看| 911粉嫩人妻| 330Dv国产女人终合视频极品人与兽| 日韩欧美加勒比| 五月天婷婷基地| 久九九九九九九九热| 91精品微拍福利| 天天色怡春院| 天天插天天插| 狠狠操官网| 岛国不卡超碰护士AV在线播放| 久久东京伊人一本到鬼色| 久久国99999| 日韩无码服务区| 成视频在线观看免费看| 国产真实子伦对白| 国产精品欧美激在线| 天天操夜夜嗨| 91美女高潮| 99色悠悠| 久操婷婷| 国产三区免费在线观看| 成年人黄色| 色天欧美| 超碰人妻久久人妻中文97| www.99中文字幕| Aa东京男人的天堂| 91精品人妻电影| 九九九影院| 亚洲激情在线一区二区| 久射吧| 免费农村成人少妇人妻Aa一区二区视频| 极品综合| 婷婷激情四射| 97超碰精品图片| 老熟妇一区二区三区啪啪| 久操大香蕉手机视频在线看 | 欧美少妇熟女| 亚洲熟女中文字幕在线| 在线v中文字幕一区二区三区 | 日韩免费三级黄片电影| 狠狠色五月亚洲91| 啊啊啊 在线| 一区| 五月婷婷激情| 强奸乱伦Av网| 成人免费看吃奶视频网站| 人妻三级在线中文字幕| 日本人妻最新在线中| 91女优在线观看| 亚洲精品一卡二卡三卡福利视频网站| 天天操av懂色| 俺去也婷婷| 色999五月色| 国产福利av精彩对白| 亚洲精品尤物yw在线影院| 中文字幕99999| 992大香蕉| 91亚洲欧美综合高清在线| 国产精品亚洲日韩骚欢乐谷最新地址发布页huanieguty性屋娱乐妖精视频 | 91爱剪切久久| 男女啪啪啪18禁网站| 欧美超碰在线| 国产高清成人mv在线观看| 92午夜免费福利视频| 五月婷婷丁香中文字幕| 920日本午夜免费| 欧美大香蕉同搞| 99久久国产精品免费高潮| 日韩激情无码影院| 成人国产视频在线观看| 1000部熟女视频在线观看| 久久久精| 影视综合无码少妇| 丁香五月自拍| 好好的日:com久久九九| 亚欧洲一区二区视频| 日韩色图 一区二区| 97欧美综合网| 日韩av免费一级电影| 极品尤物自安慰| 农村妇女一级二级三级视频| 亚洲精品欧美专业| 安微少妇操BBB| 青娱乐大香蕉| 花花AV导航| 精品一区二区在线针对华人免费观看这里只有精品免费观看 | 亚洲黄色影视| 操淫穴亚洲五月丁香 | 操久久久久| 亚洲国产成人7777| 1769一区| 99这里有精品| 国产精品一级二级在线| 26uuu偷拍亚洲欧洲综合| 91无码中出人妻视频| 亚洲国内精品成人不卡| 日韩精品 欧美激情| 丝袜加勒比| 免费少妇一区二区| 久久亚洲天天做| 超碰97伊人| 在线观看不卡一区二区三区| 久久久久久久久久久97| 欧美 中文字幕 一区| 色 亚洲 91| 国产麻豆91欧美一区二区久久婷婷国产精品| 日日摸日日碰夜夜爽视频| 欧美综合第一页| 色婷婷五月综合激情中文字幕| 97蜜桃综合| 欧美亚洲中文字幕| 精品精品精品| 大香蕉欧美| 激情五月丁香五月| 亚洲毛片久久| www.天天干| 91丝袜| 在线综合 亚洲 欧美中文字幕| 超碰人人干| 97在线欧| 九九碰九九爱97超碰| 91男人天堂网| 免费观看国产小粉嫩喷水精品午| 亚洲一二三| 人人操人人操草草| 干超碰碰熟女| 久日91在线| 影音先锋少妇| 91美女视频在线免费观看| 国产在线强奸视频| 日本最新1区2区3区| 99精品视频在线观看免费| 裸体美女久久久| 人妻啪| 天天色综合影视网| 亚洲美欧999| 久久久久久亚洲中文| 欧美日韩国产精品久久色婷婷| 激情五月天社区| 亚洲一区二区av| 日本九九久久99播| 中文字幕在线日亚洲9| 亚洲伊人青青草| 99热这里只有精| 精品无码久久久久久国产浪潮| 男人天堂网手机版婷婷| 欧美一区二区日韩三区| 国内伊人久久久久久网站视频| 二对二中文字幕。| 色五月婷婷五月天| 99热只有这里有精品| 91n欧美| 色女综合| 亚洲高清在线| 婷婷亚洲五月***久久| 婷婷激情四射| 97超碰色中文字幕| 青青草玖玖爱| 97超碰69| 3D污黄视频在线观看| 人妻精品一区二区| 97色综合中文网| 亚洲色宗合| 麻豆成人AV| 亚州色图片在线色| 超碰碰激情97+久| 五月激情天| 蜜乳AV.COM| 青青草好吊色| 欧美在线中M| 热热热热日日漂亮永久永久国产日| 丁香婷婷大香蕉| 國產尤物AV尤物在線觀看| 天天干天天燥| 成年人一级黄色毛片大全在线观看| 日韩欧美午夜一区二区| 国产精品亚洲一级av第二区| 亚洲精品无码久久AV| 岛国黄| 精品人妻1区| 欧美,日韩综合久久| 18禁止看精品中文字幕| 超碰色综合| 欧美日韩久久精品爱爱| 日本精品五区| 久久国产乱子伦精品免费女人| 日本黄色精品专区网站| 一级@啪啪视频| 国产亚洲精品A在线观看下载| 男人天堂网站| 性久久久| 激情五月天婷婷| 亚州操操穴网| 久久久久久久9最新免费视频观看| 激情内射| 亚洲无码国产精品久久| AV综合中文字幕干| 九九九九88| 九一精品牛牛一区二区| 欧美日韩中文字幕不卡| 激情抓乳插进去啪啪啪日韩 | 精品国产网站| 蜜桃精品视频一区二区三区| 东京热AV男人的天堂| 东北毛片| 色色色网站| 天天综和| 精品一区二区三区蜜桃| 欧美爆乳精品一区二区| 欧美亚洲日韩人妻在线观看| 日韩钢筋无码高清啾啾啾| 熟妇高潮精品一区二区三区下载| 天天拍夜夜| 老司机深夜影院18未满| 九九Av| 97综合日韩| 国产激情在线| 美国精品国产精品| 亚洲综合色网| 精…码一二三区| a级理论午夜日本| 色五月综合| 麻豆天美制片厂网站视频| 伊人久大| 婷婷五月天色色| 午夜视频久久久| 在线日韩精品一区二区三区| 久久人妻视频网| 97 国产精品| 亚欧无码线免费观看视频| 激情五月婷| 免费在线视频97| 五月香婷婷| 日日日啊啊啊| 亚洲黄片免费在线播放| 一区二区三区在线资源| 亚洲自拍偷拍视频在线| 男人的天堂2018东京热啪啪啪| 婷婷久久久精品| 亚洲二区精品在线观看| 果冻传媒一区二区三区| · —级AA伦aa坐爱午夜极速ⅴA一区天天噪天天噪天天噪 | 高清一区AV无码| 国产视频大全| 91动漫操逼视频| 亚洲a色| 五月天婷婷色| 超碰免费人妻在线| 熟女色图在线| 最近2019中文字幕国语免费版| 日韩精品电影| 老熟女综合网| 丰满少妇一区二区三区四区观看| 亚洲成a人v欧美综合天堂下载| 日韩免费人妻色情网站| 日韩黄片视频试看| 色欧美亚洲| 中文字幕88av在线| 国产免费一区在线观看| 亚洲加勒比久久日本道| 日韩无码AB| 久久久网站| 超碰欧美| 亚洲成人AB| 91久久精品国产| 密乳无码| 男女日B国产| 四虎884a| 人人爽天天爽| 国产精品三级视频网站| 日韩免费三级黄片电影| 狠狠躁伊人中文字幕| 亚洲天堂人人妻| 日韩无码a片| 久男人久久| 国产乱弄免费在线视频。 | 91国产美女丝袜足交精品视频| 牛黄色久午久| 国产精品极品美女视频| 97亚洲中文| 亚洲。天堂。日本在线观看| 青娱乐av在线| 日本精品无码三级网站| 欧美一区二区三区互相| 亚洲图片欧美色图| 亚洲激情视频| 亚洲精品97| 成人怡红院| 久9九综合在线| 婷婷探花久久精品一区| 青娱乐大香蕉| 久操在97| 婷婷久草| 精品无人区麻豆乱码1区2区图片 | 国产AV天美传媒一区二区三区 | 9.1小视频| 国产熟女高潮一区二区三区| 亚洲97网站| 超碰免费欧美7| 超碰天天操你比| 四虎视频在线观看| 欧美综合网1| 97视频7| 九热超碰| 男人的天堂va| 熟女91网站| 91模特在线观看| 久操视频免费观看| 伊人性在线视频| 资源新线在线天堂| 亚洲牲交| 亚洲欧洲自拍图片专区满春格 | 激情接吻视频久久久久久| 国产精品久久伊人| 女优免费一区二区永久| 久久久久久亚洲精品中文字幕人妻| 亚洲色图久久成人| 乱码人妻一区二区三区| 97欧美精品| 亚洲影院365| 色伊人91| 在线女人91| 青青草视频爽一爽| 欧美在线中M| 天躁夜夜躁2021| 亚洲国产成人精品久久久国产成人一区二区| 日韩欧洲操屄视频| 91 刺激在线| 亚洲欧洲第二视频在线观看色图| 日夜伊人网| 亚洲AV无线| 天天射,天天操,天天爽-国内精品一区二区三区-成人AV | 日韩色| 97在线视频观看| 午夜AV污污污| 久干9操| 九九精品热| 人妻酒店出差被中出免费在线播放| 97精品97久久| 99人妻碰碰碰久久久久禁片| 日韩免费人妻色情网站| 伦理日韩国产久久| 国产熟妇 码视频户外直播| 任你爽视频| 另类老少妇| 中日亚韩免费视频| 97人妻色| 精品午夜福利| 日本91白丝| 国产激情在线| 亚洲精品亚洲人成人网| 亚洲青青草| 国产AV激情无码久久无码| 91高跟美女在线播放| 91亚洲网| 国产原创自拍| 麻豆天美电影一区二区| 麻豆国产97在线| 91蜜臀在线久久久久| 色与欲影视| 69精品少妇一区二区三区蜜桃| 88在线一区二区三区| 久碰视频| 麻豆天美91| 91原创在线观看| 色婷婷国产精品一区在线观看| 青青草日韩无码| 中文字幕在线观| 大香蕉伊人亚洲| 亚洲天天自拍| 超碰97在线 欧美 国产| 五月天黄色激情视频| 亚洲日韩资源| 91狠狠综合久久久久久| 性爱视频无打码在线观看| 免费亚洲国产精品久久一区| 婷婷五月天激情小说| 欧美啪啪色吧在线| 性色中出| 久久免费精彩视频| 一本大道不卡一二三区| 国产一二三在线视频五十路| 欧美成人色| 日本三级中国三级99人妇网站| 免费少妇一区二区| 男女打扑克高清网站| 小日子操bb在线看| 国产精品丝袜在线| 色综合99999| 亚洲日本韩国极品一区二区| 影音先锋乱伦资源| 91天天综合日韩欧美| 又黄又粗又硬又长又大| 五月婷婷激情综合| 秋霞影音一区二区三区| 亚洲网站一区二区在线| 久久风骚城市| 不卡九肏| AV色天香在线| 91九色网| 91黑丝露脚| 日韩99精品视频综合区| 免费观看一区| 欧美草草高清日韩视频| 五月天人妻综合| 日韩美一区| 男男H黄动漫啪啪无遮挡网站| 久久超碰国产一区二区三区| 亚洲日本大香蕉1| 日韩不卡一二三四| 精品一久久久| 国产精品情侣啪啪| 久操黄色视频| 九九久久首页| 亚洲91av| 色天使大香蕉| 亚洲资源网| 欧美久久婷婷| 蜜臀人妻少妇久久在线观看| 欧美最婬乱婬爆婬性视频 | 日本操逼视频导航| 国产美女销魂在线观看不卡| 国产成人一级av88| 九九黄色视频在线观看| 国产成人网站在线观看| 偷窥自拍亚洲天堂网爆| 国产高清在线观看欧美| 国产野战露脸在线播放| 秋霞网—男女啪啪亚洲免费体验区 | 色欲天香天天综合网-成年人三级片网站-欧美乱妇狂野-日韩国产专区-久久久久久 | 91视频伊人| 亚洲一区日韩精品| 欧美性爱三区二区| 人人色人人操在线| 天天碰操中国年青熟妇| 亚洲高清在线se| 欧美综合天堂| 亚洲乱色熟女一区| 欧美疯狂做爰xxxx| 青青国产精品在线| 欧美78| 久久久91福利姬| 99re在线| www成人啪啪18秘 免费| 综合色色网| 97网址www| 97欧美色综合| 黄骗免费网站| 欧美日韩操逼动图| www.久久久久| 男生女生啊啊啊啊| 久久久久久九九九| 8050午夜少妇无码| 91麻豆天美国产| 97精品视频在线| 日韩免费av片高清无码| 国产精品熟女丝袜一区二区| 人妻社区男人天堂| 久久大| 色999;丁香五月| 亚洲AV无码久久精品蜜桃小说| 欧美日韩人妻婷婷一区| 欧美A片中文字幕| 调教熟妇 久久久久久| 91九九九吃| 少妇一级无码精品| 亚洲情色1区| 美女诱惑久久| 999日韩中文精品观看视频。| 裸体美女久久久| 久久超碰97| 国产女生在线| 91美女看B| 9色国产精品一区粉嫩| 五月激情视频| 水滴偷拍| 天天爽天天操| 亚洲情色视频| 国产一区二区三区中文字幕| 亚洲天堂资源网| 亚洲无码久久久久久久| 足交视频老司机| 欧美日韩 强奸乱伦| 热的中文 热的有码 热的国产| 亚洲爽图| 国产精品久久久久久夜夜夜| 人人弄人人摸| 99精品丰满人妻无| 激情熟女12P| 亚洲欧美日韩国产丝袜自拍中文| 无码最新| 青青草在线视频播放器| 97色干| 欧美熟妇精品黑人巨大91| 素人美腿视频网站| 日本免费一级AAA大片器| 男人精品天堂一区| 日本色婷婷| 日日干日日摸| 国产精品久久发布| 18啪啪手机免费性爱| 99精品久久久久久| 99热| 亚洲精品久久久久毛片A片拉屎 | 欧美日韩午夜精品一区二区三区| 色色99| 91操人| 人人性爱视频免费| 欧美综合传媒| 玖玖综合色| 丁香五月激情综合国产| 九九九九九九综合| 国产精品欧美激在线| 男人夜色天堂ss| 污污汅18禁网站在线永久免费观看| 97K超碰在线| 欧美日韩国产传媒在线精品| 免费簧片在线观看| 国产亚洲99久久精品熟| 精品少妇99| 国产精品乱码久久久久久| 亚洲日韩精品一区二区| 999熟女精品| 成人综合视频久久| 蜜色网色哟哟| 欧美日韩国产在线| 日本性爱少妇| 可能人人看人人摸| 欧美性爱18观看| 香蕉视频欧美一卡二卡| 97久久超碰日韩精品| 超碰在线第一页| 久久久久久中文版| 宅男午夜在线视频| 丝袜内射| 欧美成不卡网| 色狠人在线99| 天天摸天天碰天天添青青| 男人的天堂2010| 精品久久人妻成人网| 操逼片中文| 福利在线观看一区二区| 久久无码电影| 成人在线视频网| 国产精品久久发布| 少妇国产不卡| 夜夜高潮夜夜爽高清视频一| 久久久久久久久久久人妻| 欧美性爱系列| 久久综合婷婷| 不卡人妻少妇精品毛片一区23区视频| 久久久9视频| 男人的天堂.com| 黑人精品久久97| 操逼无毒无码免费视频| 好爽要喷了| www.男人的天堂| 妇女性内射冈站HDWWWCOM| 精品美女久久久久| 欧美亚洲| 性站| 国产大片精久久久久久| 色香伊人| 三上悠亚在线毛片91| 三级特黄60分钟播放| 五月婷婷丁香中文字幕| 99热超碰| 国产在线激情| 国内精品久久人妻性色av| 嗯啊抽插大香蕉网页| 精品国产一区二区三区av在线资源| 欧美九九99久久精品| 9长久久精品| 亚洲高清91| 青青操网| 久热大香蕉| 美国久久一二三四| 久久中文字幕女同性恋一区| 中文字幕日韩专区精品系列 | 超碰在线一区| 毛片电影一区二区三区| 人妻无码视频一区二区三区久久| 国产60页| 中文字幕精品免费一区二区| 91狠| 97在线视频免费看| 日韩黄片视频试看| 97高清啪啪| 999久久芭蕾| 国产黄片精品在线| 欧美淫穴| 久久国产精品m码| 久久人人爽人人爽人人片Ⅴ| 中文字幕文字幕无码一区二区三区电影99| 97超碰精品| 男人的天堂在线有码| 综合少妇网| 欧美日韩*字幕一区| 免费啪啪啪网站18岁| 欧美国产成人在线| 你懂的在线观看区国产| 欧美一区二区传媒| 国产女人高潮嗷嗷嗷叫小说 | 欧美se综合| 日韩无码操逼片| 成人精品一区二区三区| 日熟女| 成人十八禁日韩欧美一二三| 国产福利小视频高清在线观看| 韩日自拍| 人妻少妇色综合| 亚洲一区二区AV| 久久天天摸| 91肉片| 欧美一二在线| 日本午夜操逼| 国产精品日日摸天天碰| 天天综合色电影| 日本潮催一卡操| 九九九九免费高| 男人a天堂手机在线版| 精品久操| 精品国产嫩穴视频| 水多多映视AV| 亚洲高清少妇| 日韩国语字幕| 伊人久久大香线蕉无码| 91在线丝袜| 口爆综合网| 午夜福利免费福利视频| 日夜伊人网| 97干综合网| 床上啊啊啊一区二区三区| 中欧人妻丝袜中文字幕| 日韩 成人 有码| 玖玖爱免费观看视频| 成人小电影网站tex| 中文字幕88av在线| 国产高潮AA片免费看| 无码免费在线观看黄色片| 老熟女综合网| 午夜AV污污污| 亚射在线| 日本午夜精品理论片A级APP发布| 国产v亚洲v日韩v欧美v片另类 | n1038 一二三区| 欧洲熟妇xxXx欧美老妇裸体| 无码人妻精品一区二区中文| 久操精品| 天天久久| 欧美综合1性辶| 97久久精品不卡| WWW.加勒比人妻一区不卡.com| 久久天天摸| 俺去也婷婷| 国产AV毛片| 正在播放国产精品一区| 丰满人妻一区二区三区免费| 伊人宅男大香蕉| 97欧美色综合| 91激情综合| 国产九区| 欧洲自拍色图gif在线| 91天美传媒在线观看| 久久av色| 五十路二区在线| 久久国99999| 蜜臀久久久国产| 97超碰色屌| 操学生天天| 99青青草国产视频| 天美一二三在线观看Av| 97人人干人人操| 国产亚洲国产超碰| 五月婷婷综合网| 色999人与兽| 91五月天| 屁股久久久久久久久| 免费男人的天堂| 国产欧美后入| 日韩大香蕉AV影片| 中文久久| 欧美探花网| 国产精品一区二区三区,亚洲综合| 约操熟妇| 99这里有精品| 在线黄色污污网站| www.久久超碰| 亚洲A曰本VA欧美VA视频| 男人在线天堂| 99精品成人免费看| 91无人区卡一卡二卡三乱码入口最新版:能让用户有更多选择的选择-经典说说-爱 | 人妻丝袜二区| 日韩av免费一级电影| 色播综合| 色妇91| av网站在线看| 日韩性爱1级片视频| 午夜丁香婷婷| 国内精品久久国产,www香蕉久久五月丁香,亚洲欧美日韩精品永久在线,日本精品一 | 91精品在线播放| 久久尹人大香焦视| 精品一区二区成人| 天天摸天天插天天日| www被窝色com| 色综合V| 一本一道vs波多野结衣| 精品久久久久黄少妇| 天堂性色| 丁香婷婷大香蕉| 欧美专区17页| 另类图片欧美激情综合| 开心激情站| 久久久久密臀视频| 黄片qw| 亚洲限制级在线| 热G综合热G中文| 色色香蕉| 欧洲亚洲人妻无码中字久久三区四区| 欧美日韩亚洲少妇寂寞影院正在播放| 天天色黄色影院天天操| 国产性感在线观看| 欧美天天| 91久久精品国产| 欧美高清第一页| 婷婷久草一区二区三区| 欧美暴力猛交| 久久黄色性爱视频| 四虎免费看黄| 久久精品欧美一区二区三区不卡| 99啪| 日本中文熟女视频| 老师充足的奶水小说| 精品久| 97人人爱人人做人人乐| 国产精品爱欲| 久久久久久久久久久久久久久性生活视频 | 成人午夜视频免费播放| 国产丁香精品露脸视频| 午夜高清成人在线视频| 久久久青青草| 殴美牲| 天天干人人乐| 草久久久| 成人国产精品三级A片| 麻豆性爱视频在线播放| 国产第12页| 91激情国产| 日韩97超碰中文字幕| 久久中文字幕一区不卡| 九九九九九九九九九九九蜜桃| 色色色欧美| 男人天堂新| 9久精品视频在线观看| 丝袜狠狠草尤物人妻av91| 蘋果手機免費看成人Av| 国产一区二区啪啪视频| 天堂综合网| 在线天堂999| 国产精选三级在线观看| 色综合一本| 97超级色碰碰| 伊人大香蕉在线| 日本高清有码网址视频| 黑人免费福利视频| 亚洲性高潮| 秋霞鲁丝午夜无码一区二区三| 翔田千里av一区二区三区| 日韩成人无码| 97色操| 丰满少妇高潮无码| 奸色色 男人天堂 天天射| 亚洲黄网在哪免费看| 亚洲欧美国产中文视频| nuu12国产麻豆精品| 操狠狠| 色播丁香| 日韩成人在线性爱视频| 国产老女人久久毛| 综合亚洲欧美| 成人黄页| 在线情色电影 91大| 国产丰满熟夫69mpp| 亚洲精品一区二区三区新线路| 97色婷婷| 国产女人成人精品视频| 午夜黄色免费在线观看| 草草网站影院白丝内射| 亚洲影院成人| 欧美色涩| 精品免费视频国产一区| 肏逼视频日本| 91视频精品| 91春色| 日韩大香蕉AV影片| 97精品在线视频| 大但人体久久久久| 国产精品久久久久久久久久久久久久久久| 男人天堂日日夜夜| 吊色| 97久久久网站| 中文字幕成人乱码熟女精品国50| 欧美精品三级黄片| 干超碰碰熟女| 久久精品国产99精品亚洲蜜...| 色色色色日本| 人妻熟女av国产网站| 青青草日韩无码| 中文字幕乱碼在线| 亚洲91网站| 国产精品丝袜在线| 天天躁日日躁成人字幕aⅴ| 亚洲图片欧美色图| 色黄色美女大长腿午夜视频| 凹凸视频特色日本特黄| 三级片大波波| 久久视频,这里只有精品| 丰满少妇精品一区二区| 天堂无码| 亚洲精品aa久久伊人| 欧美精品人妻视频| 九九九九欧美| 黑人猛交| 亚洲无线码一区国产欧美国| 国产欧美伊人| 久久久久9999精品九九九| 99re热| 精品人妻一区二区三区四区石在线| 日韩欧美字幕亚洲一区二区| 激激五月| 桑老女人九区| 岛国黄色短视频| 狠狠干精品一二三四五六2022| 亚洲精品电影| 啪一啪免费视频| 影音先锋日本乱伦| 人妻少妇精品一区二区三区| 日韩精品国模| 欧美v亚洲v综合v国产v妖精| 鲁鲁色综合网| 久伊人网78| 中文字幕一区二区韩| 精品久久久亚洲AV成人网站| 欧美日韩另类字幕中文| 亚洲高清欧美总合| 欧美中出1| 欧美最大综合网| 一区二区三区探花在线观看| 97人人模人人爽人人| 激情文学亚洲| 一级人妻性爱视频| 97超碰美国| 一级毛片电影免费看| 91站街按摩店老熟女熟女| 夜夜骑日日| 96久久精品一二三区色欲| 亚洲国产亚洲天堂| 久久精品国产免费观看99| 91伊人久久在线| 黄色一区二区秘书性感| 日本不卡一区二区三区| 综合伊人网12色| 久操大香蕉超碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰 | av影院十区| 日本午夜福利影院| 久久久久久久久999| 先锋精品av色鲁| www.99色| 91爱看| 3p国产色噜噜一区| 女性91网站| 色九九九九| 亚洲日本韩国在线| 波多野结衣被操50分钟免费视频 | 亚洲极品| 日日干男人的天堂| 青青草视频爽一爽| 欧亚乱色熟女一区二区| 天天看片天天爽| 搡老熟女免费视频| 中文在线久久字幕| 免费成人自拍视频在线| 欧美亚州综合图片| 亚洲成?V人片在线观看福利| 超碰人人干天天射| 亚洲AV不卡在线观看尤物| HEYZO高无码国产精品227| 东京热,男人的天堂| 国产精品一区二区 尿失禁| 99re在线精品78| 禁止观看美女黄| 久久六六| 欧美日韩色| 99国产精品自在自在| 久久精品性| 成人无码在线视频网站| 骚妻少妇精品性色无码四色A V| 男人天堂.AB| 日本在线视频导航| 全国男人天堂网| 大香蕉一人在线| 打av高清| 91人妻超碰| 国产亚洲精品自在线亚洲情侣| 亚洲开心网| 亚洲老司机123专区| 五月天色色网站| 免费看A片毛毛片在线播| 午夜舔阴达高潮视频免费看| 91制服丝袜| 四虎av在线| 国产99999久久精品| 天天综合网一91网| 国产欧美伊人| 性爱乱伦网址| 日本高清_区二区三区| 99色热国产视频精品| 免费av在线播放二区| 久操电影| 亚洲精品久久久久毛片A片拉屎| 操熟女91| 精品免费囯产一区二区三区| 亚洲中文电影| 中文字幕女同在线| 日日橹狠狠爱欧美超碰| 97人肏| 男人天堂.AB| 九九热在线视频| 婷婷五月综合激情| 嫖老熟女A片一二三区| 极品白嫩美女白浆成人福利在线看| 日本欧美亚洲高清在线看| 久久久久国产一区二| 深爱激情五月天| 91人人看| 91丨熟女丨丰满熟女| 粉嫩不卡一区二区性爱| 天天干天天插| 亚洲91网。| AV中文字幕三四五| 亚洲综合影院| 色在线亚洲视频www| 深夜国产一区二区三区在线看| 懂色av色欲av蜜臀av| 一级特黄aaa大片在线观看成人一级片在线观看| 日韩av不卡在线看| 自偷自拍的亚洲视频| 爱爱动态120秒| 国产精品色色| 蜜桃久久久久久久久久久久| 亚洲久草AV色图| 夜夜爽夜夜爽| 国产AV激情无码久久无码| 国产精品久久久三级无码| 99热网站| 丝袜色综合| 日韩精品中文字幕人妻| 色区久久| 欧美 日韩 国产传媒| 激情啪啪视频| 三级精品三级在线观看| 99精品久久久久久久婷婷蜜桃| 丝袜狠狠草尤物人妻av91| 激情小说亚洲视频| 一卡二卡三卡| 亚洲久久久| 激情丁香五月婷婷| 久久色人体| 91天堂视频| 日日躁狠狠躁天天躁精品| 撸无码不卡免费视频| 日韩免费在线视频观看| 97国产精选| 亚洲国产综合久久天堂| 亚洲国产91精品一区二区久久| 本道在线| 欧美熟妇操操视频| 自偷自拍的亚洲视频| 少妇色综合| 外站AV在线| 午夜精品久久久久久久99蜜桃一| 亚洲 综合 欧美| 综合久欧洲| 春色综合免费| 日韩欧无码一区二区三区免费不卡| 激情小说亚洲色图| www.zbzhongsen.com| 91国产丝袜白虎| 日韩成人电影AV| 久久久久久久久一区二区三区| 日韩中文欧美| 黄片www视频免费| 精品无码一二三四区| 国产精品久久泡妞网站| 欧苏综合色综合| 大二网站亚洲| 色香伊人| 色婷婷av在线观看| 欧美成人精品一区| 91欧美成人色站| 麻豆91熟妇人妻中文字幕茄子| 情色日播放AV| 伊人久久综合影院| 天天干人妻| 日韩人成网站在线播放| 亚洲高清欧美总合| 免费一级毛片在线视频观看| 亚洲伊人久久精品影院| 9999久久久久| 亚洲无码国产探花在线观看| 肉丝无码中文高清| 国产人妻精品久久久一区二区三区 | 中文字幕第9页萱萱影音先锋| 五月天婷婷基地| 久夜视频| 午夜福利久久久噜久噜久久综合 | 熟妇无码视频三区| 国产综合色精品在线观看| 亚洲人成网www| 东京热毛片177b2viP| 蜜臀av中字字幕网站| 久久啊啊| 天天色悠悠激情| 黄色免费网页无码| 91欧美性| 久久精品国产97欧美精品亚洲| 国产精品成人在线| 中国AAAAAA黄色片| www.人人摸在线视频| 超碰性爱97| 高清无码国产亚洲| 中文日本免费高清| 亚洲中文字幕在线视频一区二区| 日韩成人人妻网站| 老司机午夜精品福利视频一区二区| 久久久久久久一级黄色打同平台| 午夜寂寞欧美| 亚洲中文字幕久久人妻| av网站免费线看| 日日骚中文字幕| 欧美 亚洲| 午夜噜噜噜| 欧美97色| 91欧美亚洲| 国产高清亚洲日韩一区| 国产女同在线观看视频| 中文字幕乱妇免费视频| 天美传媒精品一区二区| 国内精品a| 亚洲国产激情国产av| 麻豆天美久久91| 久草视频分类在线| 香一区二区三区| 羞答答AV中文字| 91精品无码久久久久久久| 亚洲一卡2卡3卡4卡乱码网站 | 久久9视频| 一起草av| 青青爽| 国产极品999| 亚洲欧洲色情高清| 麻豆色约约| 日日摸日日碰夜夜爽视频| 欧美在线播放| 国产女人与拘做受视频免费| 岛国片国产成人亚洲播放| 国产福利av精彩对白| 日本超碰在线国产一区| 亚洲图片欧美制度| 人人澡综合涩| 久这精品中文在线观看视频| 欧美翘臀视频网站一区二区三区| 色综合av综合久久| 精品少妇99| 青青操在线视频| 欧美91精品国产自产| 亚洲三区视频| 可以在线观看AV的网站| 炮色五月| 夜夜操中文字幕| 黄色片A级一区二区三区| 久久这里是精品| 自拍偷拍2025在线观看| 野狼激情网| 色原狠狠天天天| av在线不卡一区二区三区| 激情四射婷婷四五月天| 丝袜高跟澳门91视频| 久久精品国产欧美日韩亚洲欧美日韩中文久久国产一区 | 久久最新视频免费观看| 97操碰| www.久久制服糖| 日韩女优中文字幕| 欧美色图片色哟哟| 美女极品一区二区三区| www.99热| 男人天堂导航| 欧美系列在线一区二区| 欧洲亚洲人妻无码中字久久三区四区| 欧美亚洲天天| 激情干在线| 国产精品在线一区二区| 岛国视频免费在线观看| 久久鲁夜| 国产欧美成人第一页在线观看|