首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏QQ音乐技术团队的专栏

    Q音直播Flutter裁剪方案(iOS)

    1、背景 Flutter作为一款优秀的跨平台方案,我们Q音团队一致保持高度关注,团队内部也一直在努力促进Flutter的应用框架建设。 本文将一步步剖析Flutter的体积问题,带领大家探寻每一个可能的体积优化点,结合实际项目和引擎源码,最终给出详细的体积优化实现方案。欢迎大家相互交流Flutter相关技术。 因此,要解决体积问题,需要对aar和framework的体积进行优化。 这部分能优化的空间很小,主要是通过裁剪引擎不需要的功能,减少体积。编译引擎时可以选择性编译skia和boringssl,收益大概只有几百K。 除此之外可以对Flutter的符号进行分离。 5、参考文章 字节跳动- 【如何缩减接近 50% 的 Flutter 体积】:https://juejin.im/post/5de8a32c51882512664affa4 QQ音乐招聘Android

    2.5K20发布于 2021-02-05
  • 来自专栏贾志刚-OpenCV学堂

    OpenCV实战应用必备技能 | 模块裁剪

    对上图说明如下: 水平横着的都是基础模块,这个是OpenCV模块裁剪的时候必须选上的。竖直的模块都是OpenCV中在CMake生成阶段可配置选择的模块,如果需要你就加上,如果不需要就去掉。 可以看到,这里我们只编译很少部分的模块,总计21个模块,可以满足大部分应用场景使用,真正的80/20规则。这个对我们来说是个好消息,下面我就一起来验证下,我们这样编译出来的OpenCV是否可以用? 验证裁剪编译版本OpenCV功能 03 重新配置好开发环境(包含目录 + 库目录 + 连接器 + 环境变量, 然后重启VS2015/VS2019),运行以下测试代码: #include <opencv2 OpenCV重新编译与模块裁剪技能GET,从此以后千万别在我面前说OpenCV模块太多,太大,这个都不是事,关键是你会用吗?

    2.1K11发布于 2019-09-19
  • 来自专栏前端皮小蛋

    5分钟搞定图片裁剪,上传

    大多数功能都是由 Cropper.js封装好的,调整并制作了: 上传图片 对图片的裁剪以及调整(旋转、缩放)、 实时预览 将裁剪后的数据保存为blob发送至后端。 ? ? Q3:如何将图片读取显示和使用Cropper.js添加裁剪控件? 就是用来设置我们需要实时预览的地方,但是设置完成之后要给上述的两个div添加一下样式,才可以正常显示 .previewBox,.previewBoxRound{ box-shadow: 0 0 5px Q5:如何获取裁剪数据并发送至后端? 解决图片过大的问题: 给添加固定宽度样式 #cropImg{ height: 450px; width: 450px; box-shadow: 0 0 5px

    5.6K12发布于 2020-03-02
  • 来自专栏全栈程序员必看

    cropper.js 实现HTML5 裁剪图片并上传(裁剪上传头像。)「建议收藏」

    **** 我的需求功能:在手机端实现上传头像,带裁剪框。 cropper.js 通过canvas实现图片裁剪,最后在通过canvas获取裁剪区域的图片base64串。 如 0.1 就是图片的10% crop(裁剪框)相关 aspectRatio 裁剪框比例 默认NaN 例如:: 1 / 1,//裁剪框比例 1:1 modal:类型:Boolean,默认值true center: 默认true 是否显示裁剪框 中间的+ restore : 类型:Boolean,默认值true 是否调整窗口大小后恢复裁剪区域。 <div class="row" id="actions" style="padding: 0;margin: 0;width: 100%;position: fixed;bottom: <em>5</em>px 3.HTML<em>5</em> 本地<em>裁剪</em>图片并上传至服务器(老梗) 发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/140638.html原文链接:https://javaforall.cn

    9.1K60编辑于 2022-09-01
  • 来自专栏产品摄影

    如何获得白色背景产品5--手动裁剪产品

    使用Photoshop的裁剪工具这种方法有其有趣的优点和同样严重的缺点。手动剪切路径创建 - 优点和缺点+ 非常准确手动工作,保证了高精度和主观能动性。 手动裁剪具有精度和易纠错的优势,但需要占用时间和资源。如果您希望降低成本并为白色背景图像保留此方法,那么参考亚洲剪贴工作室可能是一个好主意。 左对齐居中对齐右对齐无阴影有阴影删除更多添加描述手动裁剪产品 手工剪裁的产品可以称为传统的获取白色背景的方式。 使用Photoshop的裁剪工具这种方法有其有趣的优点和同样严重的缺点。 手动剪切路径创建 - 优点和缺点 + 非常准确 手动工作,保证了高精度和主观能动性。 手动裁剪具有精度和易纠错的优势,但需要占用时间和资源。 如果您希望降低成本并为白色背景图像保留此方法,那么参考亚洲剪贴工作室可能是一个好主意。

    1.3K30编辑于 2023-04-17
  • 来自专栏全栈程序员必看

    在触屏设备上面利用html5裁剪图片

    前言 如今触屏设备越来越流行,并且大多数已经支持html5了。针对此。对触屏设备开发图片裁剪功能, 让其能够直接处理图片。减轻服务端压力。 技术点 浏览器必须支持html5,包含fileReader。 非html5无法完毕这个过程。 执行结果 这仅仅是一个demo,也是最初的雏形,当然不会太好看了,可是基本实现功能就可以。 部分代码 <! meta name="Author" content="flashlizi - www.riaidea.com"> <meta name="Description" content="HTML<em>5</em> ,上划放大<em>裁剪</em>框,下滑缩小<em>裁剪</em>框。 //计算<em>裁剪</em>框的位置。

    1.8K20编辑于 2022-07-10
  • 来自专栏Python中文社区

    PyQt5 GUI应用程序工具入门(1)

    众所周知,PyQt5是一款优秀的GUI工具集,可用于python界面的快速开发。 本文采用Python3.6+PyCharm社区版进行PyQt5的开发。 笔者为PyQt5开发建立了3个文件模板,2个py文件模板(窗口文件模板和主程序文件模板)和1个qrc文件模板(资源文件)。 设置如下: 窗口文件模板 名称:QtWidget File 扩展名:py 内容: # -*- coding: utf-8 -*-from PyQt5.QtWidgets import *class Ui_Form __init__() 主程序文件模板 名称:PyQt5Main 扩展名:py 内容: # -*- coding: utf-8 -*-from PyQt5 import QtWidgetsfrom Dlg 笔者为方便PyQt5的开发,定义了Widgets表示:from PyQt5.QtWidgets import *,以方便模块导入。读者可自行定义其他模板,以方便开发。 本文作者 ?

    2.6K80发布于 2018-02-01
  • 来自专栏Python中文社区

    PyQt5 GUI应用程序工具入门(2)

    下面我们从一个简单的登录对话框来了解PyQt5的开发过程。 PyQt5支持两种界面开发方式:一种是在QtDesigner中设计界面,各种控件直接通过拖动添加;一另种是直接撰写界面代码,通过代码控制界面上的控件。 设置完后将窗口调到适当大小(图5)。 ? 图5 最终窗口 最后,将本窗口以ui文件保存在项目文件夹,选择此文件,单击鼠标右键,选择“QT Tool”→“PyUIC”,即可生成py文件。 代码如下: # -*- coding: utf-8 -*- from PyQt5.QtWidgets import * class Ui_Form(QWidget): def __init_ ,PyQt5的各种控件一般均放在PyQt5.QtWidgets模块中,本行代码导入了所有的控件,也可只导入本程序用到的控件,即写作“from PyQt5.QtWidgets import QWidget

    1.8K90发布于 2018-02-01
  • 鸿蒙5开发宝藏案例分享---优化应用体积大小问题

    这些技巧明明能大幅提升应用体验,却很少被讨论。赶紧来跟大家分享一波,附代码详解和实操建议,让你的应用秒瘦身~✨* * *### **1. **适用场景**:含原生代码(如OpenCV、音视频处理)的应用。* * *### **2. **优化**:用 **HSP动态共享** 替代HAR,实现资源复用:```// 在HSP的module.json5中声明共享资源{ "module": { "type": "shared", **资源混淆**:```// build-profile.json5中启用资源混淆"buildTasks": ["resource_obfuscation"]```3. 也欢迎分享你的优化案例,一起卷出更轻盈的鸿蒙应用(文中代码已实测,HarmonyOS 3.0+ 均适用,快去升级你的项目吧!)

    33810编辑于 2025-06-18
  • 来自专栏IMWeb前端团队

    图片上传前预处理,等比缩放、裁剪 (html5 + canvas)

    本文作者:IMWeb capricorncd 原文出处:IMWeb社区 未经同意,禁止转载 Image pre processing for upload (html5 + canvas) 源码地址 后期版本应该会加入手动设置裁剪位置及缩放比例。 处理完成后,将返回处理完成的数据,及原图片文件的大小、宽度、高度和Base64数据。 =0 target: 'imgWrapper', // 是否裁剪图片。 (可选) 为true时,必须同时设置width、height值大于0 裁剪规则: 图片缩放到一定比列(即一边等于设置值,另一边超出设置值部分裁去),居中裁剪 width: 640 裁剪或缩放宽度为 code code msg 1 配置参数未配置或有误 2 配置图片选择按钮id 3 浏览器不支持addEventListener() 4 浏览器不支持FileReader接口,需升级或更换高版本的浏览器 5

    4.1K60发布于 2018-01-08
  • 来自专栏IMWeb前端团队

    图片上传前预处理,等比缩放、裁剪 (html5 + canvas)

    源码地址:https://github.com/capricorncd/image-process-tools 解决图片上传前缩放到一定比例自动居中裁剪、等比缩放等。 后期版本应该会加入手动设置裁剪位置及缩放比例。 处理完成后,将返回处理完成的数据,及原图片文件的大小、宽度、高度和Base64数据。 =0 target: 'imgWrapper', // 是否裁剪图片。 时,必须同时设置width、height值大于0 裁剪规则: 图片缩放到一定比列(即一边等于设置值,另一边超出设置值部分裁去),居中裁剪 width: 640 裁剪或缩放宽度为640px(可选) 不配置 code code msg 1 配置参数未配置或有误 2 配置图片选择按钮id 3 浏览器不支持addEventListener() 4 浏览器不支持FileReader接口,需升级或更换高版本的浏览器 5

    2.6K20发布于 2019-12-03
  • 来自专栏Golang语言社区

    从web图片裁剪出发:了解H5中的Blob

    刚开始做前端的时候,有个功能卡住我了,就是裁剪并上传头像。当时两个方案摆在我面前,一个是flash,我不会。另一个是通过iframe上传图片,然后再上传坐标由后端裁剪,而我最终的选择是后者。 有人会疑惑,为什么不用H5的Canvas和FormData,第一要考虑ie8的兼容性,第二那时候眼界没到,这种新东西光是听听都怕。    但做的多了却一直没有静下心来研究,浏览器怎么使用H5的方式裁剪并把文件发送出去,回过头看都是知其然不知其所以然。 文件操作一直是早期浏览器的痛点,全封闭式,不给JS操作的空间,而随着H5一系列新接口的推出,这个壁垒被打破。 我们从应用场景出发,回到文章开头的问题,图片的裁剪和上传。

    2.5K70发布于 2018-03-27
  • 来自专栏Linux驱动

    5.移植uboot-设置默认环境变量,裁剪,并分区

    uboot支持网卡传输文件后,但是每次启机时,环境变量都要变为默认值,需要重新设置ip,MAC地址才行,由于没有配置mtdparts命令,启动内核也不成功 所以本章主要学习: 1)修改环境变量默认值 2)裁剪 bootargs=noinitrd root=/dev/mtdblock3 init=/linuxrc console=ttySAC0 //root:指定文件系统位置 //init:指定内核启动后执行的第一个应用程序 console:指定使用哪个终端,比如串口0,使用ttySAC0 其它宏也是这样.比如我们熟悉的有: "bootcmd=", 用来启动内核的命令 "bootdelay=",uboot启动的倒计时,默认值为5S 因为此时的内核位置还不确定放在哪(后面配置mtdparts命令后,会在4.6小节修改) 由于nand中要划分bootload空间、环境变量空间、内核空间、系统空间 而uboot就有400多k,所以我们需要裁剪 uboot,裁剪后再来划分内存分区 3.裁剪uboot uboot很多文件都是基于Makefile,里面通过判断宏来加载文件.而宏大部分都定义在include/configs/smdk2440.h 3.1

    4.5K10发布于 2019-05-24
  • 来自专栏Python中文社区

    PyQt5 GUI应用程序工具入门(3)—信号槽

    然后在图3所示的信号槽配置连接对话框中单击“编辑”即进入如图5所示的自定义信号槽对话框。单击+号即可增加一个槽函数。然后在生成之后,在代码中定义相应的函数。 图5 自定义信号槽对话框 手写定义槽函数 手写定义槽函数非常简单,语法为: 发送者控件.信号函数.connect(槽函数) 例(取消键的信号槽函数): self.pushButton_2.clicked.connect 我们将上一节的对话框,扩展如下: # -*- coding: utf-8 -*- from PyQt5.QtWidgets import QWidget,QFormLayout,QLabel,QLineEdit

    2.1K50发布于 2018-03-26
  • 来自专栏minlearnprogramming

    ​为tinycolinux制作应用

    本文关键字:tinycolinux自定义应用,tinycolinx内存运行,mysql重建/tmp/mysql.sock 在前面《发布tinycolinux》中,我们重点描述了将tinycolinux 组建复合应用 ----- 官方提供了很多镜像,这些都很正交。 且还有构建源码,可往往我们还需要lnmp这样的组合,我们可以按《发布tinycolinux》part2中的硬盘安装应用方法来组合一次性安装(当然,这样它就不正交了但对一台vm container通常情况下仅需承载安装一次 首先,tce-load -w nginx,php5,sqlite3,发现会下载大量tcz到/mnt/cobd0/tce/options中:bsddb.tcz,bzip2-lib.tcz,curl.tcz tcz,php5.tcz,readline.tcz,sqlite3.tcz,这些都是我们要组合进一个大应用的基础。

    76320发布于 2020-09-29
  • 来自专栏iSharkFly

    Hibernate 5 的模块(modulesartifacts)

    Hibernate 的功能被拆分成一系列的模块/(modules/artifacts),其目的是为了对依赖进行独立(模块化)。

    51730发布于 2019-09-16
  • 来自专栏iSharkFly

    Hibernate 5 的模块(modulesartifacts)

    Hibernate 的功能被拆分成一系列的模块/(modules/artifacts),其目的是为了对依赖进行独立(模块化)。

    61420发布于 2019-09-16
  • Day5 r使用

    26310编辑于 2024-04-19
  • 来自专栏小白抓包软件分享

    5G隐藏WiFi握手新手抓测试

    本文使用小白抓软件演示5G隐藏WiFi的抓方法。百度网盘下载:https://pan.baidu.com/s/1Q9oWrHF_nKgwOtKyVcb7IQ? 网卡会自动识别,如果没识别到或又新接入了网卡,可以点击“加载网卡”或按F5刷新一下页面。本次教程演示的是抓5G隐藏WiFi,由于软件默认未启用5G扫描,需在设置中启用,并将扫描时间改长一些。 这里以我的华为路由器进行测试,提前设置了一个5G隐藏WiFi,并使用手机连接上这个WiFi。注意目标WiFi需要有设备连接使用才能抓。 若检测捕获到了客户端连接过程中的握手信息,则抓完成(如果WiFi是隐藏的,还会显示出WiFi名称)。程序内置了几个简单的小字典,可做简单的弱密分析。点击旁边的钥匙按钮可以对抓到的握手进行跑。 由于我设置的密码很简单,只花了5秒就在第一个常用字典里找到了秘钥(12345678)。

    75321编辑于 2025-09-20
  • 来自专栏NetCore 从壹开始

    5-5 各个服务应用启动

    /data/挂载文件 2、配置Jenkins启动 3、安装 nginx 安装基础的依赖 yum -y install pcre-devel yum -y install openssl openssl-devel 5、修改域名解析映射 添加解析这块,如果是泛域名或者通用域名解析就很简单的, 但是我这边毕竟是免费的,动动手,十分钟就能解决了的。 等待十分钟,就表示迁移完成了。

    28920编辑于 2023-01-09
领券