Welcome 微信登录
编程资源 图片资源库 蚂蚁家优选 PDF转换器 软件资源

软件开发小程序制作系统集成与运维空间租用硬件开发视频监控技术咨询与支持——联系电话:0311-88999002/88999003

首页 / 操作系统 / Linux

基于现有图像数据创建自定义像素格式的 BufferedImage

基于现有图像数据创建自定义像素格式的 BufferedImage

在最近的一个项目中,需要实现 Mac OS X 环境下的摄像头图像实时捕获并转换为 Java 中的 BufferedImage 对象。首先通过开发一个本地库实现 Mac OS X 的摄像头图像捕获,采用的是 Apple 推荐的新的 AVFoundation 框架,摄像头图像格式设置为 kCVPixelFormatType_32ARGB(设置成其他的测试了无法得到图像,系统不支持),通过 delegate 方式得到 CMSampleBufferRef 类型的...
AppCode 中开发 Mac OS X 应用程序或共享库的经验小结

AppCode 中开发 Mac OS X 应用程序或共享库的经验小结

AppCode 是 JetBrains 公司出品的用于开发 Mac OS X 及 iOS 应用程序的集成开发环境,只能运行于 Mac OS X 操作系统环境下,作为 XCode 的高级替代品。由于其基于 IntelliJ IDEA 相同的代码基础,自然继承了 IDEA 的优良传统,代码智能提示以及自动完成、重构等等不一而足。在实际开发过程中,如果涉及到一些 XCode 特有的可视化设计功能,AppCode 实际上是调用 XCode 来实现;而其他情况下,基...
MinGW 使用和创建 DLL 应注意的问题

MinGW 使用和创建 DLL 应注意的问题

MinGW 是 GCC 的 Windows 版本,稳定版已经到了 4.5.2,功能和性能上很好,感觉不比 Microsoft 自家的 VC 差啊。但是 MinGW 下使用和创建 DLL 倒是要特别注意,问题主要集中在 g++ 编译器(C++ 的 GNU 版本编译器)对于 DLL 的函数输入以及输出的名称修饰、调用协议上和 VC 编译器是有很大区别的。1、MinGW 如何使用一个标准的 DLL。这里标准 DLL 指的是采用 __stdcall 调用协议、并且...
使用 Go 进行 iOS 和 Android 编程

使用 Go 进行 iOS 和 Android 编程

虽然 Go 并不是一门新语言,不过最近两年来 Go 还是增加了很多有趣的特性,而且使用这门语言的知名项目的数量也在快速的增长。我写过一篇文章,介绍了 SitePoint 用到的编程语言,其中提到了移动端的支持,所以我觉得需要研究一下可能性。我很高兴 Android 是支持 Go 语言的,这一方面应该是二者都是 Google 的技术,另一方面恐怕也与开发者希望用 Go 替换 Java 的愿望有关。开始你需要安装 Golang 1.5+。接下来需要安装 GoM...
iOS传感器开发——为APP添加手机密码、指纹进行安全验证

iOS传感器开发——为APP添加手机密码、指纹进行安全验证

iPhone5S后,iPhone加入了识别指纹的传感器,可以使用这个api在我们的APP中添加安全验证。一、引言iPhone5s之后,iPhone硬件上已支持进行指纹识别的功能,相应的,一些新的api也可以应用于APP中,进行用户安全的验证。目前,开发者可以使用的安全验证方式有两种,一种是通过手机密码进行验证,一种是通过识别指纹进行验证。二、为APP添加安全验证要使用安全验证的相关api,我们需要引入如下头文件:#import <LocalAuthe...
iOS运用runtime全局修改UILabel的默认字体

iOS运用runtime全局修改UILabel的默认字体

一、需求背景介绍在项目比较成熟的基础上,遇到了这样一个需求,应用中需要引入新的字体,需要更换所有Label的默认字体,但是同时,对于一些特殊设置了字体的label又不需要更换。乍看起来,这个问题确实十分棘手,首先项目比较大,一个一个设置所有使用到的label的font工作量是巨大的,并且在许多动态展示的界面中,可能会漏掉一些label,产生bug。其次,项目中的label来源并不唯一,有用代码创建的,有xib和storyBoard中的,这也将浪费很大的精力...
iOS9新特性——堆叠视图UIStackView

iOS9新特性——堆叠视图UIStackView

