精华内容
下载资源
问答
  • 还好有一个开朗又尽责的JJ负责指导我,说要分配我一些小任务,边做边学。...于是乎我开始翻一些VC入门级的书,照着书的指示一步一步建立了project和dialog类,接下来就是怎么加图片了。照我的想法,这是对话

            还好有一个开朗又尽责的JJ负责指导我,说要分配我一些小任务,边做边学。

            接到的第一个任务是编写一个对话框,要求背景和按钮都用图片显示,点击按钮可以调用Windows系统中的某一个应用程序。

            这任务还不简单,半天搞定!于是乎我开始翻一些VC入门级的书,照着书上的指示一步一步建立了project和dialog类,接下来就是怎么加图片了。照我的想法,这是在对话框的属性里面选一下背景图片就OK的事情。看看书,还真有这种办法,直接在Recourse面板里面import一个bmp图片,然后添加picture控件,设置一下位图样式就可以了。

            谁知道这样一路操作下来,发现图片会把按钮覆盖了,根本显示不出来。:(

            条条大路通罗马,肯定还有别的办法。上网看看有没有做这种对话框的方法,还真找到了不少。可是,除了我刚才用的方法,其他全都是和代码有关,看着那一堆堆的类、函数……我晕了@_@

            还好以前学过C语言,还认识些关键字,可是这些代码为什么要这么写,那个变量为什么要定义到头文件里面去,怎么还要添什么成员变量,什么类消息……

           看来,要想看懂这些代码的意义,我得再去好好看看C++。

           得,今天是不可能搞定这个程序了,我研究研究C++理论基础吧。

    展开全文
  • 下面说一下怎么制作,这里需要一个小工具,大家「一页河山」 公众号对话框发送 「口号头像」进行使用。 我们打开后,输入一个横幅标语,控制3-5个文字不宜过长,比如正在加班或者正在减肥等等。 然后下方这里...

    Hi 大家好,我是页子。今天给大家分享一个,可以制作这样口号头像的方法,看你头像就知道你在做什么,先来看一下效果。
    在这里插入图片描述
    就是这样的效果,可以在自己的微信头像的下方,加上一个横幅标语很实用,安卓和iOS都可以使用。

    下面说一下怎么制作,这里需要一个小工具,大家在「一页河山」 公众号对话框发送 「口号头像」进行使用。
    在这里插入图片描述
    我们打开后,输入一个横幅标语,控制在3-5个文字不宜过长,比如正在加班或者正在减肥等等。

    然后下方这里上传一张需要制作的图片,上传的时候,可以对图片进行裁剪一下。或者双指捏合缩放图片,将图片调整到一个合适的位置即可,然后点击下方的确定。
    在这里插入图片描述

    最后点击下面一键生成,会自动帮我们生成好,还是蛮简单的,我们长按生成好的图片,可以保存到手机。

    现在大家可以去设置自己的口号头像了,感觉还是蛮不错的,感兴趣的小伙伴可以去试一下。

    好了,今天的内容就是这些,感兴趣的朋友们可以在「一页河山」 公众号对话框发送 「口号头像」进行使用。
    在这里插入图片描述

    展开全文
  • 怎么在电脑同时给多个小视频添加GIF动态的图片水印呢?今天小编给大家分享一款查询软件——快递批量查询高手, 下面一起来试试。 所需工具 视频剪辑高手 多个视频素材 实例步骤 打开视频剪辑高手,选择“批量剪辑...

    怎么在电脑上同时给多个小视频添加GIF动态的图片水印呢?今天小编给大家分享一款查询软件——快递批量查询高手, 下面一起来试试。
    所需工具
    视频剪辑高手
    多个视频素材
    实例步骤
    打开视频剪辑高手,选择“批量剪辑视频”功能,并点“添加视频”选项
    在这里插入图片描述
    弹出对话框,将收集好的视频导入
    在这里插入图片描述
    多个视频,一行导入一个
    在这里插入图片描述
    在“新视频选项”中勾选“添加图片水印”,导入一张GIF动图
    在这里插入图片描述
    在“智能编辑图片位置”的对话框中,选择好水印的位置,记得保存设置
    在这里插入图片描述
    单击开始剪辑,进度条滚动,软件正在剪辑视频
    在这里插入图片描述
    滚动完成,打开文件夹即可一一浏览到
    在这里插入图片描述
    双击一个新视频查看,该视频画面上有动图水印
    在这里插入图片描述
    播放条往后滑,可看到动图水印变化了,说明此图为动图没错了
    在这里插入图片描述
    最后打开原视频对比一下,原视频中并无动图水印
    在这里插入图片描述

    展开全文
  • Unity 项目知识积累

    2020-05-26 01:36:15
    项目知识积累 UGUI 自动布局Auto LayOut ...Mask组件会产生一个DrawCall,Mask中的图片无法与外界的图片进行合批 模态对话框 是指这个对话框弹出的时候,鼠标不能单击这个对话框之外的区域,.

          工作以来笔记就没在博客记了,基本上就写在印象笔记上面,主要是国外上CSDN也不方便,最近找到了一个不错的回国VPN,准备把一些可能工作中常用的笔记搬到CSDN上,整理了下上个项目的笔记,这还是国内做的一个项目,现在准备总结工作一年来的收获,在学点新的技术,准备主攻shader和Dots技术。

    项目知识积累

    UGUI

    自动布局Auto LayOut

    图片自适应文字

    Content Size Fitter
    加 Horizontal Layout Group

    刘海屏手机怎么处理UI

    1.所有UI界面统一右移动处理

    2.自行对刘海的尺寸固定一个保守估计值来规避UI上的遮挡

    3.监听手机翻转事件及时调整设置

    Mask组件

    Mask组件会产生一个DrawCall,在Mask中的图片无法与外界的图片进行合批

    模态对话框

    是指这个对话框弹出的时候,鼠标不能单击这个对话框之外的区域,这种对话框往往是用户进行了某种操作后才出现的。非模态对话框通常用于显示用户需要经常访问的控件和数据,并且在使用这个对话框的过程中需要访问其它窗体的情况。例如:word的查找对话框,可以直接点击任何地方。

    Unity

    组件Component思想

    在传统的结构设计中一般会使用“派生”来描述对象之间的关系。子类通过派生父类,来获得父类的功能。在设计游戏对象时,会根据游戏本身的需要而为游戏对象添加各种功能支持,比如渲染,碰撞,刚体,粒子系统等等。这些通用功能为了能够为各种派生类提供服务,都必须实现到基类中。这样就导致了游戏对象基类变得非常庞大臃肿,即难使用,又难维护。 ”基于组件“的对象模型就是把所有需要提供给游戏对象的基础功能都独立成单独的”组件模块“(Component),一个具体的游戏对象可以将它需要的功能模块组合到一起使用。所有”功能“不再是父类中的接口,而变成子对象实例,为游戏对象提供服务。这样既保证了功能代码的可重用性,又增加了整个对象体系的模块化和灵活度

    协程原理IEnumerator

    功能:控制代码在特定的时机执行;分部执行,遇到条件会挂起,满足条件继续执行

    原理:就是一个迭代器IEnumerator接口有两个方法Current和MoveNext();迭代器方法运行到yield return语句时,会返回一个表达式并保留当前在代码中的位置。当下次调用迭代器函数时执行从该位置重新启动; Unity在每帧做的工作就是:调用协程(迭代器)MoveNext()方法,如果返回true,就从当前位置继续往下执行。
    就是在update下一帧执行多个coroutine里的东西 在单线程里模拟出多线程的效果

    预制体Prefab

     .prefab文件在Unity引擎中,扮演着配置文件的作用,用它将多个组件关联在了一起,组成了一个整体,它默认是一个二进制文件;所有的预置实例链接到原始预置,基本上是它的克隆。不管你的项目存在多少实例,当你对预置进行任何更改,你将看到这些更改将应用于所有实例。

    脚本生命周期

    Awake()--OnEnable()--Start()--FixedUpdate()--Update()--LateUpdate()--OnBecameVisible()--OnGUI()--OnBecameInvisible()--OnDisable()--OnDestroy()--OnApplicationQuit()

    动态加载资源

    Resouces

    只能加载Resources目录中的资源

    AssetBundle

    只能加载AB资源,当前设备允许访问的路径都可以

    WWW

    可以加载任意处资源,包括项目外资源(如远程服务器)

    AssetDatabase

    只能加载Assets目录下的资源,但只能用于Editor

    UnityWebRequest

    WWW类似,它的升级版

    资源加载了要记得卸载,可以节省内存。单一职责原则,资源加载器只负责加载资源,具体业务逻辑不要放进来。资源加载要传路径进去,做到加载器可以复用。图片加载都比较大,最好不要一次性加载,做到加载一张,上一张不用就卸载。卸载最好用Resources.UnloadUnusedAssets();可以把不用的资源卸载

    MonoBehaviour

    继承自MonoBehavoour的类是不可以使用关键字new实例化的

    写先脚本,新class时,先确认自己是需要一个挂载到物体上的组件还是普通的类,如果是自己管理的类和组件没关系,千万不要继承自MonoBehaviour

    Unity不熟悉的API

    CustomEditor(typeof())增加脚本的说明,告诉unity这个组件具有自定义编辑器功能。ExecuteInEditMode可以在编辑模式下就能执行脚本。
    [initializeOnLoad] ,[initializeOnLoadMethod]:允许在Unity加载时初始化编辑器类,而不需要用户进行操作。

    AttributeUsage类的作用就是帮助我们控制定制特性的使用。其实AttributeUsage类就是描述了一个定制特性如何被使用。
    ValidOn:通过这个属性,我们能够定义定制特性应该在何种程序实体前放置。一个属性可以被放置的所有程序实体在AttributeTargets enumerator中列出。通过OR操作我们可以把若干个AttributeTargets值组合起来。
    AllowMultiple:这个属性标记了我们的定制特性能否被重复放置在同一个程序实体前多次。
    Inherited:我们可以使用这个属性来控制定制特性的继承规则。它标记了我们的特性能否被继承。

     Directory类文件操作类:Directory.GetFiles() 获取下一级文件

    HashSet<T>在System.Collections.Generic命名空间中,这个集合基于散列值,插入元素的操作非常快,不需要像List<T>类那样重排集合

    Stopwatch()秒表计时器,用来记录程序运行的时间

    [DisallowMultipleComponent]用于MonoBehaviour或其子类,不能重复添加这个类的组件,重复添加会弹出对话框。

    AudioImporter音频导入器:音频导入器允许您从编辑器脚本修改AudioClip导入设置,让你从编辑器脚本修改音频剪辑导入设置。注意:这是一个编辑器类。要使用它,您必须将脚本放在项目文件夹中的Assets / Editor中。编辑器类位于UnityEditor命名空间中,因此对于C#脚本,您需要添加“使用UnityEditor;” 在脚本的开头

    Gizmos类

    用于场景中给出一个可视化的调试或者辅助设置。

    所有的Gizmos绘制都必须在脚本的OnDrawGizmos或OnDrawGizmosSelected函数中完成。 OnDrawGizmos在每一帧都被调用。所有在OnDrawGizmos内部渲染的Gizmos都是可见的。 OnDrawGizmosSelected尽在脚本所附加的物体被选中时调用。

    材质 materials

    现在游戏常用的材质分PBR(Standard)和不受光材质(unlit),不受光的材质性能更高

    Lua热更新

    Lua语法

    全局变量

    lua里的所有的字符串,如果不是关键字或者运算符,就都是变量。这些变量中,凡是没有local关键字修饰的,就是全局变量。每个LuaState对象,当它加载过Lua代码以后,它里面定义的全局变量,在这个对象生命期内是一直存在的。如果两次调用这个LuaState的某方法,第一次将某全局变量进行了修改,那么第二次,这个全局变量会在第一次修改的基础上继续修改。

    Lua高级用法

    闭包

    词法定界:当一个函数内嵌套另一个函数的时候,内函数可以访问外部函数的局部变量,这种特征叫做词法定界。

    upvalue:内嵌函数可以访问外部函数已经创建的局部变量,而这些局部变量则称为该内嵌函数的外部局部变量(即upvalue)

    闭包是由函数和与其相关的引用环境组合而成的实体,闭包=函数+引用环境。具体代码示例见:https://www.cnblogs.com/msxh/p/8283865.html

    closure(闭合函数)

    若将一个函数写在另一个函数之内,那么这个位于内部的函数便可以访问外部函数中的局部变量,我们把这个函数称为闭包函数,其函数体内的局部变量被称为“非局部变量“和不同变量不同的是该变量被函数体内匿名函数访问并操作,在函数返回后,其值仍然被保留并可用于下一次计算。而且lua每次给新的闭包变量赋值时,都会让不同的闭包变量拥有非独立的”非局部变量“。具体示例见:https://www.cnblogs.com/stephen-liu74/archive/2012/03/21/2410300.html

    关于热更

    更新Lua其实也是更新资源。 Lua被看作一个资源包,Lua代码都是运行时才编译的,不运行的时候就如同一张图片、一段音频一样,都是文件资源;所以更新逻辑只需要更新脚本,不需要再编译,因而Lua能轻松实现“热更新”

    ToLua热更框架

    ToLua是通过方法名绑定的方式来实现这个映射的,首先构造一个Lua虚拟机,在虚拟机启动后对所需的方法进行绑定,在虚拟机运行时可以在Lua中调用特定方法,虚拟机变相地实现了一个解释器的功能,在Lua调用特定方法和对象时,虚拟机会在已绑定的方法中找到对应的C#方法和对象进行操作,并且ToLua已经自动实现了一些绑定的方法 。

    注意事项

    最好不要导出委托,消耗很大

    编程语言

    oop编程

    继承

    继承的方法允许在不改动原程序的基础上对其进行扩充,这样使得原功能得以保存,而新功能也得以扩展。这有利于减少重复编码,提高软件的开发效率

    封装

    能够把一个实体的信息、功能、响应都装入一个单独的对象中的特性

    多态

    同一操作作用于不同的对象,可以有不同的解释,产生不同的执行结果。在运行时,可以通过指向基类的指针,来调用实现派生类中的方法

    抽象

    抽象(Abstraction)是简化复杂的现实问题的途径,它可以为具体问题找到最恰当的类定义,并且可以在最恰当的继承级别解释问题

    Lock

    lock 关键字可以用来确保代码块完成运行,而不会被其他线程中断。这是通过在代码块运行期间为给定对象获取互斥锁来实现的

    定义类推荐用私有的只读静态对象,因为如果在lock代码段中改变obj的值,其它线程就畅通无阻了,因为互斥锁的对象变了,object.ReferenceEquals必然返回false

    Volatile

    volatile 关键字指示一个字段可以由多个同时执行的线程修改。声明为 volatile 的字段不受编译器优化(假定由单个线程访问)的限制。这样可以确保该字段在任何时间呈现的都是最新的值。

    通常用于由多个线程访问但不使用 lock 语句对访问进行序列化的字段。有关在多线程方案中使用 volatile 的示例,请参见https://docs.microsoft.com/zh-cn/previous-versions/visualstudio/visual-studio-2008/7a2f3ay4(v=vs.90)

    Volatile关键字可应用于引用类型,指针类型,类型,已知为引用类型的泛型类型参数

    Checked和Unchecked关键字

    用来限定检查或者不检查数学运算溢出的,如果使用了checked发生数学运算溢出时会抛出OverflowException;如果使用了unchecked则不会检查溢出,算错了也不会报错。

    成员变量、字段、与属性

    属性与成员变量类似,它们都提供数据存储,但属性的功能远比成员变量强大。属性由特殊方法(Get   和   Set   访问器)访问。Get   和   Set   访问器允许在设置或检索属性之后验证属性值、执行其他代码或执行其他任务

    成员变量也可以用readonly修饰表示只读的,字段一般在类的内部使用,按照类的设计原则字段都是private的,只能在类的内部使用。属性相当于给字段加了一个保护套。另外字段值可以用作ref、out参数,而属性不能。

    面向对象的编程方法是要抽象,封装,在类中定义的变量是正对类本身而言,我们把它叫做域,它可以为public,private等。属性是针对外部看到的类的特性,是类展示给外部使用者的特性。域可以为public但这样把域声明为public将不利于类的封装,因为外部使用者可以对类进行直接修改。所以我们就可以用到属性,我们只是公开它们的属性,至于如何对其进行赋值(set)如何进行取值(get)都已经进行了封装,对于类外部是不可见的。对于类外部使用者来说只能够使用它,不能控制它。所以在声明的时候可以想清楚要的类的成员还是类的展示给外界的特性。

    游戏性能

    UI

    通过SpritePacker打包图集减少 Batches

    模型

    合批渲染(要求对象的材质是共享的)

    Dynamic Batching 动态批处理

    动态批次是运动的物件在unity中也可以进行批次渲染,动态批次不需要手动设置,是unity自动进行的,但是这里有诸多陷阱和约束,开发者需要遵守一定的限制条件才能享受动态批次的好处。(一定要在同一个光照层中)不能合批的原因  https://www.jianshu.com/p/43efe4d35ccd

    static batching 静态批处理

    场景中的多个物件如果是不移动的(包括位置、缩放、旋转等),并且共享同一材质,比如地形、建筑、花盆等,那么可以选择采用静态批次。静态批次只需要在Inspector勾选static选项即可。静态批次需要注意的是,unity会将进行批次的多个对象合并成一个大的对象,也会导致内存损耗,有时候要避免太多对象静态批次造成的内存过高。

    脚本规范

    Lua脚本中变量的定义,尽量用局部变量,对全局的污染越小越好

    字符串拼接最好用String.Format()程序易读也不用考虑语序问题

    不用的变量手动置空,有利于GC回收垃圾操作

    在写变量前考虑是否会被外界调用,如果不会就设为私有的

    在定义类型Enum时要根据实际类型定义,需要不确定的类型时可以直接设置defult为初始的0号为类型,代码更加规范

    注意在构造函数时要考虑访问级别,是不是允许外界拿到数据或者访问数据,要记得加相应的权限。

    单例Instance也最好在Dispose()方法中置为空,链表Clear()掉

    计算机原理

    内存碎片

    内存碎片通常是由于采用归固定大小的内存分区,当一个进程不能完全使用分给它的固定内存区域时就产生了内部碎片,通常内部碎片难以完全避免。

    外部碎片是由于某些未分配的连续内存区域太小,以至于不能满足任意进程的内存分配请求,从而不能被进程利用的内存区域。

     现在普遍采用的段页式内存分配方式就是将进程的内存区域分为不同的段,然后将每一段由多个固定大小的页组成。通过页表机制,使段内的页可以不必连续处于同一内存区域,从而减少了外部碎片,然而同一页内仍然可能存在少量的内部碎片,只是一页的内存空间本就较小,从而使可能存在的内部碎片也较少。(图见https://blog.csdn.net/tong5956/article/details/74937178)

    Framework

    类,接口

    可以用一个抽象类来实现接口,设置一个handler来持有各个对象,在哪里使用就在那里实例化,用handler来调用,可以在抽象类中做一些公共操作

    接口类似于抽象基类,不能直接实例化接口;接口中的方法都是抽象方法,实现接口的任何非抽象类型都必须实现接口的所有成员。不能包含常量、字段、运算符、实例构造函数、析构函数或类型、不能包含静态成员,接口成员是自动公开的,且不能包含任何访问修饰符。接口自身可从多个接口继承,类和结构可继承多个接口,但接口不能继承类

    确保一个类只负责一种功能,具体的实现都交给上层来做,一个方法也最好只实现一个功能,方法体也不要过长,不好调试和定位错误。

    热更新时默认lua是C#的上层代码,具体实现在lua中写,最好不要C#调用lua的脚本代码的耦合性会很高

    结构与类

    结构:值类型,在栈中分配地址,不能被继承,不可以有默认构造函数,可以添加构造函数,但是必须带参数,创建对象可以不用new,可以包含字段,方法,可以实现结构。Unity中Color是结构实现的,所以为结构分配内存时速度非常快,在结构超出了作用域被删除时速度也很快。

    类:引用类型,在堆中分配地址,可以被继承,可以有默认构造函数,创建对象必须使用new,类中可以给字段赋值,可以包含字段,方法,可以实现接口。

    UML类图与类的关系

    虚线箭头指向依赖;实线箭头指向关联;虚线三角指向接口;实线三角指向父类;空心菱形能分离而独立存在,是聚合;实心菱形精密关联不可分,是组合

    数据结构和算法

    双向链表LinkedList

    表中的每个节点都包含了对前一个和后一个元素的引用

    当元素的数量不是固定的,且存在大量列表的头尾添加的动作时使用

    常用数据结构及分析见:https://www.cnblogs.com/murongxiaopifu/p/4161648.html

    业务需求实现

    跑马灯

    实现文字从右到左滚动播放

    在框架中的导出C#接口的设置脚本中注册进unity的组件类,然后在lua脚本直接调用,主要逻辑写在lua

    在调用回调函数时可以多做一层封装,回调函数的self没填就用nil

    UGUI的设置方面:在panel挂Mask组件,text挂panel下面,text上挂content size fitter组件用来使长度自适应文字。中心点最好设置在text的最左边,方便计算

    给Text文本加下划线

    不增加text的情况给文本添加下划线

    字符都是通过三角面形式渲染出来的,每个字符都是由两个三角面组成,要计算单个字符的位置,就是计算字符所在框体的4个顶点。计算方法和思路见博客:https://blog.csdn.net/YuAnHandSome/article/details/79316789

    html的标签对一般是用栈来操作,遇到开始标签把开始标签进栈,遇到结束标签就把开始标签出栈,这两个就成功组成标签对。可以处理循环嵌套的情况。

    继承Text,重写    protected override void OnPopulateMesh(VertexHelper vertexHelper)方法,可以通过获取绘制的顶点坐标来处理下划线的渲染位置。难点在换行,换行时通过监测顶点X坐标的变化,如果突然变化太大,就说明换行,需要重新找到开始划线与结束划线的坐标。 

    通用提示框,通用飘字提示,通用通知提示

    TODO

    亲友圈排行榜模块

    TODO

    UI自动排序组件

    TODO

    其他

    对象池

    概述:对象池中包含若干提前准备好的若干实例,当需要时从对象池中提取,当不需要时,则重新放入对象池。一方面,使用对象池不需要频繁的产生和销毁实例对象,另一方面,对象池中的实例如果不够程序调用才会继续产生实例,这大大节省了性能。

    优点:复用池中对象,没有分配内存和创建堆中对象的开销, 没有释放内存和销毁堆中对象的开销, 进而减少垃圾收集器的负担, 避免内存抖动
    缺点:并发环境中, 多个线程可能(同时)需要获取池中对象, 进而需要在堆数据结构上进行同步或者因为锁竞争而产生阻塞, 这种开销要比创建销毁对象的开销高数百倍;由于池中对象的数量有限, 势必成为一个可伸缩性瓶颈;很难正确的设定对象池的大小, 如果太小则起不到作用, 如果过大, 则占用内存资源高很难正确的设定对象池的大小

    应用场景:需要多个类的实例,当类实例的创建和销毁开销比较大;对象生命周期很短,频繁的进行创建和销毁。 对象最好是无状态的,否则重复使用前回复原始状态

    同步与异步

    同步:并不是按字面意思的同时或一起,而是指协同步调,协助、相互配合。是按先后顺序执行在发出一个功能调用时,在没有得到返回结果之前一直在等待,不会继续往下执行

    异步:刚好和同步相反,也就是在发出一个功能调用时,不管没有没得到结果,都继续往下执行,异步加载至少有一帧的延迟

    同步的优点:管理方便,资源准备好可以及时返回。缺点:没有异步快
    异步的优点:速度快与主线程无关。缺点:调用比较麻烦,最好的做法是使用回调

    数据的持久化方案

    playerprefs根据项目的需求,看是前端存储还是后端存储,前端存储换设备就失效或者换账号,这个是根据产品需要来看。

    渲染Mesh

    3D世界中任何的面都是由三角形绘制完成的,因为任何无规则的集合图形都可以由三角形来组成。比如四边形,无论是正四边形还是无规则四边形都可以由两个三角形拼接而成。

    Mesh的主要属性内容包括顶点坐标,法线,纹理坐标,三角形绘制序列(三角形的顶点顺序必须是顺时针)

    UGUI会默认为每个元素生成两个三角形用于渲染,也就是说UGUI的元素形状都是举行的,对于每个Text,每个字符都是由(6个顶点组成的)两个三角形来渲染的

    系统运行时,CPU执行计算的过程

    程序以及数据被加载到主内存
    指令和数据被加载到CPU缓存
    CPU执行指令,把结果写到高速缓存
    高速缓存中的数据写回主内存

    图片格式

    unity中纹理最好使用PNG的图片格式,因为PNG使用RGBA的图像渲染格式,可以属于任何一种RGB颜色空间,在加上Alpha(透明度)通道。

    PNG的特性:能在保证最不失真的情况下尽可能压缩图像文件的大小。PNG用来存储灰度图像时,灰度图像的深度可多到16位,存储彩色图像时,彩色图像的深度可多到48位,并且还可存储多到16位的α通道数据。

    模块耦合

    模块之间是允许流程性耦合的,在一个模块的结束进入到下一个模块之前是必然会有互相的调用的,但是流程一定要规范,自己要知道哪里调用了。
     

    展开全文
  • Android 百实例源码分析以及开源分析 集合打包4

    千次下载 热门讨论 2012-07-10 21:54:03
    Jamendo中,主要是通过再定义一个SeparatedListAdapter来进行这个工作,我们来看看它是怎么实现的:我理解的Adapter过程,首先通过调用getCount()来获得总Row数目,然后对一行调用getView进行绘制,因此要实现...
  • ASP.Net课程的一开始,不是直接教学员怎么拖ASP.Net控件进行快速开发,而是通过ashx的模式开发原始的动态网站,让学员明白“请求—处理—响应模型”、“Http协议、Http无状态”、“c#代码渲染生成浏览器端...
  • 飞秋2013专业版

    2014-06-24 10:54:48
    点击主界面的设置按钮,设置对话框里进行设置,其中头像指的是用户列表中显示的头像,个人形象照片是和对方聊天时,您对方聊天对话框中右角部分显示的形象照片。 十一、如何共享文件或文件(夹)? 点击主...
  • 飞秋FeiQv2.4修正版

    2008-11-23 17:27:11
    点击主界面的设置按钮,设置对话框里进行设置,其中头像指的是用户列表中显示的头像,个人形象照片是和对方聊天时,您对方聊天对话框中右角部分显示的形象照片。 十一、如何共享文件或文件(夹)? 点击主...
  • <div><p>用了...我基本是看完了你所有代码(本人有大概用了两年TP5.1)才知道该怎么在页面里改或者东西 谢谢啦,看了麻烦给个回馈</p><p>该提问来源于开源项目:zoujingli/ThinkAdmin</p></div>
  • 如果有多引导系统的计算机,必须保证是包含 Windows 的驱动器使用该命令。 Diskpart  创建和删除硬盘驱动器的分区。diskpart 命令仅使用故障恢复控制台时才可用。  diskpart [ /add |/delete] [device_...
  • 下面我们主窗口加一个按钮,按下该按钮,弹出一个对话框, 但这个对话框关闭,不会使主窗口关闭。 8.如下图,主窗口加入按钮,显示文本为“弹出一个对话框”,点击鼠 标右键,弹出的菜单中选择go to ...
  • 关于这个裁剪功能,程序中的图像裁剪中有一个说明按钮,设计报告中有提到怎么使用的,所以这里就不一一说明了,其实就跟PS用裁剪差不多,很容易用的。 关于设计的感想也写了设计报告了- -,这里也就...
  • vc++ 应用源码包_1

    热门讨论 2012-09-15 14:22:12
    详细讲解了Crypt++的加密解密的使用以及其它的加密解密方法(例如base64解密、哈希解密以及其它的文件解密),分静态库和动态库方法。 JSCalls_demo js调用的演示源码 树控件拖动 演示了树控件中来回拖动...
  • vc++ 应用源码包_2

    热门讨论 2012-09-15 14:27:40
    详细讲解了Crypt++的加密解密的使用以及其它的加密解密方法(例如base64解密、哈希解密以及其它的文件解密),分静态库和动态库方法。 JSCalls_demo js调用的演示源码 树控件拖动 演示了树控件中来回拖动...
  • vc++ 应用源码包_6

    热门讨论 2012-09-15 14:59:46
    详细讲解了Crypt++的加密解密的使用以及其它的加密解密方法(例如base64解密、哈希解密以及其它的文件解密),分静态库和动态库方法。 JSCalls_demo js调用的演示源码 树控件拖动 演示了树控件中来回拖动...
  • vc++ 应用源码包_4

    热门讨论 2012-09-15 14:38:35
    详细讲解了Crypt++的加密解密的使用以及其它的加密解密方法(例如base64解密、哈希解密以及其它的文件解密),分静态库和动态库方法。 JSCalls_demo js调用的演示源码 树控件拖动 演示了树控件中来回拖动...
  • vc++ 应用源码包_3

    热门讨论 2012-09-15 14:33:15
    详细讲解了Crypt++的加密解密的使用以及其它的加密解密方法(例如base64解密、哈希解密以及其它的文件解密),分静态库和动态库方法。 JSCalls_demo js调用的演示源码 树控件拖动 演示了树控件中来回拖动...
  • vc++ 应用源码包_5

    热门讨论 2012-09-15 14:45:16
    详细讲解了Crypt++的加密解密的使用以及其它的加密解密方法(例如base64解密、哈希解密以及其它的文件解密),分静态库和动态库方法。 JSCalls_demo js调用的演示源码 树控件拖动 演示了树控件中来回拖动...
  • arcgis工具

    2012-10-22 22:37:31
    例如,选择与道路相交的荒地,选择的结果将包括该道路其边界范围之内或其边界之的所有荒地。 …距离范围内(Are within a distance of) 这一方法将选择同一图层或不同图层相邻或邻近的要素。例如,...
  • 部门老大布置了任务,做一个串口,网上找了很多教程,但是很多都没有数据位、停止位和奇偶校验位,于是自己添加,但是这个只是在对话框里加进去了显示面,实际并没起什么作用,然后修改了一下程序,了几句进去...
  • 立几画板 v6.0.5.2.zip

    2019-07-10 07:41:56
    点或组件等一个图元双击鼠标就可以显示“属性”对话框。 滚动鼠标的滚轮可以对图形放缩,用“复位”工具恢复。 显示“坐标轴”时显示网格,用“铅笔”工具时不自动显示。 选择一条线时也可以度量长度,不必选...
  • UEditorDialogCommand可以Ueditor增加一个对话框,一般与UEditorButtonCommand配合使用。暂未实现 event_handler : 用来为Ueditor实例绑定事件侦听,比较当选择区改变时将按钮状态置为禁止。 from ...
  • 关于错误的原因系统会弹出对话框对话框里面就是错误的原因,由于是英文的,所以很多人看不懂。今天一一说明。第一种就是 8002 错误 ,你翻译一下就知道了,这是未找到端口错误,软件未找到你设置的com端口,软件...
  • asp.net知识库

    2015-06-18 08:45:45
    怎么在ASP.NET 2.0中使用Membership asp.net 2.0-实现数据访问(1) ASP.NET 2.0 新特性 .NET 2.0里使用强类型数据创建多层应用 在MastPage中引用脚本资源 2.0正式版中callback的一些变化+使用示例(ASP.NET 2.0)...
  • 反馈论坛网址格式也是这样所以到这了,也知道和前两个差别较大,如果反馈论坛之后如 https://github.com/the1812/Bilibili-Evolved/issues/571#issuecomment-638034243 中所说不加载脚本的话当我这条...

空空如也

空空如也

1 2
收藏数 25
精华内容 10
关键字:

怎么在图片上加对话框