亚洲有码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
返回資訊列表
热久日综合| 日韩AV一起草| 999国产精品999久久久久久| 欧美色日本| 婷婷91| 亚洲国产成人7777| 久久久久亚洲| 91久久国产精品| 99只有精品| www.夜夜操| 一级aaaaa欧美中文字幕录像片| 校园春色亚洲色图| 激情文学小说一区二区 | 乱久久久| 农村妇女精品一区二区| 艳美熟妇先锋一二三区| 亚洲各类熟们中文字幕| 中国一级操逼视频| 人人爱人人乐人人操| 91国产丝袜白虎| 欧美亚洲高清不卡| 中文字幕视频2区| 丁香五月婷婷色| 操逼www.| 密乳AV免费观看| 成人一二| 免费视频在线一区二区不卡| 婷婷激情丁香| 欧美亚洲中文字幕| 韩国黄色片精品久久久| 一区二区三区免费岛国片| av爱爱爱| A片大香蕉在线| 男人的天堂VA| 伊人网免费视频| 九九碰九九爱97超| 国内亚洲高清无码| 精品人妻一区二区三区四区石在线| 农村少妇久久久久久久| 囯产精品久久久久久久久久二区三区| 亚洲 欧美 第一页 | 超碰在线日韩一区| a'v在线资源| 国产美女自拍AV| 日韩三级伊人| se吧提供国产乱老熟视频胖女人| 免费观看网黄| 丰满岳乱妇一区二区三区| 欧美区亚洲区偷拍区 | 日本精品一区三区| 热热热热日日漂亮永久永久国产日| 国产精品网站免费| 久草草一二三四区久久| 日日躁天天躁狠狠躁| 骚日日av| 亚洲不卡三级手机播放| 99re国产精品视频| 婷婷综合在线| 丰满少妇人妻久久久久久| 国产超碰国产97| 人人妻人人操人人乐| 亚洲 图片 综合91| 中出后入| 欧美激情内射| 操逼无码操逼| 96久久精品一二三区色欲| 亚洲激情在线| 亚洲中文字幕乱码无码一区二区| 东方亚洲在线操逼天堂| 日本熟女免费視颖| 色九月婷婷| 日韩AV一区二区三区三州三州| 亚洲欧洲精品成人| 本道综合精品| 欧美精品日韩久久久九| 97超碰69| 人妻熟女一区二区| 国产激情视频一区区三区| 国产高清精品一区二区三区毛片| 男人的天堂啪啪| 丝袜美腿校园春色| 青青久久艹| 日本成人A片网站| 久久久婷| 日本顶级天天操狠狠操夜夜操中文字幕| 人妻喷水| 激情接吻视频久久久久久| 黄页18禁| 色吊丝 日日骚 清纯唯美| 日本黄大片在线观看视频| 免费在线观看国内色片网站网址| 亚洲美女精品| 东京热一区二区中文字幕| 一级特级aaaa毛片免费观看| 嗯嗯啊啊视频一区二区三区| 超碰95| av日韩手机在线影视| 十八禁网站在线| 亚洲人精品午夜不卡| 色屁屁影院www国产| 久久色情| 中欧人妻丝袜中文字幕| 91GD.COM| 国产一级舔足在线观看| 日本人妻一区二区| 免费AV中文网在线观看| 日韩欧美成人大香蕉| 欧美 色 亚洲| 欧美制服另类丝袜| 97超碰碰| 天天透伊人| 国产97在线 | 亚洲| 国产一级αv免费看片| 插老姨肥穴| 九热中文字幕| 免费看污网址| 太久视频| 麻豆区久久久久亚| 久久性爱城| 人妻大香蕉| 精品亚洲国产成人AV制服丝袜| 新精精品久久精品| 日韩欧美午夜视频在线| 久久久96精品| 91 亚洲 欧洲| 亚洲日本激情| 日韩中文字幕宗合在线| 3p国产色噜噜一区| 91网站18禁| 在线播放中文字幕| 91免费看一区二区三区| 超碰99热中文字幕| 日韩免费在线视频观看| 久草线上视频免费看| 国产熟女免费观看久久| 97精品人妻一二三四| a级成人毛片免费视频高清| 亚洲男人的天堂AV| 欧美国产日韩高清在线| 精品78| 久久精品视频久久久| 网站A V在线| 亚洲成人精品久久久| 国产一区二区三区免费视频在性观看 | 国产av青草| 欧美性爱第一页久久| 60秒免费小视频| 日韩成人精品视频自拍| 91香蕉国产尤物视频| 亭亭丁香激情| 国产色呦呦| 天天干18禁| 啊啊啊啊啊操我视频| 久草国产在线视频| 日韩有码中文字幕女同性恋| 日本丝袜美腿人妻九九| 女人高潮抽搐喷水视频网站| 男女猛烈无遮掩视频免费软件| 久久这里| 玖玖婷婷五月天| 久热精品在线国产| 91精品91久久久中77777| 亚洲另类久操网| 偷拍自拍在线视频观看| 久久一区二区三区四区五区| 久久婷婷亚洲欧| 丰满人妻一区二区三区大胸懂色| 超碰免费人妻人人| 这里都是精品| 人人爽人人精品乱人伦AV| 日本午夜久久电影| 在线观看一级α片刺激高潮视频| 久久精品28| 亚洲自拍欧美国产首页网曝| 91一起操| 亚洲成a人片在线观看中文!!!| 大色综合| 久久欧美激情| 麻豆区久久久久亚| 99re6在线视频精品免费完整版安卓版| 中文字幕在线观看丝袜| 思思在线免费视频| 国产AV高清AV无码| 影音先锋新男人| 日夜伊人网| 欧美一品道| 精品人妻一区二区三区-国产精品| 国产成人bd在线观看| 97色碰| 久久精品国产99久久,亚洲日韩久久日本一区一区三区 | 色原狠狠天天天| 亚欧中文字幕在线视频| 91熟女综合| 久久理论字幕视频| 午夜激情床戏激情| 亚洲色图超碰在线| 五月丁香久久| 美中韩AV综合网| 不卡啪啪视频| 日本九九九九| 伊人99热| 成功精品影院| 开心婷婷五月| 五月丁香啪啪啪| 伊人久久婷婷| 天天看天天综合成人网| 91亚洲青青草原精品1区| 色人久久| 天天综合亚在线| 色爽爽文学| 成人婷婷丁香| 黄页大片在线观看| 欧美亚洲一区二区久久久婷精品大包诱| 激情婷婷丁香| 亚洲综合网图| 日韩欧美丝袜诱惑| 蜜桃久久久久久久久久久久| 天天干人妻| AV男人天堂网| 亚洲天堂男人的天堂| 国产人妻久久精品一区二区三区| 亚洲熟女综合网| 久久男人的天堂| 曰韩人妻中文字幕在线| 桃花色综合影院| 91搞逼视频| 上海一级黄片| 亚洲欧美中文日韩视频中国语| 亚洲色图欧美视频| av天堂影视中文在字幕在线中文| 97干色天堂| 天天综合网AV91| 亚洲极品| 成年无码动漫av片无尽在线| 国产成人综合在线播放| 欧美黄色大香蕉一区二区| 色婷婷色99国产综合精品| 99成人| 九九毛片这里只有精品| 亚洲精品97中文字幕| 亚洲清纯综合| 国产精品久久久久无码Av网曝门 | 丝袜天堂| 国产97在线播放| 天天肏视频| 美国黄片aaa| 91啪啪视频| 国产极品999| 试看60秒| 国产精品不卡av免费在线观看| 岛国片在线播放| 天天干夜夜一操| 日韩一级二级| 后入日本1234| 夜夜影视四色| 大香蕉十区| 亚洲欧美视| 日韩欧美日韩| 天天插天天操| 9997se| 人人操,人人插| 欧美一区二区三区日韩| 丝袜视频一区二区在线播放国产中文| 欧美色图另类图片| 日本1区2区不卡视频| 久久精品三级影视| 91国产丝袜美女| 超碰97人妻免费在线| 在线啊v一区| 天天综合影院91| 亚洲 欧美 第一页 | 屌妞视频久久久久久久| 青青草毛片| 久久久无码av精| 久草色悠悠在线视频| AV女资源| 欧美中出1| 亚洲黄a三级三级三级看三级| 久操97| 日韩精品99999| 天天干夜夜鈤| 丁香色色网| 99re6在线视频精品免费完整版安卓版| 午夜成人爽爽爽爽A片李冰冰| 日韩中文字幕二区| 自拍第一页| 操逼操网| 88在线一区二区三区| 人妻中文字幕精品无码| 亚洲色资源| 免费av在线播放二区| 99热超碰| 伊人操你| 嗯嗯啊啊视频一区二区三区| 美女操逼A A| 红桃视频高潮| 国产久久成人| 亚洲色图欧美色图制服诱惑| 国产高清在线观看欧美| 蜜乳av一区二区三区四区不卡| 黑人白女精品一区| 久久精品91| 亚洲高清在线| 日本影视久久免费| 国产精品视频播放| 国产精品久久久久久久黄无码| 国产精品不卡一区二区三区| 天堂中文资源在线bt| 国产女主播视频在线观看| 日韩乱伦视频| 嗯嗯啊啊啊好爽| 人妻久久久| 91久久青青草原精品| 一区=区三区视频| 欧美黄色手机在线观看| 久久草视频污视频| 国产成人自拍视频在线| 酒色综合网| 欧美一二在线| 婷婷91| 色噜噜狠狠色综无码久久合欧美| 日日日啊啊啊| 你懂得91| 人人操我人人干| 国产精品69久久久久孕妇欧美| 日韩人妻无码专区| 在线视频亚洲无码| julia中文字幕在线观看| 日本高清有码网址视频| 蜜臀一区二区三区在线 | 黄色成人网久久久久久| 欧美青青草视频| 色九月婷婷| 韩日色费| 玖玖久久久| 欧美 传媒 麻豆 日韩 偷拍| 夜色AV无码手机在线影院| 992大香蕉| 午夜福利久久久噜久噜久久综合| 草莓精品视频| 免费a级毛片av无码久久精品中文字幕| 九九九草| 福利风月五月天影院| 啪啪AV导航| 亚洲久久久久| yazhouzaixian| 美女露胸露尿口| 自拍偷拍 日韩无码| 97超碰护士| 夜夜做夜夜爽精品视频| 试看福利| 96AV久久久| 久久久无码av精| 国产激情视频一区区三区| 97视频新免费| 99综合自拍| 丁香五月天社区| 天天干夜夜一操| 国产亚洲精品精AV.| 91国产丝袜白虎| 97超碰中文| 久久精品免费| 怡红院视频在线| 妺妺跟我一起洗澡没忍住| 国产探花日韩援交| 日韩有码 一区二区三区| 97伦综合| 亚洲人天堂| 色爱天堂| 91亚洲网站| 加勒比无码毛片| 日本孕妇孕交| …中文字幕亚洲乱,97人妻无码费视…| 男人下部插入女人下部| 欧美久久草熟女| 亚洲精品视频二区| 丝袜熟女2P| 国产按摩一区二区三区| 96精品在线| 男人的天堂啪啪| 99热精品在线| 天操天操夜操夜月操月年年操| 激情一区二区三区在线观看| 97超碰国产精品| 青青草日本无码| 久久久九97| 麻豆60秒| 久久水蜜臀亚洲AV无码精品| 超碰一区二区| 蜜桃臀av一区二区| 久草免费在线视频| 99久久99久久免费精品蜜臀| 国产精品人妻无码久久久互動交流| 久久综合97| 成人久久久| 久久国产逼| 九九热久久99精品re| 天天日天天搞天天干| 九月丁香婷婷色| 久操网址| 丁香五月激情网| 91亚洲人电影| 精品网站99999| www. 男人天堂成人在线| 九九久久国产精品| 日韩一999精品| 精品人妻1区| 人人 操人人 操人人| 无码逼| 人妻乱仑一区二区三区| 婷婷色色五月| 大香蕉伊人在线成人AV在线观看| 蜜桃精品一区二区三区久在线| 天天性射网| 亚洲天天操| 日日插夜夜| 亚卅熟女乱色| 青青操在线亚洲视频观看欧美在线| 四虎在线免费视频| 91精片| 天天看天天在线精品| 蜜臀AV网站| 日日夜夜骚| 综合一区二区影视| 秋霞怕怕片| 亚洲无吗在线视频| 一区二区三区四区五区高清无码永久视频 | 亚洲色图亚洲无码强奸乱伦| 精品99999久久久久久| 欧美日韩人妻婷婷一区| 三级色影综合网| 中国少妇XXXX做受| 人妻激情偷乱视频一区二区三区| 青青欧洲黑| 精品人妻一区二区三区在| 国产乱伦亚洲| 久久不卡一区二区| 久久精品无码专区| 亚洲高清国产理伦片| 东京热男人的天堂网| 999九九精品| 亚洲加勒比| 久久婷婷亚洲| 舔舔啊| 国产精品盗摄 偷窥盗摄| 色综合99| 丝袜加勒比| 园内精品自拍视频在线播放| 亚州成人A√| 精品国产a∨一区天美传媒| 91九色蝌蚪在线观看| 天天看天天综合成人网| 日本二三四区| 丁香五月婷婷啪啪| 国产精品另类一区大香蕉| 人人操肉肉| 欧美丝袜激情| 欧美一级AAAAAAA| 日韩97超碰中文字幕| 免费男人的天堂| 超97在线精品视频| 少妇久久久免费| 91操人| 黄久在线| 亚洲色图殴美色图激情乱伦| 2019午夜福利视频| 黄片免费看黄片免费看| 1024午夜激情男人的天堂| 免费日韩黄片| 成人一区二区三区四区| 国产一级内射无挡观看| 啊灬快c我灬啊灬用力灬啊灬-国产精品性做久久久久久-成人AV | 欧美专区日本专区| 久男人久久| 国产精品色片一区二区| 中文字幕二区| 97福利视频| 色九久| 韩国一区二区精品亚洲| 亚洲中文字幕在线视频一区二区| 久久e6只有精品| 激情熟女12P| 香港成人一级视频在线青青草| 亚洲国产精品无码AV久久久| 国产欧洲精品亚洲午夜拍精品| 亚洲 国产 精品一区| 超碰 国产熟女精品一区| 日韩不卡毛片Av免费高清| 五月天精品| 亚洲国产精品久久久久久久久久| 精品国产Av无码久久久亚洲| 欧美男人亚洲天堂| 九九性爱网| 久久久久久久9| 啊好大好舒服| 国产极品美女高潮无套在线观看| 男人的天堂Va| 成人无码专区精品视频| 可能人人看人人摸| 久久香蕉国产线看观看亚洲女人 | 人人干黄色| 亚洲人码13| 91综合在线| 国产无码精品成人| 亚洲熟妇综合久久久久久| 日韩在线观看中文字幕视频| 九九九九精品| 国产精品一级二级在线| 天天综合色电影| 日逼视频日本| 精品999一区二区| 久久久18禁| 91精品丝袜久久久久久| 黄色视频60分钟| 91制服丝袜| 和协影院中文字幕三区| 99激情| 国产黄片精品在线| 97超碰色| 97国产精品在线观看| 少妇69中文| 色婷婷丁香五月| A级毛片在线看免费| 国产熟女一区二区| 国产欧美黑人丰满在线| 超碰性爱97| 成人丁香五月| 人人操人人uiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii | 亚州色阁| 偷拍超碰| 日韩紧密久久| 色色热| 久久精品国产亚洲AV高级北京| av激情亚洲五月天| 大逼色网站| 风月影院男女十八禁| 久久不卡一区二区| 综合五月天| 亚洲欧美一区二区三区一猛片| 一区二区三区美女超清| 久久免费9| 欧美色图另类图片| 国产三级中文字幕粉嫩| 日韩精品影视| 91精品人妻啪啪间| 性欧美精| 国产情色第一第二页在线观看| 国产SV一线| 日本精品88888888| 无码人妻一区二区一牛影视| 成人综合色网| 超91综合网| 色婷婷影视| 色色综合网站| 婷婷亚洲色| 六月婷婷色综合| av资源在线播放天堂| 囯产乱伦一区二区三女 | 超碰色中文| 欧美熟女激情| 狠狠搞 亚洲91| 韩国三级三级BD在线| 日韩99神马视频片| 亚码人妻| 插B在线观看| 亚欧美综合| 亚洲双插| 韩国三级色呦呦| 天堂v无码免费视频| 精品人妻一二三| 日日干天天干夜夜爽| 呦呦影院| 在线视频免费播放一区| 91黑人无码激情在线| 日本肉体xxxx裸交| 久久久久久国产精品| 性欧美另类高清| 色狠狠综合噜一二三区| 怡春苑东京热| 天天日天天干天天摸天天操| 亚洲综合首页| 岛国网址国产| 国产成人+综合亚洲+天堂| 国产精品一二三免费网站| 蜜色网色哟哟| 国产99999久久精品| 加勒比色99999| 日本影视久久免费| 亚洲最大成人a毛毛片| 成人福利视频网| 超踫中文字幕| 中文字幕超碰CAO| 欧美同性恋 的搜索结果 - 91n| 鸥美中出| 韩日性爱av| 久热九九| 麻豆成人av| 超碰色老头| 欧美综合娱乐久久| 欧美另类色图片| 校园春色宗合网| 啊啊啊啊网站| 亚欧性爱ab| 欧美日韩国第一区| 青青青草原| 亚洲人体视频在线观看| 开心五月婷婷激情| 97视频900| 视频不卡中文字幕| 国产一区二区视频在线播放| 情色五月天久久久| 久9九综合在线| 二男一女成人A片| 久7色| 中出20p| 日韩无码三级影院| 69人妻人人揉人人躁人人精品| 欧美丝袜美女电影一二三四区| 无码不卡亚洲成?人片| 免费精品福利在线观看| 日本男人插女人的逼黄色| 狠狠91| 伊人婷婷五月天| 色女免费在线观看视频网址| 日韩在线欧美精品一区二区| 91狠| 男人的天堂VA| 亚州操逼网| 亚洲天堂美臀在线| 99老司机精品视频在线观看| 久久免费中文字幕在线观看| 青青青青操国内视频在线| 97欧美性爱| 亚洲国内精品成人不卡| 嫩草美女久久| 国产精品欧美激在线| A 天堂| 夜夜夜久久| 中文字幕乱码在线| 成人五月香网在线| 日韩啪啪视频| 美女尤物福利视频| 中文字幕一二三| 亚洲一区二区麻豆影院| 91丝袜| 欧亚综合一卡二卡中文字幕| 亚洲欧美黄| 97精品国产97久久久久久| 蜜臀99精品国产高清在线观看| 久久久国产三级黄色片| 久久精品导航| 日本 欧美 亚中文字幕| 香蕉人欧美综合| 天天日老熟妇| 亚洲影院成人| 国产丰满熟夫69mpp| 激情五月天插| 亚洲文学偷乱拍啪啪啪啪| 婷婷视频在线免费观看| 91视频女生| 久久综合五月天| 97香蕉网| 97超碰亚洲| 国产精品久久久久久片| 天天欧美| 国产a级精品| 亚洲色图欧美色图日韩色图| 一本色道久久综合熟妇| 99热国产| 台湾一区国产高清在线| www.男人天堂| 六月丁香啪啪啪| 精品视频在线观看精品| 亚洲精品美女操逼| 91黑人无码激情在线| 国产99热| 精品久久大胆人体| 久热超碰| 男女激烈网站最新| 五十路成人在线视频二区三区| av天堂影视中文在字幕在线中文| 青娱乐淫乱1314| 91国产丝袜美女| 国产成人亚洲精品自产在线 | 日韩三级一区 | 闷骚老熟女15P| 竹菊影视国产一区二区| 亚洲婷婷丁香在线| 国产99999久久精品| 色欧美天天| 97在线精品观看视频| 91天天综合在线| 九月AV| 五月丁香六月婷| 日本高清免费一本视频在线观看| 中日韩久久久免费看| 天天肏美女| 粉嫩av在线一区二区| 亚洲日韩电影| 久久久久深夜无码| 热久久九九热| 天天天天干| 约操熟妇| 亚洲高清无毛一区二区| 91制服丝袜| 亚洲综合射| 麻豆久久久久久久久丝袜| 国产高潮AA片免费看| 国产精品点击进入在线影院| 男人的午夜天堂| 99精品无码| 使劲用力艹少妇视频一区二区| 亚洲情色91| 91|九色|国产熟女| 97人妻免费中文字幕| 欧州一区二区三区四区| 久9九综合在线| 欧美九一精品久久久熟妇| 久久有碼| 久久伊人网视频一区二区三区 | 亚洲人妻爽爽爽| 亚洲 无码 有码 中文字幕| 久久做97| 日本女厕偷拍| 高凊专区人人操| 色婷婷丁香五月| www.久久久久| 六月丁香久久| 中文字幕 国产区| 成人福利视频网| 免费簧片在线观看| 日韩亚洲精品一区二区| 欧美日韩国产另类综合| 亚洲欧洲av影音| 精品人妻中文字幕高清| 亚洲天天综合| 国产福利合集| 夜草网站| 被窝影院午夜看片无码| 岛国黄片网站| 亚洲AV成人无码一二三久久| 在线亚洲 欧美 日本专区| 高清有码一区二区| 翔田千里无码一区| gogogo免费高清看中国国语| 正在播放国产精品一区| αⅴ天堂| 干婷婷综合网| 久久婷婷五月综合| 亚州伊人色综台| 综合久草| 另类图片亚洲加勒比另类图片亚洲加勒比另类图片亚洲加勒比 | 中文字幕在线日亚洲9| 伊人色综合网电影| 开心激情婷婷| 久草综合京东| 99国产精品免费| 麻豆传媒一区二区在线观看| 91天天美女| 天天综合网在线91| 三上悠亚在线毛片91| 亚洲**2021在线观看| 中文精品一区二去| 日韩av不卡在线观看| 五月丁香| 日韩懂色网| 精品白丝一区| 91美女网站| 黄色AAAAA欧美| 五月天色五月| 丰满少妇高潮无码| av橘色网站| 国产老太乱伦一区| 蜜桃视频成a人v在线| 大香蕉九九| 久久97资源 网| 亚州五月| 另类TS人妖一区二区三区 | 精品十八在线观看| 亚洲在线网站| 成视频在线观看免费看| 蜜桃精品一区二区三区ww| 97超碰免费人人性爱| 欧美性色欧美| 操操吧亚洲乱伦视频| **一级毛片国产| 女同性恋一区二区三区精品视频| 超碰在线1234区| 91精品人妻偷情| 亚洲乱熟女一区二区三区大香蕉| 国产女上位好爽在线| 视频黄站| 不卡中文字幕aⅴ在线| 国产热RE99久久6国产精品首| 97人人中文网| 伊色久人大在线| 温婉少妇玩3p| 综合激情97| 超碰97 线线 在现| 91成人在线免费视频| 97蜜桃综合| 青青草原香蕉日本Ap| 久久亚州精品成人Av无| 日韩一级二级| 久热精品在线| 殴美在线AⅤ| 九热大香蕉| 97超碰护士| 激情九月婷婷| 99热18这里只有精品| 精品久久久久久AV无码| 亚洲另类综合欧美| 久久97视频| 國產尤物AV尤物在線觀看 | 国产中文大片资源中文字幕 | 久久婷婷电影网| 久久天堂婷婷网| 欧美,日韩,中文,另类| 人人操人人摸人人看人人干| 日本淫色网| 丰满人妻-区二区三区| 免费啪啪啪网站18岁| 久久亚码| 性色av蜜臀av色欲aV| 综合 青草 伊久久 影院 综合| 亚洲天天更新| 一本道综合色图| 亚洲天堂另类| 啪啪91| 人人操人人摸超碰| 成人在线日韩| 麻豆成人AV| 婷婷五月天在线观看| 国产suv一区二区三区6| 超碰人人超在线观看| 天天天操天天天爱| 日本性爱网址| 蜜桃AV天堂| www九九热| 天天综合官网| 六九九九| 日本一级特级毛片视频| 熟妇亚洲一区二区三区| 中文字幕日韩专区精品系列| 亚州久久9| 99久久久er直播网址| 97人妻人人躁人人玩人人| 亚洲四虎熟女精品| 91高清欧美| 天美国产三级传媒| 亚洲 无码 偷拍| 欧美暴力猛交| 91精品无码人妻系列| 五月天精品| 97国产超湿| 人妻一区二区三区视频| 我中文字幕6区 | 99re视频这里只有精品| 91xingse| 岛国免费黄色网址| 好一吊区二区| 禁片 高清 在线观看视频网站| 国产无吗在线播放| 亚洲drav色图| 男人的天堂2019AV| 免费αV在线视频| 日韩欧美蜜桃精品久久中文字幕久久 | 亚洲超碰在线| 人妻性爱一区二区| 亚洲诱惑天堂| 6080yy午夜理论三级一区二区三区无码| 免费精品无码一级毛片牛牛影视| 欧美曰韩国产精品| 日亚韩精品视频二区三| 操碰97| 99re6国产精品99re| 久久久久久久人妻| 日韩三A大片在线观看| 91老熟女91老女人| 97视频在线观看播放与子乱对白在线……| 亚欧性爱无码| 欧美天天搞| 婷婷五月天无码| 五月综合久久| 在线观看亚洲专区| 色网色网色网色网色网色| 成人精品视频| 欧美综合97www| 国产精品熟女丝袜一区二区| 黄色免费网| 亚洲欧美洲综合| 亚洲情色一区二区三区| 激情五月综合网| 欧美成人AⅤ大片在线观看| 大香蕉99999| 国产精品一区二区后入| 国产怡红院| 91丨九色丨东北熟女| 岛国激情视频在线观看| 男人天堂欧美| 九九九九精品在线| 久久超碰98| 欧美一区二区情色| 亚洲综合色网| 影音先锋中文字幕日本好一区二区| 国产偷人伦激情在线观看| 久久精品六区| 偷拍色图| 男人天堂综合| 亚洲熟妇熟在线电影视频| 五月开心网| 爱做久久久久久| 国产不卡免费在线视频| 无码免费在线观看黄色片| 亚洲色阁| 欧美色图校园春色| 欧美手机在线综合| 天堂涩涩| 欧美大干日韩| 色男人色天堂东京热| 天天日天天舔东京热 | 草草草草视频| 日韩三级av片| 怡春院久久| 欧美日综合| 欧洲一区二区| 久久超碰天天| 91精品91久久久久77777| 天美麻豆黄色录像| 中文久久96| 91老熟女老女人国产老太| 99re8超碰| 青青草在线视频人人想人人上 | 91青青草| 碰碰97| 五月婷亚洲精品天堂| 2019天天干| 人妻丝袜美腿中文字幕| 97色网| 日韩国产精品人妻无码久久久| 久久久久久久精| 在线视频亚洲无码| 久久成年片色大黄全免费网站| 91国产操逼视频| 久久久精品91八戒| 一本大道不卡一二三区| 狠狠色狠狠色狠狠五月| 婷婷丁香五月天综合东京热| 91天堂色男人的天堂| 国产吞精a级片激情电影| 91|九色|国产熟女| 九九成人| 亚洲中文字幕有码视频一区二区三区| 91 国产丝袜在线放观看| 青青草黑寡妇男人天堂| 欧美视频第二页| 欧美韩日精品资源| 亚洲女优有码无码高清| 麻豆成人影音在线| 男女啪啪啪18禁网站| 日韩综合成人免费视频| 日美免费黄片| 五月综合久久| 97人人爱人人做人人乐| 品亲网欧美品亲网| 另类老少妇| 亚洲久久久久| 2019久久久久久久久福利| 无码自拍SM| 欧美三级一级| 大香蕉之青青草原| 麻豆熟妇乱妇熟色A片在线看| 亚洲97在线观看| 韩国一级婬片A片无码天美| 国产女性无套 免费观看| 亚洲性综合9| 色综合20p| 精品999一区二区| 99这里只有精品国产| 91黑人无码激情在线| 欧美在线官网| 天天草AV| 免费试看60秒| 久久久久久国产手机AV| 校园春色之综合网| 久久综合久色欧美综合狠狠 | 三级日本一区二区三区| 操逼逼福利视频| 欧美黑人猛交春色影视大全| 亚洲日韩少妇一道本视频| 人人操人人摸人人骑| 成人青青草原伊人| 正在播放国产精品一区| 国产精品直播在线观看直播| 婷婷精品| www.亚洲成人一区| 欧美麻豆成人同性GⅤ在线| 人人干黄色| 久久久久久久综合,国产| 九九色综合| 日夜干射色啊| 日韩猛交| 亚洲av无线观看| 97干色天堂| 亚洲高清综合网| 国产乱码精品一区二区三区四川| 污啪啪啪视频| 丁香7月婷婷| 国产女同视频在线播放| 激情文学网伊人| 久久噜噜噜精品国产亚洲综合| 一级人妻性爱视频| 狠狠综合网| 97欧美色| 国产精品婬乱一级毛片彝族| 鸥美精品一区二区久久婷婷| 免费国产视频| 开心五月激情网| 999熟女精品| 在线无码网站| 亚洲av热热色| 美女裸体无遮挡永久免费观看网站| 色综合九九| 精品少妇一区二区三区| 日韩在线观看字幕精品| 蜜桃视频一区二区三区| 色网站导航大全| 狠狠久久四虎| 国产精品96久久久久久| 色情五月综合婷婷| 精品二区三四区五电影 | 亚洲一二三四区在线免费看视频 | 日日日骚女人精品| 国产一区二区在线播放量| 蜜桃中文字日产乱幕4区| 在线亚洲欧美| 亚洲精品蜜桃久久久一区二区三区| 久久激情婷婷| 97中文超碰| 综合久久少妇中文字幕| 性欧美另类高清| 国产又黄又爽| 熟妇一区二区三区| 強姦亂倫a| 伦在线97| 最新日产中文在线麻豆| 破处bbq| 欧美一级A片在线看视频性色| 蜜臀一二三区| www狠狠| 好吊色综合| 综精品久久久aaaa| 日韩中文字幕视频| 国产精品亚洲日韩骚欢乐谷最新地址发布页huanieguty性屋娱乐妖精视频 | 精品视频一区二区| 亚洲人妻av| 日日爱99| 中文在线久久字幕| 色噜噜精品一区二区三| av日韩中文字幕| 伊人AAA| 男女日B国产| 午夜AV污污污| 伊人AAA| 99e久久国产精品| 久湿久久 | 精品国产乱码久久久久久日本公司| 久久99亚洲精品久久99果| 久9九综合在线| 午夜性| 欧美日韩性爱操大逼| 精品玖九九久| 超碰在线974| A 天堂在线观看视频| 蜜桃久久一区二区| aaa淫乱视频| 国产精品老师| av毛片aaaaa免费看| 97超碰中文| 欧美日韩丝袜| 99re公开精品免费视频| 殴美性天天| 99只有精品| 亚洲男人bt天堂| 亚洲无码免费看| 九九草| 9 9无尺码天堂网| 午夜精品一区二区三区三上悠亚| 久久久亚洲Av| 91老司机在线| 一区二区三区成人| 狠狠干狠狠干| 色婷婷视频| 婷婷丁香激情| 婷婷探花久久精品一区| 久久超碰、| 九九热最新| 午夜福利精品| 精品免费视频国产一区| 天天搞欧美| 中文字幕免费观看| 久久久A∨| 亚洲一区二区三区AV无码| 亚洲一区日韩精品中文字幕| 超碰精品人妻狠狠干| 国内精品久久国产,www香蕉久久五月丁香,亚洲欧美日韩精品永久在线,日本精品一 | 久久久久亚洲精品| 日韩久久三区| 欧美精品1区2区3区| 7777奇米影视久久| 屁股久久久久久| 97超碰影音| 亚洲欧美在线综合| 亚洲一区二区三区麻豆传媒| 九九热精品在线| JULIA一区二区三区在线播放| 午夜乱轮操逼视频免费看| 国产老太乱伦一区| 久久黄人人爽视频| 精品熟妇视频一区二区| 中文字幕在线2| 久草婷婷| 欧美中文字幕一区| 久久久久精| 99热只有| 激情五月婷婷综合| 久久性爱城| 国产成人www免费人成看片| 国产东北女人在线视频| 八戒午夜福利理论片| 男女一进一出视频久久| 欧美美女视频| 99re视频在线播放青草| AV中文字幕三四五| 亚洲色图8| 加勒比无码毛片| 日本ZZ高免费A级视频| 在线色资源| 久久禁| 超碰色大香蕉| 草久在线| 97网色| 91亚洲欧洲| 久久天堂| 日本性感人妻91| 中文字幕高清精品一区| 国产综合色精品在线观看| 看全色黄大色大片免费视频| 亚洲欧美情色| 亚洲欧美另类激情小说| 久久精品熟女亚洲AV麻豆软件| 免费成人自拍视频在线| 国产精品白领在线观看| 高清无码久操视频| 中文字幕五月婷婷免费| 欧美日产国产在线成人第一区| 中文字幕一区二区三区高清| 日本成人电影资源网| 欧亚在线视频| 狠狠操夜夜操蜜桃视频三区|