iOS9中,Apple又为开发者提供了一个新的布局视图,UIStackView可以帮助开发者更加简单的使用layout而不必手动添加太多布局约束。一、引言随着autolayout的推广开来,更多的app开始使用自动布局的方式来构建自己的UI系统,autolayout配合storyBoard和一些第三方的框架,对于创建约束来说,已经十分方便,但是对于一些动态的线性布局的视图,我们需要手动添加的约束不仅非常多,而且如果我们需要插入或者移除其中的一些UI元素的时...
iOS开发中标签控制器的使用——UITabBarController

iOS开发中标签控制器的使用——UITabBarController

一、引言与导航控制器相类似,标签控制器也是用于管理视图控制器的一个UI控件,在其内部封装了一个标签栏,与导航不同的是,导航的管理方式是纵向的,采用push与pop切换控制器,标签的管理是横向的,通过标签的切换来改变控制器,一般我们习惯将tabBar作为应用程序的根视图控制器,在其中添加导航,导航中在对ViewController进行管理。二、创建一个标签控制器通过如下的步骤,我们可以很简便的创建一个TabBarController:UITabBarCont...
iOS自定义的emoji表情键盘

iOS自定义的emoji表情键盘

一、关于emoji表情随着iOS系统版本的升级,对原生emoji表情的支持也越来越丰富。emoji表情是unicode码中为表情符号设计的一组编码,当然,还有独立于unicode的另一套编码SBUnicode,在OS系统中,这两种编码都有很好的支持。UI系统会自动帮我们将编码转义成表情符号,例如用SBUnicode如下代码: UILabel * label = [[UILabel alloc]initWithFrame:CGRectMake(100, 10...
Linux下使用POSIX Thread作多核多线程并行计算

Linux下使用POSIX Thread作多核多线程并行计算

POSIX线程库根据处理器、操作系统等特性封装了一台线程处理的接口。对于目前基于x86处理器架构的Linux系统来说,它往往会默认地将新创建的一个线程调度到与主线程不同的核中执行,如果这样能更好地平衡负荷的话。因此,在使用POSIX线程时,开发者不能断言当前创建的线程是否运行在与主线程相同的核心下,也不能断言一定运行在与主线程不同的核心下。当然,由于POSIX线程具有时间片轮询调度(Round-Robin),因此即便与主线程处于一个核心,使用旋锁的话,性能...
Java编码约定

Java编码约定

优秀的代码胜过冗长的文档。1. 文件编码源文件编码格式为UTF-8。2. 包名使用小写字母3. import不要使用通配符即,不要出现类似这样的import语句:import java.util.*;4. 列长限制一个项目可以选择一行80个字符或100个字符的列限制,超出列长限制时换行,换行时缩进至少4个空格,缩进不要用tab。5. 注释注释应少而精,代码的关键处应该有注释, 注释不能误导读者。6. 变量声明每次只声明一个变量,不要使用组合声明,比如int...
关于Java 8新引入语法特性的简要说明

关于Java 8新引入语法特性的简要说明

Java 8在语法上的主要改进就是新增了Lambda Expression以及Method Reference。由于官方网站的介绍稍显罗嗦,而且例子也有些复杂。我这里将提供一些更为浅显、直观的例子来帮助大家理解Java 8新引入的语法特性。Java 8中的Lambda Expression与C、C++都不太一样。Apple为LLVM Clang新开发了Blocks语法特性,使得GNU99标准C编译器在Clang编译器下就能使用Lambda Expressi...
Java JNI的使用基础

Java JNI的使用基础

JNI是Java与C、C++、Objective-C、Objective-C++等静态编译语言以及汇编语言相交互的接口。尽管目前而言,Java提供了诸多运行时性能较高的运行时库,但是在很多方面,尤其是高性能计算领域,Java提供的高效库还不是很多,因此我们可以通过JNI接口将我们用静态语言以及汇编编译连接为动态库后给Java应用程序加载调用。首先,Java为不同的操作系统平台提供了各自相适应的运行时环境以及根据不同的编译器提供了JNI头文件。JNI头文件一...
Objective-C如何自己实现一个for-each语法形式

Objective-C如何自己实现一个for-each语法形式

我们在用Objective-C编写程序时,很多时候会用到NSArray来作为线性列表来使用。我们在枚举这个数组所有元素的使用可以通过下列方法进行:for(id obj in anArray){}这种方式在编程语言术语中也被称为for-each形式。在C++11以及Java 5中,上述的in使用冒号:来表示。那么我们在Objective-C中是否可以自己定义一个类来实现for-each形式呢?当然可以!我们可以通过两种方式来实现这种简单的for-each语法...
<< 3761 3762 3763 3764 3765 3766 3767 3768 3769 3770 >>