久久亚洲成a人片熟女精品色一区二区三区|国产精品视频第一精品视频|av天堂热无码手机版|亚洲?v无码久久无遮挡|国产精品偷伦视频免费观看国产|麻豆国产自产精品丰满熟妇|av无码av不卡一区二区|久久亚洲精品中文字

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
返回資訊列表
很黄很色的视频在线观看| 久久超碰98| 美女啪欧美一区| 天天看高清麻豆| 370p日韩欧美亚洲精品| 台湾佬中文娱乐自偷自拍| 97久久久久久久精| 超碰人人干天天射| 18禁的网站在线| 伊人久久亚洲色欲综合网站 | 啊a一区在线| 97久操| 免费国产电影一区二区| 久久久久久久久久久六六| 天美精品原创av片国产| 大黄片做爱的大的| 美女91在线观看| 97精彩视频网站| 日本特黄f c2| 青娱乐 青青青操 日逼| 欧美性爱伊人| 国产第12页| 精品一区二区三区蜜桃臀赵总 | 天天影视综合网欧美精品| 亚洲欧美校园| 日韩无码视频黄色| 奶水 人妻 哺乳 在线| www.99色| 偷拍伦理视频| 黄骗免费网站| 久久久免费一级黄片| 亚洲综合性网址| 天天看夜夜看日日干| 久久亚洲天天做| 大香蕉92| 久热这里| 啊啊啊啊好疼| 人妻日日夜夜精品| 久久激情亚洲精品无码?V| 亚洲 欧美 91| 国产精品麻豆视频网站| 亚洲成人av色网| 久久国产热视频97电影| 99青草| 91操操操操| 丰满欧美少妇| 极品色电影院| 亚洲五区熟女| 一区二区三区黄色片a| 操b网站亚洲无码| 92午夜免费福利视频| 91丝袜在线播放| 亚洲欧美精品福利在线| 老司机午夜精品视频| 天天综合网亚洲综合网| www亚洲免费| 欧美男人亚洲天堂| 亚洲第一二区另类图| 狠狠91| 欧美 中文字幕 一区| 试看60秒 爽| 精品乱码在线观看| 亚洲日本激情| 欧美激情精品久久久久久| 亚洲男人的天堂亚洲| 亚欧性爱ab| 国产美女91视频| 自拍视频一区在线观看| 精品一级| 青青草色情网站视频| 日韩精品高清资源在线| 国产操逼视频在线观看| 人人操超碰在线| 日本美女性生活久久久久久久| 国产又黄又粗的视频| 草莓精品视频在线免费观看| 啊操爽品善一区二区三区| 青娱乐久久艹| 蜜乳成人AV| 伊人网免费视频| 日韩中文字幕熟妇人妻| 婷婷亚洲五月***久久| 日本精品中文字幕视频| 91嫩草欧美| 中文字幕在线高清男人的天堂| 91精品人妻电影| 欧美在线啊啊啊| 精品国产丝袜一区二区三区乱码| 精品国产乱码久久久久久蜜臀| 久久九九热| 精品一区二区成人动漫| 国产在线激情视频| 手机看片91人妻| 一级毛片电影免费看| 欧美中文字幕男人天堂久久精品| 亚洲αv一区二区三区| 97九色| av国产无码| 涩涩久久精品| 国内精品久久国产,www香蕉久久五月丁香,亚洲欧美日韩精品永久在线,日本精品一 | 动漫爆乳3D奶水一区在线观看 | 亚洲高清视频在线观看| 午夜福利久久久噜久噜久久综合| 婷婷五月天成人| 一级片在线观看高清无码| 97久久超碰| 人人操人人肉久久精品| 97超碰伊人| 一级黄碟在线看| 狠狠狠一区二区三区| 免费黄色片子| 亚洲欧美日韩夜夜| 97人人超| 日本色婷婷| 国模精品娜娜一二三区 | 久久后入制服| 成人性生活高清视频在线播放| 一级免费精品| 影音资源男人日韩| 亚春色色| 国产精品丝袜在线| 男人的天堂com| 国产精品不卡少妇白| 夜夜久久久| 欧美极品少妇| 怡红院成人视频| 久久久久久久久9| 国产精品97超碰| 日韩精品国模| 国产精品白丝AV| 日本免费二区三区| 97超碰9| 人人操人人摸超碰| 九九九久久久| 日韩三A大片在线观看| 久久久久久久久久va| 欧美精品成人一区二区在线观看 | 欧美精品久久| 欧美天天性| 蜜臀在线视频| 强奸乱伦麻豆| 激情六月天| 嗯啊不要在线| 久久久久无码一妻区| 亚洲AV在线资源| 久久中文字幕人妻熟av女蜜柚| 青青草一本道福利视频| 五十路一区无码| 富女玩鸭子一级毛片| 性色av大全| 免费亚洲黄色视频在线观看| 伊人激情| 蜜臀久久在线视频| 久久久久久久97| 婷婷在线视频在线观看| 亚洲黄色网址视频| 大香蕉天天看妹子| 夜夜爽夜夜摸夜夜操免费视频| 精品日日人妻| 成人性爱全视频观看| 丁香五月大香蕉| 超碰性爱97| 97伦乱| 78超碰| 国产日韩在线播放av| 欧美人妻一区| 韩国女主播青草在线| 日日嗷| 超碰在线人人射| 岛国黄色短视频| 亚洲午夜免费狠狠干| 操学生天天| 欧美色老汉| 国产精品懂色tv影视免费观看| 欧美午夜一区二区三区| 色九月综合| 目产99999久久999| 久久久久久免费电影| 国产97综合| 国产强奸无码乱伦| 五月婷婷激情综合| rivers-china.com| 成人a大片在线观看| 大香蕉九九| 在线视频一区二区传媒| 91丨人妻丨国产丨丝袜| 在线看免费无码AV天堂的| 九月丁香婷婷| 超碰97亚洲区| 91看黄片| 爱欲AV| 天躁夜夜躁2021| 国产精品爽爽v| 亚洲丝袜二区| 久久青娱乐| 人人看欧美性爱| 夜夜操91744565| 0755午夜福利视频| 免费在线黄片视频| 九九精品美女高溯喷水| 欧美综合亚洲综合| 亚洲高潮少妇| 97视频免费播放| 在线日韩视频| 国产精品伦理| 婷婷六月色| 另类老少妇| 欧美aaaaaaa| 啊啊啊在线观看免费视频| 亚洲熟女av中文字幕| 六月激情婷婷| 国产99999| 久久精品色欧美aⅴ一区二区| 青青草国产盗摄一二三区| 国产91福利小视频在线观看| 91粉芽高清在线一区二区| 日曰骚久久精品| 岛园激情| 日本媚薬中文字幕在线| 婷婷香蕉欧美在线一区二区三区| 大香蕉综合网| 99这里只有精品| 最新AV在线| 深夜啪啪啪视频免费| 青青草好吊色| 久久久久久久久久久久久久久性生活视频| 伊人麻豆传媒| 翘臀vidoes| 日韩强奸av| 91麻豆天美国产| 四虎午夜影院| 中文无线日韩一区| 一品道视频一区二区三区| 久久黄人人爽视频| 日本天堂网| 在线视频亚洲无码| AV色五月天| 强免费黄色网址| 极品色综合| 久操九九九九| 中文字幕性感少妇av| 久久三区四区| 国产精品乱人伊人网| 日韩人妻一区二区| 啊啊啊啊啊舒服| 日韩不卡av一二三| 丁香九月婷婷| 欧亚日韩三区| 九九热在线视频| 三上悠亚在线毛片91| 一区二区 韩日AV| 91性情| AV天堂电影网| 午夜寂寞欧美| 国产极品粉嫩馒头一线天av| 骚货 中文字幕 av| 久久国产精品一级二级三级| 亚州免费啪啪视频| 精品一级毛片在线观看| 久久精品人妻一区二区三区| 色999偷自拍拍| 国产精品视频精品一二| 天天躁日日躁AAAAXXXX国产| 亚洲高潮影院| a人欧美综合天堂麻豆| 黑人精品成人一区二区三区| 亚洲另类春色| 日韩欧美天堂| 亚洲欧美国产中文字幕| 99热这里只有精品8| 欧美激情视频在线一区| 韩日欧亚a级| 久久久久久久久久久久黄色 | 国产99精品一区二区三区免费| 加勒比色99999| 美女裸体麻豆天美蜜桃91| 精品国产肉丝袜在线拍国语| 国产欧美日本亚洲精品| 玖玖久久久| 欧美大战久久久伊人| 成功精品影院| 综合久久欧美| 国产日韩色综合| 国产高清午夜成人在线观看| 久久久夜夜夜| 国产精品日日摸天天碰| 骚日日av| 老鸭窝日丰县女人| 麻豆国产第一| 青青草在线视频欧美| 亚洲最大91网| 性爱综合网| 日韩三级天堂在线观看| 一区二区三区视频国产免费| ..日韩av毛片精品久久久| 久九九九| 99久久99久久免费精品蜜臀| 日韩干B| 中文字幕久久亚州无码| 欧美另类自拍 | 国产一区二区欧美日本| 精品国产一区二区三区香蕉欧美| 高清有码一区二区| 大色综合| 女人天堂av在线播放| 精品人妻久久久久一区二区三区| 国产精品69久久久久久久| 97丝袜亚洲在线播放| 九九夜精品九九在线| 夫妻四区五区六区| 亚洲人在线| 一区中文字幕二区日韩| 欧美综合97www| 免费黄色视频网址| 婷婷五月天网| 亚洲人妻一区二区三区| 精品无码一区二区| 国产农村妇女精品1区二区| 炮色五月| 色婷婷综合久久久久中文一区二区 | 97精品国产| 操国产高清| 操东北女人| 人妻无一区二区三区| J?P?NESEHD熟女熟妇伦| AAAA欧美日韩| 欧美人与动性人交a| 午夜男女爽爽大片免费观看| 国内精品久久人妻性色av| 亚洲无码国产探花在线观看| 激情无码日韩| 一级免费啪啪片| 国产精品一二三免费网站| 在线黄页看毛片| 人人妻人人操人人乐| 综合干干干av久久久综合网| 夜夜福利| 久久精品噜噜噜成人看免欧美大片| 99热欧美| 日韩熟女乱伦中出| 国产麻豆一级精品视频| 人妻天天夜夜爽一区二区| 91色五月俺来也| 乱子伦一区二区三区国产精品| 97网址97| 熟妇色99| 国产理论视频在线播放| 五月天婷婷色| 亚洲熟久久| 嗯嗯不要视频| 乱论91| 色色色综合网| 91天天c| 色狠狠一区二区三区香蕉| 78超碰| 人人操人人操人人人操| 久久激情网| 人妻插插人妻人| 999熟女精品| 成·人免费午夜在线观看| 日本不卡高清视频| 青青草自拍视频在线播放| 好舒服视频| 国产精品不卡少妇白| 日本韩国国产精品一区| 综合色99| 亚洲第一狼人丝袜美女另类 | 在线 亚洲 网爆 自拍| 九九性视频| 亚洲情色一区综合| 夜夜欧美| 亚洲免费成人精品电影| 欧美白嫩女HD| 日韩有码专区| 无码少妇精品一区二区60岁老人| 久久日本熟女精品一区| 97爱综合| 五月综合视频| 另类成人首页一区| 免费一级精品啪啪视频| 91欧美高清| 新怡红院| 日本中文字幕在线视频| 日日噜噜夜夜久久亚洲一区二区 | 青青草原综合久久大伊人精品| 青青草一区二区三区四| 精品国产乱码久久久久久口爆网站| 免费看污网站| 天天看天天日天天操| 99热网站| 97久久久久| 国模精品一区二区三区苹果色戒| 黄色一区三区| 日韩性爱电影一区| 无码人妻系列少妇| a天堂视频| 97视频www| 最新三级网址| 加勒比av中文| 亚洲激情综合另类男同| 97日视频| 国产日韩欧美中文在线播放| 中文字幕-区二区三区四区视频中国| 91老熟妇| 国产又粗又又黄又猛| 韩日欧亚a级| 五月丁香综合啪啪| 欧美78P| 欧美视频在线第3页| 热热色中文无码| 校园春色综合| 午夜美女福利视频| 超碰在线974| 亚洲中文字幕精品一区| 国产自产91区13区| 日韩人妻一区二区| A啊啊在线观看| 国产中文大片资源中文字幕| 97精品在线| 操逼逼福利视频| 99热线麻豆 | 久久精品女同亚洲女同13| 大香蕉一线视频| 正宗无毛一线天嫩逼| 操人91| 国产精品成人午夜福利| 亚州操操穴网| 日韩精品一区二区日韩| 久草电影网| 骚货人妻偷情自拍在线视频| 亚洲**2021在线观看| 操死我了嗯嗯嗯| 全免费a敌肛交毛片免费| 国产2.3.4区| 午夜免费视频1000| 亚洲成aⅴ人片不卡无码| B049AV在线播放| 9999免费精彩视频| 国产精品精品系列在线观看| 97精品97| 中文字幕在线日亚州9| 综合少妇网| 久久理论字幕视频| 国产精品探花视频| 亚洲欧美不卡线| 亚洲美女 晚间男人天堂| 日韩欧美字幕亚洲一区二区| 屁股久久久久久久| 欧美玖玖爱免费玖玖| 色婷婷久久| 中字幕人妻一区二区三区| 亚洲欧美综合网站| 精产国品一区二三产品| 噜噜在线| 熟女人妻一区二区三区| 国产偷拍网站| 97 国产精品| 欧美色图亚州激情| 99精品网| 手机在线人成免费视频| 亚洲国产美女久久久久| 无码人妻一区二区三区四区老鸭窝| 免费人人搞97| 校园春色制服丝袜中文字亚洲 | 日本 情色 1区| 九九热超碰97亚洲最新香蕉| 99色| 伊人久久大香大香线蕉中文| 天天色黄色影院天天操| 欧美高清第一页| 超碰欧美97资源| 中国黑人三级片网站上区| AV 少妇 人妻 偷拍| 懂色天天爱天天日天天射天天澡| 天天操夜夜操| 九九九九9999| 超碰在线日韩一区| 龙兴卡官方查询| 国产精品网站www| 夜色五月天| 亚洲精品三| 日韩 欧美 视频 在线 一区| 日韩一区二区精彩视频| 久久国产成人精品国产成人亚洲| 亚洲综合网91| 九九热只有精品| 欧美成人国产精品| 国产精品视频在线播放| 精品免费国产二区三区| 亚洲宗合电影| 9热9热综合网| 伊人久久大香蕉线AV五月天| 亚洲天堂另类小说男人| 国产视频一区二区在线观看| 国产欧美伊人| 大香蕉伊利av| GVH-003 母子姦 青木玲-麻豆视频,麻豆视传媒短视频网站入口,麻豆视传媒官网直 | 丝袜 亚洲 偷拍| 99热精品在线| 丁香婷婷久久| 无码9区| 久久久com| 丁香六月激情综合| 67914亚洲精品| 久久极品一区二区| 久久精品视-一级做a爰片性色毛片16美国-中国女与老外在线精品 | 屁股久久久久久| 97超碰中文在线| 亚洲日韩国产精品| 久久久久久久久久va| 久久天天艹| 中文字幕91页| 91麻豆va国产精品| 天天综合精品| 中文一区二区婷婷视频| 欧美日韩少妇色情| 国产性爱欧美性爱在线| 综合熟妇一区二区三区| av天堂电影网| 高清在线不卡一区二区 视频| av爱爱爱| 伦理片秋霞免费影院| 两性综合网| 九九Av| 福利偷拍视频-中文字幕2019国语完整视频大全-S91AV | 乱伦色图网址是多少| 免费看黄视频亚洲网站| 黄色性爱网网| 六六久久日韩不卡| 超碰综合色| 午夜九九| 国产又粗又大硬免费色网视频| 亚洲**2021在线观看| 国产51色综合久久免费| 亚洲色诱惑| 77777亚洲蜜臀精品久久综合蜜臀| 一区 欧美 日韩 麻豆| 97网址97| 婷婷婷婷婷婷久久久久| 亚洲精品天堂久久A∨51成人漫| av凤凰久久久| 九九九综合精品| 亚洲日本天堂| 国产强奸无码乱伦| 大色综合网| 人妻精品综合中文字幕在线| 9 9无尺码天堂网| 天堂性色| A片 AV一级在线播放观看免费 | 操逼视频免费日韩无码| 97日本超碰综合| 亚欧美综合网。| 嗯嗯啊啊好爽| 可以在线观看AV的网站| 97超碰jingpin| 茄子社区国产精品| 极品欧美一区二区三区| 99精品在线| 一本久久精品中文字| 欧美综合91| 欧美视频一区二区在线| 打av高清| 97超碰欧美中文字幕| japan日本高清乱xxxx| 精品国产乱码久久久久久影片| 99国内熟女露脸视频| 91综合站| 亚洲色啪| 熟女久久| 51一区二区三区| 国产专区路线| 天天综合网网欲色| 婷婷丁香五月综合| 亚洲熟女一区二区| 久久免费精品视频免一| 干B| 超碰97人妻免费在线| 亚洲五月丁香花狠狠干一区二区三区| 欧美综合狠| 亚洲欧美自拍偷拍| 精品无码一二三四区| 精品久久久久综合无码| av在线资源| 婷婷精品国产欧美精品亚洲人人爽| 日韩有码 一区二区三区| 资源在线观一 二| 人妻激情视频| 五月丁香色色网| 99热国产精品| av天堂5| 久久机热| 欧美特大黄一级片片免费| 色网综合网| 三级精品三级在线观看| 欧美 亚洲 大香| 视频国产成人精品日本亚洲18| 极品色社| 放黄片放3级黄片没穿衣服| 99热这里| 精品无码久久久久久久杏吧| 啊a一区在线| 放黄片放3级黄片没穿衣服| 少妇 综合| 极品销魂美女一区二区 | 丁香色色网| 男人天堂新在线| 欧美一级三级| 中英熟女操女| 九九久久久九九| 久久精品熟妇丰满人妻99| 夜夜一区二区| 一区二区三区美女超清| 啊啊啊啊啊在线视频| 啪啪啪东京| 无码男人天堂| 黄片不用下载在线观看| 9Ⅰ超碰| 九九热精品在线| 在线播放成人高清免费视频| 欧美一区二区成人一卡| 人人干人人搞人人摸| 99色热| 超碰日本97美女人妻人人玩人人爱| 99无码狠狠久久| 男人久久精品| 亚洲欧美日韩夜夜| 无码不卡亚洲成?人片| 精品97精品97| 3p国产色噜噜一区| 少妇一区二区三区| 伊人伊人LD| 欧美性爱中文字幕无线码| 四虎精品亚洲| 玖玖综合色| 九九探花视频在线观看| 日韩熟女精一区二区三区不卡| 蜜桃精品一区二区三区ww| 国产精品久久久久久无码红治院| 蜜臀AV一区二区三区| 三级片大波波| 久久精品国产免费观看99| 亚洲国产97| 啊啊啊好舒服视频在线观看| AA丁香综合激情| 看免费的黄片| 亚洲黄色| 天综合网欧美| 人妻精品综合中文字幕在线 | 午夜毛片亚洲精品片国产久久久| 天天做天天爱天天爽AV| 亚洲av强奸乱伦| 欧美A片中文字幕| 蜜臀AV一区二区三区| 99xav| 日日夜夜干| 久草网站免费在线观看| 久久久久久网址| 精品少妇一区二区| 久久深夜无码| 95精品在线| 国产成人无码久久精品| 涩涩涩综合| 日本不卡二区| 97综合激情| 久久精品91| 日韩情色AV| 欧洲免费一区二| 日本久久精品| 最新日韩黄片| 久久精品店| 少妇啪啪自拍| 亚洲一区二区三区春色| 五月情色天| 天天综合,91入口| 无码男人天堂| 日韩在线97| 亚洲 欧美 中文 日韩超碰| 精品少妇一区二区三区在线视频| 日韩av不卡在线看| 一本色道综合久久欧美| 少妇综合网| 国产精品久久久久久久久久久久久久吹 | 岛国在线免费视频| 夜夜操美女| 探花视频免费观看国产专区| 无码精品啪啪啪一区二区三区三州| 中文字幕十五区| 女人的天堂大香蕉网| 日本日日色视频| 67194无码不卡| 精品人人| 成年男人的天堂| 蜜色网色哟哟| 67194无码不卡| 99天堂网| 人人做人人妻人人夜视频| 国产精品无码久久久久2028| 看大黄色大片原件| 噜噜噜在线视频| 国产成年精品高清在线观看91| 午夜a成v人电影| 亚洲国产成人精品999| 黄色香蕉视频网站一区| 免费看黄片现成| 在线播放免费av福利片| 97人人夜夜精品视频| 操逼www.| 探花一区在线| 婷婷伊人| 91网站18在线观看| 一区二区首页| 啊啊啊啊啊,啊啊啊啊好舒服,操我舒服啊啊啊| 日本黄色裸日本黄色裸体 | 色婷婷五月天| 国产一区二区三区中文字幕| 日本免费不卡二区| 60秒免费小视频| 成人在线视频一区| 九一国产精品| 极品色综合| 国产精品点击进入在线影院高清| 国产传媒午夜理伦精品| a天堂视频| 色婷婷狠狠| 欧洲免费一区二| 国产精品电影推荐| 四虎免费在线播放| 91情色| 搡老熟女免费视频| 美国aaaaa一级黄片| 色婷网| 日日天天久久啊啊aaa| 综合欧美日韩在线| 欧美丝袜中文字幕07在线| 国产白丝精品在线观看| 婷婷去俺也去六月色| 精品亚洲国产成人av网站| 97在线精品| 久久九七| 97色欧洲| 操逼日批| 五月天激情婷婷| 操B久久| 国产9熟妇视频网站| 亚洲本色精品一区二区久久| 国产操逼逼网| 久久五月天婷婷| 亚州再线| 亚洲无码一区成人免费午夜| 日本人妻中文字幕| 激情婷婷| 97超碰总站| 中文字幕三四区| 国产激情在线| 双插在线| 亚洲自拍小说| 精品免费视频国产一区| 成人精品一区二区91毛片不卡 | 欧美大香蕉同搞| 人妻在线中出视频| 伊人亚洲综合| 亚洲伊人久久综合97| 人人干人人操人人..com| 不卡码视频| 欧美激情在线观看视频| 天天操天天射天天日| 1956日韩精品| 欧美性第1页| 日韩亚洲精品一区二区| www.99热| 91插B网站| 欧美黄色大片在线观看| 67194无码不卡| 草久在线| 睡产熟女乱伦| 九九九九九九视频| 无码不卡亚洲成?人片| 欧美婷婷五月天| 欧美在线视频播放| 91性高朝久久久久久久久| 99热66| 日日骚av| 日韩欧美亚洲一区二区三区影院| 欧美性爱一区二区三区四区| 一级性爱视频免费观看| 一区二区三区精品黑丝白丝酒店对鸡 | 黄页视频网站野外| 五月天久久婷婷亚洲 | 蜜臀在线网站| 强奸乱伦大香蕉网| 亚州日韩97| 一级人妻性爱视频| 国产男女无套97| 精品无码欧美三级| 夜夜操老骚逼视频网站| 精品免费视频国产一区| 久热婷婷| 色香综合| 999日韩中文精品观看视频。| 亚洲a色| 六月丁香五月婷婷| 丰满少妇精品一区二区| 日本国产高清色www视频在线| 国产精品久久久久久久久久久久久久久久| 国产呦精品系列在线观看| 色婷婷久久| 99夜夜操| 综精品久久久aaaa| 伊人网青青| 日本999精品| 不卡一区二区日本视频 | 一区二区三区精品黑丝白丝酒店对鸡 | 久草在线| 亚洲综合网图| 欧美日韩色综合网| 学生妹天天看| 欧美精品日韩一区二区| 啊啊啊啊好疼| 欧美日韩情色一区二区| 精品国产av一区二区三区四区入口| 色哟哟-国产专区| 午夜精品久久久久久久久久蜜桃| 亚州色阁| 1024人妻| 色欲Av人妻精品一区二| 天天天天做夜夜夜夜做| 人看人人摸人人操| 日本色日夜干| 97精品第3页| 日韩黄片视频试看| 久久9免费视频| 99精品视频在线观看| 少妇久久| 久久精品国产久精国产| 九九亚洲视频| 9国产超碰| 91九九九小逼| 日本 欧美 国产一区| 日本506070| 中文字幕、久久精品国产2020、久久综合久久自在自线精品自、亚洲 | 五月婷婷hd| 亚洲第一成人影院色播| 中文字幕一二三| 久久久九九九九| 婷婷五月天色色| 欧美人与动性人交a| 久久偷拍人| 91干熟女| 日本人妻伦在线中文字幕| 午夜精品久久久久久久| 欧美综合骚| 无码高清国产AV| 色色九区| 一本一首道人妻少妇免费久久| 色情五月综合婷婷| 99在线免费公开视频| 亚洲九九视频在线观看| 91女网站| 操逼日韩无码| 欧美一级美片在线观看免费| 殴美色网| 精品国产99| 综合婷婷| 免费啪啪一级视频| 天堂v无码免费视频| 91欧美少妇| 人妻少妇三级| 在线观看十八禁| 性做久久久久久免费观看软件| 97超碰磁| 91狠狠综| 伦理第一页| 欧美性Fer办公室秘书| 伊人久久国产免费观看视频| 1024人妻| 国产探花日韩援交| 91天天| 超碰碰97资源站| 国产AV线| 国产精品不卡一区二区三区| av在线浏览| 无码99| 国产又色又爽又舒服的三级视频| 欧美日日操| 国产黄色视频久久| 欧美色97| 亚洲欧美变态| 久久华人网| 啊啊啊好疼| 素颜老阿姨乱情色| 一级黄碟在线观看| 美女在线H91| 中文字幕日韩综合| 国产a级午夜毛片| 中国女人内射6XXXXX| 日韩激情无码影院| 亚洲精品久久久久毛片A片拉屎 | 秋霞视频一区二区| 被体育老师抱着c到高潮| A级片日韩欧美国产欧美视频精选观看| 老女人综合| 天天干人人乐| 91久| 国语少妇精| 午夜精品久久久久久久第一页按摩| 啊啊啊操死我了| 精品久操| 精人妻无码一区二区三区伊人直播 | 5252色欧美在线男人的天堂| 老色鬼成人精品视频下载大在线观看| 91激情网| 久久噜| 欧美,亚洲,日韩,v,天堂,手机在线观看 | 强奸乱伦AV网站| 久草国产在线视频| 天天搞在线综合网| 欧美东京热精品A∨| 欧美人妻一区| 日欧操屄视频| 九九热在线精品视频| 九九精品热| 激激五月| 大香蕉在线免| 欧美午夜视频| 另类图片五月天| 日日骚一区二区三区| 熟女精品日韩一区二区三区| 精品人妻一区二区三区四区| 97超碰欧美手机| 人人操人人摸人人骑| 亚洲图片欧美色图| 国产美女销魂在线观看不卡| 密乳AV免费观看| 精品毛片久久久精品毛片| 丁香六月啪| 天天看片天天爽| 歐美性天天| 欧美性少妇| 97综合网| 夜夜操青青草| 偷窥自拍亚洲天堂网爆| 综合久久中文字幕综合日韩精品| 98色网| 中文字幕精品探花视频| 天天综合香 ld视频| 日韩二级| 内射中国少妇高清视频免费视频 | 好涩综合| 综合国产影视三级| 一区在线国产播放| 国产怡红院| 日日嗨AV一区二区夜夜| 中文日韩欧美熟| 老妇女91| 97人妻免费中文字幕| 日韩精品99999| 老司机久久| 蜜臀久久99精品久久久久久| 岛国片在线播放| 午夜寂寞欧美| 77777亚洲蜜臀精品久久综合蜜臀| 97色色,97综合| 麻豆一区二区三区在线看 | 激情图片亚洲色图| 大香交| 翔田千里爆乳巨臀无码| 乱老女人一区二区视频| 欧美精品在线观看| 五十路成人在线视频二区三区| 日韩欧美性吧婷婷乱伦大香蕉| 黄色视频60分钟| 丁香五月婷婷色| 久久久专区| 国产日韩美女小穴视频网站不卡| AV一起草在线| 伊人成人中文字幕久久网| 97超碰中文| 婷婷色色五月天福利| 亚洲综合九九| 天天综合网~91综合网| 97视频网站| 五月天社区| 秋霞福利网| 日韩视频精品在线观看| 欧日韩不卡视.频| 天天性射网| 亚洲无码一二三区| 午夜天堂精品久久| 97超碰日韩| 狠狠色婷婷777| 色亚州人久干视频在线观看免费版| 国产高清午夜成人在线观看| 久草视频分类在线| 丰满丝袜少妇AV| 一区二区三区黄片免费观看| 乱老熟女一区二区三区| 性饥渴少妇av无码毛片| 亚洲日本男人天堂网| 久久久久亚洲| 91女网站| 99久久亚洲精品无码毛片潘甜甜| 97 亚洲 日韩 欧美 在线| 久久久亚洲| 久9久| 欧美亚洲丝袜人妻制服中文99| 粉嫩av在线一区二区| 国产乱子伦一区二区三区免看| 国产又猛又粗又爽又黄| 熟妇视频一区二区三区在线观看| 97在线看| 亚洲天堂 视频你懂的| 在线小说视频一区| 亚洲少妇中文字幕网址| 91女优在线观看| 无码精品一区二区三区潘金莲| 最新av在线| 97色97干| 搡老女人老妇女老妇老熟女怎么读| 亚洲91在线| 天天肏美女| 久久久99免费| 亚洲资源网| 欧美视频中文字幕区| 妇女一区二区三区| 91N五十路| A 在线网址| 一本色道久久综合亚洲二区三区| 狠狠穞A片一區二區三區| 久夜视频| 欧美日韩婷婷中文| 懂色AV蜜臀无码精品APP | 97日视频| 91成人在线免费视频| 清纯唯美综合| 大香蕉免| 福利伊人玖玖国产| 国产精品不卡少妇白| 亚洲色欲一区二区三区| 国产欧美岛国精品一区| 久久久啊啊啊| 麻豆九九九| 大香蕉一线视频| 91丝袜美女视频| 夜夜骑天天燥| 99婷婷| 在线观看高清AV| 在线播放欧洲免费av| 啊啊啊好湿国产一二| 成年人性爱日韩| 神马久久午夜| 丝袜美腿射精91| 人妻加勒比东京热| 精品国产丝袜一区二区三区乱码| 久操国产在线| 曰本91情色| 亚洲少妇色| 岛国AB视频| 久草加勒比一区在线| 亚洲精品一区二区免费在线观看| 婷婷爱五月| 萌白酱自拍视频| 91处女在线观看| 91在线丝袜| 天天综合网91入口| 九九久久99| 久久东京伊人一本到鬼色| 天天色欧美| 亚洲亚洲亚洲天堂天堂 | 日韩无码成人电影| 韩国一级婬片A片无码天美| 999精品女人| 国模91| 色五月第四色| 殴美,日韩国产伦精品| 色狠狠 - 百度| 丁香婷婷五月| 中国和日本人色哪个不下载能放| 超碰97最新人妻| 无码欧美有限公司| AV中文在线| 福利色色| 久久久亚洲高清不打码| 久久久久国产精品久久久| 精品人妻一区二区三区蜜桃视频| 岛国人妻少妇av在线观看| AV天天在线观看| 99久久综合网| 强奸乱伦Av网| 亚洲伊人a线观看视频| 伊人天天久久动态图| 99操逼| 夜夜嗨一区| 亚洲国产中文字幕| 亚洲中文字幕日产无码久久| 91青视频| 欧美日韩高潮喷水91| 久久ww| 这里都是精品在线观看| 在线观看AV片| 九九干| 久久一区二区高清免费| 婷婷在线视频在线观看| 国产精品com| 国产精品久久久 | 2017天天操| 成人性交免费视频| 密臀在线一区尤物| 亚洲交性| 亚州性色| 91网站18| 91天天综合| 放黄片放3级黄片没穿衣服| 三久久久四久久久久| 夜夜爽夜夜| 欧美视频一| www.亚洲成人一区| 亚洲图片色图欧美另类| 国产黄色影片在线观看| 秋霞网—男女啪啪亚洲免费体验区 | 鸥美极品| 久久精品无码不卡| 欧美色老汉| 亚洲美女精品九九视频| 久久久久久久| 男人的天堂久久久| 精品一区二区三区免费古装毛片香港三级日本三级人妇 | 亚洲有薄码区久久在线一区| 国产97/欧美| 亚洲色图A| 91丝袜在线观看| 100啪啪视频大全| 国产精品亚洲一级av第二区| 日韩欧美tv一区二区在线观看| 免费簧片在线观看| 曰韩av中文字幕专区| 人妻久久久久久| 男人下部插入女人下部| 91久久18禁| 欧美丝袜美女电影一二三四区| 蜜桃传媒视频第一区入口在线看| 粉嫩AV一区二区夜夜| 羞涩视频| 思思热久久成人| 91丨九色丨43老版熟女| 蜜臀久久99精品久久久久久久久| 中文字幕乱碼在线| 啊啊啊啊啊啊啊啊要喷了| 久久久免费懂色| 91丝袜激情在线| 狠狠操狠狠燥| 天堂成人网| 欧美一级美片在线观看免费| 欧美日韩一区二区三区四区蜜桃| 女人爽到高潮潮喷18禁网站| 东京热激情视频一二三区| 日韩 欧美 校园一区| 天天热精品| 免费a v| 国产亚洲日本精品在线| 欧美亚洲玖玖玖|